{
  "meta": {
    "docs_root": "corpus/kubernetes-website/content/en/docs",
    "version": "v1.34",
    "corpus": "kubernetes",
    "source_label": "local:corpus/kubernetes-website/content/en/docs",
    "generator": "k8s-docs-compiler"
  },
  "stats": {
    "pages": 1469,
    "glossary": 163,
    "api_objects": 628,
    "api_paths": 1117,
    "concepts": 4800,
    "manifests": 0,
    "roles": 16,
    "controllers": 5,
    "operators": 0,
    "crds": 0,
    "edges": 10754,
    "edge_types": {
      "part_of": 7657,
      "references": 835,
      "defines": 36,
      "related_to": 1093,
      "api_for": 717,
      "owns": 10,
      "requires": 15,
      "controls": 4,
      "prerequisite_of": 387
    },
    "graph_density": 0.00016003212904667073,
    "duplicate_removed": 0,
    "build_seconds": 0.0
  },
  "nodes": [
    {
      "id": "gloss:label",
      "type": "glossary",
      "title": "Label",
      "summary": "Tags objects with identifying attributes that are meaningful and relevant to users.",
      "body": "Labels are used to identify and categorize objects in Kubernetes.\n\n**Why it matters**\nLabels enable users to filter, sort, and manage objects based on meaningful attributes.\n\n**Key facts**\n- Labels are key-value pairs that can be attached to objects such as Pods, Services, and Persistent Volumes.\n- They provide a flexible way to organize and categorize objects in Kubernetes.\n\n**Common pitfalls**\n- Misusing labels can lead to inconsistent or incorrect filtering and sorting of objects.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/working-with-objects/labels",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/label.md",
          "url": "https://kubernetes.io/docs/reference/glossary/label/",
          "line_start": null,
          "line_end": null,
          "quote": "Tags objects with identifying attributes that are meaningful and relevant to users."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:probe",
      "type": "glossary",
      "title": "Probe",
      "summary": "A check performed periodically by the kubelet on a container in a Pod.",
      "body": "Probes are used to check the health of containers in Pods.\n\n**Why it matters**\nProbes ensure that containers are running correctly and can help prevent downtime or errors.\n\n**Key facts**\n- Probes are checks performed periodically by the kubelet on a container in a Pod.\n- There are three types of probes: HTTP, TCP, and Exec.\n\n**Common pitfalls**\n- Incorrectly configured probes can lead to false positives or negatives, causing unnecessary restarts or downtime.\n\n**Related**\ngloss:label",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "tool",
        "observability",
        "api"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/pods/pod-lifecycle/#container-probes",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/probe.md",
          "url": "https://kubernetes.io/docs/reference/glossary/probe/",
          "line_start": null,
          "line_end": null,
          "quote": "A check performed periodically by the kubelet on a container in a Pod."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:limitrange",
      "type": "glossary",
      "title": "LimitRange",
      "summary": "Provides constraints to limit resource consumption per Containers or Pods in a namespace.",
      "body": "LimitRanges are used to constrain resource consumption in namespaces.\n\n**Why it matters**\nLimitRanges prevent Pods from consuming excessive resources, ensuring efficient use of cluster capacity.\n\n**Key facts**\n- LimitRanges provide constraints to limit resource consumption per Containers or Pods in a namespace.\n- They can be used to set limits on CPU and memory usage.\n\n**Common pitfalls**\n- Insufficiently configured LimitRanges can lead to underutilization of cluster resources, while overly restrictive settings can cause performance issues.\n\n**Related**\ngloss:label",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "fundamental",
        "architecture",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "/docs/concepts/policy/limit-range/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/limitrange.md",
          "url": "https://kubernetes.io/docs/reference/glossary/limitrange/",
          "line_start": null,
          "line_end": null,
          "quote": "Provides constraints to limit resource consumption per Containers or Pods in a namespace."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:dra",
      "type": "glossary",
      "title": "Dynamic Resource Allocation",
      "summary": "A Kubernetes feature for requesting and sharing resources, like hardware accelerators, among Pods.",
      "body": "Dynamic Resource Allocation (DRA) is a feature for requesting and sharing resources among Pods.\n\n**Why it matters**\nDRA enables efficient use of cluster resources, reducing waste and improving scalability.\n\n**Key facts**\n- A Kubernetes feature for requesting and sharing resources, like hardware accelerators, among Pods.\n- DRA provides a flexible way to manage resource allocation in multi-tenant environments.\n\n**Common pitfalls**\n- Incorrectly configured DRA settings can lead to underutilization or over-allocation of resources, causing performance issues or waste.\n\n**Related**\ngloss:label, gloss:limitrange",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "extension",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/dra.md",
          "url": "https://kubernetes.io/docs/reference/glossary/dra/",
          "line_start": null,
          "line_end": null,
          "quote": "A Kubernetes feature for requesting and sharing resources, like hardware accelerators, among Pods."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:platform-developer",
      "type": "glossary",
      "title": "Platform Developer",
      "summary": "A person who customizes the Kubernetes platform to fit the needs of their project.",
      "body": "A person who customizes the Kubernetes platform to fit the needs of their project.\n\n \n\nA platform developer may, for example, use [Custom Resources](/docs/concepts/extend-kubernetes/api-extension/custom-resources/) or\n[Extend the Kubernetes API with the aggregation layer](/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/)\nto add functionality to their instance of Kubernetes, specifically for their application.\nSome Platform Developers are also [contributors](#gloss:contributor) and\ndevelop extensions which are contributed to the Kubernetes community.\nOthers develop closed-source commercial or site-specific extensions.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "user-type",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/platform-developer/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/platform-developer.md",
          "url": "https://kubernetes.io/docs/reference/glossary/platform-developer/",
          "line_start": null,
          "line_end": null,
          "quote": "A person who customizes the Kubernetes platform to fit the needs of their project."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:reviewer",
      "type": "glossary",
      "title": "Reviewer",
      "summary": "A person who reviews code for quality and correctness on some part of the project.",
      "body": "A person who reviews code for quality and correctness on some part of the project.\n\n**Why it matters**\nCode reviewers ensure that code meets quality and correctness standards, improving overall project reliability and maintainability.\n\n**Key facts**\n- Reviews code for quality and correctness\n- Focuses on specific parts of the project\n\n**Common pitfalls**\n- Inadequate review process can lead to bugs and errors",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/reviewer/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/reviewer.md",
          "url": "https://kubernetes.io/docs/reference/glossary/reviewer/",
          "line_start": null,
          "line_end": null,
          "quote": "A person who reviews code for quality and correctness on some part of the project."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:CustomResourceDefinition",
      "type": "glossary",
      "title": "CustomResourceDefinition",
      "summary": "Custom code that defines a resource to add to your Kubernetes API server without building a complete custom server.",
      "body": "Custom code that defines a resource to add to your Kubernetes API server without building a complete custom server.\n\n**Why it matters**\nCustom Resource Definitions enable users to extend the Kubernetes API with custom resources, improving flexibility and customization options.\n\n**Key facts**\n- Defines a custom resource\n- Adds to the Kubernetes API server\n\n**Common pitfalls**\n- Incorrectly defined CRDs can lead to API inconsistencies\n\n**Related**\nKubernetes API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "operation",
        "extension",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/customresourcedefinition.md",
          "url": "https://kubernetes.io/docs/reference/glossary/customresourcedefinition/",
          "line_start": null,
          "line_end": null,
          "quote": "Custom code that defines a resource to add to your Kubernetes API server without building a complete custom server."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:upstream",
      "type": "glossary",
      "title": "Upstream (disambiguation)",
      "summary": "May refer to: core Kubernetes or the source repo from which a repo was forked.",
      "body": "May refer to: core Kubernetes or the source repo from which a repo was forked.\n\n**Why it matters**\nUnderstanding whether a term refers to core Kubernetes or an external source is crucial for accurate communication and collaboration.\n\n**Key facts**\n- Can refer to core Kubernetes\n- Can refer to an external source repository\n\n**Common pitfalls**\n- Misinterpretation of upstream terminology can lead to confusion\n\n**Related**\nKubernetes, Source repositories",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/upstream/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/upstream.md",
          "url": "https://kubernetes.io/docs/reference/glossary/upstream/",
          "line_start": null,
          "line_end": null,
          "quote": "May refer to: core Kubernetes or the source repo from which a repo was forked."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:service-catalog",
      "type": "glossary",
      "title": "Service Catalog",
      "summary": "A former extension API that enabled applications running in Kubernetes clusters to easily use external managed software offerings, such as a datastore service offered by a cloud provider.",
      "body": "A former extension API that enabled applications running in Kubernetes clusters to easily use external managed software offerings, such as a datastore service offered by a cloud provider.\n\n**Why it matters**\nThe Service Catalog provided a convenient way for applications to access external services, improving scalability and flexibility.\n\n**Key facts**\n- Former extension API\n- Enabled easy access to external services\n\n**Common pitfalls**\n- Deprecation can lead to compatibility issues\n\n**Related**\nKubernetes clusters, External managed software offerings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "extension",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/service-catalog/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/service-catalog.md",
          "url": "https://kubernetes.io/docs/reference/glossary/service-catalog/",
          "line_start": null,
          "line_end": null,
          "quote": "A former extension API that enabled applications running in Kubernetes clusters to easily use external managed software offerings, such as a datastore service offered by a cloud provider."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:podgroup",
      "type": "glossary",
      "title": "PodGroup",
      "summary": "A PodGroup represents a set of Pods with common scheduling policy and constraints.",
      "body": "A PodGroup represents a set of Pods with common scheduling policy and constraints.\n\n**Why it matters**\nPodGroups allow for efficient management of related Pods, enabling better resource allocation and scaling.\n\n**Key facts**\n- Represents a group of Pods with shared scheduling policies\n- Enables efficient management of related Pods\n\n**Common pitfalls**\n- Misconfigured PodGroup can lead to inefficient resource utilization\n\n**Related**\nPods, Scheduling Policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "workload",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/podgroup-api/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/podgroup.md",
          "url": "https://kubernetes.io/docs/reference/glossary/podgroup/",
          "line_start": null,
          "line_end": null,
          "quote": "A PodGroup represents a set of Pods with common scheduling policy and constraints."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:admission-controller",
      "type": "glossary",
      "title": "Admission Controller",
      "summary": "A piece of code that intercepts requests to the Kubernetes API server prior to persistence of the object.",
      "body": "A piece of code that intercepts requests to the Kubernetes API server prior to persistence of the object.\n\n**Why it matters**\nAdmission Controllers ensure that only valid and compliant objects are created in the cluster, preventing security vulnerabilities.\n\n**Key facts**\n- Intercepts requests to the Kubernetes API server\n- Ensures compliance with cluster policies\n\n**Common pitfalls**\n- Misconfigured Admission Controller can lead to denial of service\n\n**Related**\nKubernetes API Server, Cluster Policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "extension",
        "security"
      ],
      "aliases": [],
      "url": "/docs/reference/access-authn-authz/admission-controllers/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/admission-controller.md",
          "url": "https://kubernetes.io/docs/reference/glossary/admission-controller/",
          "line_start": null,
          "line_end": null,
          "quote": "A piece of code that intercepts requests to the Kubernetes API server prior to persistence of the object."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cluster-operations",
      "type": "glossary",
      "title": "Cluster Operations",
      "summary": "The work involved in managing a Kubernetes cluster.",
      "body": "The work involved in managing a Kubernetes cluster.\n\n**Why it matters**\nEffective Cluster Operations ensure the smooth functioning of applications and services running on the cluster.\n\n**Key facts**\n- Involves management of cluster resources and infrastructure\n\n**Common pitfalls**\n- Poorly managed Cluster Operations can lead to downtime and performance issues\n\n**Related**\nKubernetes Cluster, Cluster Resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/cluster-operations/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cluster-operations.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cluster-operations/",
          "line_start": null,
          "line_end": null,
          "quote": "The work involved in managing a Kubernetes cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:persistent-volume-claim",
      "type": "glossary",
      "title": "Persistent Volume Claim",
      "summary": "Claims storage resources defined in a PersistentVolume so that it can be mounted as a volume in a container.",
      "body": "Claims storage resources defined in a PersistentVolume so that it can be mounted as a volume in a container.\n\n**Why it matters**\nPersistent Volume Claims provide a way to request and manage storage resources for applications, ensuring data persistence.\n\n**Key facts**\n- Requests storage resources from a PersistentVolume\n\n**Common pitfalls**\n- Insufficient storage resources can lead to claim failures\n\n**Related**\nPersistent Volume, Storage Resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/persistent-volume-claim.md",
          "url": "https://kubernetes.io/docs/reference/glossary/persistent-volume-claim/",
          "line_start": null,
          "line_end": null,
          "quote": "Claims storage resources defined in a PersistentVolume so that it can be mounted as a volume in a container."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:contributor",
      "type": "glossary",
      "title": "Contributor",
      "summary": "Someone who donates code, documentation, or their time to help the Kubernetes project or community.",
      "body": "Someone who donates code, documentation, or their time to help the Kubernetes project or community.\n\n**Why it matters**\nContributors play a crucial role in shaping and improving the Kubernetes ecosystem.\n\n**Key facts**\n- Can donate code, documentation, or time to the Kubernetes project or community\n- Helps shape and improve the Kubernetes ecosystem",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/contributor/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/contributor.md",
          "url": "https://kubernetes.io/docs/reference/glossary/contributor/",
          "line_start": null,
          "line_end": null,
          "quote": "Someone who donates code, documentation, or their time to help the Kubernetes project or community."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:endpoints",
      "type": "glossary",
      "title": "Endpoints",
      "summary": "(Deprecated) API representing endpoints of a Service",
      "body": "(Deprecated) API representing endpoints of a Service\n\n**Why it matters**\nNote that Endpoints is deprecated, so it's essential to use alternative approaches.\n\n**Key facts**\n- API for representing endpoints of a Service (deprecated)\n- Use alternative approaches instead\n\n**Common pitfalls**\n- Using a deprecated API can lead to compatibility issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/services-networking/service/#endpoints",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/endpoint.md",
          "url": "https://kubernetes.io/docs/reference/glossary/endpoint/",
          "line_start": null,
          "line_end": null,
          "quote": "(Deprecated) API representing endpoints of a Service"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:immutable-infrastructure",
      "type": "glossary",
      "title": "Immutable Infrastructure",
      "summary": "Immutable Infrastructure refers to computer infrastructure (virtual machines, containers, network appliances) that cannot be changed once deployed",
      "body": "Immutable Infrastructure refers to computer infrastructure (virtual machines, containers, network appliances) that cannot be changed once deployed.\n\n\n\nImmutability can be enforced by an automated process that overwrites unauthorized changes or through a system that won’t allow changes in the first place.\n[Containers](#gloss:container) are a good example of immutable infrastructure because persistent changes to containers\ncan only be made by creating a new version of the container or recreating the existing container from its image.\n\nBy preventing or identifying unauthorized changes, immutable infrastructures make it easier to identify and mitigate security risks. \nOperating such a system becomes a lot more straightforward because administrators can make assumptions about it.\nAfter all, they know no one made mistakes or changes they forgot to communicate.\nImmutable infrastructure goes hand-in-hand with infrastructure as code where all automation needed\nto create infrastructure is stored in version control (such as Git).\nThis combination of immutability and version control means that there is a durable audit log of every authorized change to a system.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/immutable-infrastructure/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/immutable-infrastructure.md",
          "url": "https://kubernetes.io/docs/reference/glossary/immutable-infrastructure/",
          "line_start": null,
          "line_end": null,
          "quote": "Immutable Infrastructure refers to computer infrastructure (virtual machines, containers, network appliances) that cannot be changed once deployed"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:configmap",
      "type": "glossary",
      "title": "ConfigMap",
      "summary": "An API object used to store non-confidential data in key-value pairs. Can be consumed as environment variables, command-line arguments, or configuration files in a volume.",
      "body": "An API object used to store non-confidential data in key-value pairs.\n\n**Why it matters**\nConfigMaps provide a convenient way to manage and consume configuration data.\n\n**Key facts**\n- Stores non-confidential data in key-value pairs\n- Can be consumed as environment variables, command-line arguments, or configuration files",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/configuration/configmap/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/configmap.md",
          "url": "https://kubernetes.io/docs/reference/glossary/configmap/",
          "line_start": null,
          "line_end": null,
          "quote": "An API object used to store non-confidential data in key-value pairs. Can be consumed as environment variables, command-line arguments, or configuration files in a volume."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:Extensions",
      "type": "glossary",
      "title": "Extensions",
      "summary": "Extensions are software components that extend and deeply integrate with Kubernetes to support new types of hardware.",
      "body": "Extensions are software components that extend and deeply integrate with Kubernetes to support new types of hardware.\n\n**Why it matters**\nExtensions enable the integration of new hardware capabilities into Kubernetes.\n\n**Key facts**\n- Software components extending and integrating with Kubernetes\n- Supports new types of hardware",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "extension",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "/docs/concepts/extend-kubernetes/#extensions",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/extensions.md",
          "url": "https://kubernetes.io/docs/reference/glossary/extensions/",
          "line_start": null,
          "line_end": null,
          "quote": "Extensions are software components that extend and deeply integrate with Kubernetes to support new types of hardware."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:etcd",
      "type": "glossary",
      "title": "etcd",
      "summary": "Consistent and highly-available key value store used as backing store of Kubernetes for all cluster data.",
      "body": "A key-value store used as the backing store for Kubernetes cluster data.\n\n**Why it matters**\nProvides a consistent and highly-available storage solution for cluster data.\n\n**Key facts**\n- Used by Kubernetes as its primary storage solution\n- Ensures consistency and high availability of cluster data\n\n**Common pitfalls**\n- Data loss or corruption can occur if not properly managed\n\n**Related**\nKubernetes cluster management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/tasks/administer-cluster/configure-upgrade-etcd/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/etcd.md",
          "url": "https://kubernetes.io/docs/reference/glossary/etcd/",
          "line_start": null,
          "line_end": null,
          "quote": "Consistent and highly-available key value store used as backing store of Kubernetes for all cluster data."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:HostAliases",
      "type": "glossary",
      "title": "HostAliases",
      "summary": "A HostAliases is a mapping between the IP address and hostname to be injected into a Pod's hosts file.",
      "body": "A mapping between IP addresses and hostnames injected into a Pod's hosts file.\n\n**Why it matters**\nAllows for custom hostname resolution within Pods.\n\n**Key facts**\n- Maps IP addresses to hostnames\n- Injected into the Pod's hosts file\n\n**Common pitfalls**\n- Incorrect mappings can lead to network connectivity issues\n\n**Related**\nPod networking",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "/docs/reference/generated/kubernetes-api/{{< param \"version\" >}}/#hostalias-v1-core",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/host-aliases.md",
          "url": "https://kubernetes.io/docs/reference/glossary/host-aliases/",
          "line_start": null,
          "line_end": null,
          "quote": "A HostAliases is a mapping between the IP address and hostname to be injected into a Pod's hosts file."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cni",
      "type": "glossary",
      "title": "Container network interface (CNI)",
      "summary": "Container network interface (CNI) plugins are a type of Network plugin that adheres to the appc/CNI specification.",
      "body": "A type of Network plugin that adheres to the appc/CNI specification.\n\n**Why it matters**\nProvides a standardized interface for container networking.\n\n**Key facts**\n- Complies with the appc/CNI specification\n- Enables network connectivity for containers\n\n**Common pitfalls**\n- Incompatible plugins can cause network issues\n\n**Related**\nContainer networking",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cni.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cni/",
          "line_start": null,
          "line_end": null,
          "quote": "Container network interface (CNI) plugins are a type of Network plugin that adheres to the appc/CNI specification."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:sidecar-container",
      "type": "glossary",
      "title": "Sidecar Container",
      "summary": "An auxilliary container that stays running throughout the lifecycle of a Pod.",
      "body": "An auxiliary container that stays running throughout a Pod's lifecycle.\n\n**Why it matters**\nProvides additional functionality to the main application container.\n\n**Key facts**\n- Auxiliary container\n- Stays running with the Pod\n\n**Common pitfalls**\n- Resource-intensive sidecars can impact Pod performance\n\n**Related**\nPod architecture",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "networking",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/pods/sidecar-containers/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/sidecar-container.md",
          "url": "https://kubernetes.io/docs/reference/glossary/sidecar-container/",
          "line_start": null,
          "line_end": null,
          "quote": "An auxilliary container that stays running throughout the lifecycle of a Pod."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:deviceclass",
      "type": "glossary",
      "title": "DeviceClass",
      "summary": "A category of devices in the cluster. Users can claim specific devices in a DeviceClass.",
      "body": "A category of devices in the cluster.\n\n**Why it matters**\nUsers can claim specific devices in a DeviceClass, making it easier to manage and organize devices within the cluster.\n\n**Key facts**\n- Devices are categorized by type\n- Users can claim devices from a DeviceClass",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "extension",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#deviceclass",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/deviceclass.md",
          "url": "https://kubernetes.io/docs/reference/glossary/deviceclass/",
          "line_start": null,
          "line_end": null,
          "quote": "A category of devices in the cluster. Users can claim specific devices in a DeviceClass."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:kube-apiserver",
      "type": "glossary",
      "title": "API server",
      "summary": "Control plane component that serves the Kubernetes API.",
      "body": "Control plane component that serves the Kubernetes API.\n\n**Why it matters**\nThe API server is responsible for managing and exposing the Kubernetes API, enabling users to interact with the cluster programmatically.\n\n**Key facts**\n- API server is a control plane component\n- Serves the Kubernetes API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "fundamental",
        "api",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/architecture/#kube-apiserver",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/kube-apiserver.md",
          "url": "https://kubernetes.io/docs/reference/glossary/kube-apiserver/",
          "line_start": null,
          "line_end": null,
          "quote": "Control plane component that serves the Kubernetes API."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:volume",
      "type": "glossary",
      "title": "Volume",
      "summary": "A directory containing data, accessible to the containers in a pod.",
      "body": "A directory containing data, accessible to the containers in a pod.\n\n**Why it matters**\nVolumes provide a way to persist data across container restarts and make it accessible to multiple containers within a pod.\n\n**Key facts**\n- Volumes contain data\n- Accessible to containers in a pod",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/storage/volumes/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/volume.md",
          "url": "https://kubernetes.io/docs/reference/glossary/volume/",
          "line_start": null,
          "line_end": null,
          "quote": "A directory containing data, accessible to the containers in a pod."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:resourceclaim",
      "type": "glossary",
      "title": "ResourceClaim",
      "summary": "Describes the resources that a workload needs, such as devices. ResourceClaims can request devices from DeviceClasses.",
      "body": "Describes the resources that a workload needs, such as devices. ResourceClaims can request devices from DeviceClasses.\n\n**Why it matters**\nResourceClaims provide a way to describe resource requirements and request specific devices or other resources from the cluster.\n\n**Key facts**\n- Describes resource requirements\n- Can request devices from DeviceClasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "workload",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#resourceclaims-templates",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/resourceclaim.md",
          "url": "https://kubernetes.io/docs/reference/glossary/resourceclaim/",
          "line_start": null,
          "line_end": null,
          "quote": "Describes the resources that a workload needs, such as devices. ResourceClaims can request devices from DeviceClasses."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:node-pressure-eviction",
      "type": "glossary",
      "title": "Node-pressure eviction",
      "summary": "Node-pressure eviction is the process by which the kubelet proactively fails pods to reclaim resources on nodes.",
      "body": "Node-pressure eviction is a proactive process where the kubelet fails pods to reclaim resources on nodes.\n\n**Why it matters**\nThis helps maintain node health and prevent resource exhaustion.\n\n**Key facts**\n- Kubelet initiates pod failure\n- Resources are reclaimed on nodes\n\n**Common pitfalls**\n- Pods may be unexpectedly terminated\n- Resource availability can be misleading\n\n**Related**\nkubelet, node resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/node-pressure-eviction/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/reference/glossary/node-pressure-eviction/",
          "line_start": null,
          "line_end": null,
          "quote": "Node-pressure eviction is the process by which the kubelet proactively fails pods to reclaim resources on nodes."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:preemption",
      "type": "glossary",
      "title": "Preemption",
      "summary": "Preemption logic in Kubernetes helps a pending Pod to find a suitable Node by evicting low priority Pods existing on that Node.",
      "body": "Preemption logic in Kubernetes helps a pending Pod find a suitable Node by evicting low-priority Pods.\n\n**Why it matters**\nThis ensures efficient resource allocation and pod placement.\n\n**Key facts**\n- Pending pods are prioritized\n- Low-priority pods are evicted\n\n**Common pitfalls**\n- Pods may be terminated unexpectedly\n- Resource competition can lead to inefficiencies\n\n**Related**\npending pods, node resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation",
        "scheduling"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/pod-priority-preemption/#preemption",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/preemption.md",
          "url": "https://kubernetes.io/docs/reference/glossary/preemption/",
          "line_start": null,
          "line_end": null,
          "quote": "Preemption logic in Kubernetes helps a pending Pod to find a suitable Node by evicting low priority Pods existing on that Node."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:container",
      "type": "glossary",
      "title": "Container",
      "summary": "A lightweight and portable executable image that contains software and all of its dependencies.",
      "body": "A container is a lightweight, portable executable image containing software and its dependencies.\n\n**Why it matters**\nThis enables efficient application deployment and management across environments.\n\n**Key facts**\n- Containers are isolated\n- They include all necessary dependencies\n\n**Common pitfalls**\n- Resource constraints can impact performance\n- Security vulnerabilities can arise from unmanaged dependencies\n\n**Related**\ndocker images, container orchestration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "workload",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/containers/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/container.md",
          "url": "https://kubernetes.io/docs/reference/glossary/container/",
          "line_start": null,
          "line_end": null,
          "quote": "A lightweight and portable executable image that contains software and all of its dependencies."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cluster",
      "type": "glossary",
      "title": "Cluster",
      "summary": "A set of worker machines, called nodes, that run containerized applications. Every cluster has at least one worker node.",
      "body": "A cluster is a set of worker machines (nodes) running containerized applications.\n\n**Why it matters**\nThis enables scalable and flexible application deployment and management.\n\n**Key facts**\n- Clusters have at least one worker node\n- Nodes run containerized applications\n\n**Common pitfalls**\n- Scalability challenges can arise from inefficient cluster design\n- Security risks can emerge from unmanaged nodes\n\n**Related**\nworker nodes, container orchestration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "operation",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/cluster/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cluster.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "A set of worker machines, called nodes, that run containerized applications. Every cluster has at least one worker node."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:aggregation-layer",
      "type": "glossary",
      "title": "Aggregation Layer",
      "summary": "The aggregation layer lets you install additional Kubernetes-style APIs in your cluster.",
      "body": "A layer in a Kubernetes cluster that allows for additional APIs to be installed.\n\n**Why it matters**\nEnables the installation of custom Kubernetes-style APIs, enhancing cluster functionality.\n\n**Key facts**\n- Allows additional API installations\n- Enhances cluster functionality",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "extension",
        "operation",
        "storage",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": "/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/aggregation-layer.md",
          "url": "https://kubernetes.io/docs/reference/glossary/aggregation-layer/",
          "line_start": null,
          "line_end": null,
          "quote": "The aggregation layer lets you install additional Kubernetes-style APIs in your cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:master",
      "type": "glossary",
      "title": "Master",
      "summary": "Legacy term, used as synonym for nodes running the control plane.",
      "body": "Legacy term for nodes running the control plane in a Kubernetes cluster.\n\n**Why it matters**\nHistorical context; used as synonym for control plane nodes.\n\n**Key facts**\n- Legacy term\n- Synonym for control plane nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/master/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/master.md",
          "url": "https://kubernetes.io/docs/reference/glossary/master/",
          "line_start": null,
          "line_end": null,
          "quote": "Legacy term, used as synonym for nodes running the control plane."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:code-contributor",
      "type": "glossary",
      "title": "Code Contributor",
      "summary": "A person who develops and contributes code to the Kubernetes open source codebase.",
      "body": "A person who contributes code to the Kubernetes open source project.\n\n**Why it matters**\nEssential role in maintaining and improving the Kubernetes ecosystem.\n\n**Key facts**\n- Develops and contributes code\n- Open-source contributor",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "user-type",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://github.com/kubernetes/community/tree/main/contributors/devel",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/code-contributor.md",
          "url": "https://kubernetes.io/docs/reference/glossary/code-contributor/",
          "line_start": null,
          "line_end": null,
          "quote": "A person who develops and contributes code to the Kubernetes open source codebase."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:kube-controller-manager",
      "type": "glossary",
      "title": "kube-controller-manager",
      "summary": "Control Plane component that runs controller processes.",
      "body": "A Control Plane component responsible for running controller processes.\n\n**Why it matters**\nCritical for managing cluster state and enforcing policies.\n\n**Key facts**\n- Runs controller processes\n- Control Plane component",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "fundamental",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/reference/command-line-tools-reference/kube-controller-manager/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/kube-controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/glossary/kube-controller-manager/",
          "line_start": null,
          "line_end": null,
          "quote": "Control Plane component that runs controller processes."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cri-o",
      "type": "glossary",
      "title": "CRI-O",
      "summary": "A lightweight container runtime specifically for Kubernetes",
      "body": "CRI-O is a lightweight container runtime specifically designed for Kubernetes.\n\n**Why it matters**\nIt provides a streamlined and efficient way to manage containers within a Kubernetes cluster.\n\n**Key facts**\n- Lightweight\n- Specifically designed for Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "tool",
        "scheduling"
      ],
      "aliases": [],
      "url": "https://cri-o.io/#what-is-cri-o",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cri-o.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cri-o/",
          "line_start": null,
          "line_end": null,
          "quote": "A lightweight container runtime specifically for Kubernetes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:secret",
      "type": "glossary",
      "title": "Secret",
      "summary": "Stores sensitive information, such as passwords, OAuth tokens, and ssh keys.",
      "body": "Stores sensitive information, such as passwords, OAuth tokens, and SSH keys.\n\n\n\nSecrets give you more control over how sensitive information is used and reduces\nthe risk of accidental exposure. Secret values are encoded as base64 strings and\nare stored unencrypted by default, but can be configured to be\n[encrypted at rest](/docs/tasks/administer-cluster/encrypt-data/#ensure-all-secrets-are-encrypted).\n\nA [Pod](#gloss:pod) can reference the Secret in\na variety of ways, such as in a volume mount or as an environment variable.\nSecrets are designed for confidential data and\n[ConfigMaps](/docs/tasks/configure-pod-container/configure-pod-configmap/) are\ndesigned for non-confidential data.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/configuration/secret/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/secret.md",
          "url": "https://kubernetes.io/docs/reference/glossary/secret/",
          "line_start": null,
          "line_end": null,
          "quote": "Stores sensitive information, such as passwords, OAuth tokens, and ssh keys."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:downward-api",
      "type": "glossary",
      "title": "Downward API",
      "summary": "A mechanism to expose Pod and container field values to code running in a container.",
      "body": "Kubernetes' mechanism to expose Pod and container field values to code running in a container.\n\nIt is sometimes useful for a container to have information about itself, without\nneeding to make changes to the container code that directly couple it to Kubernetes.\n\nThe Kubernetes downward API allows containers to consume information about themselves\nor their context in a Kubernetes cluster. Applications in containers can have\naccess to that information, without the application needing to act as a client of\nthe Kubernetes API.\n\nThere are two ways to expose Pod and container fields to a running container:\n\n- using [environment variables](/docs/tasks/inject-data-application/environment-variable-expose-pod-information/)\n- using [a `downwardAPI` volume](/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/)\n\nTogether, these two ways of exposing Pod and container fields are called the _downward API_.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "api",
        "extensibility"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/pods/downward-api/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/downward-api.md",
          "url": "https://kubernetes.io/docs/reference/glossary/downward-api/",
          "line_start": null,
          "line_end": null,
          "quote": "A mechanism to expose Pod and container field values to code running in a container."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:cncf",
      "type": "glossary",
      "title": "Cloud Native Computing Foundation (CNCF)",
      "summary": "The Cloud Native Computing Foundation is an organization that promotes and supports the development of cloud-native technologies.",
      "body": "The Cloud Native Computing Foundation is an organization that promotes and supports the development of cloud-native technologies.\n\n**Why it matters**\nIt provides a neutral home for open-source cloud-native projects, ensuring their continued growth and adoption.\n\n**Key facts**\n- Neutral home for open-source projects\n- Promotes cloud-native technologies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community"
      ],
      "aliases": [],
      "url": "https://cncf.io/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cncf.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cncf/",
          "line_start": null,
          "line_end": null,
          "quote": "Cloud Native Computing Foundation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:condition",
      "type": "glossary",
      "title": "Condition",
      "summary": "A condition represents the current state of a Kubernetes resource, providing information about whether certain aspects of the resource are true.",
      "body": "A condition represents the current state of a Kubernetes resource, providing information about its status.\n\n**Why it matters**\nIt allows for more granular control over the management and monitoring of Kubernetes resources.\n\n**Key facts**\n- Represents current state of a resource\n- Provides information about resource status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/pods/pod-lifecycle/#pod-conditions",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/condition.md",
          "url": "https://kubernetes.io/docs/reference/glossary/condition/",
          "line_start": null,
          "line_end": null,
          "quote": "A condition represents the current state of a Kubernetes resource, providing information about whether certain aspects of the resource are true."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:application-architect",
      "type": "glossary",
      "title": "Application Architect",
      "summary": "A person responsible for the high-level design of an application.",
      "body": "An application architect is responsible for designing the high-level architecture of an application.\n\n**Why it matters**\nThey ensure that the application meets its functional and performance requirements, while also considering scalability and maintainability.\n\n**Key facts**\n- Responsible for high-level design\n- Ensures application meets requirements",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "user-type"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/application-architect/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/application-architect.md",
          "url": "https://kubernetes.io/docs/reference/glossary/application-architect/",
          "line_start": null,
          "line_end": null,
          "quote": "A person responsible for the high-level design of an application."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:kops",
      "type": "glossary",
      "title": "kOps (Kubernetes Operations)",
      "summary": "kOps will not only help you create, destroy, upgrade and maintain production-grade, highly available, Kubernetes cluster, but it will also provision the necessary cloud infrastructure.",
      "body": "`kOps` will not only help you create, destroy, upgrade and maintain production-grade, highly available, Kubernetes cluster, but it will also provision the necessary cloud infrastructure.\n\n \n\n\n> **Note:** AWS (Amazon Web Services) is currently officially supported, with DigitalOcean, GCE and OpenStack in beta support, and Azure in alpha.\n\n\n`kOps` is an automated provisioning system:\n  * Fully automated installation\n  * Uses DNS to identify clusters\n  * Self-healing: everything runs in Auto-Scaling Groups\n  * Multiple OS support (Amazon Linux, Debian, Flatcar, RHEL, Rocky and Ubuntu)\n  * High-Availability support\n  * Can directly provision, or generate terraform manifests\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "tool",
        "operation"
      ],
      "aliases": [],
      "url": "/docs/setup/production-environment/kops/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/kops.md",
          "url": "https://kubernetes.io/docs/reference/glossary/kops/",
          "line_start": null,
          "line_end": null,
          "quote": "kOps will not only help you create, destroy, upgrade and maintain production-grade, highly available, Kubernetes cluster, but it will also provision the necessary cloud infrastructure."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:container-env-variables",
      "type": "glossary",
      "title": "Container Environment Variables",
      "summary": "Container environment variables are name=value pairs that provide useful information into containers running in a Pod.",
      "body": "Container environment variables provide useful information to containers running in a Pod.\n\n**Why it matters**\nEnvironment variables can be used to configure container behavior and provide necessary information for application execution.\n\n**Key facts**\n- Name-value pairs that provide information to containers\n- Used to configure container behavior\n\n**Common pitfalls**\n- Incorrect variable values can lead to unexpected behavior or errors in the application\n\n**Related**\nPods, Containers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/containers/container-environment/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/container-env-variables.md",
          "url": "https://kubernetes.io/docs/reference/glossary/container-env-variables/",
          "line_start": null,
          "line_end": null,
          "quote": "Container environment variables are name=value pairs that provide useful information into containers running in a Pod."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:downstream",
      "type": "glossary",
      "title": "Downstream (disambiguation)",
      "summary": "May refer to: code in the Kubernetes ecosystem that depends upon the core Kubernetes codebase or a forked repo.",
      "body": "Downstream refers to code that depends on the core Kubernetes codebase or a forked repo.\n\n**Why it matters**\nUnderstanding downstream code is essential for developers working with the Kubernetes ecosystem.\n\n**Key facts**\n- May refer to code in the Kubernetes ecosystem that depends on the core codebase\n- Can also refer to a forked repository\n\n**Common pitfalls**\n- Failing to account for downstream dependencies can lead to compatibility issues or errors\n\n**Related**\nKubernetes Ecosystem, Core Codebase",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/downstream/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/downstream.md",
          "url": "https://kubernetes.io/docs/reference/glossary/downstream/",
          "line_start": null,
          "line_end": null,
          "quote": "May refer to: code in the Kubernetes ecosystem that depends upon the core Kubernetes codebase or a forked repo."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:network-policy",
      "type": "glossary",
      "title": "Network Policy",
      "summary": "A specification of how groups of Pods are allowed to communicate with each other and with other network endpoints.",
      "body": "A specification of how groups of Pods are allowed to communicate with each other and with other network endpoints.\n\n \n\nNetworkPolicies help you declaratively configure which Pods are allowed to connect to each other, which namespaces are allowed to communicate,\nand more specifically which port numbers to enforce each policy on. NetworkPolicy objects use [labels](#gloss:label)\nto select Pods and define rules which specify what traffic is allowed to the selected Pods.\n\nNetworkPolicies are implemented by a supported network plugin provided by a network provider.\nBe aware that creating a NetworkPolicy object without a controller to implement it will have no effect.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "architecture",
        "extension",
        "core-object",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/services-networking/network-policies/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/network-policy.md",
          "url": "https://kubernetes.io/docs/reference/glossary/network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "A specification of how groups of Pods are allowed to communicate with each other and with other network endpoints."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:pod-priority",
      "type": "glossary",
      "title": "Pod Priority",
      "summary": "Pod Priority indicates the importance of a Pod relative to other Pods.",
      "body": "Pod Priority indicates the importance of a Pod relative to other Pods.\n\n**Why it matters**\nPod priority ensures that critical applications or services are given sufficient resources and priority.\n\n**Key facts**\n- Indicates the importance of a Pod\n- Used to allocate resources and prioritize Pods\n\n**Common pitfalls**\n- Incorrectly setting pod priority can lead to resource under-allocation or over-allocation\n\n**Related**\nPods, Resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/pod-priority-preemption/#pod-priority",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/pod-priority.md",
          "url": "https://kubernetes.io/docs/reference/glossary/pod-priority/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Priority indicates the importance of a Pod relative to other Pods."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:mvp",
      "type": "glossary",
      "title": "Mixed Version Proxy (MVP)",
      "summary": "Feature that lets a kube-apiserver proxy a resource request to a different peer API server.",
      "body": "The Mixed Version Proxy (MVP) feature proxies a resource request to a different peer API server.\n\n**Why it matters**\nMVP enables compatibility and flexibility in the Kubernetes ecosystem by allowing for version-specific proxying.\n\n**Key facts**\n- Feature that lets kube-apiserver proxy a resource request\n- Used for version-specific proxying\n\n**Common pitfalls**\n- Incorrectly configuring MVP can lead to compatibility issues or errors\n\n**Related**\nkube-apiserver, Peer API Server",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/architecture/mixed-version-proxy/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/reference/glossary/mixed-version-proxy/",
          "line_start": null,
          "line_end": null,
          "quote": "Feature that lets a kube-apiserver proxy a resource request to a different peer API server."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:image",
      "type": "glossary",
      "title": "Image",
      "summary": "Stored instance of a container that holds a set of software needed to run an application.",
      "body": "A stored instance of a container that holds a set of software needed to run an application.\n\n**Why it matters**\nImages are essential for running containers, providing the necessary software and dependencies.\n\n**Key facts**\n- Stored instance of a container\n- Holds a set of software needed to run an application",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/image/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/image.md",
          "url": "https://kubernetes.io/docs/reference/glossary/image/",
          "line_start": null,
          "line_end": null,
          "quote": "Stored instance of a container that holds a set of software needed to run an application."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:disruption",
      "type": "glossary",
      "title": "Disruption",
      "summary": "An event that leads to Pod(s) going out of service",
      "body": "Disruptions are events that lead to one or more\n[Pods](#gloss:pod) going out of service.\nA disruption has consequences for workload management [resources](#gloss:api-resource),\nsuch as [deployment](#gloss:deployment), that rely on the affected\nPods.\n\n\n\nIf you, as cluster operator, destroy a Pod that belongs to an application,\nKubernetes terms that a _voluntary disruption_. If a Pod goes offline\nbecause of a Node failure, or an outage affecting a wider failure zone,\nKubernetes terms that an _involuntary disruption_.\n\nSee [Disruptions](/docs/concepts/workloads/pods/disruptions/) for more information.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/pods/disruptions/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/disruption.md",
          "url": "https://kubernetes.io/docs/reference/glossary/disruption/",
          "line_start": null,
          "line_end": null,
          "quote": "An event that leads to Pod(s) going out of service"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:device-plugin",
      "type": "glossary",
      "title": "Device Plugin",
      "summary": "Software extensions to let Pods access devices that need vendor-specific initialization or setup",
      "body": "Device plugins run on worker\n[Nodes](#gloss:node) and provide\n[Pods](#gloss:pod) with access to\ninfrastructure [resources](#gloss:infrastructure-resource),\nsuch as local hardware, that require vendor-specific initialization or setup\nsteps.\n\n\n\nDevice plugins advertise resources to the\n[kubelet](#gloss:kubelet), so that workload\nPods can access hardware features that relate to the Node where that Pod is running.\nYou can deploy a device plugin as a [daemonset](#gloss:daemonset),\nor install the device plugin software directly on each target Node.\n\nSee\n[Device Plugins](/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/)\nfor more information.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "extension",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/device-plugin.md",
          "url": "https://kubernetes.io/docs/reference/glossary/device-plugin/",
          "line_start": null,
          "line_end": null,
          "quote": "Software extensions to let Pods access devices that need vendor-specific initialization or setup"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:shuffle-sharding",
      "type": "glossary",
      "title": "Shuffle-sharding",
      "summary": "A technique for assigning requests to queues that provides better isolation than hashing modulo the number of queues.",
      "body": "A technique for assigning requests to queues that provides better isolation than hashing modulo the number of queues.\n\n \n\nWe are often concerned with insulating different flows of requests\nfrom each other, so that a high-intensity flow does not crowd out low-intensity flows.\nA simple way to put requests into queues is to hash some\ncharacteristics of the request, modulo the number of queues, to get\nthe index of the queue to use. The hash function uses as input\ncharacteristics of the request that align with flows. For example, in\nthe Internet this is often the 5-tuple of source and destination\naddress, protocol, and source and destination port.\n\nThat simple hash-based scheme has the property that any high-intensity flow\nwill crowd out all the low-intensity flows that hash to the same queue.\nProviding good insulation for a large number of flows requires a large\nnumber of queues, which is problematic. Shuffle-sharding is a more\nnimble technique that can do a better job of insulating the low-intensity\nflows from the high-intensity flows. The terminology of shuffle-sharding uses\nthe metaphor of dealing a hand from a deck of cards; each queue is a\nmetaphorical card. The shuffle-sharding technique starts with hashing\nthe flow-identifying characteristics of the request, to produce a hash\nvalue with dozens or more of bits. Then the hash value is used as a\nsource of entropy to shuffle the deck and deal a hand of cards\n(queues). All the dealt queues are examined, and the request is put\ninto one of the examined queues with the shortest length. With a\nmodest hand size, it does not cost much to examine all the dealt cards\nand a given low-intensity flow has a good chance to dodge the effects of a\ngiven high-intensity flow. With a large hand size it is expensive to examine\nthe dealt queues and more difficult for the low-intensity flows to dodge the\ncollective effects of a set of high-intensity flows. Thus, the hand size\nshould be chosen judiciously.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/shuffle-sharding/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/shuffle-sharding.md",
          "url": "https://kubernetes.io/docs/reference/glossary/shuffle-sharding/",
          "line_start": null,
          "line_end": null,
          "quote": "A technique for assigning requests to queues that provides better isolation than hashing modulo the number of queues."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:toleration",
      "type": "glossary",
      "title": "Toleration",
      "summary": "A core object consisting of three required properties: key, value, and effect. Tolerations enable the scheduling of pods on nodes or node groups that have a matching taint.",
      "body": "A core object consisting of three required properties: key, value, and effect. Tolerations enable the scheduling of pods on nodes or node groups that have a matching taint.\n\n**Why it matters**\nTolerations allow for flexible pod placement and scheduling based on node characteristics.\n\n**Key facts**\n- Consists of key, value, and effect properties\n- Enables pod scheduling based on node taints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "fundamental",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/taint-and-toleration/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/toleration.md",
          "url": "https://kubernetes.io/docs/reference/glossary/toleration/",
          "line_start": null,
          "line_end": null,
          "quote": "A core object consisting of three required properties: key, value, and effect. Tolerations enable the scheduling of pods on nodes or node groups that have a matching taint."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:uid",
      "type": "glossary",
      "title": "UID",
      "summary": "A Kubernetes systems-generated string to uniquely identify objects.",
      "body": "A Kubernetes systems-generated string to uniquely identify objects.\n\n**Why it matters**\nUIDs ensure uniqueness and prevent collisions across objects in the cluster.\n\n**Key facts**\n- Generated by Kubernetes\n- Ensures unique object identification",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/working-with-objects/names",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/uid.md",
          "url": "https://kubernetes.io/docs/reference/glossary/uid/",
          "line_start": null,
          "line_end": null,
          "quote": "A Kubernetes systems-generated string to uniquely identify objects."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:pod-disruption",
      "type": "glossary",
      "title": "Pod Disruption",
      "summary": "The process by which Pods on Nodes are terminated either voluntarily or involuntarily.",
      "body": "The process by which Pods on Nodes are terminated either voluntarily or involuntarily.\n\n**Why it matters**\nPod disruption management is crucial for maintaining application availability and reliability.\n\n**Key facts**\n- Involves termination of pods\n- Can be voluntary or involuntary",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/pods/disruptions/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/pod-disruption.md",
          "url": "https://kubernetes.io/docs/reference/glossary/pod-disruption/",
          "line_start": null,
          "line_end": null,
          "quote": "The process by which Pods on Nodes are terminated either voluntarily or involuntarily."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:horizontal-pod-autoscaler",
      "type": "glossary",
      "title": "Horizontal Pod Autoscaler",
      "summary": "Object that automatically scales the number of pod replicas based on targeted resource utilization or custom metric targets.",
      "body": "A Horizontal Pod Autoscaler is an object that automatically scales the number of pod replicas based on targeted resource utilization or custom metric targets.\n\n**Why it matters**\nIt allows for dynamic scaling of pods to match changing workload demands, ensuring efficient use of cluster resources.\n\n**Key facts**\n- Automatically scales pod replicas\n- Based on targeted resource utilization or custom metric targets\n\n**Common pitfalls**\n- Requires proper configuration and monitoring\n- May lead to over-provisioning if not properly tuned\n\n**Related**\nPods, Resource Utilization, Custom Metrics",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/horizontal-pod-autoscaler.md",
          "url": "https://kubernetes.io/docs/reference/glossary/horizontal-pod-autoscaler/",
          "line_start": null,
          "line_end": null,
          "quote": "Object that automatically scales the number of pod replicas based on targeted resource utilization or custom metric targets."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cloud-provider",
      "type": "glossary",
      "title": "Cloud Provider",
      "summary": "An organization that offers a cloud computing platform.",
      "body": "A business or other organization that offers a cloud computing platform.\n\n\n\nCloud providers, sometimes called Cloud Service Providers (CSPs), offer\ncloud computing platforms or services.\n\nMany cloud providers offer managed infrastructure (also called\nInfrastructure as a Service or IaaS).\nWith managed infrastructure the cloud provider is responsible for\nservers, storage, and networking while you manage layers on top of that\nsuch as running a Kubernetes cluster.\n\nYou can also find Kubernetes as a managed service; sometimes called\nPlatform as a Service, or PaaS. With managed Kubernetes, your\ncloud provider is responsible for the Kubernetes control plane as well\nas the [nodes](#gloss:node) and the\ninfrastructure they rely on: networking, storage, and possibly other\nelements such as load balancers.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "storage",
        "security",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/cloud-provider/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cloud-provider.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cloud-provider/",
          "line_start": null,
          "line_end": null,
          "quote": "An organization that offers a cloud computing platform."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:kubernetes-api",
      "type": "glossary",
      "title": "Kubernetes API",
      "summary": "The application that serves Kubernetes functionality through a RESTful interface and stores the state of the cluster.",
      "body": "The Kubernetes API is an application that serves Kubernetes functionality through a RESTful interface and stores the state of the cluster.\n\n**Why it matters**\nIt provides a standardized way for users to interact with the cluster, enabling automation and integration with other tools.\n\n**Key facts**\n- Serves Kubernetes functionality through a RESTful interface\n- Stores the state of the cluster\n\n**Common pitfalls**\n- Requires proper authentication and authorization\n- May lead to performance issues if not properly optimized\n\n**Related**\nRESTful Interface, Cluster State, Authentication and Authorization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "architecture",
        "api"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/kubernetes-api/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/reference/glossary/kubernetes-api/",
          "line_start": null,
          "line_end": null,
          "quote": "The application that serves Kubernetes functionality through a RESTful interface and stores the state of the cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cluster-operator",
      "type": "glossary",
      "title": "Cluster Operator",
      "summary": "A person who configures, controls, and monitors clusters.",
      "body": "A Cluster Operator is a person who configures, controls, and monitors clusters.\n\n**Why it matters**\nThey ensure the cluster is running efficiently and effectively, making informed decisions to optimize performance and resource utilization.\n\n**Key facts**\n- Configures clusters\n- Controls clusters\n- Monitors clusters\n\n**Common pitfalls**\n- Requires deep knowledge of Kubernetes and cluster management\n- May lead to over-reliance on individual expertise\n\n**Related**\nCluster Management, Kubernetes Administration, Monitoring and Logging",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "user-type",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/cluster-operator/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cluster-operator.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cluster-operator/",
          "line_start": null,
          "line_end": null,
          "quote": "A person who configures, controls, and monitors clusters."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:control-plane",
      "type": "glossary",
      "title": "Control Plane",
      "summary": "The container orchestration layer that exposes the API and interfaces to define, deploy, and manage the lifecycle of containers.",
      "body": "The container orchestration layer that exposes the API and interfaces to define, deploy, and manage the lifecycle of containers.\n\n  \n \n This layer is composed by many different components, such as (but not restricted to):\n\n * [etcd](#gloss:etcd)\n * [API Server](#gloss:kube-apiserver)\n * [Scheduler](#gloss:kube-scheduler)\n * [Controller Manager](#gloss:kube-controller-manager)\n * [Cloud Controller Manager](#gloss:cloud-controller-manager)\n\n These components can be run as traditional operating system services (daemons) or as containers. The hosts running these components were historically called [masters](#gloss:master).",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "scheduling",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/control-plane/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/control-plane.md",
          "url": "https://kubernetes.io/docs/reference/glossary/control-plane/",
          "line_start": null,
          "line_end": null,
          "quote": "The container orchestration layer that exposes the API and interfaces to define, deploy, and manage the lifecycle of containers."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:kube-proxy",
      "type": "glossary",
      "title": "kube-proxy",
      "summary": "`kube-proxy` is a network proxy that runs on each node in the cluster.",
      "body": "`kube-proxy` is a network proxy that runs on each node in the cluster.\n\n**Why it matters**\nIt enables network communication between pods, ensuring they can communicate with each other and external services.\n\n**Key facts**\n- Runs on each node in the cluster\n- Enables network communication between pods\n\n**Common pitfalls**\n- Requires proper configuration and tuning\n- May lead to performance issues if not properly optimized\n\n**Related**\nPods, Network Communication, Cluster Networking",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/reference/command-line-tools-reference/kube-proxy/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/glossary/kube-proxy/",
          "line_start": null,
          "line_end": null,
          "quote": "`kube-proxy` is a network proxy that runs on each node in the cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:jwt",
      "type": "glossary",
      "title": "JSON Web Token (JWT)",
      "summary": "A means of representing claims to be transferred between two parties.",
      "body": "A means of representing claims to be transferred between two parties.\n\n**Why it matters**\nJWTs enable secure and standardized exchange of information between systems.\n\n**Key facts**\n- Claims are represented in a JSON format.\n- Signed with a secret key for authentication.\n\n**Common pitfalls**\n- Token tampering or interception can compromise security.\n- Incorrect configuration can lead to authentication issues.\n\n**Related**\nAuthentication, Authorization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "security",
        "architecture"
      ],
      "aliases": [],
      "url": "https://www.rfc-editor.org/rfc/rfc7519",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/jwt.md",
          "url": "https://kubernetes.io/docs/reference/glossary/jwt/",
          "line_start": null,
          "line_end": null,
          "quote": "A means of representing claims to be transferred between two parties."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:kubectl",
      "type": "glossary",
      "title": "Kubectl",
      "summary": "A command line tool for communicating with a Kubernetes cluster.",
      "body": "A command line tool for communicating with a Kubernetes cluster.\n\n**Why it matters**\nKubectl provides a unified interface for managing and interacting with clusters.\n\n**Key facts**\n- Supports various operations like deployment, scaling, and logging.\n- Can be used to manage multiple clusters from a single tool.\n\n**Common pitfalls**\n- Misuse of flags or commands can lead to unintended cluster modifications.\n- Inadequate configuration can result in authentication issues.\n\n**Related**\nKubernetes Cluster, Cluster Management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "tool",
        "fundamental",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "/docs/reference/kubectl/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/glossary/kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": "A command line tool for communicating with a Kubernetes cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:pod-lifecycle",
      "type": "glossary",
      "title": "Pod Lifecycle",
      "summary": "The sequence of states through which a Pod passes during its lifetime.",
      "body": "The sequence of states through which a Pod passes during its lifetime.\n\n**Why it matters**\nUnderstanding pod lifecycle is crucial for ensuring application availability and reliability.\n\n**Key facts**\n- Pods can be in one of several states, including Running, Pending, or Succeeded.\n- Lifecycle events include creation, deletion, and restart.\n\n**Common pitfalls**\n- Inadequate resource allocation can lead to pod failure or termination.\n- Incorrect configuration can result in pod stuck in a pending state.\n\n**Related**\nPods, Resource Management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/pod-lifecycle/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/reference/glossary/pod-lifecycle/",
          "line_start": null,
          "line_end": null,
          "quote": "The sequence of states through which a Pod passes during its lifetime."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cronjob",
      "type": "glossary",
      "title": "CronJob",
      "summary": "A repeating task (a Job) that runs on a regular schedule.",
      "body": "A repeating task (a Job) that runs on a regular schedule.\n\n**Why it matters**\nCronJobs enable automated and periodic execution of tasks, simplifying maintenance and updates.\n\n**Key facts**\n- Tasks are run according to a specified schedule or cron expression.\n- Can be used for recurring maintenance, backups, or reporting.\n\n**Common pitfalls**\n- Incorrect configuration can lead to task duplication or omission.\n- Inadequate resource allocation can result in task failure or termination.\n\n**Related**\nJobs, Scheduling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "workload",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/controllers/cron-jobs/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cronjob.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cronjob/",
          "line_start": null,
          "line_end": null,
          "quote": "A repeating task (a Job) that runs on a regular schedule."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:quantity",
      "type": "glossary",
      "title": "Quantity",
      "summary": "A whole-number representation of small or large numbers using SI suffixes.",
      "body": "A whole-number representation of small or large numbers using [SI](https://en.wikipedia.org/wiki/International_System_of_Units) suffixes.\n\n\n\nQuantities are representations of small or large numbers using a compact,\nwhole-number notation with SI suffixes.  Fractional numbers are represented\nusing milli units, while large numbers can be represented using kilo,\nmega, or giga units.\n\nFor instance, the number `1.5` is represented as `1500m`, while the number `1000`\ncan be represented as `1k`, and `1000000` as `1M`. You can also specify\n[binary-notation](https://en.wikipedia.org/wiki/Binary_prefix) suffixes; the number 2048 can be written as `2Ki`.\n\nThe accepted decimal (power-of-10) units are `m` (milli), `k` (kilo,\nintentionally lowercase), `M` (mega), `G` (giga), `T` (tera), `P` (peta),\n`E` (exa).\n\nThe accepted binary (power-of-2) units are `Ki` (kibi), `Mi` (mebi), `Gi` (gibi),\n`Ti` (tebi), `Pi` (pebi), `Ei` (exbi).\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/quantity/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/quantity.md",
          "url": "https://kubernetes.io/docs/reference/glossary/quantity/",
          "line_start": null,
          "line_end": null,
          "quote": "A whole-number representation of small or large numbers using SI suffixes."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:application-developer",
      "type": "glossary",
      "title": "Application Developer",
      "summary": "A person who writes an application that runs in a Kubernetes cluster.",
      "body": "A person who writes an application that runs in a Kubernetes cluster.\n\n**Why it matters**\nApplication developers use Kubernetes to deploy and manage their applications.\n\n**Key facts**\n- Writes applications for Kubernetes clusters\n- Deploys and manages applications using Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "user-type",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/application-developer/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/application-developer.md",
          "url": "https://kubernetes.io/docs/reference/glossary/application-developer/",
          "line_start": null,
          "line_end": null,
          "quote": "A person who writes an application that runs in a Kubernetes cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:dockershim",
      "type": "glossary",
      "title": "Dockershim",
      "summary": "A component of Kubernetes v1.23 and earlier, which allows Kubernetes system components to communicate with Docker Engine.",
      "body": "A component of Kubernetes v1.23 and earlier, which allows Kubernetes system components to communicate with Docker Engine.\n\n**Why it matters**\nDockershim enables communication between Kubernetes and Docker Engine in older versions.\n\n**Key facts**\n- Component of Kubernetes v1.23 and earlier\n- Allows communication between Kubernetes and Docker Engine",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "/dockershim",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/dockershim.md",
          "url": "https://kubernetes.io/docs/reference/glossary/dockershim/",
          "line_start": null,
          "line_end": null,
          "quote": "A component of Kubernetes v1.23 and earlier, which allows Kubernetes system components to communicate with Docker Engine."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:sysctl",
      "type": "glossary",
      "title": "sysctl",
      "summary": "An interface for getting and setting Unix kernel parameters",
      "body": "An interface for getting and setting Unix kernel parameters\n\n**Why it matters**\nSysctl provides a way to manage Unix kernel parameters.\n\n**Key facts**\n- Interface for getting and setting Unix kernel parameters\n- Used to manage kernel settings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "tool",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "/docs/tasks/administer-cluster/sysctl-cluster/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/sysctl.md",
          "url": "https://kubernetes.io/docs/reference/glossary/sysctl/",
          "line_start": null,
          "line_end": null,
          "quote": "An interface for getting and setting Unix kernel parameters"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:node",
      "type": "glossary",
      "title": "Node",
      "summary": "A node is a worker machine in Kubernetes.",
      "body": "A node is a worker machine in Kubernetes.\n\n**Why it matters**\nNodes are the machines that run containerized applications in Kubernetes.\n\n**Key facts**\n- Worker machine in Kubernetes\n- Runs containerized applications",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "fundamental",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/architecture/nodes/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/node.md",
          "url": "https://kubernetes.io/docs/reference/glossary/node/",
          "line_start": null,
          "line_end": null,
          "quote": "A node is a worker machine in Kubernetes."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:watch",
      "type": "glossary",
      "title": "Watch",
      "summary": "A verb that is used to track changes to an object in Kubernetes as a stream.",
      "body": "Track changes to an object in Kubernetes as a stream.\n\n**Why it matters**\nAllows for real-time updates and notifications on object changes.\n\n**Key facts**\n- Used to track changes to objects in Kubernetes\n- Provides a stream of updates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "API verb",
        "fundamental",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/reference/using-api/api-concepts/#api-verbs",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/watch.md",
          "url": "https://kubernetes.io/docs/reference/glossary/watch/",
          "line_start": null,
          "line_end": null,
          "quote": "A verb that is used to track changes to an object in Kubernetes as a stream."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:replication-controller",
      "type": "glossary",
      "title": "ReplicationController",
      "summary": "A (deprecated) API object that manages a replicated application.",
      "body": "Manages a replicated application.\n\n**Why it matters**\nEnsures that a specified number of replicas are running at any given time.\n\n**Key facts**\n- Deprecated API object\n- Manages a replicated application\n\n**Common pitfalls**\n- Deprecation may cause issues in certain scenarios",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "workload",
        "core-object",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/replication-controller/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/replication-controller.md",
          "url": "https://kubernetes.io/docs/reference/glossary/replication-controller/",
          "line_start": null,
          "line_end": null,
          "quote": "A (deprecated) API object that manages a replicated application."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:priority-class",
      "type": "glossary",
      "title": "PriorityClass",
      "summary": "A mapping from a class name to the scheduling priority that a Pod should have.",
      "body": "Maps a class name to the scheduling priority of a Pod.\n\n**Why it matters**\nAllows for custom prioritization of Pods based on their requirements.\n\n**Key facts**\n- Maps class name to scheduling priority\n- Custom prioritization of Pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/pod-priority-preemption/#priorityclass",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/priority-class.md",
          "url": "https://kubernetes.io/docs/reference/glossary/priority-class/",
          "line_start": null,
          "line_end": null,
          "quote": "A mapping from a class name to the scheduling priority that a Pod should have."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:flexvolume",
      "type": "glossary",
      "title": "FlexVolume",
      "summary": "FlexVolume is a deprecated interface for creating out-of-tree volume plugins. The {{< glossary_tooltip text=\"Container Storage Interface\" term_id=\"csi\" >}} is a newer interface that addresses several problems with FlexVolume.",
      "body": "FlexVolume is a deprecated interface for creating out-of-tree volume plugins. The [Container Storage Interface](#gloss:csi) is a newer interface that addresses several problems with FlexVolume.\n\n \n\nFlexVolumes enable users to write their own drivers and add support for their volumes in Kubernetes. FlexVolume driver binaries and dependencies must be installed on host machines. This requires root access. The Storage SIG suggests implementing a [CSI](#gloss:csi) driver if possible since it addresses the limitations with FlexVolumes.\n\n* [FlexVolume in the Kubernetes documentation](/docs/concepts/storage/volumes/#flexvolume)\n* [More information on FlexVolumes](https://github.com/kubernetes/community/blob/main/contributors/devel/sig-storage/flexvolume.md)\n* [Volume Plugin FAQ for Storage Vendors](https://github.com/kubernetes/community/blob/main/sig-storage/volume-plugin-faq.md)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/storage/volumes/#flexvolume",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/flexvolume.md",
          "url": "https://kubernetes.io/docs/reference/glossary/flexvolume/",
          "line_start": null,
          "line_end": null,
          "quote": "FlexVolume is a deprecated interface for creating out-of-tree volume plugins. The {{< glossary_tooltip text=\"Container Storage Interface\" term_id=\"csi\" >}} is a newer interface that addresses several problems with FlexVolume."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:daemonset",
      "type": "glossary",
      "title": "DaemonSet",
      "summary": "Ensures a copy of a Pod is running across a set of nodes in a cluster.",
      "body": "Ensures a copy of a Pod is running across a set of nodes in a cluster.\n\n**Why it matters**\nGuarantees that a specified number of replicas are always running, even if nodes fail or become unavailable.\n\n**Key facts**\n- Ensures a copy of a Pod is running\n- Replication across multiple nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "core-object",
        "workload"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/controllers/daemonset",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/daemonset.md",
          "url": "https://kubernetes.io/docs/reference/glossary/daemonset/",
          "line_start": null,
          "line_end": null,
          "quote": "Ensures a copy of a Pod is running across a set of nodes in a cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:developer",
      "type": "glossary",
      "title": "Developer (disambiguation)",
      "summary": "May refer to&#58; Application Developer, Code Contributor, or Platform Developer.",
      "body": "A term that can refer to different roles in software development.\n\n**Why it matters**\nUnderstanding the meaning of a developer is crucial for effective communication and collaboration among team members.\n\n**Key facts**\n- May refer to Application Developer, Code Contributor, or Platform Developer.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "user-type",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/developer/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/developer.md",
          "url": "https://kubernetes.io/docs/reference/glossary/developer/",
          "line_start": null,
          "line_end": null,
          "quote": "May refer to&#58; Application Developer, Code Contributor, or Platform Developer."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:feature-gate",
      "type": "glossary",
      "title": "Feature gate",
      "summary": "A way to control whether or not a particular Kubernetes feature is enabled.",
      "body": "A mechanism for controlling the enablement of Kubernetes features.\n\n**Why it matters**\nFeature gates allow administrators to manage feature adoption and prevent unexpected behavior in their clusters.\n\n**Key facts**\n- A way to control whether or not a particular Kubernetes feature is enabled.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "operation",
        "api",
        "extensibility"
      ],
      "aliases": [],
      "url": "/docs/reference/command-line-tools-reference/feature-gates/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/feature-gates.md",
          "url": "https://kubernetes.io/docs/reference/glossary/feature-gates/",
          "line_start": null,
          "line_end": null,
          "quote": "A way to control whether or not a particular Kubernetes feature is enabled."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:operator-pattern",
      "type": "glossary",
      "title": "Operator pattern",
      "summary": "A specialized controller used to manage a custom resource",
      "body": "A design pattern for managing custom resources in Kubernetes.\n\n**Why it matters**\nThe operator pattern enables developers to create and manage complex applications with ease.\n\n**Key facts**\n- A specialized controller used to manage a custom resource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "/docs/concepts/extend-kubernetes/operator/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/operator-pattern.md",
          "url": "https://kubernetes.io/docs/reference/glossary/operator-pattern/",
          "line_start": null,
          "line_end": null,
          "quote": "A specialized controller used to manage a custom resource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:drain",
      "type": "glossary",
      "title": "Drain",
      "summary": "Safely evicts Pods from a Node to prepare for maintenance or removal.",
      "body": "A process for safely removing Pods from a Node.\n\n**Why it matters**\nDraining Nodes is essential for maintenance, upgrades, and removal of unresponsive or problematic nodes.\n\n**Key facts**\n- Safely evicts Pods from a Node to prepare for maintenance or removal.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "operation",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/drain/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/drain.md",
          "url": "https://kubernetes.io/docs/reference/glossary/drain/",
          "line_start": null,
          "line_end": null,
          "quote": "Safely evicts Pods from a Node to prepare for maintenance or removal."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:name",
      "type": "glossary",
      "title": "Name",
      "summary": "A client-provided string that refers to an object in a resource URL, such as `/api/v1/pods/some-name`.",
      "body": "A client-provided string that refers to an object in a resource URL.\n\n**Why it matters**\nNames are used to identify objects in Kubernetes, allowing for efficient access and management.\n\n**Key facts**\n- Unique within a cluster\n- Used in resource URLs\n\n**Common pitfalls**\n- Case sensitivity matters\n- Must be valid DNS label\n\n**Related**\nLabels, Selectors",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/working-with-objects/names",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/name.md",
          "url": "https://kubernetes.io/docs/reference/glossary/name/",
          "line_start": null,
          "line_end": null,
          "quote": "A client-provided string that refers to an object in a resource URL, such as `/api/v1/pods/some-name`."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:endpoint-slice",
      "type": "glossary",
      "title": "EndpointSlice",
      "summary": "EndpointSlices track the IP addresses of Pods for Services.",
      "body": "EndpointSlices track the IP addresses of backend endpoints.\nEndpointSlices are normally associated with a\n[Service](#gloss:service) and the backend endpoints typically represent\n[Pods](#gloss:pod).\n\n\nOne Service can be backed by multiple Pods. Kubernetes represents the backing endpoints of a Service\nwith a set of EndpointSlices that are associated with that Service.\nThe backing endpoints are usually, but not always, pods running in the cluster.\n\nThe control plane usually manages EndpointSlices for you automatically. However,\nEndpointSlices can be defined manually for [Services](#gloss:service) without\n[selectors](#gloss:selector) specified.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/services-networking/endpoint-slices/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/endpoint-slice.md",
          "url": "https://kubernetes.io/docs/reference/glossary/endpoint-slice/",
          "line_start": null,
          "line_end": null,
          "quote": "EndpointSlices track the IP addresses of Pods for Services."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:namespace",
      "type": "glossary",
      "title": "Namespace",
      "summary": "An abstraction used by Kubernetes to support isolation of groups of resources within a single cluster.",
      "body": "An abstraction used by Kubernetes to support isolation of groups of resources.\n\n**Why it matters**\nNamespaces provide a way to organize and isolate resources within a cluster, improving security and scalability.\n\n**Key facts**\n- Unique within a cluster\n- Can be deleted or renamed\n\n**Common pitfalls**\n- Default namespace is often used by default\n- Must be valid DNS label\n\n**Related**\nPods, Services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/working-with-objects/namespaces",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/namespace.md",
          "url": "https://kubernetes.io/docs/reference/glossary/namespace/",
          "line_start": null,
          "line_end": null,
          "quote": "An abstraction used by Kubernetes to support isolation of groups of resources within a single cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:resourceslice",
      "type": "glossary",
      "title": "ResourceSlice",
      "summary": "Represents one or more infrastructure resources, like devices, in a pool of similar resources.",
      "body": "Represents one or more infrastructure resources, like devices, in a pool of similar resources.\n\n**Why it matters**\nResourceSlices provide a way to manage and abstract infrastructure resources, improving efficiency and flexibility.\n\n**Key facts**\n- Can represent multiple resources\n- Used for resource allocation and management\n\n**Common pitfalls**\n- Requires proper configuration\n- Must be compatible with underlying infrastructure\n\n**Related**\nPersistent Volumes, Storage Classes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "workload",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/reference/kubernetes-api/workload-resources/resource-slice-v1beta1/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/resourceslice.md",
          "url": "https://kubernetes.io/docs/reference/glossary/resourceslice/",
          "line_start": null,
          "line_end": null,
          "quote": "Represents one or more infrastructure resources, like devices, in a pool of similar resources."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:helm-chart",
      "type": "glossary",
      "title": "Helm Chart",
      "summary": "A package of pre-configured Kubernetes configurations that can be managed with the Helm tool.",
      "body": "A package of pre-configured Kubernetes configurations that can be managed with the Helm tool.\n\n**Why it matters**\nHelm Charts provide a way to easily manage and deploy complex applications, improving development speed and efficiency.\n\n**Key facts**\n- Can include multiple resources\n- Used for deployment and management\n\n**Common pitfalls**\n- Requires proper configuration\n- Must be compatible with underlying infrastructure\n\n**Related**\nDeployments, StatefulSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "tool"
      ],
      "aliases": [],
      "url": "https://helm.sh/docs/topics/charts/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/helm-chart.md",
          "url": "https://kubernetes.io/docs/reference/glossary/helm-chart/",
          "line_start": null,
          "line_end": null,
          "quote": "A package of pre-configured Kubernetes configurations that can be managed with the Helm tool."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:qos-class",
      "type": "glossary",
      "title": "QoS Class",
      "summary": "QoS Class (Quality of Service Class) provides a way for Kubernetes to classify pods within the cluster into several classes and make decisions about scheduling and eviction.",
      "body": "QoS Class is a way for Kubernetes to classify pods into classes and make scheduling and eviction decisions.\n\n**Why it matters**\nIt allows Kubernetes to manage resource allocation and pod prioritization within the cluster.\n\n**Key facts**\n- Provides a way to classify pods into several classes\n- Makes decisions about scheduling and eviction",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "architecture",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/pods/pod-qos/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/qos-class.md",
          "url": "https://kubernetes.io/docs/reference/glossary/qos-class/",
          "line_start": null,
          "line_end": null,
          "quote": "QoS Class (Quality of Service Class) provides a way for Kubernetes to classify pods within the cluster into several classes and make decisions about scheduling and eviction."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:pod-template",
      "type": "glossary",
      "title": "PodTemplate",
      "summary": "A template for creating Pods.",
      "body": "An API object that defines a template for creating [Pods](#gloss:pod).\nThe PodTemplate API is also embedded in API definitions for workload management, such as \n[Deployment](#gloss:deployment) or\n[StatefulSets](#gloss:StatefulSet).\n\n \n\nPod templates allow you to define common metadata (such as labels, or a template for the name of a\nnew Pod) as well as to specify a pod's desired state.\n[Workload management](/docs/concepts/workloads/controllers/) controllers use Pod templates\n(embedded into another object, such as a Deployment or StatefulSet)\nto define and manage one or more [Pods](#gloss:pod).\nWhen there can be multiple Pods based on the same template, these are called\n[replicas](#gloss:replica).\nAlthough you can create a PodTemplate object directly, you rarely need to do so.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/pod-template/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/pod-template.md",
          "url": "https://kubernetes.io/docs/reference/glossary/pod-template/",
          "line_start": null,
          "line_end": null,
          "quote": "A template for creating Pods."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:controller",
      "type": "glossary",
      "title": "Controller",
      "summary": "A control loop that watches the shared state of the cluster through the apiserver and makes changes attempting to move the current state towards the desired state.",
      "body": "In Kubernetes, controllers are control loops that watch the state of your\n[cluster](#gloss:cluster), then make or request\nchanges where needed.\nEach controller tries to move the current cluster state closer to the desired\nstate.\n\n\n\nControllers watch the shared state of your cluster through the\n[apiserver](#gloss:kube-apiserver) (part of the\n[control-plane](#gloss:control-plane)).\n\nSome controllers also run inside the control plane, providing control loops that\nare core to Kubernetes' operations. For example: the deployment controller, the\ndaemonset controller, the namespace controller, and the persistent volume\ncontroller (and others) all run within the\n[kube-controller-manager](#gloss:kube-controller-manager).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "fundamental",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "/docs/concepts/architecture/controller/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/controller.md",
          "url": "https://kubernetes.io/docs/reference/glossary/controller/",
          "line_start": null,
          "line_end": null,
          "quote": "A control loop that watches the shared state of the cluster through the apiserver and makes changes attempting to move the current state towards the desired state."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:infrastructure-resource",
      "type": "glossary",
      "title": "Resource (infrastructure)",
      "summary": "A defined amount of infrastructure available for consumption (CPU, memory, etc).",
      "body": "Capabilities provided to one or more [nodes](#gloss:node) (CPU, memory, GPUs, etc), and made available for consumption by\n[Pods](#gloss:pod) running on those nodes.\n\nKubernetes also uses the term _resource_ to describe an [API resource](#gloss:api-resource).\n\n\nComputers provide fundamental hardware facilities: processing power, storage memory, network, etc.\nThese resources have finite capacity, measured in a unit applicable to that resource (number of CPUs, bytes of memory, etc).\nKubernetes abstracts common [resources](/docs/concepts/configuration/manage-resources-containers/)\nfor allocation to workloads and utilizes operating system primitives (for example, Linux [cgroups](#gloss:cgroup)) to manage consumption by [workloads](#gloss:workload)).\n\nYou can also use [dynamic resource allocation](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/) to\nmanage complex resource allocations automatically.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/infrastructure-resource/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/infrastructure-resource.md",
          "url": "https://kubernetes.io/docs/reference/glossary/infrastructure-resource/",
          "line_start": null,
          "line_end": null,
          "quote": "A defined amount of infrastructure available for consumption (CPU, memory, etc)."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:kubeadm",
      "type": "glossary",
      "title": "Kubeadm",
      "summary": "A tool for quickly installing Kubernetes and setting up a secure cluster.",
      "body": "Kubeadm is a tool for quickly installing Kubernetes and setting up a secure cluster.\n\n**Why it matters**\nIt simplifies the process of deploying a Kubernetes cluster, making it easier to get started with Kubernetes.\n\n**Key facts**\n- A tool for quickly installing Kubernetes\n- Sets up a secure cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "tool",
        "operation",
        "cli"
      ],
      "aliases": [],
      "url": "/docs/reference/setup-tools/kubeadm/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/glossary/kubeadm/",
          "line_start": null,
          "line_end": null,
          "quote": "A tool for quickly installing Kubernetes and setting up a secure cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:istio",
      "type": "glossary",
      "title": "Istio",
      "summary": "An open platform (not Kubernetes-specific) that provides a uniform way to integrate microservices, manage traffic flow, enforce policies, and aggregate telemetry data.",
      "body": "Istio is an open platform that provides a uniform way to integrate microservices, manage traffic flow, enforce policies, and aggregate telemetry data.\n\n**Why it matters**\nIt enables developers to focus on writing code rather than managing infrastructure and services.\n\n**Key facts**\n- Provides a uniform way to integrate microservices\n- Manages traffic flow and enforces policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "architecture",
        "extension"
      ],
      "aliases": [],
      "url": "https://istio.io/latest/about/service-mesh/#what-is-istio",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/istio.md",
          "url": "https://kubernetes.io/docs/reference/glossary/istio/",
          "line_start": null,
          "line_end": null,
          "quote": "An open platform (not Kubernetes-specific) that provides a uniform way to integrate microservices, manage traffic flow, enforce policies, and aggregate telemetry data."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:containerd",
      "type": "glossary",
      "title": "containerd",
      "summary": "A container runtime with an emphasis on simplicity, robustness and portability",
      "body": "Containerd is a container runtime with an emphasis on simplicity, robustness, and portability.\n\n**Why it matters**\nIt provides a lightweight and efficient way to run containers, making it suitable for various use cases.\n\n**Key facts**\n- A container runtime\n- Emphasizes simplicity, robustness, and portability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "tool",
        "storage"
      ],
      "aliases": [],
      "url": "https://containerd.io/docs/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/containerd.md",
          "url": "https://kubernetes.io/docs/reference/glossary/containerd/",
          "line_start": null,
          "line_end": null,
          "quote": "A container runtime with an emphasis on simplicity, robustness and portability"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:kubelet",
      "type": "glossary",
      "title": "Kubelet",
      "summary": "An agent that runs on each node in the cluster. It makes sure that containers are running in a pod.",
      "body": "An agent that runs on each node in the cluster, responsible for ensuring containers are running within a pod.\n\n**Why it matters**\nEnsures containerized applications run smoothly and efficiently within Kubernetes clusters.\n\n**Key facts**\n- Runs on each node in the cluster\n- Responsible for container management within pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/reference/command-line-tools-reference/kubelet",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/kubelet.md",
          "url": "https://kubernetes.io/docs/reference/glossary/kubelet/",
          "line_start": null,
          "line_end": null,
          "quote": "An agent that runs on each node in the cluster. It makes sure that containers are running in a pod."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:garbage-collection",
      "type": "glossary",
      "title": "Garbage Collection",
      "summary": "A collective term for the various mechanisms Kubernetes uses to clean up cluster resources.",
      "body": "A collective term for Kubernetes' mechanisms to clean up cluster resources.\n\n**Why it matters**\nMaintains the health and organization of Kubernetes clusters by removing unnecessary resources.\n\n**Key facts**\n- Collective term for resource cleanup mechanisms\n- Essential for maintaining cluster health",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "operation",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "/docs/concepts/architecture/garbage-collection/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/garbage-collection.md",
          "url": "https://kubernetes.io/docs/reference/glossary/garbage-collection/",
          "line_start": null,
          "line_end": null,
          "quote": "A collective term for the various mechanisms Kubernetes uses to clean up cluster resources."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:dynamicvolumeprovisioning",
      "type": "glossary",
      "title": "Dynamic Volume Provisioning",
      "summary": "Allows users to request automatic creation of storage  Volumes.",
      "body": "Allows users to request automatic creation of storage Volumes.\n\n**Why it matters**\nStreamlines storage management and allocation within Kubernetes clusters, enhancing efficiency and scalability.\n\n**Key facts**\n- Automatically creates storage Volumes upon user request",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/storage/dynamic-provisioning",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/dynamic-volume-provisioning.md",
          "url": "https://kubernetes.io/docs/reference/glossary/dynamic-volume-provisioning/",
          "line_start": null,
          "line_end": null,
          "quote": "Allows users to request automatic creation of storage  Volumes."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cadvisor",
      "type": "glossary",
      "title": "cAdvisor",
      "summary": "Tool that provides understanding of the resource usage and performance characteristics for containers",
      "body": "Tool that provides insights into resource usage and performance characteristics for containers.\n\n**Why it matters**\nEnhances container monitoring, optimization, and troubleshooting within Kubernetes environments.\n\n**Key facts**\n- Provides resource usage and performance insights",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "tool",
        "observability",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "https://github.com/google/cadvisor/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cadvisor.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cadvisor/",
          "line_start": null,
          "line_end": null,
          "quote": "Tool that provides understanding of the resource usage and performance characteristics for containers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:object",
      "type": "glossary",
      "title": "Object",
      "summary": "An entity in the Kubernetes system, representing part of the state of your cluster.",
      "body": "An entity in the Kubernetes system, representing part of the state of your cluster.\n\n**Why it matters**\nUnderstanding objects is crucial for managing and interacting with your Kubernetes cluster.\n\n**Key facts**\n- Objects are a fundamental concept in Kubernetes.\n- They represent part of the cluster's state.\n\n**Common pitfalls**\n- Misunderstanding object types can lead to incorrect configuration or resource management.\n\n**Related**\nPods, Services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "fundamental",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/working-with-objects/#kubernetes-objects",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/object.md",
          "url": "https://kubernetes.io/docs/reference/glossary/object/",
          "line_start": null,
          "line_end": null,
          "quote": "An entity in the Kubernetes system, representing part of the state of your cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:ephemeral-container",
      "type": "glossary",
      "title": "Ephemeral Container",
      "summary": "A type of container type that you can temporarily run inside a Pod",
      "body": "A type of container type that you can temporarily run inside a Pod.\n\n**Why it matters**\nEphemeral containers provide a way to run temporary tasks within a pod without affecting the main application.\n\n**Key facts**\n- Ephemeral containers are short-lived and do not persist data.\n- They can be used for debugging or testing.\n\n**Common pitfalls**\n- Misusing ephemeral containers can lead to resource waste or unexpected behavior.\n\n**Related**\nPods, Containers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/pods/ephemeral-containers/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/ephemeral-container.md",
          "url": "https://kubernetes.io/docs/reference/glossary/ephemeral-container/",
          "line_start": null,
          "line_end": null,
          "quote": "A type of container type that you can temporarily run inside a Pod"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:volumeplugin",
      "type": "glossary",
      "title": "Volume Plugin",
      "summary": "A Volume Plugin enables integration of storage within a Pod.",
      "body": "A Volume Plugin enables integration of storage within a Pod.\n\n**Why it matters**\nVolume plugins provide flexibility in managing storage resources for pods and applications.\n\n**Key facts**\n- Volume plugins allow for external storage systems to be integrated into Kubernetes.\n- They enable dynamic provisioning of storage.\n\n**Common pitfalls**\n- Incompatible or misconfigured volume plugins can cause storage issues or data loss.\n\n**Related**\nPods, Persistent Volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/volume-plugin/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/volume-plugin.md",
          "url": "https://kubernetes.io/docs/reference/glossary/volume-plugin/",
          "line_start": null,
          "line_end": null,
          "quote": "A Volume Plugin enables integration of storage within a Pod."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:resourceclaimtemplate",
      "type": "glossary",
      "title": "ResourceClaimTemplate",
      "summary": "Defines a template for Kubernetes to create ResourceClaims. Used to provide per-Pod or per-PodGroup access to separate, similar resources.",
      "body": "Defines a template that Kubernetes uses to create\n[ResourceClaims](#gloss:resourceclaim).\nResourceClaimTemplates are used in\n[dynamic resource allocation (DRA)](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/)\nto provide _per-Pod or per-[PodGroup](#gloss:podgroup) access to separate, similar resources_.\n\n\n\nWhen a ResourceClaimTemplate is referenced in a workload specification,\nKubernetes automatically creates ResourceClaim objects based on the template.\nEach ResourceClaim is bound to a specific Pod or PodGroup. When the Pod\nterminates or the PodGroup is deleted, Kubernetes deletes the corresponding\nResourceClaim. PodGroup ResourceClaimTemplates require the\n[`DRAWorkloadResourceClaims`](/docs/reference/command-line-tools-reference/feature-gates/#DRAWorkloadResourceClaims)\nfeature to be enabled.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "workload",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#resourceclaims-templates",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/resourceclaimtemplate.md",
          "url": "https://kubernetes.io/docs/reference/glossary/resourceclaimtemplate/",
          "line_start": null,
          "line_end": null,
          "quote": "Defines a template for Kubernetes to create ResourceClaims. Used to provide per-Pod or per-PodGroup access to separate, similar resources."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:san",
      "type": "glossary",
      "title": "Subject Alternative Name",
      "summary": "An X.509 certificate extension to identify what hostname or IP address the certificate applies to.",
      "body": "An X.509 certificate extension to identify what hostname or IP address the certificate applies to.\n\n**Why it matters**\nSAN certificates ensure secure communication between services and clients by verifying their identities.\n\n**Key facts**\n- SAN certificates provide flexibility in specifying multiple hostnames or IPs.\n- They enhance security by preventing man-in-the-middle attacks.\n\n**Common pitfalls**\n- Incorrectly configured SAN certificates can lead to authentication failures or security breaches.\n\n**Related**\nCertificates, Kubernetes Networking",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "security"
      ],
      "aliases": [],
      "url": "https://datatracker.ietf.org/doc/html/rfc4985",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/san.md",
          "url": "https://kubernetes.io/docs/reference/glossary/san/",
          "line_start": null,
          "line_end": null,
          "quote": "An X.509 certificate extension to identify what hostname or IP address the certificate applies to."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:manifest",
      "type": "glossary",
      "title": "Manifest",
      "summary": "A serialized specification of one or more Kubernetes API objects.",
      "body": "A manifest is a serialized specification of one or more Kubernetes API objects.\n\n**Why it matters**\nManifests are used to define and manage the state of Kubernetes resources, such as pods and services.\n\n**Key facts**\n- Manifests are YAML or JSON files that contain API object definitions\n- They can be used to create, update, or delete Kubernetes resources\n\n**Common pitfalls**\n- Incorrectly formatted manifest files can cause deployment issues\n- Manifests should be carefully reviewed for accuracy and completeness\n\n**Related**\nKubernetes API objects, YAML/JSON files",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/manifest/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/manifest.md",
          "url": "https://kubernetes.io/docs/reference/glossary/manifest/",
          "line_start": null,
          "line_end": null,
          "quote": "A serialized specification of one or more Kubernetes API objects."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:finalizer",
      "type": "glossary",
      "title": "Finalizer",
      "summary": "A namespaced key that tells Kubernetes to wait until specific conditions are met before it fully deletes an object marked for deletion.",
      "body": "Finalizers are namespaced keys that tell Kubernetes to wait until specific\nconditions are met before it fully deletes [resources](#gloss:api-resource)\nthat are marked for deletion.\nFinalizers alert [controllers](#gloss:controller)\nto clean up resources the deleted object owned.\n\n\n\nWhen you tell Kubernetes to delete an object that has finalizers specified for\nit, the Kubernetes API marks the object for deletion by populating `.metadata.deletionTimestamp`,\nand returns a `202` status code (HTTP \"Accepted\"). The target object remains in a terminating state while the\ncontrol plane, or other components, take the actions defined by the finalizers.\nAfter these actions are complete, the controller removes the relevant finalizers\nfrom the target object. When the `metadata.finalizers` field is empty,\nKubernetes considers the deletion complete and deletes the object.\n\nYou can use finalizers to control [garbage collection](#gloss:garbage-collection)\nof resources. For example, you can define a finalizer to clean up related\n[API resources](#gloss:api-resource) or infrastructure before the controller\ndeletes the object being finalized.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "operation",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/working-with-objects/finalizers/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/finalizer.md",
          "url": "https://kubernetes.io/docs/reference/glossary/finalizer/",
          "line_start": null,
          "line_end": null,
          "quote": "A namespaced key that tells Kubernetes to wait until specific conditions are met before it fully deletes an object marked for deletion."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:cgroup",
      "type": "glossary",
      "title": "cgroup (control group)",
      "summary": "A group of Linux processes with optional resource isolation, accounting and limits.",
      "body": "A cgroup is a group of Linux processes with optional resource isolation, accounting, and limits.\n\n**Why it matters**\ncgroups are used to manage and control the resources allocated to containers and pods in a Kubernetes cluster.\n\n**Key facts**\n- cgroups provide resource isolation for processes\n- They can be used to limit CPU, memory, and other system resources\n\n**Common pitfalls**\n- Inadequate cgroup configuration can lead to resource exhaustion or starvation\n- Incorrectly configured cgroups can impact container performance\n\n**Related**\nLinux processes, Resource management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/cgroup/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cgroup.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cgroup/",
          "line_start": null,
          "line_end": null,
          "quote": "A group of Linux processes with optional resource isolation, accounting and limits."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:deployment",
      "type": "glossary",
      "title": "Deployment",
      "summary": "Manages a replicated application on your cluster.",
      "body": "A deployment manages a replicated application on your cluster.\n\n**Why it matters**\nDeployments provide a way to manage and update applications in a Kubernetes cluster, ensuring high availability and scalability.\n\n**Key facts**\n- Deployments can be used to roll out new versions of an application\n- They can also be used to roll back to previous versions if needed\n\n**Common pitfalls**\n- Inadequate deployment configuration can lead to downtime or data loss\n- Incorrectly configured deployments can impact application performance\n\n**Related**\nReplicated applications, Cluster management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "core-object",
        "workload",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/controllers/deployment/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/deployment.md",
          "url": "https://kubernetes.io/docs/reference/glossary/deployment/",
          "line_start": null,
          "line_end": null,
          "quote": "Manages a replicated application on your cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:certificate",
      "type": "glossary",
      "title": "Certificate",
      "summary": "A cryptographically secure file used to validate access to the Kubernetes cluster.",
      "body": "A certificate is a cryptographically secure file used to validate access to the Kubernetes cluster.\n\n**Why it matters**\nCertificates are used to authenticate and authorize access to the Kubernetes API server, ensuring secure communication between components.\n\n**Key facts**\n- Certificates can be used for authentication and authorization\n- They can also be used to encrypt communication between components\n\n**Common pitfalls**\n- Expired or revoked certificates can cause connectivity issues\n- Incorrectly configured certificates can impact cluster security\n\n**Related**\nKubernetes API server, Cluster security",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "security"
      ],
      "aliases": [],
      "url": "/docs/tasks/tls/managing-tls-in-a-cluster/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/certificate.md",
          "url": "https://kubernetes.io/docs/reference/glossary/certificate/",
          "line_start": null,
          "line_end": null,
          "quote": "A cryptographically secure file used to validate access to the Kubernetes cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:index",
      "type": "glossary",
      "title": "Glossary",
      "summary": "A centralized repository of terms and definitions used within a project or organization.",
      "body": "A centralized repository of terms and definitions used within a project or organization.\n\n**Why it matters**\nEnsures consistency in communication and understanding among team members and stakeholders.\n\n**Key facts**\n- Provides a common language for discussing technical concepts.\n- Helps to avoid misunderstandings caused by ambiguous terminology.\n\n**Common pitfalls**\n- May become outdated if not regularly updated.\n- Can be overwhelming or difficult to navigate for new users.\n\n**Related**\nWG (working group), CLA (Contributor License Agreement)",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/index/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/index.md",
          "url": "https://kubernetes.io/docs/reference/glossary/index/",
          "line_start": null,
          "line_end": null,
          "quote": ""
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:wg",
      "type": "glossary",
      "title": "WG (working group)",
      "summary": "Facilitates the discussion and/or implementation of a short-lived, narrow, or decoupled project for a committee, SIG, or cross-SIG effort.",
      "body": "A temporary, focused team that facilitates discussion and/or implementation of a specific project.\n\n**Why it matters**\nEnables efficient collaboration on short-lived or narrow projects without adding to the workload of existing committees or SIGs.\n\n**Key facts**\n- Facilitates discussion and/or implementation of short-lived, narrow, or decoupled projects.\n- Typically formed for a specific committee, SIG, or cross-SIG effort.\n\n**Common pitfalls**\n- May not have clear goals or objectives.\n- Can be difficult to dissolve once the project is complete.\n\n**Related**\nGlossary, CLA (Contributor License Agreement)",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": "https://github.com/kubernetes/community/blob/main/sig-list.md#master-working-group-list",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/wg.md",
          "url": "https://kubernetes.io/docs/reference/glossary/wg/",
          "line_start": null,
          "line_end": null,
          "quote": "Facilitates the discussion and/or implementation of a short-lived, narrow, or decoupled project for a committee, SIG, or cross-SIG effort."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:logging",
      "type": "glossary",
      "title": "Logging",
      "summary": "Logs are the list of events that are logged by cluster or application.",
      "body": "A record of events that occur within a cluster or application.\n\n**Why it matters**\nProvides valuable insights into system behavior and helps with debugging, monitoring, and troubleshooting.\n\n**Key facts**\n- Logs are the list of events that are logged by cluster or application.\n- Can be used for auditing, security, and compliance purposes.\n\n**Common pitfalls**\n- Can generate large amounts of data, leading to storage and performance issues.\n- May not provide sufficient context for understanding complex system interactions.\n\n**Related**\nGlossary, WG (working group)",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "fundamental",
        "observability",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/cluster-administration/logging/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/logging.md",
          "url": "https://kubernetes.io/docs/reference/glossary/logging/",
          "line_start": null,
          "line_end": null,
          "quote": "Logs are the list of events that are logged by cluster or application."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cla",
      "type": "glossary",
      "title": "CLA (Contributor License Agreement)",
      "summary": "Terms under which a contributor grants a license to an open source project for their contributions.",
      "body": "A legal agreement that governs the terms under which a contributor grants a license to an open source project.\n\n**Why it matters**\nEnsures that contributors' rights are protected and that the project can use their contributions without restrictions.\n\n**Key facts**\n- Terms under which a contributor grants a license to an open source project for their contributions.\n- Helps to establish clear guidelines for contribution and licensing.\n\n**Common pitfalls**\n- Can be complex or difficult to understand for non-lawyers.\n- May not provide sufficient flexibility for contributors with specific requirements.\n\n**Related**\nGlossary, WG (working group)",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "https://github.com/kubernetes/community/blob/main/CLA.md",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cla.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cla/",
          "line_start": null,
          "line_end": null,
          "quote": "Terms under which a contributor grants a license to an open source project for their contributions."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cluster-infrastructure",
      "type": "glossary",
      "title": "Cluster Infrastructure",
      "summary": "The infrastructure layer provides and maintains VMs, networking, security groups and others.",
      "body": "The infrastructure layer provides and maintains VMs, networking, security groups, and others.\n\n**Why it matters**\nUnderstanding cluster infrastructure is crucial for managing and scaling Kubernetes clusters.\n\n**Key facts**\n- Provides and maintains virtual machines\n- Includes networking and security groups\n\n**Common pitfalls**\n- Insufficient resource allocation can lead to performance issues\n- Inadequate security measures can compromise cluster integrity\n\n**Related**\nCluster Configuration, Node Management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/cluster-infrastructure/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cluster-infrastructure.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cluster-infrastructure/",
          "line_start": null,
          "line_end": null,
          "quote": "The infrastructure layer provides and maintains VMs, networking, security groups and others."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:taint",
      "type": "glossary",
      "title": "Taint",
      "summary": "A core object consisting of three required properties: key, value, and effect. Taints prevent the scheduling of pods on nodes or node groups.",
      "body": "A core object consisting of three required properties: key, value, and effect. Taints prevent the scheduling of pods on nodes or node groups.\n\n**Why it matters**\nTaints enable fine-grained control over pod placement and resource allocation within a cluster.\n\n**Key facts**\n- Consists of key, value, and effect properties\n- Prevents pod scheduling on tainted nodes\n\n**Common pitfalls**\n- Misconfigured taints can lead to pod scheduling issues\n- Inadequate understanding of taint effects can compromise cluster performance\n\n**Related**\nPod Scheduling, Node Management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/taint-and-toleration/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/taint.md",
          "url": "https://kubernetes.io/docs/reference/glossary/taint/",
          "line_start": null,
          "line_end": null,
          "quote": "A core object consisting of three required properties: key, value, and effect. Taints prevent the scheduling of pods on nodes or node groups."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:managed-service",
      "type": "glossary",
      "title": "Managed Service",
      "summary": "A software offering maintained by a third-party provider.",
      "body": "A software offering maintained by a third-party provider.\n\n**Why it matters**\nManaged services simplify cluster management and reduce operational overhead.\n\n**Key facts**\n- Maintained by a third-party provider\n- Simplifies cluster management\n\n**Common pitfalls**\n- Dependence on external providers can introduce security risks\n- Inadequate understanding of managed service terms can lead to unexpected costs\n\n**Related**\nCluster Configuration, Cloud Providers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "extension",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/managed-service/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/managed-service.md",
          "url": "https://kubernetes.io/docs/reference/glossary/managed-service/",
          "line_start": null,
          "line_end": null,
          "quote": "A software offering maintained by a third-party provider."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:static-pod",
      "type": "glossary",
      "title": "Static Pod",
      "summary": "A pod managed directly by the kubelet daemon on a specific node.",
      "body": "A pod managed directly by the kubelet daemon on a specific node.\n\n**Why it matters**\nStatic pods enable direct management of pods at the node level, improving cluster control and flexibility.\n\n**Key facts**\n- Managed directly by the kubelet daemon\n- Specific to a single node\n\n**Common pitfalls**\n- Inadequate understanding of static pod configuration can lead to pod deployment issues\n- Insufficient resource allocation can compromise static pod performance\n\n**Related**\nPod Management, Node Configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "/docs/tasks/configure-pod-container/static-pod/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/static-pod.md",
          "url": "https://kubernetes.io/docs/reference/glossary/static-pod/",
          "line_start": null,
          "line_end": null,
          "quote": "A pod managed directly by the kubelet daemon on a specific node."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:statefulset",
      "type": "glossary",
      "title": "StatefulSet",
      "summary": "A StatefulSet manages deployment and scaling of a set of Pods, with durable storage and persistent identifiers for each Pod.",
      "body": "Manages the deployment and scaling of a set of [Pods](#gloss:pod), *and provides guarantees about the ordering and uniqueness* of these Pods.\n\n \n\nLike a [deployment](#gloss:deployment), a StatefulSet manages Pods that are based on an identical container spec. Unlike a Deployment, a StatefulSet maintains a sticky identity for each of its Pods. These pods are created from the same spec, but are not interchangeable&#58; each has a persistent identifier that it maintains across any rescheduling.\n\nIf you want to use storage volumes to provide persistence for your workload, you can use a StatefulSet as part of the solution. Although individual Pods in a StatefulSet are susceptible to failure, the persistent Pod identifiers make it easier to match existing volumes to the new Pods that replace any that have failed.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "core-object",
        "workload",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/controllers/statefulset/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/statefulset.md",
          "url": "https://kubernetes.io/docs/reference/glossary/statefulset/",
          "line_start": null,
          "line_end": null,
          "quote": "A StatefulSet manages deployment and scaling of a set of Pods, with durable storage and persistent identifiers for each Pod."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:resource-quota",
      "type": "glossary",
      "title": "ResourceQuota",
      "summary": "Provides constraints that limit aggregate resource consumption per namespace.",
      "body": "ResourceQuota provides constraints to limit aggregate resource consumption per namespace.\n\n**Why it matters**\nIt ensures that namespaces do not consume excessive resources, preventing potential issues like node overload or resource exhaustion.\n\n**Key facts**\n- Limits aggregate resource consumption per namespace\n- Prevents potential issues like node overload or resource exhaustion\n\n**Common pitfalls**\n- Incorrectly configured quotas can lead to underutilization of resources\n\n**Related**\nNamespaces, Resource requests and limits",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "operation",
        "architecture",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/policy/resource-quotas/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/resource-quota.md",
          "url": "https://kubernetes.io/docs/reference/glossary/resource-quota/",
          "line_start": null,
          "line_end": null,
          "quote": "Provides constraints that limit aggregate resource consumption per namespace."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:userns",
      "type": "glossary",
      "title": "user namespace",
      "summary": "A Linux kernel feature to emulate superuser privilege for unprivileged users.",
      "body": "User namespace is a Linux kernel feature that emulates superuser privilege for unprivileged users.\n\n**Why it matters**\nIt allows unprivileged users to perform actions that would normally require root privileges, improving security and usability.\n\n**Key facts**\n- Emulates superuser privilege for unprivileged users\n- Improves security and usability\n\n**Common pitfalls**\n- Misconfigured user namespaces can lead to security vulnerabilities\n\n**Related**\nLinux kernel features, Privilege escalation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "security"
      ],
      "aliases": [],
      "url": "https://man7.org/linux/man-pages/man7/user_namespaces.7.html",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/userns.md",
          "url": "https://kubernetes.io/docs/reference/glossary/userns/",
          "line_start": null,
          "line_end": null,
          "quote": "A Linux kernel feature to emulate superuser privilege for unprivileged users."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:init-container",
      "type": "glossary",
      "title": "Init Container",
      "summary": "One or more initialization containers that must run to completion before any app containers run.",
      "body": "One or more initialization [containers](#gloss:container) that must run to completion before any app containers run.\n\n \n\nInitialization (init) containers are like regular app containers, with one difference: init containers must run to completion before any app containers can start. Init containers run in series: each init container must run to completion before the next init container begins.\n\nUnlike [sidecar containers](#gloss:sidecar-container), init containers do not remain running after Pod startup.\n\nFor more information, read [init containers](/docs/concepts/workloads/pods/init-containers/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/pods/init-containers/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/init-container.md",
          "url": "https://kubernetes.io/docs/reference/glossary/init-container/",
          "line_start": null,
          "line_end": null,
          "quote": "One or more initialization containers that must run to completion before any app containers run."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:gateway-api",
      "type": "glossary",
      "title": "Gateway API",
      "summary": "An API for modeling service networking in Kubernetes.",
      "body": "Gateway API is an API for modeling service networking in Kubernetes.\n\n**Why it matters**\nIt provides a standardized way to manage service networking, making it easier to define and enforce network policies.\n\n**Key facts**\n- Provides a standardized way to manage service networking\n- Makes it easier to define and enforce network policies\n\n**Common pitfalls**\n- Incorrectly configured gateways can lead to network connectivity issues\n\n**Related**\nService networking, Network policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "architecture",
        "extension"
      ],
      "aliases": [],
      "url": "/docs/concepts/services-networking/gateway/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/gateway.md",
          "url": "https://kubernetes.io/docs/reference/glossary/gateway/",
          "line_start": null,
          "line_end": null,
          "quote": "An API for modeling service networking in Kubernetes."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:event",
      "type": "glossary",
      "title": "Event",
      "summary": "Kubernetes objects that describe some state change in the cluster.",
      "body": "Event is a Kubernetes object that describes some state change in the cluster.\n\n**Why it matters**\nIt provides insights into cluster activity, helping with debugging and monitoring.\n\n**Key facts**\n- Describes some state change in the cluster\n- Provides insights into cluster activity\n\n**Common pitfalls**\n- Ignoring events can lead to undetected issues or security vulnerabilities\n\n**Related**\nKubernetes objects, Cluster monitoring and debugging",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "fundamental",
        "scheduling"
      ],
      "aliases": [],
      "url": "/docs/reference/kubernetes-api/cluster-resources/event-v1/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/event.md",
          "url": "https://kubernetes.io/docs/reference/glossary/event/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes objects that describe some state change in the cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:annotation",
      "type": "glossary",
      "title": "Annotation",
      "summary": "A key-value pair that is used to attach arbitrary non-identifying metadata to objects.",
      "body": "A key-value pair that provides non-identifying metadata to objects.\n\n**Why it matters**\nAnnotations allow for additional information to be stored with Kubernetes objects without affecting their identity.\n\n**Key facts**\n- Key-value pairs are used to attach arbitrary metadata\n- Metadata is non-identifying, meaning it does not affect object identity",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/working-with-objects/annotations",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/annotation.md",
          "url": "https://kubernetes.io/docs/reference/glossary/annotation/",
          "line_start": null,
          "line_end": null,
          "quote": "A key-value pair that is used to attach arbitrary non-identifying metadata to objects."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:api-eviction",
      "type": "glossary",
      "title": "API-initiated eviction",
      "summary": "API-initiated eviction is the process by which you use the Eviction API to create an Eviction object that triggers graceful pod termination.",
      "body": "API-initiated eviction is the process by which you use the [Eviction API](/docs/reference/generated/kubernetes-api//#create-eviction-pod-v1-core)\nto create an `Eviction` object that triggers graceful pod termination.\n\n\n\nYou can request eviction either by directly calling the Eviction API \nusing a client of the kube-apiserver, like the `kubectl drain` command. \nWhen an `Eviction` object is created, the API server terminates the Pod. \n\nAPI-initiated evictions respect your configured [`PodDisruptionBudgets`](/docs/tasks/run-application/configure-pdb/)\nand [`terminationGracePeriodSeconds`](/docs/concepts/workloads/pods/pod-lifecycle#pod-termination).\n\nAPI-initiated eviction is not the same as [node-pressure eviction](/docs/concepts/scheduling-eviction/node-pressure-eviction/).\n\n* See [API-initiated eviction](/docs/concepts/scheduling-eviction/api-eviction/) for more information.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation",
        "api",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/api-eviction/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/api-eviction.md",
          "url": "https://kubernetes.io/docs/reference/glossary/api-eviction/",
          "line_start": null,
          "line_end": null,
          "quote": "API-initiated eviction is the process by which you use the Eviction API to create an Eviction object that triggers graceful pod termination."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:service",
      "type": "glossary",
      "title": "Service",
      "summary": "A way to expose an application running on a set of Pods as a network service.",
      "body": "A method for exposing a network application that is running as one or more\n[Pods](#gloss:pod) in your cluster.\n\n\n\nThe set of Pods targeted by a Service is (usually) determined by a\n[selector](#gloss:selector). If more Pods are added or removed,\nthe set of Pods matching the selector will change. The Service makes sure that network traffic\ncan be directed to the current set of Pods for the workload.\n\nKubernetes Services either use IP networking (IPv4, IPv6, or both), or reference an external name in\nthe Domain Name System (DNS).\n\nThe Service abstraction enables other mechanisms, such as Ingress and Gateway.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "core-object",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/services-networking/service/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/service.md",
          "url": "https://kubernetes.io/docs/reference/glossary/service/",
          "line_start": null,
          "line_end": null,
          "quote": "A way to expose an application running on a set of Pods as a network service."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:security-context",
      "type": "glossary",
      "title": "Security Context",
      "summary": "The securityContext field defines privilege and access control settings for a Pod or container.",
      "body": "Defines privilege and access control settings for Pods or containers.\n\n**Why it matters**\nSecurity Context ensures that Pods and containers have the necessary privileges to run securely.\n\n**Key facts**\n- Privilege and access control settings are defined\n- Applies to Pods or containers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "security"
      ],
      "aliases": [],
      "url": "/docs/tasks/configure-pod-container/security-context/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/security-context.md",
          "url": "https://kubernetes.io/docs/reference/glossary/security-context/",
          "line_start": null,
          "line_end": null,
          "quote": "The securityContext field defines privilege and access control settings for a Pod or container."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:eviction",
      "type": "glossary",
      "title": "Eviction",
      "summary": "Process of terminating one or more Pods on Nodes",
      "body": "Process of terminating one or more Pods on Nodes.\n\n**Why it matters**\nEvictions help manage Node resources and prevent overutilization.\n\n**Key facts**\n- Terminates one or more Pods\n- Occurs on Nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/eviction.md",
          "url": "https://kubernetes.io/docs/reference/glossary/eviction/",
          "line_start": null,
          "line_end": null,
          "quote": "Process of terminating one or more Pods on Nodes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:minikube",
      "type": "glossary",
      "title": "Minikube",
      "summary": "A tool for running Kubernetes locally.",
      "body": "A tool for running Kubernetes locally.\n\n**Why it matters**\nMinikube enables developers to test and develop Kubernetes applications on their local machine.\n\n**Key facts**\n- Runs Kubernetes locally\n- Enables testing and development",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "tool",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "/docs/tasks/tools/#minikube",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/minikube.md",
          "url": "https://kubernetes.io/docs/reference/glossary/minikube/",
          "line_start": null,
          "line_end": null,
          "quote": "A tool for running Kubernetes locally."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:spec",
      "type": "glossary",
      "title": "Spec",
      "summary": "Field in Kubernetes manifests that defines the desired state or configuration.",
      "body": "Defines how each object, like Pods or Services, should be configured and its desired state.\n\n\nAlmost every Kubernetes object includes two nested object fields that govern the object's configuration: the object spec and the object status. For objects that have a spec, you have to set this when you create the object, providing a description of the characteristics you want the [resource](#gloss:api-resource) to have: its desired state.\n\nIt varies for different objects like Pods, StatefulSets, and Services, detailing settings such as containers, volumes, replicas, ports,\nand other specifications unique to each object type. This field encapsulates what state Kubernetes should maintain for the defined\nobject.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "architecture",
        "storage",
        "security",
        "scheduling"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/working-with-objects/#object-spec-and-status",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/spec.md",
          "url": "https://kubernetes.io/docs/reference/glossary/spec/",
          "line_start": null,
          "line_end": null,
          "quote": "Field in Kubernetes manifests that defines the desired state or configuration."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:cluster-architect",
      "type": "glossary",
      "title": "Cluster Architect",
      "summary": "A person who designs infrastructure that involves one or more Kubernetes clusters.",
      "body": "A person responsible for designing infrastructure involving one or more Kubernetes clusters.\n\n**Why it matters**\nEssential role in ensuring efficient and scalable cluster deployment.\n\n**Key facts**\n- Designs infrastructure with multiple Kubernetes clusters.\n- Ensures efficient and scalable cluster deployment.\n\n**Common pitfalls**\n- Inadequate planning can lead to underutilized resources or performance issues.\n- Failing to consider scalability needs can result in future headaches.\n\n**Related**\nKubernetes Cluster, Cluster Design",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "user-type",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/cluster-architect/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cluster-architect.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cluster-architect/",
          "line_start": null,
          "line_end": null,
          "quote": "A person who designs infrastructure that involves one or more Kubernetes clusters."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:container-runtime",
      "type": "glossary",
      "title": "Container Runtime",
      "summary": "The container runtime is the software that is responsible for running containers.",
      "body": "Software responsible for running containers.\n\n**Why it matters**\nCritical component for containerized application deployment and management.\n\n**Key facts**\n- Responsible for running containers.\n- Essential for containerized application deployment.\n\n**Common pitfalls**\n- Incompatible or outdated runtime can cause container issues.\n- Insufficient resources allocated to the runtime can impact performance.\n\n**Related**\nContainers, Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "workload"
      ],
      "aliases": [],
      "url": "/docs/setup/production-environment/container-runtimes",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/container-runtime.md",
          "url": "https://kubernetes.io/docs/reference/glossary/container-runtime/",
          "line_start": null,
          "line_end": null,
          "quote": "The container runtime is the software that is responsible for running containers."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:rbac",
      "type": "glossary",
      "title": "RBAC (Role-Based Access Control)",
      "summary": "Manages authorization decisions, allowing admins to dynamically configure access policies through the Kubernetes API.",
      "body": "Manages authorization decisions through dynamically configurable access policies.\n\n**Why it matters**\nEnsures secure and controlled access to cluster resources.\n\n**Key facts**\n- Manages authorization decisions.\n- Allows dynamic configuration of access policies.\n\n**Common pitfalls**\n- Inadequate RBAC configuration can lead to security vulnerabilities.\n- Overly restrictive policies can hinder cluster usability.\n\n**Related**\nAuthorization, Access Control",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "security",
        "fundamental"
      ],
      "aliases": [],
      "url": "/docs/reference/access-authn-authz/rbac/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/rbac.md",
          "url": "https://kubernetes.io/docs/reference/glossary/rbac/",
          "line_start": null,
          "line_end": null,
          "quote": "Manages authorization decisions, allowing admins to dynamically configure access policies through the Kubernetes API."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:affinity",
      "type": "glossary",
      "title": "Affinity",
      "summary": "Rules used by the scheduler to determine where to place pods",
      "body": "Rules used by the scheduler for pod placement.\n\n**Why it matters**\nEnsures efficient resource utilization and optimal pod placement.\n\n**Key facts**\n- Used by the scheduler for pod placement.\n- Helps ensure efficient resource utilization.\n\n**Common pitfalls**\n- Incorrect affinity configuration can lead to poor cluster performance.\n- Failing to consider node requirements can result in suboptimal pod placement.\n\n**Related**\nPod Scheduling, Resource Utilization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/affinity.md",
          "url": "https://kubernetes.io/docs/reference/glossary/affinity/",
          "line_start": null,
          "line_end": null,
          "quote": "Rules used by the scheduler to determine where to place pods"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:pod-security-policy",
      "type": "glossary",
      "title": "Pod Security Policy",
      "summary": "Removed API that enforced Pod security restrictions.",
      "body": "Pod Security Policy is an API that enforces pod security restrictions.\n\n**Why it matters**\nIt ensures that pods are created with the required security settings, preventing unauthorized access or malicious activity.\n\n**Key facts**\n- Removed in favor of other security features\n\n**Common pitfalls**\n- Incompatible with some legacy systems\n\n**Related**\nPod Security Admission Controller",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/security/pod-security-policy/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/pod-security-policy.md",
          "url": "https://kubernetes.io/docs/reference/glossary/pod-security-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Removed API that enforced Pod security restrictions."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:pod-disruption-budget",
      "type": "glossary",
      "title": "Pod Disruption Budget",
      "summary": "An object that limits the number of Pods of a replicated application that are down simultaneously from voluntary disruptions.",
      "body": "A Pod Disruption Budget limits the number of pods that can be down simultaneously due to voluntary disruptions.\n\n**Why it matters**\nIt ensures high availability and minimizes downtime for applications, allowing for planned maintenance or upgrades.\n\n**Key facts**\n- Limits pod disruption based on application requirements\n\n**Common pitfalls**\n- Requires careful configuration to avoid over-disruption\n\n**Related**\nReplicaSet",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "operation",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/pod-disruption-budget/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/pod-disruption-budget.md",
          "url": "https://kubernetes.io/docs/reference/glossary/pod-disruption-budget/",
          "line_start": null,
          "line_end": null,
          "quote": "An object that limits the number of Pods of a replicated application that are down simultaneously from voluntary disruptions."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:replica-set",
      "type": "glossary",
      "title": "ReplicaSet",
      "summary": "ReplicaSet ensures that a specified number of Pod replicas are running at one time",
      "body": "A ReplicaSet ensures a specified number of pod replicas are running at any given time.\n\n**Why it matters**\nIt guarantees the desired state of an application, even in the presence of node failures or other disruptions.\n\n**Key facts**\n- Automatically scales to maintain the desired replica count\n\n**Common pitfalls**\n- Can lead to over-provisioning if not properly configured\n\n**Related**\nDeployment",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "core-object",
        "workload",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/controllers/replicaset/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/replica-set.md",
          "url": "https://kubernetes.io/docs/reference/glossary/replica-set/",
          "line_start": null,
          "line_end": null,
          "quote": "ReplicaSet ensures that a specified number of Pod replicas are running at one time"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:pod",
      "type": "glossary",
      "title": "Pod",
      "summary": "A Pod represents a set of running containers in your cluster.",
      "body": "A Pod represents a set of running containers in your cluster.\n\n**Why it matters**\nIt provides a logical host for containers, allowing for efficient resource allocation and management.\n\n**Key facts**\n- Can contain multiple containers or volumes\n\n**Common pitfalls**\n- Requires careful configuration to ensure proper container isolation\n\n**Related**\nContainer",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "fundamental",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/pods/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/pod.md",
          "url": "https://kubernetes.io/docs/reference/glossary/pod/",
          "line_start": null,
          "line_end": null,
          "quote": "A Pod represents a set of running containers in your cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:replica",
      "type": "glossary",
      "title": "Replica",
      "summary": "Replicas are copies of pods, ensuring availability, scalability, and fault tolerance by maintaining identical instances.",
      "body": "A copy or duplicate of a [Pod](#gloss:pod) or\na set of pods. Replicas ensure high availability, scalability, and fault tolerance\nby maintaining multiple identical instances of a pod.\n\n\nReplicas are commonly used in Kubernetes to achieve the desired application state and reliability.\nThey enable workload scaling and distribution across multiple nodes in a cluster.\n\nBy defining the number of replicas in a Deployment or ReplicaSet, Kubernetes ensures that\nthe specified number of instances are running, automatically adjusting the count as needed.\n\nReplica management allows for efficient load balancing, rolling updates, and\nself-healing capabilities in a Kubernetes cluster.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "workload",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/replica/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/replica.md",
          "url": "https://kubernetes.io/docs/reference/glossary/replica/",
          "line_start": null,
          "line_end": null,
          "quote": "Replicas are copies of pods, ensuring availability, scalability, and fault tolerance by maintaining identical instances."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:api-resource",
      "type": "glossary",
      "title": "API resource",
      "summary": "A Kubernetes entity, representing an endpoint on the Kubernetes API server.",
      "body": "A Kubernetes entity representing an endpoint on the Kubernetes API server.\n\n**Why it matters**\nAPI resources are essential for interacting with the Kubernetes cluster, allowing users to manage and configure their applications.\n\n**Key facts**\n- Represents an endpoint on the Kubernetes API server\n- Used for managing and configuring applications",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/reference/using-api/api-concepts/#standard-api-terminology",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/api-resource.md",
          "url": "https://kubernetes.io/docs/reference/glossary/api-resource/",
          "line_start": null,
          "line_end": null,
          "quote": "A Kubernetes entity, representing an endpoint on the Kubernetes API server."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:member",
      "type": "glossary",
      "title": "Member",
      "summary": "A continuously active contributor in the K8s community.",
      "body": "A continuously active contributor in the K8s community.\n\n**Why it matters**\nMembers play a crucial role in shaping the Kubernetes ecosystem, contributing to its growth and development.\n\n**Key facts**\n- Actively contributes to the K8s community\n- Helps shape the Kubernetes ecosystem",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/member/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/member.md",
          "url": "https://kubernetes.io/docs/reference/glossary/member/",
          "line_start": null,
          "line_end": null,
          "quote": "A continuously active contributor in the K8s community."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cloud-controller-manager",
      "type": "glossary",
      "title": "Cloud Controller Manager",
      "summary": "Control plane component that integrates Kubernetes with third-party cloud providers.",
      "body": "Control plane component that integrates Kubernetes with third-party cloud providers.\n\n**Why it matters**\nThe Cloud Controller Manager enables seamless integration between Kubernetes and cloud services, allowing for efficient management of resources.\n\n**Key facts**\n- Integrates Kubernetes with third-party cloud providers\n- Enables efficient resource management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "operation"
      ],
      "aliases": [],
      "url": "/docs/concepts/architecture/cloud-controller/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cloud-controller-manager/",
          "line_start": null,
          "line_end": null,
          "quote": "Control plane component that integrates Kubernetes with third-party cloud providers."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:docker",
      "type": "glossary",
      "title": "Docker",
      "summary": "Docker is a software technology providing operating-system-level virtualization also known as containers.",
      "body": "Docker is a software technology providing operating-system-level virtualization also known as containers.\n\n**Why it matters**\nDocker is a key component in the Kubernetes ecosystem, enabling containerized applications to run efficiently and securely.\n\n**Key facts**\n- Provides operating-system-level virtualization\n- Enables containerized application deployment",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "https://docs.docker.com/engine/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/docker.md",
          "url": "https://kubernetes.io/docs/reference/glossary/docker/",
          "line_start": null,
          "line_end": null,
          "quote": "Docker is a software technology providing operating-system-level virtualization also known as containers."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:workload",
      "type": "glossary",
      "title": "Workload",
      "summary": "A workload is an application running on Kubernetes.",
      "body": "A workload is an application running on Kubernetes.\n\n**Why it matters**\nUnderstanding workloads is crucial for managing and scaling applications in a Kubernetes environment.\n\n**Key facts**\n- Workloads are the core unit of management in Kubernetes.\n- Each workload can have multiple replicas for high availability.\n\n**Common pitfalls**\n- Misconfiguring workload resources can lead to performance issues or resource waste.\n\n**Related**\nPods, ReplicaSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "workloads"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/workload.md",
          "url": "https://kubernetes.io/docs/reference/glossary/workload/",
          "line_start": null,
          "line_end": null,
          "quote": "A workload is an application running on Kubernetes."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cel",
      "type": "glossary",
      "title": "Common Expression Language",
      "summary": "An expression language that's designed to be safe for executing user code.",
      "body": "An expression language that's designed to be safe for executing user code.\n\n**Why it matters**\nCEL provides a secure way to evaluate expressions and make decisions in Kubernetes.\n\n**Key facts**\n- CEL is used for policy evaluation and decision-making.\n- It allows users to define complex rules and conditions.\n\n**Common pitfalls**\n- Misusing CEL can lead to security vulnerabilities or incorrect policy enforcement.\n\n**Related**\nPolicy, Decision-making",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "extension",
        "fundamental",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "https://cel.dev",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cel.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cel/",
          "line_start": null,
          "line_end": null,
          "quote": "An expression language that's designed to be safe for executing user code."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:data-plane",
      "type": "glossary",
      "title": "Data Plane",
      "summary": "The layer that provides capacity such as CPU, memory, network, and storage so that the containers can run and connect to a network.",
      "body": "The layer that provides capacity such as CPU, memory, network, and storage so that the containers can run and connect to a network.\n\n**Why it matters**\nUnderstanding the data plane is essential for optimizing resource utilization and performance in Kubernetes.\n\n**Key facts**\n- The data plane manages resources for containers.\n- It enables communication between containers and external networks.\n\n**Common pitfalls**\n- Failing to optimize data plane configuration can lead to resource underutilization or overprovisioning.\n\n**Related**\nNetwork Policies, Resource Management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/data-plane/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/data-plane.md",
          "url": "https://kubernetes.io/docs/reference/glossary/data-plane/",
          "line_start": null,
          "line_end": null,
          "quote": "The layer that provides capacity such as CPU, memory, network, and storage so that the containers can run and connect to a network."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:service-account",
      "type": "glossary",
      "title": "ServiceAccount",
      "summary": "Provides an identity for processes that run in a Pod.",
      "body": "Provides an identity for processes that run in a Pod.\n\n**Why it matters**\nService accounts enable secure authentication and authorization of pods in Kubernetes.\n\n**Key facts**\n- Each pod can have one or more service accounts.\n- Service accounts are used to authenticate with APIs and services.\n\n**Common pitfalls**\n- Misconfiguring service accounts can lead to security vulnerabilities or unauthorized access.\n\n**Related**\nPods, Authentication",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "core-object",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "/docs/tasks/configure-pod-container/configure-service-account/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/service-account.md",
          "url": "https://kubernetes.io/docs/reference/glossary/service-account/",
          "line_start": null,
          "line_end": null,
          "quote": "Provides an identity for processes that run in a Pod."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:job",
      "type": "glossary",
      "title": "Job",
      "summary": "A finite or batch task that runs to completion.",
      "body": "A job is a finite or batch task that runs to completion.\n\n**Why it matters**\nJobs are useful for running one-time tasks or batches of work in Kubernetes.\n\n**Key facts**\n- Jobs can be used for batch processing\n- Jobs run to completion\n\n**Common pitfalls**\n- If not properly configured, jobs may leave behind resources\n\n**Related**\nCronJob",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "core-object",
        "workload",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "/docs/concepts/workloads/controllers/job/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/job.md",
          "url": "https://kubernetes.io/docs/reference/glossary/job/",
          "line_start": null,
          "line_end": null,
          "quote": "A finite or batch task that runs to completion."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:gvr",
      "type": "glossary",
      "title": "Group Version Resource",
      "summary": "The API group, API version and name of a Kubernetes API.",
      "body": "A Group Version Resource (GVR) is the API group, API version and name of a Kubernetes API.\n\n**Why it matters**\nUnderstanding GVRs is crucial for working with Kubernetes APIs.\n\n**Key facts**\n- GVRs are used to identify specific resources\n- GVRs determine how resources are accessed\n\n**Common pitfalls**\n- Misunderstanding GVRs can lead to incorrect API usage\n\n**Related**\nAPI Groups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/group-version-resource/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/group-version-resource.md",
          "url": "https://kubernetes.io/docs/reference/glossary/group-version-resource/",
          "line_start": null,
          "line_end": null,
          "quote": "The API group, API version and name of a Kubernetes API."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:proxy",
      "type": "glossary",
      "title": "Proxy",
      "summary": "An application acting as an intermediary between clients and servers",
      "body": "In computing, a proxy is a server that acts as an intermediary for a remote\nservice.\n\n\n\nA client interacts with the proxy; the proxy copies the client's data to the\nactual server; the actual server replies to the proxy; the proxy sends the\nactual server's reply to the client.\n\n[kube-proxy](/docs/reference/command-line-tools-reference/kube-proxy/) is a\nnetwork proxy that runs on each node in your cluster, implementing part of\nthe Kubernetes [service](#gloss:service) concept.\n\nYou can run kube-proxy as a plain userland proxy service. If your operating\nsystem supports it, you can instead run kube-proxy in a hybrid mode that\nachieves the same overall effect using less system resources.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/proxy/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/proxy.md",
          "url": "https://kubernetes.io/docs/reference/glossary/proxy/",
          "line_start": null,
          "line_end": null,
          "quote": "An application acting as an intermediary between clients and servers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:kube-scheduler",
      "type": "glossary",
      "title": "kube-scheduler",
      "summary": "Control plane component that watches for newly created pods with no assigned node, and selects a node for them to run on.",
      "body": "The kube-scheduler is a control plane component that selects nodes for pods to run on.\n\n**Why it matters**\nProper scheduling is critical for efficient cluster utilization.\n\n**Key facts**\n- kube-scheduler watches for unassigned pods\n- kube-scheduler selects nodes based on pod requirements\n\n**Common pitfalls**\n- Poorly configured kube-scheduler can lead to inefficient resource allocation\n\n**Related**\nPods, Nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "architecture",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "/docs/reference/command-line-tools-reference/kube-scheduler/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/reference/glossary/kube-scheduler/",
          "line_start": null,
          "line_end": null,
          "quote": "Control plane component that watches for newly created pods with no assigned node, and selects a node for them to run on."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:ingress",
      "type": "glossary",
      "title": "Ingress",
      "summary": "An API object that manages external access to the services in a cluster, typically HTTP.",
      "body": "An Ingress is an API object that manages external access to services in a cluster.\n\n**Why it matters**\nIngress provides a way to manage incoming HTTP traffic.\n\n**Key facts**\n- Ingresses can be used for load balancing and SSL termination\n- Ingresses provide a single entry point for multiple services\n\n**Common pitfalls**\n- Misconfiguring Ingress can lead to security vulnerabilities or performance issues\n\n**Related**\nServices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "architecture",
        "extension"
      ],
      "aliases": [],
      "url": "/docs/concepts/services-networking/ingress/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/ingress.md",
          "url": "https://kubernetes.io/docs/reference/glossary/ingress/",
          "line_start": null,
          "line_end": null,
          "quote": "An API object that manages external access to the services in a cluster, typically HTTP."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:approver",
      "type": "glossary",
      "title": "Approver",
      "summary": "A person who can review and approve Kubernetes code contributions.",
      "body": "A person responsible for reviewing and approving Kubernetes code contributions.\n\n**Why it matters**\nEnsures quality and security of contributed code by verifying its correctness and adherence to standards.\n\n**Key facts**\n- Reviews code submissions\n- Approves or rejects contributions\n\n**Common pitfalls**\n- Delayed review process can hinder development progress\n- Inadequate approval process may lead to security vulnerabilities\n\n**Related**\nKubernetes contributors, Code review processes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/approver/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/approver.md",
          "url": "https://kubernetes.io/docs/reference/glossary/approver/",
          "line_start": null,
          "line_end": null,
          "quote": "A person who can review and approve Kubernetes code contributions."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:addons",
      "type": "glossary",
      "title": "Add-ons",
      "summary": "Resources that extend the functionality of Kubernetes.",
      "body": "Resources that extend the functionality of Kubernetes.\n\n**Why it matters**\nEnhances cluster capabilities and provides additional features for improved management and scalability.\n\n**Key facts**\n- Extend Kubernetes functionality\n- Can be installed or uninstalled as needed\n\n**Common pitfalls**\n- Over-reliance on add-ons can lead to complexity and maintenance issues\n- Inadequate resource allocation may impact performance\n\n**Related**\nKubernetes clusters, Additional features and tools",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "tool",
        "storage",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": "/docs/concepts/cluster-administration/addons/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/addons.md",
          "url": "https://kubernetes.io/docs/reference/glossary/addons/",
          "line_start": null,
          "line_end": null,
          "quote": "Resources that extend the functionality of Kubernetes."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:device",
      "type": "glossary",
      "title": "Device",
      "summary": "Any resource that's directly or indirectly attached your cluster's nodes, like GPUs or circuit boards.",
      "body": "Any resource attached directly or indirectly to a cluster's nodes.\n\n**Why it matters**\nEnables efficient use of resources and scalability by providing access to specialized hardware.\n\n**Key facts**\n- Includes GPUs, circuit boards, and other hardware components\n- Can be managed as part of the cluster\n\n**Common pitfalls**\n- Inadequate resource allocation may lead to underutilization or overprovisioning\n- Security risks associated with attaching external devices\n\n**Related**\nCluster nodes, Hardware resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "extension",
        "fundamental",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/device/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/device.md",
          "url": "https://kubernetes.io/docs/reference/glossary/device/",
          "line_start": null,
          "line_end": null,
          "quote": "Any resource that's directly or indirectly attached your cluster's nodes, like GPUs or circuit boards."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:container-lifecycle-hooks",
      "type": "glossary",
      "title": "Container Lifecycle Hooks",
      "summary": "The lifecycle hooks expose events in the container management lifecycle and let the user run code when the events occur.",
      "body": "Expose events in the container management lifecycle for user-defined actions.\n\n**Why it matters**\nProvides flexibility and customization options for container management by allowing users to run code at specific lifecycle events.\n\n**Key facts**\n- Exposes events like 'POST_START' and 'PRE_STOP'\n- Allows users to run custom code\n\n**Common pitfalls**\n- Complexity in hook implementation may lead to errors or security vulnerabilities\n- Inadequate testing can result in unexpected behavior\n\n**Related**\nContainer management, Customization options",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "extension",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "/docs/concepts/containers/container-lifecycle-hooks/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/reference/glossary/container-lifecycle-hooks/",
          "line_start": null,
          "line_end": null,
          "quote": "The lifecycle hooks expose events in the container management lifecycle and let the user run code when the events occur."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:mirror-pod",
      "type": "glossary",
      "title": "Mirror Pod",
      "summary": "An object in the API server that tracks a static pod on a kubelet.",
      "body": "A mirror pod is an object in the API server that tracks a static pod on a kubelet.\n\n**Why it matters**\nMirror pods provide a way to manage and track static pods, which are pods created outside of the Kubernetes control plane.\n\n**Key facts**\n- An object in the API server\n- Tracks a static pod on a kubelet",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/mirror-pod/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/mirror-pod.md",
          "url": "https://kubernetes.io/docs/reference/glossary/mirror-pod/",
          "line_start": null,
          "line_end": null,
          "quote": "An object in the API server that tracks a static pod on a kubelet."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:app-container",
      "type": "glossary",
      "title": "App Container",
      "summary": "A container used to run part of a workload. Compare with init container.",
      "body": "An app container is a container used to run part of a workload.\n\n**Why it matters**\nApp containers provide a way to break down workloads into smaller, more manageable components.\n\n**Key facts**\n- Used to run part of a workload\n- Compare with init container",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "workload",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/app-container/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/app-container.md",
          "url": "https://kubernetes.io/docs/reference/glossary/app-container/",
          "line_start": null,
          "line_end": null,
          "quote": "A container used to run part of a workload. Compare with init container."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:duration",
      "type": "glossary",
      "title": "Duration",
      "summary": "A string value representing an amount of time.",
      "body": "A string value representing an amount of time.\n\n\n\nThe format of a (Kubernetes) duration is based on the\n[`time.Duration`](https://pkg.go.dev/time#Duration) type from the Go programming language.\n\nIn Kubernetes APIs that use durations, the value is expressed as series of a non-negative\nintegers combined with a time unit suffix. You can have more than one time quantity and\nthe duration is the sum of those time quantities.\nThe valid time units are \"ns\", \"µs\" (or \"us\"), \"ms\", \"s\", \"m\", and \"h\".\n\nFor example: `5s` represents a duration of five seconds, and `1m30s` represents a duration\nof one minute and thirty seconds.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/duration/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/duration.md",
          "url": "https://kubernetes.io/docs/reference/glossary/duration/",
          "line_start": null,
          "line_end": null,
          "quote": "A string value representing an amount of time."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:api-group",
      "type": "glossary",
      "title": "API Group",
      "summary": "A set of related paths in the Kubernetes API.",
      "body": "An API group is a set of related paths in the Kubernetes API.\n\n**Why it matters**\nAPI groups provide a way to organize and structure the Kubernetes API, making it easier to manage and extend.\n\n**Key facts**\n- A set of related paths in the Kubernetes API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "architecture",
        "api",
        "networking"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/api-group.md",
          "url": "https://kubernetes.io/docs/reference/glossary/api-group/",
          "line_start": null,
          "line_end": null,
          "quote": "A set of related paths in the Kubernetes API."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:selector",
      "type": "glossary",
      "title": "Selector",
      "summary": "Allows users to filter a list of resources based on labels.",
      "body": "A selector allows users to filter a list of resources based on labels.\n\n**Why it matters**\nSelectors provide a way to efficiently manage and query large numbers of resources in Kubernetes.\n\n**Key facts**\n- Allows users to filter a list of resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "/docs/concepts/overview/working-with-objects/labels/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/selector.md",
          "url": "https://kubernetes.io/docs/reference/glossary/selector/",
          "line_start": null,
          "line_end": null,
          "quote": "Allows users to filter a list of resources based on labels."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cidr",
      "type": "glossary",
      "title": "CIDR",
      "summary": "CIDR is a notation for describing blocks of IP addresses and is used heavily in various networking configurations.",
      "body": "CIDR is a notation for describing blocks of IP addresses.\n\n**Why it matters**\nUsed in various networking configurations to describe IP address blocks.\n\n**Key facts**\n- Describes blocks of IP addresses\n- Used in networking configurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/cidr/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cidr.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cidr/",
          "line_start": null,
          "line_end": null,
          "quote": "CIDR is a notation for describing blocks of IP addresses and is used heavily in various networking configurations."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:cri",
      "type": "glossary",
      "title": "Container Runtime Interface (CRI)",
      "summary": "Protocol for communication between the kubelet and the local container runtime.",
      "body": "Protocol for communication between the kubelet and the local container runtime.\n\n**Why it matters**\nEnables communication between kubelet and container runtime.\n\n**Key facts**\n- Communication protocol\n- Between kubelet and container runtime",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "/docs/concepts/architecture/cri",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cri.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cri/",
          "line_start": null,
          "line_end": null,
          "quote": "Protocol for communication between the kubelet and the local container runtime."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:csi",
      "type": "glossary",
      "title": "Container Storage Interface (CSI)",
      "summary": "The Container Storage Interface (CSI) defines a standard interface to expose storage systems to containers.",
      "body": "The Container Storage Interface (CSI) defines a standard interface to expose storage systems to containers.\n\n \n\nCSI allows vendors to create custom storage plugins for Kubernetes without adding them to the Kubernetes repository (out-of-tree plugins). To use a CSI driver from a storage provider, you must first [deploy it to your cluster](https://kubernetes-csi.github.io/docs/deploying.html). You will then be able to create a [Storage Class](#gloss:storage-class) that uses that CSI driver.\n\n* [CSI in the Kubernetes documentation](/docs/concepts/storage/volumes/#csi)\n* [List of available CSI drivers](https://kubernetes-csi.github.io/docs/drivers.html)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/storage/volumes/#csi",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/csi.md",
          "url": "https://kubernetes.io/docs/reference/glossary/csi/",
          "line_start": null,
          "line_end": null,
          "quote": "The Container Storage Interface (CSI) defines a standard interface to expose storage systems to containers."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:cdi",
      "type": "glossary",
      "title": "Container Device Interface (CDI)",
      "summary": "A CNCF specification for describing device configuration that container runtimes apply when creating containers.",
      "body": "A CNCF specification for describing device configuration that container runtimes apply when creating containers.\n\n**Why it matters**\nStandardizes device configuration for containers.\n\n**Key facts**\n- CNCF specification\n- Device configuration for containers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "extension",
        "storage",
        "api"
      ],
      "aliases": [],
      "url": "/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/cdi.md",
          "url": "https://kubernetes.io/docs/reference/glossary/cdi/",
          "line_start": null,
          "line_end": null,
          "quote": "A CNCF specification for describing device configuration that container runtimes apply when creating containers."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:applications",
      "type": "glossary",
      "title": "Applications",
      "summary": "The layer where various containerized applications run.",
      "body": "The layer where various containerized applications run.\n\n**Why it matters**\nHosts containerized applications.\n\n**Key facts**\n- Containerized applications\n- Layer for application hosting",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "fundamental"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/glossary/applications/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/applications.md",
          "url": "https://kubernetes.io/docs/reference/glossary/applications/",
          "line_start": null,
          "line_end": null,
          "quote": "The layer where various containerized applications run."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:storageclass",
      "type": "glossary",
      "title": "Storage Class",
      "summary": "A StorageClass provides a way for administrators to describe different available storage types.",
      "body": "A StorageClass describes different available storage types.\n\n**Why it matters**\nStorageClasses allow administrators to define and manage various storage options for their cluster.\n\n**Key facts**\n- Provides a way for admins to describe different storage types\n- Helps manage various storage options",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/storage/storage-classes",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/storage-class.md",
          "url": "https://kubernetes.io/docs/reference/glossary/storage-class/",
          "line_start": null,
          "line_end": null,
          "quote": "A StorageClass provides a way for administrators to describe different available storage types."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "gloss:sig",
      "type": "glossary",
      "title": "SIG (special interest group)",
      "summary": "Community members who collectively manage an ongoing piece or aspect of the larger Kubernetes open source project.",
      "body": "[Community members](#gloss:member) who collectively manage an ongoing piece or aspect of the larger Kubernetes open source project.\n\n \n\nMembers within a SIG have a shared interest in advancing a specific area, such as architecture, API machinery, or documentation.\nSIGs must follow the SIG [governance guidelines](https://github.com/kubernetes/community/blob/main/committee-steering/governance/sig-governance.md), but can have their own contribution policy and channels of communication.\n\nFor more information, see the [kubernetes/community](https://github.com/kubernetes/community) repo and the current list of [SIGs and Working Groups](https://github.com/kubernetes/community/blob/main/sig-list.md).\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "community",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://github.com/kubernetes/community/blob/main/sig-list.md#special-interest-groups",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/sig.md",
          "url": "https://kubernetes.io/docs/reference/glossary/sig/",
          "line_start": null,
          "line_end": null,
          "quote": "Community members who collectively manage an ongoing piece or aspect of the larger Kubernetes open source project."
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "gloss:persistent-volume",
      "type": "glossary",
      "title": "Persistent Volume",
      "summary": "API object that represents a piece of storage in the cluster.",
      "body": "A Persistent Volume represents a piece of storage in the cluster.\n\n**Why it matters**\nPersistent Volumes provide a way to persist data across pod restarts and rescheduling.\n\n**Key facts**\n- API object representing a piece of storage\n- Helps persist data across pod restarts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core-object",
        "storage"
      ],
      "aliases": [],
      "url": "/docs/concepts/storage/persistent-volumes/",
      "meta": {},
      "provenance": [
        {
          "source": "reference/glossary/persistent-volume.md",
          "url": "https://kubernetes.io/docs/reference/glossary/persistent-volume/",
          "line_start": null,
          "line_end": null,
          "quote": "API object that represents a piece of storage in the cluster."
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:test",
      "type": "page",
      "title": "Docs smoke test page",
      "summary": "",
      "body": "This page serves two purposes:\n\n- Demonstrate how the Kubernetes documentation uses Markdown\n- Provide a \"smoke test\" document we can use to test HTML, CSS, and template\n  changes that affect the overall documentation.\n\n## Heading levels\n\nThe above heading is an H2. The page title renders as an H1. The following\nsections show H3 - H6.\n\n```markdown\n### H3\n\nThis is in an H3 section.\n\n#### H4\n\nThis is in an H4 section.\n\n##### H5\n\nThis is in an H5 section.\n\n###### H6\n\nThis is in an H6 section.\n```\n\nProduces:\n\n### H3\n\nThis is in an H3 section.\n\n#### H4\n\nThis is in an H4 section.\n\n##### H5\n\nThis is in an H5 section.\n\n###### H6\n\nThis is in an H6 section.\n\n## Inline elements\n\nInline elements show up within the text of paragraph, list item, admonition, or\nother block-level element.\n\nLorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor\nincididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis\nnostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.\nDuis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu\nfugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in\nculpa qui officia deserunt mollit anim id est laborum.\n\n### Inline text styles\n\nYou can use different text styles in markdown like:\n\n```markdown\n- **bold**\n- _italic_\n- ***bold italic***\n- ~~strikethrough~~\n- <u>underline</u>\n- _<u>underline italic</u>_\n- **<u>underline bold</u>**\n- ***<u>underline bold italic</u>***\n- `monospace text`\n- **`monospace bold`**\n```\n\nProduces:\n\n- **bold**\n- _italic_\n- ***bold italic***\n- ~~strikethrough~~\n- <u>underline</u>\n- _<u>underline italic</u>_\n- **<u>underline bold</u>**\n- ***<u>underline bold italic</u>***\n- `monospace text`\n- **`monospace bold`**\n\n## Lists\n\nMarkdown doesn't have strict rules about how to process lists. When we moved\nfrom Jekyll to Hugo, we broke some lists. To fix them, keep the following in\nmind:\n\n- Make sure you indent sub-list items **2 spaces**.\n\n- To end a list and start another, you need an HTML comment block on a new line\n  between the lists, flush with the left-hand border. The first list won't end\n  otherwise, no matter how many blank lines you put between it and the second.\n\n### Bullet lists\n\nYou can add a bullet list in markdown like:\n\n```markdown\n- This is a list item.\n* This is another list item in the same list.\n- You can mix `-` and `*`.\n  - To make a sub-item, indent two spaces.\n    - This is a sub-sub-item. Indent two more spaces.\n  - Another sub-item.\n```\n\nProduces:\n\n- This is a list item.\n* This is another list item in the same list.\n- You can mix `-` and `*`.\n  - To make a sub-item, indent two spaces.\n    - This is a sub-sub-item. Indent two more spaces.\n  - Another sub-item.\n\nAlso,\n\n- This is a new list. With Hugo, you need to use a HTML comment to separate two\n  consecutive lists. **The HTML comment needs to be at the left margin.**\n- Bullet lists can have paragraphs or block elements within them.\n\n  Indent the content to be the same as the first line of the bullet point.\n  **This paragraph and the code block line up with the first `B` in `Bullet`\n  above.**\n\n  ```bash\n  ls -l\n  ```\n\n  - And a sub-list after some block-level content\n\n- A bullet list item can contain a numbered list.\n  1. Numbered sub-list item 1\n  1. Numbered sub-list item 2\n\n### Numbered lists\n\n1. This is a list item.\n1. This is another list item in the same list. The number you use in Markdown\n   does not necessarily correlate to the number in the final output. By\n   convention, we keep them in sync.\n\n\n> **Note:** For single-digit numbered lists, using two spaces after the period makes\ninterior block-level content line up better along tab-stops.\n\n\n\n\n1. This is a new list. With Hugo, you need to use an HTML comment to separate\n   two consecutive lists. **The HTML comment needs to be at the left margin.**\n1. Numbered lists can have paragraphs or block elements within them.\n\n   Indent the content to be the same as the first line \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/test/",
      "meta": {
        "weight": null,
        "rel_path": "test.md"
      },
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": null,
          "line_end": null,
          "quote": "Docs smoke test page"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-levels",
      "type": "concept",
      "title": "Heading levels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 221,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:inline-elements",
      "type": "concept",
      "title": "Inline elements",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 658,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:lists",
      "type": "concept",
      "title": "Lists",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 1772,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:code-blocks",
      "type": "concept",
      "title": "Code blocks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 5195,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:links",
      "type": "concept",
      "title": "Links",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 6663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:images",
      "type": "concept",
      "title": "Images",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "storage",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 6998,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tables",
      "type": "concept",
      "title": "Tables",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "storage",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 8484,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:visualizations-with-mermaid",
      "type": "concept",
      "title": "Visualizations with Mermaid",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 9548,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sidebars-and-admonitions",
      "type": "concept",
      "title": "Sidebars and Admonitions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 10916,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:includes",
      "type": "concept",
      "title": "Includes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 11937,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:katacoda-embedded-live-environment",
      "type": "concept",
      "title": "Katacoda Embedded Live Environment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 12053,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:h3",
      "type": "concept",
      "title": "H3",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 351,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:inline-text-styles",
      "type": "concept",
      "title": "Inline text styles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 1234,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bullet-lists",
      "type": "concept",
      "title": "Bullet lists",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 2235,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:numbered-lists",
      "type": "concept",
      "title": "Numbered lists",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 3336,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tab-lists",
      "type": "concept",
      "title": "Tab lists",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 4328,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:header-within-a-tab-list",
      "type": "concept",
      "title": "Header within a tab list",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 4825,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:checklists",
      "type": "concept",
      "title": "Checklists",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "storage",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 5026,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:code-blocks-containing-hugo-shortcodes",
      "type": "concept",
      "title": "Code blocks containing Hugo shortcodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 6290,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sidebars",
      "type": "concept",
      "title": "Sidebars",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 11038,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admonitions",
      "type": "concept",
      "title": "Admonitions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "test.md",
      "tags": [
        "test.md",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 11311,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:_index",
      "type": "page",
      "title": "Documentation",
      "summary": "Documentation is available for Kubernetes.",
      "body": "Documentation is available for Kubernetes.\n\n**Why it matters**\nAccurate documentation helps users understand and use Kubernetes effectively.\n\n**Key facts**\n- Documentation is provided\n- Helps users understand Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "_index.md",
      "tags": [
        "_index.md",
        "storage",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/_index/",
      "meta": {
        "weight": null,
        "rel_path": "_index.md"
      },
      "provenance": [
        {
          "source": "_index.md",
          "url": "https://kubernetes.io/docs/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Documentation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:home/supported-doc-versions",
      "type": "page",
      "title": "Available Documentation Versions",
      "summary": "Multiple versions of documentation are available for Kubernetes.",
      "body": "Multiple versions of documentation are available for Kubernetes.\n\n**Why it matters**\nHaving multiple documentation versions allows users to access relevant information based on their version of Kubernetes.\n\n**Key facts**\n- Multiple documentation versions are provided\n- Helps users find relevant information",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "home",
      "tags": [
        "home",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/home/supported-doc-versions/",
      "meta": {
        "weight": 10,
        "rel_path": "home/supported-doc-versions.md"
      },
      "provenance": [
        {
          "source": "home/supported-doc-versions.md",
          "url": "https://kubernetes.io/docs/home/supported-doc-versions/",
          "line_start": null,
          "line_end": null,
          "quote": "Available Documentation Versions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:home/_index",
      "type": "page",
      "title": "Kubernetes Documentation",
      "summary": "Kubernetes is an open source container orchestration engine for automating deployment, scaling, and management of containerized applications. The open source project is hosted by the Cloud Native Computing Foundation.\n",
      "body": "Kubernetes Documentation provides comprehensive resources for learning and using Kubernetes.\n\n**Why it matters**\nAccurate understanding of Kubernetes concepts is crucial for effective cluster management and application deployment.\n\n**Key facts**\n- Documentation covers various aspects of Kubernetes, including architecture, components, and best practices.\n\n**Common pitfalls**\n- Inadequate documentation can lead to misconfiguration and security vulnerabilities in the cluster.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "home",
      "tags": [
        "home"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/home/_index/",
      "meta": {
        "weight": 10,
        "rel_path": "home/_index.md"
      },
      "provenance": [
        {
          "source": "home/_index.md",
          "url": "https://kubernetes.io/docs/home/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Documentation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/_index",
      "type": "page",
      "title": "Tasks",
      "summary": "Tasks are a way to perform specific actions on your Kubernetes cluster, such as deploying applications or managing resources.",
      "body": "Tasks are a way to perform specific actions on your Kubernetes cluster, such as deploying applications or managing resources.\n\n**Why it matters**\nTasks simplify complex operations and provide a structured approach to cluster management.\n\n**Key facts**\n- Tasks can be used for various purposes, including deployment, scaling, and troubleshooting.\n\n**Common pitfalls**\n- Incorrect task configuration can lead to unintended consequences on the cluster.\n\n**Related**\nRun Applications, kubectl-convert overview",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/_index/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/_index.md",
          "url": "https://kubernetes.io/docs/tasks/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Tasks"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/run-application/scale-stateful-set",
      "type": "page",
      "title": "Scale a StatefulSet",
      "summary": "",
      "body": "\n\nThis task shows how to scale a StatefulSet. Scaling a StatefulSet refers to\nincreasing or decreasing the number of replicas.\n\n## \n\n- StatefulSets are only available in Kubernetes version 1.5 or later.\n  To check your version of Kubernetes, run `kubectl version`.\n\n- Not all stateful applications scale nicely. If you are unsure about whether\n  to scale your StatefulSets, see [StatefulSet concepts](/docs/concepts/workloads/controllers/statefulset/)\n  or [StatefulSet tutorial](/docs/tutorials/stateful-application/basic-stateful-set/) for further information.\n\n- You should perform scaling only when you are confident that your stateful application\n  cluster is completely healthy.\n\n\n\n## Scaling StatefulSets\n\n### Use kubectl to scale StatefulSets\n\nFirst, find the StatefulSet you want to scale.\n\n```shell\nkubectl get statefulsets <stateful-set-name>\n```\n\nChange the number of replicas of your StatefulSet:\n\n```shell\nkubectl scale statefulsets <stateful-set-name> --replicas=<new-replicas>\n```\n\n### Make in-place updates on your StatefulSets\n\nAlternatively, you can do\n[in-place updates](/docs/concepts/cluster-administration/manage-deployment/#in-place-updates-of-resources)\non your StatefulSets.\n\nIf your StatefulSet was initially created with `kubectl apply`,\nupdate `.spec.replicas` of the StatefulSet manifests, and then do a `kubectl apply`:\n\n```shell\nkubectl apply -f <stateful-set-file-updated>\n```\n\nOtherwise, edit that field with `kubectl edit`:\n\n```shell\nkubectl edit statefulsets <stateful-set-name>\n```\n\nOr use `kubectl patch`:\n\n```shell\nkubectl patch statefulsets <stateful-set-name> -p '{\"spec\":{\"replicas\":<new-replicas>}}'\n```\n\n## Troubleshooting\n\n### Scaling down does not work right\n\nYou cannot scale down a StatefulSet when any of the stateful Pods it manages is\nunhealthy. Scaling down only takes place after those stateful Pods become running and ready.\n\nIf spec.replicas > 1, Kubernetes cannot determine the reason for an unhealthy Pod.\nIt might be the result of a permanent fault or of a transient fault. A transient\nfault can be caused by a restart required by upgrading or maintenance.\n\nIf the Pod is unhealthy due to a permanent fault, scaling\nwithout correcting the fault may lead to a state where the StatefulSet membership\ndrops below a certain minimum number of replicas that are needed to function\ncorrectly. This may cause your StatefulSet to become unavailable.\n\nIf the Pod is unhealthy due to a transient fault and the Pod might become available again,\nthe transient error may interfere with your scale-up or scale-down operation. Some distributed\ndatabases have issues when nodes join and leave at the same time. It is better\nto reason about scaling operations at the application level in these cases, and\nperform scaling only when you are sure that your stateful application cluster is\ncompletely healthy.\n\n## \n\n- Learn more about [deleting a StatefulSet](/docs/tasks/run-application/delete-stateful-set/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/run-application/scale-stateful-set.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": null,
          "line_end": null,
          "quote": "Scale a StatefulSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-prerequisites",
      "type": "concept",
      "title": "{{% heading \"prerequisites\" %}}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-statefulsets",
      "type": "concept",
      "title": "Scaling StatefulSets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 751,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:troubleshooting",
      "type": "concept",
      "title": "Troubleshooting",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 1711,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-whatsnext",
      "type": "concept",
      "title": "{{% heading \"whatsnext\" %}}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 2910,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-kubectl-to-scale-statefulsets",
      "type": "concept",
      "title": "Use kubectl to scale StatefulSets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 776,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:make-in-place-updates-on-your-statefulsets",
      "type": "concept",
      "title": "Make in-place updates on your StatefulSets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 1061,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-down-does-not-work-right",
      "type": "concept",
      "title": "Scaling down does not work right",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 1731,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/run-application/delete-stateful-set",
      "type": "page",
      "title": "Delete a StatefulSet",
      "summary": "",
      "body": "\n\nThis task shows you how to delete a [StatefulSet](#gloss:StatefulSet).\n\n## \n\n- This task assumes you have an application running on your cluster represented by a StatefulSet.\n\n\n\n## Deleting a StatefulSet\n\nYou can delete a StatefulSet in the same way you delete other resources in Kubernetes:\nuse the `kubectl delete` command, and specify the StatefulSet either by file or by name.\n\n```shell\nkubectl delete -f <file.yaml>\n```\n\n```shell\nkubectl delete statefulsets <statefulset-name>\n```\n\nYou may need to delete the associated headless service separately after the StatefulSet itself is deleted.\n\n```shell\nkubectl delete service <service-name>\n```\n\nWhen deleting a StatefulSet through `kubectl`, the StatefulSet scales down to 0.\nAll Pods that are part of this workload are also deleted. If you want to delete\nonly the StatefulSet and not the Pods, use `--cascade=orphan`. For example:\n\n```shell\nkubectl delete -f <file.yaml> --cascade=orphan\n```\n\nBy passing `--cascade=orphan` to `kubectl delete`, the Pods managed by the StatefulSet\nare left behind even after the StatefulSet object itself is deleted. If the pods have\na label `app.kubernetes.io/name=MyApp`, you can then delete them as follows:\n\n```shell\nkubectl delete pods -l app.kubernetes.io/name=MyApp\n```\n\n### Persistent Volumes\n\nDeleting the Pods in a StatefulSet will not delete the associated volumes.\nThis is to ensure that you have the chance to copy data off the volume before\ndeleting it. Deleting the PVC after the pods have terminated might trigger\ndeletion of the backing Persistent Volumes depending on the storage class\nand reclaim policy. You should never assume ability to access a volume\nafter claim deletion.\n\n\n> **Note:** Use caution when deleting a PVC, as it may lead to data loss.\n\n\n### Complete deletion of a StatefulSet\n\nTo delete everything in a StatefulSet, including the associated pods,\nyou can run a series of commands similar to the following:\n\n```shell\ngrace=$(kubectl get pods <stateful-set-pod> --template '{{.spec.terminationGracePeriodSeconds}}')\nkubectl delete statefulset -l app.kubernetes.io/name=MyApp\nsleep $grace\nkubectl delete pvc -l app.kubernetes.io/name=MyApp\n\n```\n\nIn the example above, the Pods have the label `app.kubernetes.io/name=MyApp`;\nsubstitute your own label as appropriate.\n\n### Force deletion of StatefulSet pods\n\nIf you find that some pods in your StatefulSet are stuck in the 'Terminating'\nor 'Unknown' states for an extended period of time, you may need to manually\nintervene to forcefully delete the pods from the apiserver.\nThis is a potentially dangerous task. Refer to\n[Force Delete StatefulSet Pods](/docs/tasks/run-application/force-delete-stateful-set-pod/)\nfor details.\n\n## \n\nLearn more about [force deleting StatefulSet Pods](/docs/tasks/run-application/force-delete-stateful-set-pod/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/run-application/delete-stateful-set.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": null,
          "line_end": null,
          "quote": "Delete a StatefulSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-a-statefulset",
      "type": "concept",
      "title": "Deleting a StatefulSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "workloads",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistent-volumes",
      "type": "concept",
      "title": "Persistent Volumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": 1341,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:complete-deletion-of-a-statefulset",
      "type": "concept",
      "title": "Complete deletion of a StatefulSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": 1851,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:force-deletion-of-statefulset-pods",
      "type": "concept",
      "title": "Force deletion of StatefulSet pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "workloads",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": 2378,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "type": "page",
      "title": "HorizontalPodAutoscaler Walkthrough",
      "summary": "",
      "body": "\n\nA [HorizontalPodAutoscaler](/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/)\n(HPA for short)\nautomatically updates a workload resource (such as\na [Deployment](#gloss:deployment) or\n[StatefulSet](#gloss:statefulset)), with the\naim of automatically scaling the workload to match demand.\n\nHorizontal scaling means that the response to increased load is to deploy more\n[Pods](#gloss:pod).\nThis is different from _vertical_ scaling, which for Kubernetes would mean\nassigning more resources (for example: memory or CPU) to the Pods that are already\nrunning for the workload.\n\nIf the load decreases, and the number of Pods is above the configured minimum,\nthe HorizontalPodAutoscaler instructs the workload resource (the Deployment, StatefulSet,\nor other similar resource) to scale back down.\n\nThis document walks you through an example of enabling HorizontalPodAutoscaler to\nautomatically manage scale for an example web app. This example workload is Apache\nhttpd running some PHP code.\n\n## \n\n  If you're running an older\nrelease of Kubernetes, refer to the version of the documentation for that release (see\n[available documentation versions](/docs/home/supported-doc-versions/)).\n\nTo follow this walkthrough, you also need to use a cluster that has a\n[Metrics Server](https://github.com/kubernetes-sigs/metrics-server#readme) deployed and configured.\nThe Kubernetes Metrics Server collects resource metrics from\nthe [kubelets](#gloss:kubelet) in your cluster, and exposes those metrics\nthrough the [Kubernetes API](/docs/concepts/overview/kubernetes-api/),\nusing an [APIService](/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/) to add\nnew kinds of resource that represent metric readings.\n\nTo learn how to deploy the Metrics Server, see the\n[metrics-server documentation](https://github.com/kubernetes-sigs/metrics-server#deployment).\n\nIf you are running [minikube](#gloss:minikube), run the following command to enable metrics-server:\n\n```shell\nminikube addons enable metrics-server\n```\n\n\n\n## Run and expose php-apache server\n\nTo demonstrate a HorizontalPodAutoscaler, you will first start a Deployment that runs a container using the\n`hpa-example` image, and expose it as a [service](#gloss:service)\nusing the following manifest:\n\n\n\nTo do so, run the following command:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/php-apache.yaml\n```\n\n```\ndeployment.apps/php-apache created\nservice/php-apache created\n```\n\n## Create the HorizontalPodAutoscaler {#create-horizontal-pod-autoscaler}\n\nNow that the server is running, create the autoscaler using `kubectl`. The\n[`kubectl autoscale`](/docs/reference/generated/kubectl/kubectl-commands#autoscale) subcommand,\npart of `kubectl`, helps you do this.\n\nYou will shortly run a command that creates a HorizontalPodAutoscaler that maintains\nbetween 1 and 10 replicas of the Pods controlled by the php-apache Deployment that\nyou created in the first step of these instructions.\n\nRoughly speaking, the HPA [controller](#gloss:controller) will increase and decrease\nthe number of replicas (by updating the Deployment) to maintain an average CPU utilization across all Pods of 50%.\nThe Deployment then updates the ReplicaSet - this is part of how all Deployments work in Kubernetes -\nand then the ReplicaSet either adds or removes Pods based on the change to its `.spec`.\n\nSince each pod requests 200 milli-cores by `kubectl run`, this means an average CPU usage of 100 milli-cores.\nSee [Algorithm details](/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/#algorithm-details) for more details\non the algorithm.\n\n\nCreate the HorizontalPodAutoscaler:\n\n```shell\nkubectl autoscale deployment php-apache --cpu=50% --min=1 --max=10\n```\n\n```\nhorizontalpodautoscaler.autoscaling/php-apache autoscaled\n```\n\nYou can check the current status of the newly-made HorizontalPodAutoscaler, by running:\n\n```shell\n# You can use \"hpa\" or \"horizontalpodautoscaler\"; either name works OK.\nkubectl get hpa\n```\n\nThe output \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
      "meta": {
        "weight": 100,
        "rel_path": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": null,
          "line_end": null,
          "quote": "HorizontalPodAutoscaler Walkthrough"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:run-and-expose-php-apache-server",
      "type": "concept",
      "title": "Run and expose php-apache server",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 2294,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-the-horizontalpodautoscaler-create-horizontal-pod-autoscaler",
      "type": "concept",
      "title": "Create the HorizontalPodAutoscaler {#create-horizontal-pod-autoscaler}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "workloads",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 2800,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:increase-the-load-increase-load",
      "type": "concept",
      "title": "Increase the load {#increase-load}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 4910,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stop-generating-load-stop-load",
      "type": "concept",
      "title": "Stop generating load {#stop-load}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 6635,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:autoscaling-on-multiple-metrics-and-custom-metrics",
      "type": "concept",
      "title": "Autoscaling on multiple metrics and custom metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 7604,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:appendix-horizontal-pod-autoscaler-status-conditions",
      "type": "concept",
      "title": "Appendix: Horizontal Pod Autoscaler Status Conditions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 15771,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quantities",
      "type": "concept",
      "title": "Quantities",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 18173,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:other-possible-scenarios",
      "type": "concept",
      "title": "Other possible scenarios",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 18739,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:autoscaling-on-more-specific-metrics",
      "type": "concept",
      "title": "Autoscaling on more specific metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 12977,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:autoscaling-on-metrics-not-related-to-kubernetes-objects",
      "type": "concept",
      "title": "Autoscaling on metrics not related to Kubernetes objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 13999,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-the-autoscaler-declaratively",
      "type": "concept",
      "title": "Creating the autoscaler declaratively",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 18768,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/run-application/run-single-instance-stateful-application",
      "type": "page",
      "title": "Run a Single-Instance Stateful Application",
      "summary": "",
      "body": "\n\nThis page shows you how to run a single-instance stateful application\nin Kubernetes using a PersistentVolume and a Deployment. The\napplication is MySQL.\n\n## \n\n- Create a PersistentVolume referencing a disk in your environment.\n- Create a MySQL Deployment.\n- Expose MySQL to other pods in the cluster at a known DNS name.\n\n## \n\n-  \n\n- \n\n\n\n## Deploy MySQL\n\nYou can run a stateful application by creating a Kubernetes Deployment\nand connecting it to an existing PersistentVolume using a\nPersistentVolumeClaim. For example, this YAML file describes a\nDeployment that runs MySQL and references the PersistentVolumeClaim. The file\ndefines a volume mount for /var/lib/mysql, and then creates a\nPersistentVolumeClaim that looks for a 20G volume. This claim is\nsatisfied by any existing volume that meets the requirements,\nor by a dynamic provisioner.\n\nNote: The password is defined in the config yaml, and this is insecure. See\n[Kubernetes Secrets](/docs/concepts/configuration/secret/)\nfor a secure solution.\n\n\n\n\n1. Deploy the PV and PVC of the YAML file:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/mysql/mysql-pv.yaml\n   ```\n\n1. Deploy the contents of the YAML file:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/mysql/mysql-deployment.yaml\n   ```\n\n1. Display information about the Deployment:\n\n   ```shell\n   kubectl describe deployment mysql\n   ```\n\n   The output is similar to this:\n\n   ```\n   Name:                 mysql\n   Namespace:            default\n   CreationTimestamp:    Tue, 01 Nov 2016 11:18:45 -0700\n   Labels:               app=mysql\n   Annotations:          deployment.kubernetes.io/revision=1\n   Selector:             app=mysql\n   Replicas:             1 desired | 1 updated | 1 total | 0 available | 1 unavailable\n   StrategyType:         Recreate\n   MinReadySeconds:      0\n   Pod Template:\n     Labels:       app=mysql\n     Containers:\n       mysql:\n       Image:      mysql:9\n       Port:       3306/TCP\n       Environment:\n         MYSQL_ROOT_PASSWORD:      password\n       Mounts:\n         /var/lib/mysql from mysql-persistent-storage (rw)\n     Volumes:\n       mysql-persistent-storage:\n       Type:       PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)\n       ClaimName:  mysql-pv-claim\n       ReadOnly:   false\n   Conditions:\n     Type          Status  Reason\n     ----          ------  ------\n     Available     False   MinimumReplicasUnavailable\n     Progressing   True    ReplicaSetUpdated\n   OldReplicaSets:       <none>\n   NewReplicaSet:        mysql-63082529 (1/1 replicas created)\n   Events:\n     FirstSeen    LastSeen    Count    From                SubobjectPath    Type        Reason            Message\n     ---------    --------    -----    ----                -------------    --------    ------            -------\n     33s          33s         1        {deployment-controller }             Normal      ScalingReplicaSet Scaled up replica set mysql-63082529 to 1\n   ```\n\n1. List the pods created by the Deployment:\n\n   ```shell\n   kubectl get pods -l app=mysql\n   ```\n\n   The output is similar to this:\n\n   ```\n   NAME                   READY     STATUS    RESTARTS   AGE\n   mysql-63082529-2z3ki   1/1       Running   0          3m\n   ```\n\n1. Inspect the PersistentVolumeClaim:\n\n   ```shell\n   kubectl describe pvc mysql-pv-claim\n   ```\n\n   The output is similar to this:\n\n   ```\n   Name:         mysql-pv-claim\n   Namespace:    default\n   StorageClass:\n   Status:       Bound\n   Volume:       mysql-pv-volume\n   Labels:       <none>\n   Annotations:    pv.kubernetes.io/bind-completed=yes\n                   pv.kubernetes.io/bound-by-controller=yes\n   Capacity:     20Gi\n   Access Modes: RWO\n   Events:       <none>\n   ```\n\n## Accessing the MySQL instance\n\nThe preceding YAML file creates a service that\nallows other Pods in the cluster to access the database. The Service option\n`clusterIP: None` lets the Service DNS name resolve directly to the\nPod's IP address. This is optima\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/run-application/run-single-instance-stateful-application.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": null,
          "line_end": null,
          "quote": "Run a Single-Instance Stateful Application"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-objectives",
      "type": "concept",
      "title": "{{% heading \"objectives\" %}}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploy-mysql",
      "type": "concept",
      "title": "Deploy MySQL",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 552,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-the-mysql-instance",
      "type": "concept",
      "title": "Accessing the MySQL instance",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 4080,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating",
      "type": "concept",
      "title": "Updating",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 4961,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-a-deployment",
      "type": "concept",
      "title": "Deleting a deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "workloads",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 5732,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/run-application/update-deployment-rolling",
      "type": "page",
      "title": "Update a Deployment Without Downtime",
      "summary": "",
      "body": "\n\nThis page shows how to update a running Deployment to a new version using a\nrolling update. A rolling update gradually replaces old Pods with new ones, so\nyour application remains available throughout the process.\n\n## \n\n- Trigger a rolling update on a Deployment.\n- Monitor rollout progress.\n- Pause and resume the rollout.\n- Configure rolling update strategy parameters.\n- (If required) Roll back to a previous revision.\n\n## \n\n\n\nYou need an existing Deployment. If you do not have one, create the nginx\nDeployment from\n[Run a Stateless Application Using a Deployment](/docs/tasks/run-application/run-stateless-application-deployment/):\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/deployment.yaml\n```\n\nVerify the Deployment runs two Pods:\n\n```shell\nkubectl get deployment nginx-deployment\n```\n\nThe output is similar to:\n\n```\nNAME               READY   UP-TO-DATE   AVAILABLE   AGE\nnginx-deployment   2/2     2            2           10s\n```\n\n\n\n## Performing a rolling update\n\nAny change to the `.spec.template` field of a Deployment triggers a rolling\nupdate. Kubernetes creates new Pods with the updated configuration and gradually\nterminates old Pods.\n\n### Updating with `kubectl apply`\n\nYou can trigger a rolling update by editing the Deployment manifest and applying the change. This approach works well when you keep manifests in version control.\n\nExport the current Deployment to a local file:\n\n```shell\nkubectl get deployment nginx-deployment -o yaml > /tmp/nginx-deployment.yaml\n```\n\nEdit `/tmp/nginx-deployment.yaml` and change `.spec.template.spec.containers[0].image`\nfrom `nginx:1.14.2` to `nginx:1.16.1`.\n\nBefore applying, compare your local changes against the cluster state:\n\n```shell\nkubectl diff -f /tmp/nginx-deployment.yaml\n```\n\nThe output is similar to:\n\n```\ndiff -u -N /tmp/LIVE/apps.v1.Deployment.default.nginx-deployment /tmp/MERGED/apps.v1.Deployment.default.nginx-deployment\n--- /tmp/LIVE/apps.v1.Deployment...\n+++ /tmp/MERGED/apps.v1.Deployment...\n@@ -29,7 +29,7 @@\n       containers:\n-      - image: nginx:1.14.2\n+      - image: nginx:1.16.1\n         name: nginx\n```\n\nApply the updated manifest:\n\n```shell\nkubectl apply -f /tmp/nginx-deployment.yaml\n```\n\n### Updating only the container image\n\nTo update the container image without editing a manifest file, use\n`kubectl set image`:\n\n```shell\nkubectl set image deployment/nginx-deployment nginx=nginx:1.16.1\n```\n\nThe output is similar to:\n\n```\ndeployment.apps/nginx-deployment image updated\n```\n\nVerify the image was updated:\n\n```shell\nkubectl get deployment nginx-deployment -o jsonpath='{.spec.template.spec.containers[0].image}'\n```\n\nThe output is similar to:\n\n```\nnginx:1.16.1\n```\n\n## Monitoring rollout progress\n\nUse `kubectl rollout status` to watch the progress of a rolling update:\n\n```shell\nkubectl rollout status deployment/nginx-deployment\n```\n\nThe output is similar to:\n\n```\nWaiting for deployment \"nginx-deployment\" rollout to finish: 1 out of 2 new replicas have been updated...\nWaiting for deployment \"nginx-deployment\" rollout to finish: 1 out of 2 new replicas have been updated...\nWaiting for deployment \"nginx-deployment\" rollout to finish: 1 old replicas are pending termination...\ndeployment \"nginx-deployment\" successfully rolled out\n```\n\nAfter the rollout completes, verify the Deployment:\n\n```shell\nkubectl get deployment nginx-deployment\n```\n\nThe output is similar to:\n\n```\nNAME               READY   UP-TO-DATE   AVAILABLE   AGE\nnginx-deployment   2/2     2            2           2m\n```\n\n## Pausing and resuming a rollout\n\nYou can pause a rollout to inspect a partial update or to batch multiple changes\ninto a single rollout.\n\n### Pausing a rollout\n\n```shell\nkubectl rollout pause deployment/nginx-deployment\n```\n\nThe output is similar to:\n\n```\ndeployment.apps/nginx-deployment paused\n```\n\n### Making additional changes while paused\n\nWhile the rollout is paused, you can make additional changes. These changes do\nnot trigger a new rollout until you resume:\n\n```shell\nkubectl \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api",
        "workloads"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
      "meta": {
        "weight": 16,
        "rel_path": "tasks/run-application/update-deployment-rolling.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": null,
          "line_end": null,
          "quote": "Update a Deployment Without Downtime"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:performing-a-rolling-update",
      "type": "concept",
      "title": "Performing a rolling update",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 1098,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:monitoring-rollout-progress",
      "type": "concept",
      "title": "Monitoring rollout progress",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 2816,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pausing-and-resuming-a-rollout",
      "type": "concept",
      "title": "Pausing and resuming a rollout",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 3645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-rolling-update-strategy",
      "type": "concept",
      "title": "Configuring rolling update strategy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 4608,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolling-back-to-a-previous-revision-rollback",
      "type": "concept",
      "title": "Rolling back to a previous revision {#rollback}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 6647,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-cleanup",
      "type": "concept",
      "title": "{{% heading \"cleanup\" %}}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 8014,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-with-kubectl-apply",
      "type": "concept",
      "title": "Updating with `kubectl apply`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 1309,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-only-the-container-image",
      "type": "concept",
      "title": "Updating only the container image",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 2336,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pausing-a-rollout",
      "type": "concept",
      "title": "Pausing a rollout",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 3785,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:making-additional-changes-while-paused",
      "type": "concept",
      "title": "Making additional changes while paused",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 3948,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resuming-a-rollout",
      "type": "concept",
      "title": "Resuming a rollout",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 4346,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:detecting-a-stalled-rollout",
      "type": "concept",
      "title": "Detecting a stalled rollout",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 6085,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:viewing-rollout-history",
      "type": "concept",
      "title": "Viewing rollout history",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 6778,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolling-back-to-the-previous-revision",
      "type": "concept",
      "title": "Rolling back to the previous revision",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 7317,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolling-back-to-a-specific-revision",
      "type": "concept",
      "title": "Rolling back to a specific revision",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 7504,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/run-application/run-replicated-stateful-application",
      "type": "page",
      "title": "Run a Replicated Stateful Application",
      "summary": "",
      "body": "\n\nThis page shows how to run a replicated stateful application using a\n[statefulset](#gloss:statefulset).\nThis application is a replicated MySQL database. The example topology has a\nsingle primary server and multiple replicas, using asynchronous row-based\nreplication.\n\n\n> **Note:** **This is not a production configuration**. MySQL settings remain on insecure defaults to keep the focus\non general patterns for running stateful applications in Kubernetes.\n\n\n## \n\n- \n- \n- This tutorial assumes you are familiar with\n  [PersistentVolumes](/docs/concepts/storage/persistent-volumes/)\n  and [StatefulSets](/docs/concepts/workloads/controllers/statefulset/),\n  as well as other core concepts like [Pods](/docs/concepts/workloads/pods/),\n  [Services](/docs/concepts/services-networking/service/), and\n  [ConfigMaps](/docs/tasks/configure-pod-container/configure-pod-configmap/).\n- Some familiarity with MySQL helps, but this tutorial aims to present\n  general patterns that should be useful for other systems.\n- You are using the default namespace or another namespace that does not contain any conflicting objects.\n- You need to have a AMD64-compatible CPU.\n\n## \n\n- Deploy a replicated MySQL topology with a StatefulSet.\n- Send MySQL client traffic.\n- Observe resistance to downtime.\n- Scale the StatefulSet up and down.\n\n\n\n## Deploy MySQL\n\nThe example MySQL deployment consists of a ConfigMap, two Services,\nand a StatefulSet.\n\n### Create a ConfigMap {#configmap}\n\nCreate the ConfigMap from the following YAML configuration file:\n\n\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/mysql/mysql-configmap.yaml\n```\n\nThis ConfigMap provides `my.cnf` overrides that let you independently control\nconfiguration on the primary MySQL server and its replicas.\nIn this case, you want the primary server to be able to serve replication logs to replicas\nand you want replicas to reject any writes that don't come via replication.\n\nThere's nothing special about the ConfigMap itself that causes different\nportions to apply to different Pods.\nEach Pod decides which portion to look at as it's initializing,\nbased on information provided by the StatefulSet controller.\n\n### Create Services {#services}\n\nCreate the Services from the following YAML configuration file:\n\n\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/mysql/mysql-services.yaml\n```\n\nThe headless Service provides a home for the DNS entries that the StatefulSet\n[controllers](#gloss:controller) creates for each\nPod that's part of the set.\nBecause the headless Service is named `mysql`, the Pods are accessible by\nresolving `<pod-name>.mysql` from within any other Pod in the same Kubernetes\ncluster and namespace.\n\nThe client Service, called `mysql-read`, is a normal Service with its own\ncluster IP that distributes connections across all MySQL Pods that report\nbeing Ready. The set of potential endpoints includes the primary MySQL server and all\nreplicas.\n\nNote that only read queries can use the load-balanced client Service.\nBecause there is only one primary MySQL server, clients should connect directly to the\nprimary MySQL Pod (through its DNS entry within the headless Service) to execute\nwrites.\n\n### Create the StatefulSet {#statefulset}\n\nFinally, create the StatefulSet from the following YAML configuration file:\n\n\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/mysql/mysql-statefulset.yaml\n```\n\nYou can watch the startup progress by running:\n\n```shell\nkubectl get pods -l app=mysql --watch\n```\n\nAfter a while, you should see all 3 Pods become `Running`:\n\n```\nNAME      READY     STATUS    RESTARTS   AGE\nmysql-0   2/2       Running   0          2m\nmysql-1   2/2       Running   0          1m\nmysql-2   2/2       Running   0          1m\n```\n\nPress **Ctrl+C** to cancel the watch.\n\n\n> **Note:** If you don't see any progress, make sure you have a dynamic PersistentVolume\nprovisioner enabled, as mentioned in the [prerequisites](#before-you-begin).\n\n\nThis manifest uses a variety of techniques fo\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/run-application/run-replicated-stateful-application.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": null,
          "line_end": null,
          "quote": "Run a Replicated Stateful Application"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-stateful-pod-initialization",
      "type": "concept",
      "title": "Understanding stateful Pod initialization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 4620,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sending-client-traffic",
      "type": "concept",
      "title": "Sending client traffic",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 8880,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:simulate-pod-and-node-failure-simulate-pod-and-node-downtime",
      "type": "concept",
      "title": "Simulate Pod and Node failure {#simulate-pod-and-node-downtime}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 10966,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-the-number-of-replicas",
      "type": "concept",
      "title": "Scaling the number of replicas",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 15125,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-configmap-configmap",
      "type": "concept",
      "title": "Create a ConfigMap {#configmap}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 1642,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-services-services",
      "type": "concept",
      "title": "Create Services {#services}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 2448,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-the-statefulset-statefulset",
      "type": "concept",
      "title": "Create the StatefulSet {#statefulset}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 3561,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generating-configuration",
      "type": "concept",
      "title": "Generating configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 5148,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cloning-existing-data",
      "type": "concept",
      "title": "Cloning existing data",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 6484,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:starting-replication",
      "type": "concept",
      "title": "Starting replication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 7637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:break-the-readiness-probe",
      "type": "concept",
      "title": "Break the Readiness probe",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 11242,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-pods",
      "type": "concept",
      "title": "Delete Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 12536,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:drain-a-node",
      "type": "concept",
      "title": "Drain a Node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 12968,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/run-application/scale-deployment",
      "type": "page",
      "title": "Horizontal Manual Scaling for a Deployment",
      "summary": "",
      "body": "\n\nThis page shows how to manually scale a Deployment horizontally, by changing its replica count.\nManual scaling lets you directly control the number of running Pods for predictable load changes or cost management.\n\nThis is different from _vertical scaling_: leaving the replica count the same, but adjusting\nthe amount of resources available to each Pod.\n\n## \n\n- Scaling up a Deployment to handle more traffic.\n- Scaling down a Deployment to conserve resources.\n- Scaling a Deployment to zero to suspend a workload.\n- Understanding when to use manual scaling versus a HorizontalPodAutoscaler.\n\n## \n\n\n\nYou need an existing Deployment. If you do not have one, and you just want to practice,\nyou can create the nginx Deployment from\n[Run a Stateless Application Using a Deployment](/docs/tasks/run-application/run-stateless-application-deployment/):\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/deployment.yaml\n```\n\nVerify the Deployment runs two Pods:\n\n```shell\nkubectl get deployment nginx-deployment\n```\n\nThe output is similar to:\n\n```\nNAME               READY   UP-TO-DATE   AVAILABLE   AGE\nnginx-deployment   2/2     2            2           10s\n```\n\n\n\n## Scaling up a Deployment\n\nThere are several different ways you can change the replica count for an\nexisting Deployment.\n\n### Scaling up using `kubectl scale`\n\n\nUse `kubectl scale` to set the replica count:\n\n```shell\nkubectl scale deployment/nginx-deployment --replicas=4\n```\n\nThe output is similar to:\n\n```\ndeployment.apps/nginx-deployment scaled\n```\n\nVerify that the Deployment has four Pods:\n\n```shell\nkubectl get deployment nginx-deployment\n```\n\nThe output is similar to:\n\n```\nNAME               READY   UP-TO-DATE   AVAILABLE   AGE\nnginx-deployment   4/4     4            4           1m\n```\n\n### Declarative scaling using `kubectl apply`\n\nInstead of running an imperative command, you can update the manifest file and\napply it. This approach fits well with version-controlled configuration\nworkflows.\n\nSave the current Deployment configuration to a local file:\n\n```shell\nkubectl get deployment nginx-deployment -o yaml > /tmp/nginx-deployment.yaml\n```\n\nEdit `/tmp/nginx-deployment.yaml` and change `.spec.replicas` to `4`.\n\nBefore applying, compare your local changes against the cluster state:\n\n```shell\nkubectl diff -f /tmp/nginx-deployment.yaml\n```\n\nApply the edited manifest:\n\n```shell\nkubectl apply -f /tmp/nginx-deployment.yaml\n```\n\n## Scaling down a Deployment\n\nTo reduce the number of Pods, set `--replicas` to a lower value:\n\n```shell\nkubectl scale deployment/nginx-deployment --replicas=2\n```\n\nKubernetes gracefully terminates the excess Pods, respecting each Pod's\n`terminationGracePeriodSeconds` setting.\n\nVerify that the Deployment has two Pods:\n\n```shell\nkubectl get pods -l app=nginx\n```\n\nThe output is similar to:\n\n```\nNAME                                READY   STATUS    RESTARTS   AGE\nnginx-deployment-66b6c48dd5-7gl6h   1/1     Running   0          2m\nnginx-deployment-66b6c48dd5-v8mkd   1/1     Running   0          2m\n```\n\n## Scaling to zero\n\nYou can scale a Deployment to zero to temporarily suspend the workload without\ndeleting the Deployment itself:\n\n```shell\nkubectl scale deployment/nginx-deployment --replicas=0\n```\n\nVerify that no Pods are running:\n\n```shell\nkubectl get deployment nginx-deployment\n```\n\nThe output is similar to:\n\n```\nNAME               READY   UP-TO-DATE   AVAILABLE   AGE\nnginx-deployment   0/0     0            0           5m\n```\n\n\n> **Note:** Scaling to zero removes all Pods but preserves the Deployment and its\nReplicaSet. Scale back up at any time by setting `--replicas` to a positive\nnumber.\n\n\nCommon use cases for scaling to zero include:\n\n- Temporarily suspending a workload to save resources\n- Debugging or maintenance windows\n- Cost control in development or staging environments\n\n## Other ways to change the replica count\n\nIn addition to `kubectl scale`, you can change `.spec.replicas` with\n`kubectl edit` or `kubectl patch`.\n\n### Scale using `kubectl edit`\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
      "meta": {
        "weight": 15,
        "rel_path": "tasks/run-application/scale-deployment.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": null,
          "line_end": null,
          "quote": "Horizontal Manual Scaling for a Deployment"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-up-a-deployment",
      "type": "concept",
      "title": "Scaling up a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 1307,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-down-a-deployment",
      "type": "concept",
      "title": "Scaling down a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 2552,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-to-zero",
      "type": "concept",
      "title": "Scaling to zero",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 3158,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:other-ways-to-change-the-replica-count",
      "type": "concept",
      "title": "Other ways to change the replica count",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 3967,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-to-use-manual-versus-automatic-scaling",
      "type": "concept",
      "title": "When to use manual versus automatic scaling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 4968,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-up-using-kubectl-scale",
      "type": "concept",
      "title": "Scaling up using `kubectl scale`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 1430,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:declarative-scaling-using-kubectl-apply",
      "type": "concept",
      "title": "Declarative scaling using `kubectl apply`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 1905,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scale-using-kubectl-edit",
      "type": "concept",
      "title": "Scale using `kubectl edit`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 4115,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scale-using-kubectl-patch",
      "type": "concept",
      "title": "Scale using `kubectl patch`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 4272,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/run-application/configure-pdb",
      "type": "page",
      "title": "Specifying a Disruption Budget for your Application",
      "summary": "",
      "body": "\n\n\n\nThis page shows how to limit the number of concurrent disruptions\nthat your application experiences, allowing for higher availability\nwhile permitting the cluster administrator to manage the clusters\nnodes.\n\n## \n\n\n\n- You are the owner of an application running on a Kubernetes cluster that requires\n  high availability.\n- You should know how to deploy [Replicated Stateless Applications](/docs/tasks/run-application/run-stateless-application-deployment/)\n  and/or [Replicated Stateful Applications](/docs/tasks/run-application/run-replicated-stateful-application/).\n- You should have read about [Pod Disruptions](/docs/concepts/workloads/pods/disruptions/).\n- You should confirm with your cluster owner or service provider that they respect\n  Pod Disruption Budgets.\n\n\n\n## Protecting an Application with a PodDisruptionBudget\n\n1. Identify what application you want to protect with a PodDisruptionBudget (PDB).\n1. Think about how your application reacts to disruptions.\n1. Create a PDB definition as a YAML file.\n1. Create the PDB object from the YAML file.\n\n\n\n## Identify an Application to Protect\n\nThe most common use case when you want to protect an application\nspecified by one of the built-in Kubernetes controllers:\n\n- Deployment\n- ReplicationController\n- ReplicaSet\n- StatefulSet\n\nIn this case, make a note of the controller's `.spec.selector`; the same\nselector goes into the PDBs `.spec.selector`.\n\nFrom version 1.15 PDBs support custom controllers where the\n[scale subresource](/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#scale-subresource)\nis enabled.\n\nYou can also use PDBs with pods which are not controlled by one of the above\ncontrollers, or arbitrary groups of pods, but there are some restrictions,\ndescribed in [Arbitrary workloads and arbitrary selectors](#arbitrary-controllers-and-selectors).\n\n## Think about how your application reacts to disruptions\n\nDecide how many instances can be down at the same time for a short period\ndue to a voluntary disruption.\n\n- Stateless frontends:\n  - Concern: don't reduce serving capacity by more than 10%.\n    - Solution: use PDB with minAvailable 90% for example.\n- Single-instance Stateful Application:\n  - Concern: do not terminate this application without talking to me.\n    - Possible Solution 1: Do not use a PDB and tolerate occasional downtime.\n    - Possible Solution 2: Set PDB with maxUnavailable=0. Have an understanding\n      (outside of Kubernetes) that the cluster operator needs to consult you before\n      termination. When the cluster operator contacts you, prepare for downtime,\n      and then delete the PDB to indicate readiness for disruption. Recreate afterwards.\n- Multiple-instance Stateful application such as Consul, ZooKeeper, or etcd:\n  - Concern: Do not reduce number of instances below quorum, otherwise writes fail.\n    - Possible Solution 1: set maxUnavailable to 1 (works with varying scale of application).\n    - Possible Solution 2: set minAvailable to quorum-size (e.g. 3 when scale is 5).\n      (Allows more disruptions at once).\n- Restartable Batch Job:\n  - Concern: Job needs to complete in case of voluntary disruption.\n    - Possible solution: Do not create a PDB. The Job controller will create a replacement pod.\n\n### Rounding logic when specifying percentages\n\nValues for `minAvailable` or `maxUnavailable` can be expressed as integers or as a percentage.\n\n- When you specify an integer, it represents a number of Pods. For instance, if you set\n  `minAvailable` to 10, then 10 Pods must always be available, even during a disruption.\n- When you specify a percentage by setting the value to a string representation of a\n  percentage (eg. `\"50%\"`), it represents a percentage of total Pods. For instance, if\n  you set `minAvailable` to `\"50%\"`, then at least 50% of the Pods remain available\n  during a disruption.\n\nWhen you specify the value as a percentage, it may not map to an exact number of Pods.\nFor example, if you have 7 Pods and you set `minAvailable` to\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
      "meta": {
        "weight": 110,
        "rel_path": "tasks/run-application/configure-pdb.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": null,
          "line_end": null,
          "quote": "Specifying a Disruption Budget for your Application"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protecting-an-application-with-a-poddisruptionbudget",
      "type": "concept",
      "title": "Protecting an Application with a PodDisruptionBudget",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 918,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:identify-an-application-to-protect",
      "type": "concept",
      "title": "Identify an Application to Protect",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 1227,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:think-about-how-your-application-reacts-to-disruptions",
      "type": "concept",
      "title": "Think about how your application reacts to disruptions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 2013,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specifying-a-poddisruptionbudget",
      "type": "concept",
      "title": "Specifying a PodDisruptionBudget",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 4733,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-the-pdb-object",
      "type": "concept",
      "title": "Create the PDB object",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 8574,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-the-status-of-the-pdb",
      "type": "concept",
      "title": "Check the status of the PDB",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 8697,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:unhealthy-pod-eviction-policy",
      "type": "concept",
      "title": "Unhealthy Pod Eviction Policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 10179,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:arbitrary-workloads-and-arbitrary-selectors-arbitrary-controllers-and-selectors",
      "type": "concept",
      "title": "Arbitrary workloads and arbitrary selectors {#arbitrary-controllers-and-selectors}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "workloads",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 12061,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rounding-logic-when-specifying-percentages",
      "type": "concept",
      "title": "Rounding logic when specifying percentages",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "observability",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 3414,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:healthiness-of-a-pod",
      "type": "concept",
      "title": "Healthiness of a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 9939,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/run-application/run-stateless-application-deployment",
      "type": "page",
      "title": "Run a Stateless Application Using a Deployment",
      "summary": "",
      "body": "\n\nThis page shows how to run an application using a Kubernetes Deployment object.\n\n## \n\n- Create an nginx deployment.\n- Use kubectl to list information about the deployment.\n- Update the deployment.\n\n## \n\n \n\n\n\n## Creating and exploring an nginx deployment\n\nYou can run an application by creating a Kubernetes Deployment object, and you\ncan describe a Deployment in a YAML file. For example, this YAML file describes\na Deployment that runs the nginx:1.14.2 Docker image:\n\n\n\n1. Create a Deployment based on the YAML file:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/deployment.yaml\n   ```\n\n1. Display information about the Deployment:\n\n   ```shell\n   kubectl describe deployment nginx-deployment\n   ```\n\n   The output is similar to this:\n\n   ```\n   Name:     nginx-deployment\n   Namespace:    default\n   CreationTimestamp:  Tue, 30 Aug 2016 18:11:37 -0700\n   Labels:     app=nginx\n   Annotations:    deployment.kubernetes.io/revision=1\n   Selector:   app=nginx\n   Replicas:   2 desired | 2 updated | 2 total | 2 available | 0 unavailable\n   StrategyType:   RollingUpdate\n   MinReadySeconds:  0\n   RollingUpdateStrategy:  1 max unavailable, 1 max surge\n   Pod Template:\n     Labels:       app=nginx\n     Containers:\n       nginx:\n       Image:              nginx:1.14.2\n       Port:               80/TCP\n       Environment:        <none>\n       Mounts:             <none>\n     Volumes:              <none>\n   Conditions:\n     Type          Status  Reason\n     ----          ------  ------\n     Available     True    MinimumReplicasAvailable\n     Progressing   True    NewReplicaSetAvailable\n   OldReplicaSets:   <none>\n   NewReplicaSet:    nginx-deployment-1771418926 (2/2 replicas created)\n   No events.\n   ```\n\n1. List the Pods created by the deployment:\n\n   ```shell\n   kubectl get pods -l app=nginx\n   ```\n\n   The output is similar to this:\n\n   ```\n   NAME                                READY     STATUS    RESTARTS   AGE\n   nginx-deployment-1771418926-7o5ns   1/1       Running   0          16h\n   nginx-deployment-1771418926-r18az   1/1       Running   0          16h\n   ```\n\n1. Display information about a Pod:\n\n   ```shell\n   kubectl describe pod <pod-name>\n   ```\n\n   where `<pod-name>` is the name of one of your Pods.\n\n## Updating the deployment\n\nYou can update the deployment by applying a new YAML file. This YAML file\nspecifies that the deployment should be updated to use nginx 1.16.1.\n\n\n\n1. Apply the new YAML file:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/deployment-update.yaml\n   ```\n\n1. Watch the deployment create pods with new names and delete the old pods:\n\n   ```shell\n   kubectl get pods -l app=nginx\n   ```\n\n## Scaling the application by increasing the replica count\n\nYou can increase the number of Pods in your Deployment by applying a new YAML\nfile. This YAML file sets `replicas` to 4, which specifies that the Deployment\nshould have four Pods:\n\n\n\n1. Apply the new YAML file:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/deployment-scale.yaml\n   ```\n\n1. Verify that the Deployment has four Pods:\n\n   ```shell\n   kubectl get pods -l app=nginx\n   ```\n\n   The output is similar to this:\n\n   ```\n   NAME                               READY     STATUS    RESTARTS   AGE\n   nginx-deployment-148880595-4zdqq   1/1       Running   0          25s\n   nginx-deployment-148880595-6zgi1   1/1       Running   0          25s\n   nginx-deployment-148880595-fxcez   1/1       Running   0          2m\n   nginx-deployment-148880595-rwovn   1/1       Running   0          2m\n   ```\n\nFor detailed scaling procedures including scaling down and scaling to zero, see\n[Scale a Deployment Manually](/docs/tasks/run-application/scale-deployment/).\n\n## Deleting a deployment\n\nDelete the deployment by name:\n\n```shell\nkubectl delete deployment nginx-deployment\n```\n\n## ReplicationControllers -- the Old Way\n\nThe preferred way to create a replicated application is to use a Deployment,\nwhich in turn uses a ReplicaSet. Before \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/run-application/run-stateless-application-deployment.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": null,
          "line_end": null,
          "quote": "Run a Stateless Application Using a Deployment"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-and-exploring-an-nginx-deployment",
      "type": "concept",
      "title": "Creating and exploring an nginx deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 372,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-the-deployment",
      "type": "concept",
      "title": "Updating the deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 2469,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-the-application-by-increasing-the-replica-count",
      "type": "concept",
      "title": "Scaling the application by increasing the replica count",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 2962,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicationcontrollers-the-old-way",
      "type": "concept",
      "title": "ReplicationControllers -- the Old Way",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 4178,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/run-application/_index",
      "type": "page",
      "title": "Run Applications",
      "summary": "Run and manage both stateless and stateful applications.",
      "body": "Running applications is a core task in Kubernetes, allowing you to deploy and manage containerized workloads.\n\n**Why it matters**\nSuccessful application deployment requires careful consideration of resource allocation, scaling, and networking.\n\n**Key facts**\n- Kubernetes provides built-in support for popular frameworks and languages, such as Docker and Java.\n\n**Common pitfalls**\n- Insufficient resource allocation can lead to application downtime or performance issues.\n\n**Related**\nTasks, kubectl-convert overview",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/_index/",
      "meta": {
        "weight": 80,
        "rel_path": "tasks/run-application/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/_index.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Run Applications"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/run-application/force-delete-stateful-set-pod",
      "type": "page",
      "title": "Force Delete StatefulSet Pods",
      "summary": "",
      "body": "\nThis page shows how to delete Pods which are part of a\n[stateful set](#gloss:StatefulSet),\nand explains the considerations to keep in mind when doing so.\n\n## \n\n- This is a fairly advanced task and has the potential to violate some of the properties\n  inherent to StatefulSet.\n- Before proceeding, make yourself familiar with the considerations enumerated below.\n\n\n\n## StatefulSet considerations\n\nIn normal operation of a StatefulSet, there is **never** a need to force delete a StatefulSet Pod.\nThe [StatefulSet controller](/docs/concepts/workloads/controllers/statefulset/) is responsible for\ncreating, scaling and deleting members of the StatefulSet. It tries to ensure that the specified\nnumber of Pods from ordinal 0 through N-1 are alive and ready. StatefulSet ensures that, at any time,\nthere is at most one Pod with a given identity running in a cluster. This is referred to as\n*at most one* semantics provided by a StatefulSet.\n\nManual force deletion should be undertaken with caution, as it has the potential to violate the\nat most one semantics inherent to StatefulSet. StatefulSets may be used to run distributed and\nclustered applications which have a need for a stable network identity and stable storage.\nThese applications often have configuration which relies on an ensemble of a fixed number of\nmembers with fixed identities. Having multiple members with the same identity can be disastrous\nand may lead to data loss (e.g. split brain scenario in quorum-based systems).\n\n## Delete Pods\n\nYou can perform a graceful pod deletion with the following command:\n\n```shell\nkubectl delete pods <pod>\n```\n\nFor the above to lead to graceful termination, the Pod **must not** specify a\n`pod.Spec.TerminationGracePeriodSeconds` of 0. The practice of setting a\n`pod.Spec.TerminationGracePeriodSeconds` of 0 seconds is unsafe and strongly discouraged\nfor StatefulSet Pods. Graceful deletion is safe and will ensure that the Pod\n[shuts down gracefully](/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination)\nbefore the kubelet deletes the name from the apiserver.\n\nA Pod is not deleted automatically when a node is unreachable.\nThe Pods running on an unreachable Node enter the 'Terminating' or 'Unknown' state after a\n[timeout](/docs/concepts/architecture/nodes/#condition).\nPods may also enter these states when the user attempts graceful deletion of a Pod\non an unreachable Node.\nThe only ways in which a Pod in such a state can be removed from the apiserver are as follows:\n\n- The Node object is deleted (either by you, or by the\n  [Node Controller](/docs/concepts/architecture/nodes/#node-controller)).\n- The kubelet on the unresponsive Node starts responding, kills the Pod and removes the entry\n   from the apiserver.\n- Force deletion of the Pod by the user.\n\nThe recommended best practice is to use the first or second approach. If a Node is confirmed\nto be dead (e.g. permanently disconnected from the network, powered down, etc), then delete\nthe Node object. If the Node is suffering from a network partition, then try to resolve this\nor wait for it to resolve. When the partition heals, the kubelet will complete the deletion\nof the Pod and free up its name in the apiserver.\n\nNormally, the system completes the deletion once the Pod is no longer running on a Node, or\nthe Node is deleted by an administrator. You may override this by force deleting the Pod.\n\n### Force Deletion\n\nForce deletions **do not** wait for confirmation from the kubelet that the Pod has been terminated.\nIrrespective of whether a force deletion is successful in killing a Pod, it will immediately\nfree up the name from the apiserver. This would let the StatefulSet controller create a replacement\nPod with that same identity; this can lead to the duplication of a still-running Pod,\nand if said Pod can still communicate with the other members of the StatefulSet,\nwill violate the at most one semantics that StatefulSet is designed to guarantee.\n\nWhen you force delete a StatefulSet pod, you are assertin\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "workloads",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/",
      "meta": {
        "weight": 70,
        "rel_path": "tasks/run-application/force-delete-stateful-set-pod.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/force-delete-stateful-set-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/",
          "line_start": null,
          "line_end": null,
          "quote": "Force Delete StatefulSet Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulset-considerations",
      "type": "concept",
      "title": "StatefulSet considerations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/force-delete-stateful-set-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/",
          "line_start": 461,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:force-deletion",
      "type": "concept",
      "title": "Force Deletion",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/force-delete-stateful-set-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/",
          "line_start": 3475,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/run-application/access-api-from-pod",
      "type": "page",
      "title": "Accessing the Kubernetes API from a Pod",
      "summary": "",
      "body": "\n\nThis guide demonstrates how to access the Kubernetes API from within a pod.\n\n## \n\n\n\n\n\n## Accessing the API from within a Pod\n\nWhen accessing the API from within a Pod, locating and authenticating\nto the API server are slightly different to the external client case.\n\nThe easiest way to use the Kubernetes API from a Pod is to use\none of the official [client libraries](/docs/reference/using-api/client-libraries/). These\nlibraries can automatically discover the API server and authenticate.\n\n### Using Official Client Libraries\n\nFrom within a Pod, the recommended ways to connect to the Kubernetes API are:\n\n- For a Go client, use the official\n  [Go client library](https://github.com/kubernetes/client-go/).\n  The `rest.InClusterConfig()` function handles API host discovery and authentication automatically.\n  See [an example here](https://git.k8s.io/client-go/examples/in-cluster-client-configuration/main.go).\n\n- For a Python client, use the official\n  [Python client library](https://github.com/kubernetes-client/python/).\n  The `config.load_incluster_config()` function handles API host discovery and authentication automatically.\n  See [an example here](https://github.com/kubernetes-client/python/blob/master/examples/in_cluster_config.py).\n\n- There are a number of other libraries available, please refer to the\n  [Client Libraries](/docs/reference/using-api/client-libraries/) page.\n\nIn each case, the service account credentials of the Pod are used to communicate\nsecurely with the API server.\n\n### Directly accessing the REST API\n\nWhile running in a Pod, your container can create an HTTPS URL for the Kubernetes API\nserver by fetching the `KUBERNETES_SERVICE_HOST` and `KUBERNETES_SERVICE_PORT_HTTPS`\nenvironment variables. The API server's in-cluster address is also published to a\nService named `kubernetes` in the `default` namespace so that pods may reference\n`kubernetes.default.svc` as a DNS name for the local API server.\n\n\n> **Note:** Kubernetes does not guarantee that the API server has a valid certificate for\nthe hostname `kubernetes.default.svc`;\nhowever, the control plane **is** expected to present a valid certificate for the\nhostname or IP address that `$KUBERNETES_SERVICE_HOST` represents.\n\n\nThe recommended way to authenticate to the API server is with a\n[service account](/docs/tasks/configure-pod-container/configure-service-account/)\ncredential. By default, a Pod\nis associated with a service account, and a credential (token) for that\nservice account is placed into the filesystem tree of each container in that Pod,\nat `/var/run/secrets/kubernetes.io/serviceaccount/token`.\n\nIf available, a certificate bundle is placed into the filesystem tree of each\ncontainer at `/var/run/secrets/kubernetes.io/serviceaccount/ca.crt`, and should be\nused to verify the serving certificate of the API server.\n\nFinally, the default namespace to be used for namespaced API operations is placed in a file\nat `/var/run/secrets/kubernetes.io/serviceaccount/namespace` in each container.\n\n### Using kubectl proxy\n\nIf you would like to query the API without an official client library, you can run `kubectl proxy`\nas the [command](/docs/tasks/inject-data-application/define-command-argument-container/)\nof a new sidecar container in the Pod. This way, `kubectl proxy` will authenticate\nto the API and expose it on the `localhost` interface of the Pod, so that other containers\nin the Pod can use it directly.\n\n### Without using a proxy\n\nIt is possible to avoid using the kubectl proxy by passing the authentication token\ndirectly to the API server. The internal certificate secures the connection.\n\n```shell\n# Point to the internal API server hostname\nAPISERVER=https://kubernetes.default.svc\n\n# Path to ServiceAccount token\nSERVICEACCOUNT=/var/run/secrets/kubernetes.io/serviceaccount\n\n# Read this Pod's namespace\nNAMESPACE=$(cat ${SERVICEACCOUNT}/namespace)\n\n# Read the ServiceAccount bearer token\nTOKEN=$(cat ${SERVICEACCOUNT}/token)\n\n# Reference the internal certificate authori\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
      "meta": {
        "weight": 120,
        "rel_path": "tasks/run-application/access-api-from-pod.md"
      },
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": null,
          "line_end": null,
          "quote": "Accessing the Kubernetes API from a Pod"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-the-api-from-within-a-pod",
      "type": "concept",
      "title": "Accessing the API from within a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 193,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-official-client-libraries",
      "type": "concept",
      "title": "Using Official Client Libraries",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 599,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:directly-accessing-the-rest-api",
      "type": "concept",
      "title": "Directly accessing the REST API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 1613,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-kubectl-proxy",
      "type": "concept",
      "title": "Using kubectl proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 3126,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:without-using-a-proxy",
      "type": "concept",
      "title": "Without using a proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 3546,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/install-kubectl-windows",
      "type": "page",
      "title": "Install and Set Up kubectl on Windows",
      "summary": "",
      "body": "## \n\nYou must use a kubectl version that is within one minor version difference of\nyour cluster. For example, a v client can communicate\nwith v, v,\nand v control planes.\nUsing the latest compatible version of kubectl helps avoid unforeseen issues.\n\n## Install kubectl on Windows\n\nThe following methods exist for installing kubectl on Windows:\n\n- [Install kubectl binary on Windows (via direct download or curl)](#install-kubectl-binary-on-windows-via-direct-download-or-curl)\n- [Install on Windows using Chocolatey, Scoop, or winget](#install-nonstandard-package-tools)\n\n### Install kubectl binary on Windows (via direct download or curl)\n\n1. You have two options for installing kubectl on your Windows device\n\n   - Direct download:\n     \n     Download the latest  patch release binary directly for your specific architecture by visiting the [Kubernetes release page](https://kubernetes.io/releases/download/#binaries). Be sure to select the correct binary for your architecture (e.g., amd64, arm64, etc.).\n   \n   - Using curl:\n\n     If you have `curl` installed, use this command:\n\n     ```powershell\n     curl.exe -LO \"https://dl.k8s.io/release/v/bin/windows/amd64/kubectl.exe\"\n     ```\n\n   \n> **Note:** To find out the latest stable version (for example, for scripting), take a look at\n   [https://dl.k8s.io/release/stable.txt](https://dl.k8s.io/release/stable.txt).\n\n\n1. Validate the binary (optional)\n\n   Download the `kubectl` checksum file:\n\n   ```powershell\n   curl.exe -LO \"https://dl.k8s.io/v/bin/windows/amd64/kubectl.exe.sha256\"\n   ```\n\n   Validate the `kubectl` binary against the checksum file:\n\n   - Using Command Prompt to manually compare `CertUtil`'s output to the checksum file downloaded:\n\n     ```cmd\n     CertUtil -hashfile kubectl.exe SHA256\n     type kubectl.exe.sha256\n     ```\n\n   - Using PowerShell to automate the verification using the `-eq` operator to\n     get a `True` or `False` result:\n\n     ```powershell\n      $(Get-FileHash -Algorithm SHA256 .\\kubectl.exe).Hash -eq $(Get-Content .\\kubectl.exe.sha256)\n     ```\n\n1. Append or prepend the `kubectl` binary folder to your `PATH` environment variable.\n\n1. Test to ensure the version of `kubectl` is the same as downloaded:\n\n   ```cmd\n   kubectl version --client\n   ```\n   \n   Or use this for detailed view of version:\n\n   ```cmd\n   kubectl version --client --output=yaml\n   ```\n\n\n\n\n> **Note:** [Docker Desktop for Windows](https://docs.docker.com/docker-for-windows/#kubernetes)\nadds its own version of `kubectl` to `PATH`. If you have installed Docker Desktop before,\nyou may need to place your `PATH` entry before the one added by the Docker Desktop\ninstaller or remove the Docker Desktop's `kubectl`.\n\n\n### Install on Windows using Chocolatey, Scoop, or winget {#install-nonstandard-package-tools}\n\n1. To install kubectl on Windows you can use either [Chocolatey](https://chocolatey.org)\n   package manager, [Scoop](https://scoop.sh) command-line installer, or\n   [winget](https://learn.microsoft.com/en-us/windows/package-manager/winget/) package manager.\n\n   \n   \n   ```powershell\n   choco install kubernetes-cli\n   ```\n   \n   \n   ```powershell\n   scoop install kubectl\n   ```\n   \n   \n   ```powershell\n   winget install -e --id Kubernetes.kubectl\n   ```\n   \n   \n\n1. Test to ensure the version you installed is up-to-date:\n\n   ```powershell\n   kubectl version --client\n   ```\n\n1. Navigate to your home directory:\n\n   ```powershell\n   # If you're using cmd.exe, run: cd %USERPROFILE%\n   cd ~\n   ```\n\n1. Create the `.kube` directory:\n\n   ```powershell\n   mkdir .kube\n   ```\n\n1. Change to the `.kube` directory you just created:\n\n   ```powershell\n   cd .kube\n   ```\n\n1. Configure kubectl to use a remote Kubernetes cluster:\n\n   ```powershell\n   New-Item config -type file\n   ```\n\n\n> **Note:** Edit the config file with a text editor of your choice, such as Notepad.\n\n\n## Verify kubectl configuration\n\n\n\n## Optional kubectl configurations and plugins\n\n### Enable shell autocompletion\n\nkubectl provides autocompletion \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/tools/install-kubectl-windows.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": null,
          "line_end": null,
          "quote": "Install and Set Up kubectl on Windows"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-kubectl-on-windows",
      "type": "concept",
      "title": "Install kubectl on Windows",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 420,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-kubectl-configuration",
      "type": "concept",
      "title": "Verify kubectl configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 4320,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:optional-kubectl-configurations-and-plugins",
      "type": "concept",
      "title": "Optional kubectl configurations and plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 4399,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-kubectl-binary-on-windows-via-direct-download-or-curl",
      "type": "concept",
      "title": "Install kubectl binary on Windows (via direct download or curl)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 742,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-on-windows-using-chocolatey-scoop-or-winget-install-nonstandard-package-tools",
      "type": "concept",
      "title": "Install on Windows using Chocolatey, Scoop, or winget {#install-nonstandard-package-tools}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 2983,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-shell-autocompletion",
      "type": "concept",
      "title": "Enable shell autocompletion",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 4447,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-kuberc",
      "type": "concept",
      "title": "Configure kuberc",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 4722,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-kubectl-convert-plugin",
      "type": "concept",
      "title": "Install `kubectl convert` plugin",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 4812,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/install-kubectl-macos",
      "type": "page",
      "title": "Install and Set Up kubectl on macOS",
      "summary": "",
      "body": "## \n\nYou must use a kubectl version that is within one minor version difference of\nyour cluster. For example, a v client can communicate\nwith v, v,\nand v control planes.\nUsing the latest compatible version of kubectl helps avoid unforeseen issues.\n\n## Install kubectl on macOS\n\nThe following methods exist for installing kubectl on macOS:\n\n- [Install kubectl on macOS](#install-kubectl-on-macos)\n  - [Install kubectl binary with curl on macOS](#install-kubectl-binary-with-curl-on-macos)\n  - [Install with Homebrew on macOS](#install-with-homebrew-on-macos)\n  - [Install with Macports on macOS](#install-with-macports-on-macos)\n- [Verify kubectl configuration](#verify-kubectl-configuration)\n- [Optional kubectl configurations and plugins](#optional-kubectl-configurations-and-plugins)\n  - [Enable shell autocompletion](#enable-shell-autocompletion)\n  - [Install `kubectl convert` plugin](#install-kubectl-convert-plugin)\n\n### Install kubectl binary with curl on macOS\n\n1. Download the latest release:\n\n   \n   \n   curl -LO \"https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl\"\n   \n   \n   curl -LO \"https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl\"\n   \n   \n\n   \n> **Note:** To download a specific version, replace the `$(curl -L -s https://dl.k8s.io/release/stable.txt)`\n   portion of the command with the specific version.\n\n   For example, to download version  on Intel macOS, type:\n\n   ```bash\n   curl -LO \"https://dl.k8s.io/release/v/bin/darwin/amd64/kubectl\"\n   ```\n\n   And for macOS on Apple Silicon, type:\n\n   ```bash\n   curl -LO \"https://dl.k8s.io/release/v/bin/darwin/arm64/kubectl\"\n   ```\n\n\n1. Validate the binary (optional)\n\n   Download the kubectl checksum file:\n\n   \n   \n   curl -LO \"https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl.sha256\"\n   \n   \n   curl -LO \"https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl.sha256\"\n   \n   \n  \n   Validate the kubectl binary against the checksum file:\n\n   ```bash\n   echo \"$(cat kubectl.sha256)  kubectl\" | shasum -a 256 --check\n   ```\n\n   If valid, the output is:\n\n   ```console\n   kubectl: OK\n   ```\n\n   If the check fails, `shasum` exits with nonzero status and prints output similar to:\n\n   ```console\n   kubectl: FAILED\n   shasum: WARNING: 1 computed checksum did NOT match\n   ```\n\n   \n> **Note:** Download the same version of the binary and checksum.\n\n\n1. Make the kubectl binary executable.\n\n   ```bash\n   chmod +x ./kubectl\n   ```\n\n1. Move the kubectl binary to a file location on your system `PATH`.\n\n   ```bash\n   sudo mv ./kubectl /usr/local/bin/kubectl\n   sudo chown root: /usr/local/bin/kubectl\n   ```\n\n   \n> **Note:** Make sure `/usr/local/bin` is in your PATH environment variable.\n\n\n1. Test to ensure the version you installed is up-to-date:\n\n   ```bash\n   kubectl version --client\n   ```\n   \n   Or use this for detailed view of version:\n\n   ```cmd\n   kubectl version --client --output=yaml\n   ```\n\n1. After installing and validating kubectl, delete the checksum file:\n\n   ```bash\n   rm kubectl.sha256\n   ```\n\n### Install with Homebrew on macOS\n\nIf you are on macOS and using [Homebrew](https://brew.sh/) package manager,\nyou can install kubectl with Homebrew.\n\n1. Run the installation command:\n\n   ```bash\n   brew install kubectl\n   ```\n\n   or\n\n   ```bash\n   brew install kubernetes-cli\n   ```\n\n1. Test to ensure the version you installed is up-to-date:\n\n   ```bash\n   kubectl version --client\n   ```\n\n### Install with Macports on macOS\n\nIf you are on macOS and using [Macports](https://macports.org/) package manager,\nyou can install kubectl with Macports.\n\n1. Run the installation command:\n\n   ```bash\n   sudo port selfupdate\n   sudo port install kubectl\n   ```\n\n1. Test to ensure the version you installed is up-to-date:\n\n   ```bash\n   kubectl version --client\n   ```\n\n## Verify kubectl configuration\n\n\n\n## Optional kubectl \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/tools/install-kubectl-macos.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": null,
          "line_end": null,
          "quote": "Install and Set Up kubectl on macOS"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-kubectl-on-macos",
      "type": "concept",
      "title": "Install kubectl on macOS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 420,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-kubectl-binary-with-curl-on-macos",
      "type": "concept",
      "title": "Install kubectl binary with curl on macOS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 1094,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-with-homebrew-on-macos",
      "type": "concept",
      "title": "Install with Homebrew on macOS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 3841,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-with-macports-on-macos",
      "type": "concept",
      "title": "Install with Macports on macOS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 4234,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uninstall-kubectl-on-macos",
      "type": "concept",
      "title": "Uninstall kubectl on macOS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 7696,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uninstall-kubectl-using-the-command-line",
      "type": "concept",
      "title": "Uninstall kubectl using the command-line",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 7805,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uninstall-kubectl-using-homebrew",
      "type": "concept",
      "title": "Uninstall kubectl using homebrew",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 8143,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/install-kubectl-linux",
      "type": "page",
      "title": "Install and Set Up kubectl on Linux",
      "summary": "",
      "body": "## \n\nYou must use a kubectl version that is within one minor version difference of\nyour cluster. For example, a v client can communicate\nwith v, v,\nand v control planes.\nUsing the latest compatible version of kubectl helps avoid unforeseen issues.\n\n## Install kubectl on Linux\n\nThe following methods exist for installing kubectl on Linux:\n\n- [Install kubectl binary with curl on Linux](#install-kubectl-binary-with-curl-on-linux)\n- [Install using native package management](#install-using-native-package-management)\n- [Install using other package management](#install-using-other-package-management)\n\n### Install kubectl binary with curl on Linux\n\n1. Download the latest release with the command:\n\n   \n   \n   curl -LO \"https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl\"\n   \n   \n   curl -LO \"https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/arm64/kubectl\"\n   \n   \n\n   \n> **Note:** To download a specific version, replace the `$(curl -L -s https://dl.k8s.io/release/stable.txt)`\n   portion of the command with the specific version.\n\n   For example, to download version  on Linux x86-64, type:\n\n   ```bash\n   curl -LO https://dl.k8s.io/release/v/bin/linux/amd64/kubectl\n   ```\n\n   And for Linux ARM64, type:\n\n   ```bash\n   curl -LO https://dl.k8s.io/release/v/bin/linux/arm64/kubectl\n   ```\n\n\n1. Validate the binary (optional)\n\n   Download the kubectl checksum file:\n\n   \n   \n   curl -LO \"https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256\"\n   \n   \n   curl -LO \"https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/arm64/kubectl.sha256\"\n   \n   \n\n   Validate the kubectl binary against the checksum file:\n\n   ```bash\n   echo \"$(cat kubectl.sha256)  kubectl\" | sha256sum --check\n   ```\n\n   If valid, the output is:\n\n   ```console\n   kubectl: OK\n   ```\n\n   If the check fails, `sha256` exits with nonzero status and prints output similar to:\n\n   ```console\n   kubectl: FAILED\n   sha256sum: WARNING: 1 computed checksum did NOT match\n   ```\n\n   \n> **Note:** Download the same version of the binary and checksum.\n\n\n1. Install kubectl\n\n   ```bash\n   sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl\n   ```\n\n   \n> **Note:** If you do not have root access on the target system, you can still install\n   kubectl to the `~/.local/bin` directory:\n\n   ```bash\n   chmod +x kubectl\n   mkdir -p ~/.local/bin\n   mv ./kubectl ~/.local/bin/kubectl\n   # and then append (or prepend) ~/.local/bin to $PATH\n   ```\n\n\n1. Test to ensure the version you installed is up-to-date:\n\n   ```bash\n   kubectl version --client\n   ```\n\n   Or use this for detailed view of version:\n\n   ```cmd\n   kubectl version --client --output=yaml\n   ```\n\n### Install using native package management\n\n\n\n\n1. Update the `apt` package index and install packages needed to use the Kubernetes `apt` repository:\n\n   ```shell\n   sudo apt-get update\n   # apt-transport-https may be a dummy package; if so, you can skip that package\n   sudo apt-get install -y apt-transport-https ca-certificates curl gnupg\n   ```\n\n2. Download the public signing key for the Kubernetes package repositories. The same signing key is used for all repositories so you can disregard the version in the URL:\n\n   ```shell\n   # If the folder `/etc/apt/keyrings` does not exist, it should be created before the curl command, read the note below.\n   # sudo mkdir -p -m 755 /etc/apt/keyrings\n   curl -fsSL https://pkgs.k8s.io/core:/stable://deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg\n   sudo chmod 644 /etc/apt/keyrings/kubernetes-apt-keyring.gpg # allow unprivileged APT programs to read this keyring\n   ```\n   \n\nIn releases older than Debian 12 and Ubuntu 22.04, folder `/etc/apt/keyrings` does not exist by default, and it should be created before the curl command.\n\n\n3. Add the appropriate Kubernetes `apt` repository. If you want to use Kube\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/tools/install-kubectl-linux.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": null,
          "line_end": null,
          "quote": "Install and Set Up kubectl on Linux"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-kubectl-on-linux",
      "type": "concept",
      "title": "Install kubectl on Linux",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 420,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-kubectl-binary-with-curl-on-linux",
      "type": "concept",
      "title": "Install kubectl binary with curl on Linux",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 772,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-using-native-package-management",
      "type": "concept",
      "title": "Install using native package management",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 3450,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-using-other-package-management",
      "type": "concept",
      "title": "Install using other package management",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "extensibility",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 9302,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/_index",
      "type": "page",
      "title": "Install Tools",
      "summary": "Set up Kubernetes tools on your computer.",
      "body": "\n> **Note:** See the [Learning environment](/docs/setup/learning-environment/) page to set up a practice environment.\n\n\n## kubectl\n\n\nThe Kubernetes command-line tool, [kubectl](/docs/reference/kubectl/kubectl/), allows\nyou to run commands against Kubernetes clusters.\nYou can use kubectl to deploy applications, inspect and manage cluster resources,\nand view logs. For more information including a complete list of kubectl operations, see the\n[`kubectl` reference documentation](/docs/reference/kubectl/).\n\nkubectl is installable on a variety of Linux platforms, macOS and Windows.\nFind your preferred operating system below.\n\n- [Install kubectl on Linux](/docs/tasks/tools/install-kubectl-linux)\n- [Install kubectl on macOS](/docs/tasks/tools/install-kubectl-macos)\n- [Install kubectl on Windows](/docs/tasks/tools/install-kubectl-windows)\n\n## kind\n\n[`kind`](https://kind.sigs.k8s.io/) lets you run Kubernetes on\nyour local computer. This tool requires that you have either\n[Docker](https://www.docker.com/) or [Podman](https://podman.io/) installed.\n\nThe kind [Quick Start](https://kind.sigs.k8s.io/docs/user/quick-start/) page\nshows you what you need to do to get up and running with kind.\n\n<a class=\"btn btn-primary\" href=\"https://kind.sigs.k8s.io/docs/user/quick-start/\" role=\"button\" aria-label=\"View kind Quick Start Guide\">View kind Quick Start Guide</a>\n\n## minikube\n\nLike `kind`, [`minikube`](https://minikube.sigs.k8s.io/) is a tool that lets you run Kubernetes\nlocally. `minikube` runs an all-in-one or a multi-node local Kubernetes cluster on your personal\ncomputer (including Windows, macOS and Linux PCs) so that you can try out\nKubernetes, or for daily development work.\n\nYou can follow the official\n[Get Started!](https://minikube.sigs.k8s.io/docs/start/) guide if your focus is\non getting the tool installed.\n\n<a class=\"btn btn-primary\" href=\"https://minikube.sigs.k8s.io/docs/start/\" role=\"button\" aria-label=\"View minikube Get Started! Guide\">View minikube Get Started! Guide</a>\n\nOnce you have `minikube` working, you can use it to\n[run a sample application](/docs/tutorials/hello-minikube/).\n\n## kubeadm\n\nYou can use the [kubeadm](#gloss:kubeadm) tool to create and manage Kubernetes clusters.\nIt performs the actions necessary to get a minimum viable, secure cluster up and running in a user friendly way.\n\n[Installing kubeadm](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/) shows you how to install kubeadm.\nOnce installed, you can use it to [create a cluster](/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/).\n\n<a class=\"btn btn-primary\" href=\"/docs/setup/production-environment/tools/kubeadm/install-kubeadm/\" role=\"button\" aria-label=\"View kubeadm Install Guide\">View kubeadm Install Guide</a>\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/_index/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/tools/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Install Tools"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl",
      "type": "concept",
      "title": "kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/_index/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kind",
      "type": "concept",
      "title": "kind",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/_index/",
          "line_start": 873,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:minikube",
      "type": "concept",
      "title": "minikube",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/_index/",
          "line_start": 1395,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm",
      "type": "concept",
      "title": "kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/_index/",
          "line_start": 2146,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/included/kubectl-convert-overview",
      "type": "page",
      "title": "kubectl-convert overview",
      "summary": "A kubectl plugin that allows you to convert manifests from one version of a Kubernetes API to a different version.",
      "body": "kubectl-convert is a tool for converting existing Kubernetes configurations into the desired format.\n\n**Why it matters**\nEfficient configuration management is critical for maintaining cluster consistency and reducing errors.\n\n**Key facts**\n- kubectl-convert supports various configuration formats, including YAML and JSON.\n\n**Common pitfalls**\n- Incorrect conversion settings can result in lost or corrupted data.\n\n**Related**\nTasks, Run Applications",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/included/kubectl-convert-overview/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tools/included/kubectl-convert-overview.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/included/kubectl-convert-overview.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/kubectl-convert-overview/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl-convert overview"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/tools/included/optional-kubectl-configs-zsh",
      "type": "page",
      "title": "zsh auto-completion",
      "summary": "Some optional configuration for zsh auto-completion.",
      "body": "The kubectl completion script for Zsh can be generated with the command `kubectl completion zsh`. Sourcing the completion script in your shell enables kubectl autocompletion.\n\nTo do so in all your shell sessions, add the following to your `~/.zshrc` file:\n\n```zsh\nsource <(kubectl completion zsh)\n```\n\nIf you have an alias for kubectl, kubectl autocompletion will automatically work with it.\n\nAfter reloading your shell, kubectl autocompletion should be working.\n\nIf you get an error like `2: command not found: compdef`, then add the following to the beginning of your `~/.zshrc` file:\n\n```zsh\nautoload -Uz compinit\ncompinit\n```",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-zsh/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tools/included/optional-kubectl-configs-zsh.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-zsh.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-zsh/",
          "line_start": null,
          "line_end": null,
          "quote": "zsh auto-completion"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/included/optional-kubectl-configs-fish",
      "type": "page",
      "title": "fish auto-completion",
      "summary": "Optional configuration to enable fish shell auto-completion.",
      "body": "Fish auto-completion provides suggestions for kubectl commands and options.\n\n**Why it matters**\nIt saves time and effort by reducing the need to manually type out long command lines.\n\n**Key facts**\n- Fish auto-completion is a feature that enhances user experience in the terminal.\n- It supports completion of kubectl commands, options, and flags.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-fish/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tools/included/optional-kubectl-configs-fish.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-fish.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-fish/",
          "line_start": null,
          "line_end": null,
          "quote": "fish auto-completion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/tools/included/verify-kubectl",
      "type": "page",
      "title": "verify kubectl install",
      "summary": "How to verify kubectl.",
      "body": "In order for kubectl to find and access a Kubernetes cluster, it needs a\n[kubeconfig file](/docs/concepts/configuration/organize-cluster-access-kubeconfig/),\nwhich is created automatically when you create a cluster using\n[kube-up.sh](https://github.com/kubernetes/kubernetes/blob/master/cluster/kube-up.sh)\nor successfully deploy a Minikube cluster.\nBy default, kubectl configuration is located at `~/.kube/config`.\n\nCheck that kubectl is properly configured by getting the cluster state:\n\n```shell\nkubectl cluster-info\n```\n\nIf you see a URL response, kubectl is correctly configured to access your cluster.\n\nIf you see a message similar to the following, kubectl is not configured correctly\nor is not able to connect to a Kubernetes cluster.\n\n```\nThe connection to the server <server-name:port> was refused - did you specify the right host or port?\n```\n\nFor example, if you are intending to run a Kubernetes cluster on your laptop (locally),\nyou will need a tool like [Minikube](https://minikube.sigs.k8s.io/docs/start/) to be\ninstalled first and then re-run the commands stated above.\n\nIf `kubectl cluster-info` returns the url response, but you can't access your cluster,\ncheck whether it is configured properly using the following command:\n\n```shell\nkubectl cluster-info dump\n```\n\n### Troubleshooting the 'No Auth Provider Found' error message {#no-auth-provider-found}\n\nIn Kubernetes 1.26, kubectl removed the built-in authentication for the following cloud\nproviders' managed Kubernetes offerings. These providers have released kubectl plugins\nto provide the cloud-specific authentication. For instructions, refer to the following provider documentation:\n\n* Azure AKS: [kubelogin plugin](https://azure.github.io/kubelogin/)\n* Google Kubernetes Engine: [gke-gcloud-auth-plugin](https://cloud.google.com/kubernetes-engine/docs/how-to/cluster-access-for-kubectl#install_plugin)\n\nThere could also be other causes for the same error message that are unrelated\nto that change.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/included/verify-kubectl/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tools/included/verify-kubectl.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/included/verify-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/verify-kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": "verify kubectl install"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:troubleshooting-the-no-auth-provider-found-error-message-no-auth-provider-found",
      "type": "concept",
      "title": "Troubleshooting the 'No Auth Provider Found' error message {#no-auth-provider-found}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/included/verify-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/verify-kubectl/",
          "line_start": 1286,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/included/optional-kubectl-configs-bash-mac",
      "type": "page",
      "title": "bash auto-completion on macOS",
      "summary": "Some optional configuration for bash auto-completion on macOS.",
      "body": "### Introduction\n\nThe kubectl completion script for Bash can be generated with `kubectl completion bash`.\nSourcing this script in your shell enables kubectl completion.\n\nHowever, the kubectl completion script depends on\n[**bash-completion**](https://github.com/scop/bash-completion) which you thus have to previously install.\n\n\n> **Warning:** There are two versions of bash-completion, v1 and v2. V1 is for Bash 3.2\n(which is the default on macOS), and v2 is for Bash 4.1+. The kubectl completion\nscript **doesn't work** correctly with bash-completion v1 and Bash 3.2.\nIt requires **bash-completion v2** and **Bash 4.1+**. Thus, to be able to\ncorrectly use kubectl completion on macOS, you have to install and use\nBash 4.1+ ([*instructions*](https://apple.stackexchange.com/a/292760)).\nThe following instructions assume that you use Bash 4.1+\n(that is, any Bash version of 4.1 or newer).\n\n\n### Upgrade Bash\n\nThe instructions here assume you use Bash 4.1+. You can check your Bash's version by running:\n\n```bash\necho $BASH_VERSION\n```\n\nIf it is too old, you can install/upgrade it using Homebrew:\n\n```bash\nbrew install bash\n```\n\nReload your shell and verify that the desired version is being used:\n\n```bash\necho $BASH_VERSION $SHELL\n```\n\nHomebrew usually installs it at `/usr/local/bin/bash`.\n\n### Install bash-completion\n\n\n> **Note:** As mentioned, these instructions assume you use Bash 4.1+, which means you will\ninstall bash-completion v2 (in contrast to Bash 3.2 and bash-completion v1,\nin which case kubectl completion won't work).\n\n\nYou can test if you have bash-completion v2 already installed with `type _init_completion`.\nIf not, you can install it with Homebrew:\n\n```bash\nbrew install bash-completion@2\n```\n\nAs stated in the output of this command, add the following to your `~/.bash_profile` file:\n\n```bash\nbrew_etc=\"$(brew --prefix)/etc\" && [[ -r \"${brew_etc}/profile.d/bash_completion.sh\" ]] && . \"${brew_etc}/profile.d/bash_completion.sh\"\n```\n\nReload your shell and verify that bash-completion v2 is correctly installed with `type _init_completion`.\n\n### Enable kubectl autocompletion\n\nYou now have to ensure that the kubectl completion script gets sourced in all\nyour shell sessions. There are multiple ways to achieve this:\n\n- Source the completion script in your `~/.bash_profile` file:\n\n    ```bash\n    echo 'source <(kubectl completion bash)' >>~/.bash_profile\n    ```\n\n- Add the completion script to the `/usr/local/etc/bash_completion.d` directory:\n\n    ```bash\n    kubectl completion bash >/usr/local/etc/bash_completion.d/kubectl\n    ```\n\n- If you have an alias for kubectl, you can extend shell completion to work with that alias:\n\n    ```bash\n    echo 'alias k=kubectl' >>~/.bash_profile\n    echo 'complete -o default -F __start_kubectl k' >>~/.bash_profile\n    ```\n\n- If you installed kubectl with Homebrew (as explained\n  [here](/docs/tasks/tools/install-kubectl-macos/#install-with-homebrew-on-macos)),\n  then the kubectl completion script should already be in `/usr/local/etc/bash_completion.d/kubectl`.\n  In that case, you don't need to do anything.\n\n   \n> **Note:** The Homebrew installation of bash-completion v2 sources all the files in the\n   `BASH_COMPLETION_COMPAT_DIR` directory, that's why the latter two methods work.\n\n\nIn any case, after reloading your shell, kubectl completion should be working.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-mac/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tools/included/optional-kubectl-configs-bash-mac.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-mac.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-mac/",
          "line_start": null,
          "line_end": null,
          "quote": "bash auto-completion on macOS"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:introduction",
      "type": "concept",
      "title": "Introduction",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-mac.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-mac/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-bash",
      "type": "concept",
      "title": "Upgrade Bash",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-mac.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-mac/",
          "line_start": 906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-bash-completion",
      "type": "concept",
      "title": "Install bash-completion",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-mac.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-mac/",
          "line_start": 1309,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-kubectl-autocompletion",
      "type": "concept",
      "title": "Enable kubectl autocompletion",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-mac.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-mac/",
          "line_start": 2094,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/included/kubectl-whats-next",
      "type": "page",
      "title": "What's next?",
      "summary": "What's next after installing kubectl.",
      "body": "* Learn about [kubectl](/docs/concepts/overview/kubectl/) and its role in the Kubernetes ecosystem.\n* [Install Minikube](https://minikube.sigs.k8s.io/docs/start/)\n* See the [getting started guides](/docs/setup/) for more about creating clusters.\n* [Learn how to launch and expose your application.](/docs/tasks/access-application-cluster/service-access-application-cluster/)\n* If you need access to a cluster you didn't create, see the\n  [Sharing Cluster Access document](/docs/tasks/access-application-cluster/configure-access-multiple-clusters/).\n* Read the [kubectl reference docs](/docs/reference/kubectl/kubectl/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "observability"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/included/kubectl-whats-next/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tools/included/kubectl-whats-next.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/included/kubectl-whats-next.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/kubectl-whats-next/",
          "line_start": null,
          "line_end": null,
          "quote": "What's next?"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/included/optional-kubectl-configs-pwsh",
      "type": "page",
      "title": "PowerShell auto-completion",
      "summary": "Some optional configuration for powershell auto-completion.",
      "body": "The kubectl completion script for PowerShell can be generated with the command `kubectl completion powershell`.\n\nTo do so in all your shell sessions, add the following line to your `$PROFILE` file:\n\n```powershell\nkubectl completion powershell | Out-String | Invoke-Expression\n```\n\nThis command will regenerate the auto-completion script on every PowerShell start up. You can also add the generated script directly to your `$PROFILE` file.\n\nTo add the generated script to your `$PROFILE` file, run the following line in your powershell prompt:\n\n```powershell\nkubectl completion powershell >> $PROFILE\n```\n\nAfter reloading your shell, kubectl autocompletion should be working.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-pwsh/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tools/included/optional-kubectl-configs-pwsh.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-pwsh.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-pwsh/",
          "line_start": null,
          "line_end": null,
          "quote": "PowerShell auto-completion"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/included/optional-kubectl-configs-bash-linux",
      "type": "page",
      "title": "bash auto-completion on Linux",
      "summary": "Some optional configuration for bash auto-completion on Linux.",
      "body": "### Introduction\n\nThe kubectl completion script for Bash can be generated with the command `kubectl completion bash`.\nSourcing the completion script in your shell enables kubectl autocompletion.\n\nHowever, the completion script depends on\n[**bash-completion**](https://github.com/scop/bash-completion),\nwhich means that you have to install this software first\n(you can test if you have bash-completion already installed by running `type _init_completion`).\n\n### Install bash-completion\n\nbash-completion is provided by many package managers\n(see [here](https://github.com/scop/bash-completion#installation)).\nYou can install it with `apt-get install bash-completion` or `yum install bash-completion`, etc.\n\nThe above commands create `/usr/share/bash-completion/bash_completion`,\nwhich is the main script of bash-completion. Depending on your package manager,\nyou have to manually source this file in your `~/.bashrc` file.\n\nTo find out, reload your shell and run `type _init_completion`.\nIf the command succeeds, you're already set, otherwise add the following to your `~/.bashrc` file:\n\n```bash\nsource /usr/share/bash-completion/bash_completion\n```\n\nReload your shell and verify that bash-completion is correctly installed by typing `type _init_completion`.\n\n### Enable kubectl autocompletion\n\n#### Bash\n\nYou now need to ensure that the kubectl completion script gets sourced in all\nyour shell sessions. There are two ways in which you can do this:\n\n\n\necho 'source <(kubectl completion bash)' >>~/.bashrc\n\n\nkubectl completion bash | sudo tee /etc/bash_completion.d/kubectl > /dev/null\nsudo chmod a+r /etc/bash_completion.d/kubectl\n\n\n\nIf you have an alias for kubectl, you can extend shell completion to work with that alias:\n\n```bash\necho 'alias k=kubectl' >>~/.bashrc\necho 'complete -o default -F __start_kubectl k' >>~/.bashrc\n```\n\n\n> **Note:** bash-completion sources all completion scripts in `/etc/bash_completion.d`.\n\n\nBoth approaches are equivalent. After reloading your shell, kubectl autocompletion should be working.\nTo enable bash autocompletion in current session of shell, source the ~/.bashrc file:\n\n```bash\nsource ~/.bashrc\n```\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-linux/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tools/included/optional-kubectl-configs-bash-linux.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-linux/",
          "line_start": null,
          "line_end": null,
          "quote": "bash auto-completion on Linux"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tools/included/_index",
      "type": "page",
      "title": "Tools Included",
      "summary": "Snippets to be included in the main kubectl-installs-*.md pages.",
      "body": "A list of tools included with Kubernetes for various tasks.\n\n**Why it matters**\nIt provides a centralized location to access and manage different tools.\n\n**Key facts**\n- Tools Included page lists all the tools available for specific tasks.\n- This page helps users navigate and find the required tools.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tools/included/_index/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tools/included/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/tools/included/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Tools Included"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "type": "page",
      "title": "Imperative Management of Kubernetes Objects Using Configuration Files",
      "summary": "",
      "body": "\nKubernetes objects can be created, updated, and deleted by using the `kubectl`\ncommand-line tool along with an object configuration file written in YAML or JSON.\nThis document explains how to define and manage objects using configuration files.\n\n\n## \n\n\nInstall [`kubectl`](/docs/tasks/tools/).\n\n \n\n\n\n\n\n## Trade-offs\n\nThe `kubectl` tool supports three kinds of object management:\n\n* Imperative commands\n* Imperative object configuration\n* Declarative object configuration\n\nSee [Kubernetes Object Management](/docs/concepts/overview/working-with-objects/object-management/)\nfor a discussion of the advantages and disadvantage of each kind of object management.\n\n## How to create objects\n\nYou can use `kubectl create -f` to create an object from a configuration file.\nRefer to the [kubernetes API reference](/docs/reference/generated/kubernetes-api//)\nfor details.\n\n* `kubectl create -f <filename|url>`\n\n## How to update objects\n\n\n> **Warning:** Updating objects with the `replace` command drops all\nparts of the spec not specified in the configuration file.  This\nshould not be used with objects whose specs are partially managed\nby the cluster, such as Services of type `LoadBalancer`, where\nthe `externalIPs` field is managed independently from the configuration\nfile.  Independently managed fields must be copied to the configuration\nfile to prevent `replace` from dropping them.\n\n\nYou can use `kubectl replace -f` to update a live object according to a\nconfiguration file.\n\n* `kubectl replace -f <filename|url>`\n\n## How to delete objects\n\nYou can use `kubectl delete -f` to delete an object that is described in a\nconfiguration file.\n\n* `kubectl delete -f <filename|url>`\n\n\n> **Note:** If configuration file has specified the `generateName` field in the `metadata`\nsection instead of the `name` field, you cannot delete the object using\n`kubectl delete -f <filename|url>`.\nYou will have to use other flags for deleting the object. For example:\n\n```shell\nkubectl delete <type> <name>\nkubectl delete <type> -l <label>\n```\n\n\n## How to view an object\n\nYou can use `kubectl get -f` to view information about an object that is\ndescribed in a configuration file.\n\n* `kubectl get -f <filename|url> -o yaml`\n\nThe `-o yaml` flag specifies that the full object configuration is printed.\nUse `kubectl get -h` to see a list of options.\n\n## Limitations\n\nThe `create`, `replace`, and `delete` commands work well when each object's\nconfiguration is fully defined and recorded in its configuration\nfile. However when a live object is updated, and the updates are not merged\ninto its configuration file, the updates will be lost the next time a `replace`\nis executed. This can happen if a controller, such as\na HorizontalPodAutoscaler, makes updates directly to a live object. Here's\nan example:\n\n1. You create an object from a configuration file.\n1. Another source updates the object by changing some field.\n1. You replace the object from the configuration file. Changes made by\nthe other source in step 2 are lost.\n\nIf you need to support multiple writers to the same object, you can use\n`kubectl apply` to manage the object.\n\n## Creating and editing an object from a URL without saving the configuration\n\nSuppose you have the URL of an object configuration file. You can use\n`kubectl create --edit` to make changes to the configuration before the\nobject is created. This is particularly useful for tutorials and tasks\nthat point to a configuration file that could be modified by the reader.\n\n```shell\nkubectl create -f <url> --edit\n```\n\n## Migrating from imperative commands to imperative object configuration\n\nMigrating from imperative commands to imperative object configuration involves\nseveral manual steps.\n\n1. Export the live object to a local object configuration file:\n\n    ```shell\n    kubectl get <kind>/<name> -o yaml > <kind>_<name>.yaml\n    ```\n\n1. Manually remove the status field from the object configuration file.\n\n1. For subsequent object management, use `replace` exclusively.\n\n    ```shell\n  \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/manage-kubernetes-objects/imperative-config.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": null,
          "line_end": null,
          "quote": "Imperative Management of Kubernetes Objects Using Configuration Files"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:trade-offs",
      "type": "concept",
      "title": "Trade-offs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 429,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-create-objects",
      "type": "concept",
      "title": "How to create objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 787,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-update-objects",
      "type": "concept",
      "title": "How to update objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 1051,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-delete-objects",
      "type": "concept",
      "title": "How to delete objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 1681,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-view-an-object",
      "type": "concept",
      "title": "How to view an object",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 2203,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitations",
      "type": "concept",
      "title": "Limitations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 2505,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-and-editing-an-object-from-a-url-without-saving-the-configuration",
      "type": "concept",
      "title": "Creating and editing an object from a URL without saving the configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 3292,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-from-imperative-commands-to-imperative-object-configuration",
      "type": "concept",
      "title": "Migrating from imperative commands to imperative object configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 3703,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defining-controller-selectors-and-podtemplate-labels",
      "type": "concept",
      "title": "Defining controller selectors and PodTemplate labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 4227,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-kubernetes-objects/storage-version-migration",
      "type": "page",
      "title": "Migrate Kubernetes Objects Using Storage Version Migration",
      "summary": "",
      "body": "\n\n\n\nKubernetes relies on API data being actively re-written, to support some\nmaintenance activities related to at rest storage. Two prominent examples are\nthe versioned schema of stored resources (that is, the preferred storage schema\nchanging from v1 to v2 for a given resource) and encryption at rest\n(that is, rewriting stale data based on a change in how the data should be encrypted).\n\nRunning storage version migrations allows for the assurance that all objects for\na Resource have been migrated off of a stale storage version. The requirements\nto running a storage migration is ensuring that the Resource has an integer\nresource version. All Kubernetes Resources and CRDs are ensured to have this\nproperty, but migration will fail if this is not the case, for instance with\naggregated APIs.\n\n## \n\nInstall [`kubectl`](/docs/tasks/tools/#kubectl).\n\n \n\nEnsure that your cluster has the `StorageVersionMigrator`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/#StorageVersionMigrator)\nenabled. You will need control plane administrator access to make that change.\n\nEnable storage version migration REST API by setting runtime config\n`storagemigration.k8s.io/v1beta1` to `true` for the API server. For more information on\nhow to do that,\nread [enable or disable a Kubernetes API](/docs/tasks/administer-cluster/enable-disable-api/).\n\n\n\n## Re-encrypt Kubernetes secrets using storage version migration\n\n- To begin with, [configure KMS provider](/docs/tasks/administer-cluster/kms-provider/)\n  to encrypt data at rest in etcd using following encryption configuration.\n\n  ```yaml\n  kind: EncryptionConfiguration\n  apiVersion: apiserver.config.k8s.io/v1\n  resources:\n  - resources:\n    - secrets\n    providers:\n    - aescbc:\n        keys:\n        - name: key1\n          secret: c2VjcmV0IGlzIHNlY3VyZQ==\n  ```\n\n  Make sure to enable automatic reload of encryption\n  configuration file by setting `--encryption-provider-config-automatic-reload` to true.\n\n- Create a Secret using kubectl.\n\n  ```shell\n  kubectl create secret generic my-secret --from-literal=key1=supersecret\n  ```\n\n- [Verify](/docs/tasks/administer-cluster/kms-provider/#verifying-that-the-data-is-encrypted)\n  the serialized data for that Secret object is prefixed with `k8s:enc:aescbc:v1:key1`.\n\n- Update the encryption configuration file as follows to rotate the encryption key.\n\n  ```yaml\n  kind: EncryptionConfiguration\n  apiVersion: apiserver.config.k8s.io/v1\n  resources:\n  - resources:\n    - secrets\n    providers:\n    - aescbc:\n        keys:\n        - name: key2\n          secret: c2VjcmV0IGlzIHNlY3VyZSwgaXMgaXQ/\n    - aescbc:\n        keys:\n        - name: key1\n          secret: c2VjcmV0IGlzIHNlY3VyZQ==\n  ```\n\n- To ensure that previously created secret `my-secret` is re-encrypted\n  with new key `key2`, you will use _Storage Version Migration_.\n\n- Create a StorageVersionMigration manifest named `migrate-secret.yaml` as follows:\n\n  ```yaml\n  kind: StorageVersionMigration\n  apiVersion: storagemigration.k8s.io/v1beta1\n  metadata:\n    name: secrets-migration\n  spec:\n    resource:\n      group: \"\"\n      resource: secrets\n  ```\n\n  Create the object using `kubectl` as follows:\n\n  ```shell\n  kubectl apply -f migrate-secret.yaml\n  ```\n\n- Monitor migration of Secrets by checking the `.status` of the StorageVersionMigration.\n  A successful migration should have its\n  `Succeeded` condition set to true. Get the StorageVersionMigration object as follows:\n\n  ```shell\n  kubectl wait --for=condition=Succeeded storageversionmigration.storagemigration.k8s.io/secrets-migration\n  ```\n\n  The output is similar to:\n\n  ```yaml\n  kind: StorageVersionMigration\n  apiVersion: storagemigration.k8s.io/v1beta1\n  metadata:\n    name: secrets-migration\n    uid: 628f6922-a9cb-4514-b076-12d3c178967c\n    resourceVersion: \"90\"\n    creationTimestamp: \"2024-03-12T20:29:45Z\"\n  spec:\n    resource:\n      group: \"\"\n      resource: secrets\n  status:\n    conditions:\n    - type: Running\n      status: \"False\"\n      lastUpdate\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/storage-version-migration/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/manage-kubernetes-objects/storage-version-migration.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/storage-version-migration.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/storage-version-migration/",
          "line_start": null,
          "line_end": null,
          "quote": "Migrate Kubernetes Objects Using Storage Version Migration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:re-encrypt-kubernetes-secrets-using-storage-version-migration",
      "type": "concept",
      "title": "Re-encrypt Kubernetes secrets using storage version migration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/storage-version-migration.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/storage-version-migration/",
          "line_start": 1554,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-the-preferred-storage-schema-of-a-crd",
      "type": "concept",
      "title": "Update the preferred storage schema of a CRD",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/storage-version-migration.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/storage-version-migration/",
          "line_start": 4597,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-kubernetes-objects/kustomization",
      "type": "page",
      "title": "Declarative Management of Kubernetes Objects Using Kustomize",
      "summary": "",
      "body": "\n\n[Kustomize](https://github.com/kubernetes-sigs/kustomize) is a standalone tool\nto customize Kubernetes objects\nthrough a [kustomization file](https://kubectl.docs.kubernetes.io/references/kustomize/glossary/#kustomization).\n\nSince 1.14, kubectl also\nsupports the management of Kubernetes objects using a kustomization file.\nTo view resources found in a directory containing a kustomization file, run the following command:\n\n```shell\nkubectl kustomize <kustomization_directory>\n```\n\nTo apply those resources, run `kubectl apply` with `--kustomize` or `-k` flag:\n\n```shell\nkubectl apply -k <kustomization_directory>\n```\n\n## \n\nInstall [`kubectl`](/docs/tasks/tools/).\n\n \n\n\n\n## Overview of Kustomize\n\nKustomize is a tool for customizing Kubernetes configurations. It has the following\nfeatures to manage application configuration files:\n\n* generating resources from other sources\n* setting cross-cutting fields for resources\n* composing and customizing collections of resources\n\n### Generating Resources\n\nConfigMaps and Secrets hold configuration or sensitive data that are used by other Kubernetes\nobjects, such as Pods. The source of truth of ConfigMaps or Secrets are usually external to\na cluster, such as a `.properties` file or an SSH keyfile.\nKustomize has `secretGenerator` and `configMapGenerator`, which generate Secret and ConfigMap from files or literals.\n\n#### configMapGenerator\n\nTo generate a ConfigMap from a file, add an entry to the `files` list in `configMapGenerator`.\nHere is an example of generating a ConfigMap with a data item from a `.properties` file:\n\n```shell\n# Create a application.properties file\ncat <<EOF >application.properties\nFOO=Bar\nEOF\n\ncat <<EOF >./kustomization.yaml\nconfigMapGenerator:\n- name: example-configmap-1\n  files:\n  - application.properties\nEOF\n```\n\nThe generated ConfigMap can be examined with the following command:\n\n```shell\nkubectl kustomize ./\n```\n\nThe generated ConfigMap is:\n\n```yaml\napiVersion: v1\ndata:\n  application.properties: |\n    FOO=Bar\nkind: ConfigMap\nmetadata:\n  name: example-configmap-1-8mbdf7882g\n```\n\nTo generate a ConfigMap from an env file, add an entry to the `envs` list in `configMapGenerator`.\nHere is an example of generating a ConfigMap with a data item from a `.env` file:\n\n```shell\n# Create a .env file\ncat <<EOF >.env\nFOO=Bar\nEOF\n\ncat <<EOF >./kustomization.yaml\nconfigMapGenerator:\n- name: example-configmap-1\n  envs:\n  - .env\nEOF\n```\n\nThe generated ConfigMap can be examined with the following command:\n\n```shell\nkubectl kustomize ./\n```\n\nThe generated ConfigMap is:\n\n```yaml\napiVersion: v1\ndata:\n  FOO: Bar\nkind: ConfigMap\nmetadata:\n  name: example-configmap-1-42cfbf598f\n```\n\n\n> **Note:** Each variable in the `.env` file becomes a separate key in the ConfigMap that you generate.\nThis is different from the previous example which embeds a file named `application.properties`\n(and all its entries) as the value for a single key.\n\n\nConfigMaps can also be generated from literal key-value pairs. To generate a ConfigMap from\na literal key-value pair, add an entry to the `literals` list in configMapGenerator.\nHere is an example of generating a ConfigMap with a data item from a key-value pair:\n\n```shell\ncat <<EOF >./kustomization.yaml\nconfigMapGenerator:\n- name: example-configmap-2\n  literals:\n  - FOO=Bar\nEOF\n```\n\nThe generated ConfigMap can be checked by the following command:\n\n```shell\nkubectl kustomize ./\n```\n\nThe generated ConfigMap is:\n\n```yaml\napiVersion: v1\ndata:\n  FOO: Bar\nkind: ConfigMap\nmetadata:\n  name: example-configmap-2-g2hdhfc6tk\n```\n\nTo use a generated ConfigMap in a Deployment, reference it by the name of the configMapGenerator.\nKustomize will automatically replace this name with the generated name.\n\nThis is an example deployment that uses a generated ConfigMap:\n\n```yaml\n# Create an application.properties file\ncat <<EOF >application.properties\nFOO=Bar\nEOF\n\ncat <<EOF >deployment.yaml\napiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: my-app\n  labels:\n    app: my-app\nspec:\n  selector\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/manage-kubernetes-objects/kustomization.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": null,
          "line_end": null,
          "quote": "Declarative Management of Kubernetes Objects Using Kustomize"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:overview-of-kustomize",
      "type": "concept",
      "title": "Overview of Kustomize",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 799,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bases-and-overlays",
      "type": "concept",
      "title": "Bases and Overlays",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 18094,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-apply-view-delete-objects-using-kustomize",
      "type": "concept",
      "title": "How to apply/view/delete objects using Kustomize",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 20036,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kustomize-feature-list",
      "type": "concept",
      "title": "Kustomize Feature List",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 21561,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generating-resources",
      "type": "concept",
      "title": "Generating Resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 1103,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-cross-cutting-fields",
      "type": "concept",
      "title": "Setting cross-cutting fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 8192,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:composing-and-customizing-resources",
      "type": "concept",
      "title": "Composing and Customizing Resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 9643,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-kubernetes-objects/imperative-command",
      "type": "page",
      "title": "Managing Kubernetes Objects Using Imperative Commands",
      "summary": "",
      "body": "\nKubernetes objects can quickly be created, updated, and deleted directly using\nimperative commands built into the `kubectl` command-line tool. This document\nexplains how those commands are organized and how to use them to manage live objects.\n\n\n## \n\nInstall [`kubectl`](/docs/tasks/tools/).\n\n \n\n\n\n\n\n## Trade-offs\n\nThe `kubectl` tool supports three kinds of object management:\n\n* Imperative commands\n* Imperative object configuration\n* Declarative object configuration\n\nSee [Kubernetes Object Management](/docs/concepts/overview/working-with-objects/object-management/)\nfor a discussion of the advantages and disadvantage of each kind of object management.\n\n## How to create objects\n\nThe `kubectl` tool supports verb-driven commands for creating some of the most common\nobject types. The commands are named to be recognizable to users unfamiliar with\nthe Kubernetes object types.\n\n- `run`: Create a new Pod to run a Container.\n- `expose`: Create a new Service object to load balance traffic across Pods.\n- `autoscale`: Create a new Autoscaler object to automatically horizontally scale a controller, such as a Deployment.\n\nThe `kubectl` tool also supports creation commands driven by object type.\nThese commands support more object types and are more explicit about\ntheir intent, but require users to know the type of objects they intend\nto create.\n\n- `create <objecttype> [<subtype>] <instancename>`\n\nSome objects types have subtypes that you can specify in the `create` command.\nFor example, the Service object has several subtypes including ClusterIP,\nLoadBalancer, and NodePort. Here's an example that creates a Service with\nsubtype NodePort:\n\n```shell\nkubectl create service nodeport <myservicename>\n```\n\nIn the preceding example, the `create service nodeport` command is called\na subcommand of the `create service` command.\n\nYou can use the `-h` flag to find the arguments and flags supported by\na subcommand:\n\n```shell\nkubectl create service nodeport -h\n```\n\n## How to update objects\n\nThe `kubectl` command supports verb-driven commands for some common update operations.\nThese commands are named to enable users unfamiliar with Kubernetes\nobjects to perform updates without knowing the specific fields\nthat must be set:\n\n- `scale`: Horizontally scale a controller to add or remove Pods by updating the replica count of the controller.\n- `annotate`: Add or remove an annotation from an object.\n- `label`: Add or remove a label from an object.\n\nThe `kubectl` command also supports update commands driven by an aspect of the object.\nSetting this aspect may set different fields for different object types:\n\n- `set` `<field>`: Set an aspect of an object.\n\n\n> **Note:** In Kubernetes version 1.5, not every verb-driven command has an associated aspect-driven command.\n\n\nThe `kubectl` tool supports these additional ways to update a live object directly,\nhowever they require a better understanding of the Kubernetes object schema.\n\n- `edit`: Directly edit the raw configuration of a live object by opening its configuration in an editor.\n- `patch`: Directly modify specific fields of a live object by using a patch string.\nFor more details on patch strings, see the patch section in\n[API Conventions](https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#patch-operations).\n\n## How to delete objects\n\nYou can use the `delete` command to delete an object from a cluster:\n\n- `delete <type>/<name>`\n\n\n> **Note:** You can use `kubectl delete` for both imperative commands and imperative object\nconfiguration. The difference is in the arguments passed to the command. To use\n`kubectl delete` as an imperative command, pass the object to be deleted as\nan argument. Here's an example that passes a Deployment object named nginx:\n\n\n```shell\nkubectl delete deployment/nginx\n```\n\n## How to view an object\n\n\nTODO(pwittrock): Uncomment this when implemented.\n\nYou can use `kubectl view` to print specific fields of an object.\n\n- `view`: Prints the value of a specific field of an\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/manage-kubernetes-objects/imperative-command.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": null,
          "line_end": null,
          "quote": "Managing Kubernetes Objects Using Imperative Commands"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-set-commands-to-modify-objects-before-creation",
      "type": "concept",
      "title": "Using `set` commands to modify objects before creation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 4516,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-edit-to-modify-objects-before-creation",
      "type": "concept",
      "title": "Using `--edit` to modify objects before creation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 5552,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "type": "page",
      "title": "Update API Objects in Place Using kubectl patch",
      "summary": "Use kubectl patch to update Kubernetes API objects in place. Do a strategic merge patch or a JSON merge patch.",
      "body": "\n\nThis task shows how to use `kubectl patch` to update an API object in place. The exercises\nin this task demonstrate a strategic merge patch and a JSON merge patch.\n\n\n\n## \n\n\n \n\n\n\n\n\n\n## Use a strategic merge patch to update a Deployment\n\nHere's the configuration file for a Deployment that has two replicas. Each replica\nis a Pod that has one container:\n\n\n\nCreate the Deployment:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/deployment-patch.yaml\n```\n\nView the Pods associated with your Deployment:\n\n```shell\nkubectl get pods\n```\n\nThe output shows that the Deployment has two Pods. The `1/1` indicates that\neach Pod has one container:\n\n\n```\nNAME                        READY     STATUS    RESTARTS   AGE\npatch-demo-28633765-670qr   1/1       Running   0          23s\npatch-demo-28633765-j5qs3   1/1       Running   0          23s\n```\n\nMake a note of the names of the running Pods. Later, you will see that these Pods\nget terminated and replaced by new ones.\n\nAt this point, each Pod has one Container that runs the nginx image. Now suppose\nyou want each Pod to have two containers: one that runs nginx and one that runs redis.\n\nCreate a file named `patch-file.yaml` that has this content:\n\n```yaml\nspec:\n  template:\n    spec:\n      containers:\n      - name: patch-demo-ctr-2\n        image: redis\n```\n\nPatch your Deployment:\n\n```shell\nkubectl patch deployment patch-demo --patch-file patch-file.yaml\n```\n\nView the patched Deployment:\n\n```shell\nkubectl get deployment patch-demo --output yaml\n```\n\nThe output shows that the PodSpec in the Deployment has two Containers:\n\n```yaml\ncontainers:\n- image: redis\n  imagePullPolicy: Always\n  name: patch-demo-ctr-2\n  ...\n- image: nginx\n  imagePullPolicy: Always\n  name: patch-demo-ctr\n  ...\n```\n\nView the Pods associated with your patched Deployment:\n\n```shell\nkubectl get pods\n```\n\nThe output shows that the running Pods have different names from the Pods that\nwere running previously. The Deployment terminated the old Pods and created two\nnew Pods that comply with the updated Deployment spec. The `2/2` indicates that\neach Pod has two Containers:\n\n```\nNAME                          READY     STATUS    RESTARTS   AGE\npatch-demo-1081991389-2wrn5   2/2       Running   0          1m\npatch-demo-1081991389-jmg7b   2/2       Running   0          1m\n```\n\nTake a closer look at one of the patch-demo Pods:\n\n```shell\nkubectl get pod <your-pod-name> --output yaml\n```\n\nThe output shows that the Pod has two Containers: one running nginx and one running redis:\n\n```\ncontainers:\n- image: redis\n  ...\n- image: nginx\n  ...\n```\n\n### Notes on the strategic merge patch\n\nThe patch you did in the preceding exercise is called a *strategic merge patch*.\nNotice that the patch did not replace the `containers` list. Instead it added a new\nContainer to the list. In other words, the list in the patch was merged with the\nexisting list. This is not always what happens when you use a strategic merge patch on a list.\nIn some cases, the list is replaced, not merged.\n\nWith a strategic merge patch, a list is either replaced or merged depending on its\npatch strategy. The patch strategy is specified by the value of the `patchStrategy` key\nin a field tag in the Kubernetes source code. For example, the `Containers` field of `PodSpec`\nstruct has a `patchStrategy` of `merge`:\n\n```go\ntype PodSpec struct {\n  ...\n  Containers []Container `json:\"containers\" patchStrategy:\"merge\" patchMergeKey:\"name\" ...`\n  ...\n}\n```\n\nYou can also see the patch strategy in the\n[OpenApi spec](https://raw.githubusercontent.com/kubernetes/kubernetes/master/api/openapi-spec/swagger.json):\n\n```yaml\n\"io.k8s.api.core.v1.PodSpec\": {\n    ...,\n    \"containers\": {\n        \"description\": \"List of containers belonging to the pod.  ....\"\n    },\n    \"x-kubernetes-patch-merge-key\": \"name\",\n    \"x-kubernetes-patch-strategy\": \"merge\"\n}\n```\n\n\nAnd you can see the patch strategy in the\n[Kubernetes API documentation](/docs/reference/generated/kubernetes-api//#podspec-v1-core).\n\nCreate a fil\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": null,
          "line_end": null,
          "quote": "Update API Objects in Place Using kubectl patch"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-a-strategic-merge-patch-to-update-a-deployment",
      "type": "concept",
      "title": "Use a strategic merge patch to update a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-a-json-merge-patch-to-update-a-deployment",
      "type": "concept",
      "title": "Use a JSON merge patch to update a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 5269,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-strategic-merge-patch-to-update-a-deployment-using-the-retainkeys-strategy",
      "type": "concept",
      "title": "Use strategic merge patch to update a Deployment using the retainKeys strategy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 7488,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:summary",
      "type": "concept",
      "title": "Summary",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 14540,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:notes-on-the-strategic-merge-patch",
      "type": "concept",
      "title": "Notes on the strategic merge patch",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 2764,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:notes-on-the-strategic-merge-patch-using-the-retainkeys-strategy",
      "type": "concept",
      "title": "Notes on the strategic merge patch using the retainKeys strategy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 9410,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alternate-forms-of-the-kubectl-patch-command",
      "type": "concept",
      "title": "Alternate forms of the kubectl patch command",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 11229,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-an-object-s-replica-count-using-kubectl-patch-with-subresource-scale-kubectl-patch",
      "type": "concept",
      "title": "Update an object's replica count using `kubectl patch` with `--subresource` {#scale-kubectl-patch}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 12172,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "type": "page",
      "title": "Declarative Management of Kubernetes Objects Using Configuration Files",
      "summary": "",
      "body": "\nKubernetes objects can be created, updated, and deleted by storing multiple\nobject configuration files in a directory and using `kubectl apply` to\nrecursively create and update those objects as needed. This method\nretains writes made to live objects without merging the changes\nback into the object configuration files. `kubectl diff` also gives you a\npreview of what changes `apply` will make.\n\n## \n\nInstall [`kubectl`](/docs/tasks/tools/).\n\n \n\n\n\n## Trade-offs\n\nThe `kubectl` tool supports three kinds of object management:\n\n* Imperative commands\n* Imperative object configuration\n* Declarative object configuration\n\nSee [Kubernetes Object Management](/docs/concepts/overview/working-with-objects/object-management/)\nfor a discussion of the advantages and disadvantage of each kind of object management.\n\n## Overview\n\nDeclarative object configuration requires a firm understanding of\nthe Kubernetes object definitions and configuration. Read and complete\nthe following documents if you have not already:\n\n* [Managing Kubernetes Objects Using Imperative Commands](/docs/tasks/manage-kubernetes-objects/imperative-command/)\n* [Imperative Management of Kubernetes Objects Using Configuration Files](/docs/tasks/manage-kubernetes-objects/imperative-config/)\n\nFollowing are definitions for terms used in this document:\n\n- *object configuration file / configuration file*: A file that defines the\n  configuration for a Kubernetes object. This topic shows how to pass configuration\n  files to `kubectl apply`. Configuration files are typically stored in source control, such as Git.\n- *live object configuration / live configuration*: The live configuration\n  values of an object, as observed by the Kubernetes cluster. These are kept in the Kubernetes\n  cluster storage, typically etcd.\n- *declarative configuration writer / declarative writer*: A person or software component\n  that makes updates to a live object. The live writers referred to in this topic make changes\n  to object configuration files and run `kubectl apply` to write the changes.\n\n## How to create objects\n\nUse `kubectl apply` to create all objects, except those that already exist,\ndefined by configuration files in a specified directory:\n\n```shell\nkubectl apply -f <directory>\n```\n\nThis sets the `kubectl.kubernetes.io/last-applied-configuration: '{...}'`\nannotation on each object. The annotation contains the contents of the object\nconfiguration file that was used to create the object.\n\n\n> **Note:** Add the `-R` flag to recursively process directories.\n\n\nHere's an example of an object configuration file:\n\n\n\nRun `kubectl diff` to print the object that will be created:\n\n```shell\nkubectl diff -f https://k8s.io/examples/application/simple_deployment.yaml\n```\n\n\n> **Note:** `diff` uses [server-side dry-run](/docs/reference/using-api/api-concepts/#dry-run),\nwhich needs to be enabled on `kube-apiserver`.\n\nSince `diff` performs a server-side apply request in dry-run mode,\nit requires granting `PATCH`, `CREATE`, and `UPDATE` permissions.\nSee [Dry-Run Authorization](/docs/reference/using-api/api-concepts#dry-run-authorization)\nfor details.\n\n\nCreate the object using `kubectl apply`:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/simple_deployment.yaml\n```\n\nPrint the live configuration using `kubectl get`:\n\n```shell\nkubectl get -f https://k8s.io/examples/application/simple_deployment.yaml -o yaml\n```\n\nThe output shows that the `kubectl.kubernetes.io/last-applied-configuration` annotation\nwas written to the live configuration, and it matches the configuration file:\n\n```yaml\nkind: Deployment\nmetadata:\n  annotations:\n    # ...\n    # This is the json representation of simple_deployment.yaml\n    # It was written by kubectl apply when the object was created\n    kubectl.kubernetes.io/last-applied-configuration: |\n      {\"apiVersion\":\"apps/v1\",\"kind\":\"Deployment\",\n      \"metadata\":{\"annotations\":{},\"name\":\"nginx-deployment\",\"namespace\":\"default\"},\n      \"spec\":{\"minReadySeconds\":5,\"selector\":{\"matchLabel\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/manage-kubernetes-objects/declarative-config.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": null,
          "line_end": null,
          "quote": "Declarative Management of Kubernetes Objects Using Configuration Files"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:overview",
      "type": "concept",
      "title": "Overview",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 933,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-apply-calculates-differences-and-merges-changes",
      "type": "concept",
      "title": "How apply calculates differences and merges changes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 16813,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-field-values",
      "type": "concept",
      "title": "Default field values",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 29765,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-change-ownership-of-a-field-between-the-configuration-file-and-direct-imperative-writers",
      "type": "concept",
      "title": "How to change ownership of a field between the configuration file and direct imperative writers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 34668,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:changing-management-methods",
      "type": "concept",
      "title": "Changing management methods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 35587,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:recommended-kubectl-delete-f-filename",
      "type": "concept",
      "title": "Recommended: `kubectl delete -f <filename>`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 10906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alternative-kubectl-apply-f-directory-prune",
      "type": "concept",
      "title": "Alternative: `kubectl apply -f <directory> --prune`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 11209,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:merge-patch-calculation",
      "type": "concept",
      "title": "Merge patch calculation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 17517,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-different-types-of-fields-are-merged",
      "type": "concept",
      "title": "How different types of fields are merged",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 21623,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:merging-changes-to-primitive-fields",
      "type": "concept",
      "title": "Merging changes to primitive fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 22662,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:merging-changes-to-map-fields",
      "type": "concept",
      "title": "Merging changes to map fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 23790,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:merging-changes-for-fields-of-type-list",
      "type": "concept",
      "title": "Merging changes for fields of type list",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 24919,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-clear-server-defaulted-fields-or-fields-set-by-other-writers",
      "type": "concept",
      "title": "How to clear server-defaulted fields or fields set by other writers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 34375,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:changing-the-owner-from-a-direct-imperative-writer-to-a-configuration-file",
      "type": "concept",
      "title": "Changing the owner from a direct imperative writer to a configuration file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 34992,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:changing-the-owner-from-a-configuration-file-to-a-direct-imperative-writer",
      "type": "concept",
      "title": "Changing the owner from a configuration file to a direct imperative writer",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "cli",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 35222,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-from-imperative-command-management-to-declarative-object-configuration",
      "type": "concept",
      "title": "Migrating from imperative command management to declarative object configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 36198,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-from-imperative-object-configuration-to-declarative-object-configuration",
      "type": "concept",
      "title": "Migrating from imperative object configuration to declarative object configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 37128,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-kubernetes-objects/_index",
      "type": "page",
      "title": "Manage Kubernetes Objects",
      "summary": "Declarative and imperative paradigms for interacting with the Kubernetes API.",
      "body": "Managing Kubernetes objects, such as pods, services, and deployments.\n\n**Why it matters**\nIt ensures the smooth operation of applications by managing their underlying components.\n\n**Key facts**\n- Manage Kubernetes Objects page covers creation, deletion, and updating of objects.\n- This includes managing pods, services, deployments, and persistent volumes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/_index/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/manage-kubernetes-objects/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/_index.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Manage Kubernetes Objects"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/network/extend-service-ip-ranges",
      "type": "page",
      "title": "Extend Service IP Ranges",
      "summary": "",
      "body": "\n\n\nThis document shares how to extend the existing Service IP range assigned to a cluster.\n\n\n## \n\n\n\n\n\n\n> **Note:** While you can use this feature with an earlier version, the feature is only GA and officially supported since v1.33.\n\n\n\n\n## Extend Service IP Ranges\n\nKubernetes clusters with kube-apiservers that have enabled the `MultiCIDRServiceAllocator`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/) and have the\n`networking.k8s.io/v1` API group active, will create a ServiceCIDR object that takes\nthe well-known name `kubernetes`, and that specifies an IP address range\nbased on the value of the `--service-cluster-ip-range` command line argument to kube-apiserver.\n\n```sh\nkubectl get servicecidr\n```\n\n```\nNAME         CIDRS          AGE\nkubernetes   10.96.0.0/28   17d\n```\n\nThe well-known `kubernetes` Service, that exposes the kube-apiserver endpoint to the Pods, calculates\nthe first IP address from the default ServiceCIDR range and uses that IP address as its\ncluster IP address.\n\n```sh\nkubectl get service kubernetes\n```\n\n```\nNAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE\nkubernetes   ClusterIP   10.96.0.1    <none>        443/TCP   17d\n```\n\nThe default Service, in this case, uses the ClusterIP 10.96.0.1, that has the corresponding IPAddress object.\n\n```sh\nkubectl get ipaddress 10.96.0.1\n```\n\n```\nNAME        PARENTREF\n10.96.0.1   services/default/kubernetes\n```\n\nThe ServiceCIDRs are protected with [finalizers](#gloss:finalizer),\nto avoid leaving Service ClusterIPs orphans; the finalizer is only removed if there is another subnet\nthat contains the existing IPAddresses or there are no IPAddresses belonging to the subnet.\n\n## Extend the number of available IPs for Services\n\nThere are cases that users will need to increase the number addresses available to Services,\npreviously, increasing the Service range was a disruptive operation that could also cause data loss.\nWith this new feature users only need to add a new ServiceCIDR to increase the number of available addresses.\n\n### Adding a new ServiceCIDR\n\nOn a cluster with a 10.96.0.0/28 range for Services, there is only 2^(32-28) - 2 = 14\nIP addresses available. The `kubernetes.default` Service is always created; for this example,\nthat leaves you with only 13 possible Services.\n\n```sh\nfor i in $(seq 1 13); do kubectl create service clusterip \"test-$i\" --tcp 80 -o json | jq -r .spec.clusterIP; done\n```\n\n```\n10.96.0.11\n10.96.0.5\n10.96.0.12\n10.96.0.13\n10.96.0.14\n10.96.0.2\n10.96.0.3\n10.96.0.4\n10.96.0.6\n10.96.0.7\n10.96.0.8\n10.96.0.9\nerror: failed to create ClusterIP service: Internal error occurred: failed to allocate a serviceIP: range is full\n```\n\nYou can increase the number of IP addresses available for Services, by creating a new ServiceCIDR\nthat extends or adds new IP address ranges.\n\n```sh\ncat <<EOF | kubectl apply -f -\napiVersion: networking.k8s.io/v1\nkind: ServiceCIDR\nmetadata:\n  name: newcidr1\nspec:\n  cidrs:\n  - 10.96.0.0/24\nEOF\n```\n\n```\nservicecidr.networking.k8s.io/newcidr1 created\n```\n\nand this will allow you to create new Services with ClusterIPs that will be picked from this new range.\n\n```sh\nfor i in $(seq 13 16); do kubectl create service clusterip \"test-$i\" --tcp 80 -o json | jq -r .spec.clusterIP; done\n```\n\n```\n10.96.0.48\n10.96.0.200\n10.96.0.121\n10.96.0.144\n```\n\n### Deleting a ServiceCIDR\n\nYou cannot delete a ServiceCIDR if there are IPAddresses that depend on the ServiceCIDR.\n\n```sh\nkubectl delete servicecidr newcidr1\n```\n\n```\nservicecidr.networking.k8s.io \"newcidr1\" deleted\n```\n\nKubernetes uses a finalizer on the ServiceCIDR to track this dependent relationship.\n\n```sh\nkubectl get servicecidr newcidr1 -o yaml\n```\n\n```yaml\napiVersion: networking.k8s.io/v1\nkind: ServiceCIDR\nmetadata:\n  creationTimestamp: \"2023-10-12T15:11:07Z\"\n  deletionGracePeriodSeconds: 0\n  deletionTimestamp: \"2023-10-12T15:12:45Z\"\n  finalizers:\n  - networking.k8s.io/service-cidr-finalizer\n  name: newcidr1\n  resourceVersion: \"1133\"\n  uid: 5ffd8afe-c78f-4e60-\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/network/extend-service-ip-ranges.md"
      },
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": null,
          "line_end": null,
          "quote": "Extend Service IP Ranges"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extend-service-ip-ranges",
      "type": "concept",
      "title": "Extend Service IP Ranges",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 442,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extend-the-number-of-available-ips-for-services",
      "type": "concept",
      "title": "Extend the number of available IPs for Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 1926,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-service-cidr-policies",
      "type": "concept",
      "title": "Kubernetes Service CIDR Policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 5138,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adding-a-new-servicecidr",
      "type": "concept",
      "title": "Adding a new ServiceCIDR",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 2283,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-a-servicecidr",
      "type": "concept",
      "title": "Deleting a ServiceCIDR",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 3558,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preventing-unauthorized-servicecidr-creation-update-using-validating-admission-policy",
      "type": "concept",
      "title": "Preventing Unauthorized ServiceCIDR Creation/Update using Validating Admission Policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 5540,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/network/validate-dual-stack",
      "type": "page",
      "title": "Validate IPv4/IPv6 dual-stack",
      "summary": "",
      "body": "\nThis document shares how to validate IPv4/IPv6 dual-stack enabled Kubernetes clusters.\n\n## \n\n* Provider support for dual-stack networking (Cloud provider or otherwise must be able to\n  provide Kubernetes nodes with routable IPv4/IPv6 network interfaces)\n* A [network plugin](/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/)\n  that supports dual-stack networking.\n* [Dual-stack enabled](/docs/concepts/services-networking/dual-stack/) cluster\n\n\n\n\n> **Note:** While you can validate with an earlier version, the feature is only GA and officially supported since v1.23.\n\n\n\n\n## Validate addressing\n\n### Validate node addressing\n\nEach dual-stack Node should have a single IPv4 block and a single IPv6 block allocated.\nValidate that IPv4/IPv6 Pod address ranges are configured by running the following command.\nReplace the sample node name with a valid dual-stack Node from your cluster. In this example,\nthe Node's name is `k8s-linuxpool1-34450317-0`:\n\n```shell\nkubectl get nodes k8s-linuxpool1-34450317-0 -o go-template --template='{{range .spec.podCIDRs}}{{printf \"%s\\n\" .}}{{end}}'\n```\n\n```\n10.244.1.0/24\n2001:db8::/64\n```\n\nThere should be one IPv4 block and one IPv6 block allocated.\n\nValidate that the node has an IPv4 and IPv6 interface detected.\nReplace node name with a valid node from the cluster.\nIn this example the node name is `k8s-linuxpool1-34450317-0`:\n\n```shell\nkubectl get nodes k8s-linuxpool1-34450317-0 -o go-template --template='{{range .status.addresses}}{{printf \"%s: %s\\n\" .type .address}}{{end}}'\n```\n\n```\nHostname: k8s-linuxpool1-34450317-0\nInternalIP: 10.0.0.5\nInternalIP: 2001:db8:10::5\n```\n\n### Validate Pod addressing\n\nValidate that a Pod has an IPv4 and IPv6 address assigned. Replace the Pod name with\na valid Pod in your cluster. In this example the Pod name is `pod01`:\n\n```shell\nkubectl get pods pod01 -o go-template --template='{{range .status.podIPs}}{{printf \"%s\\n\" .ip}}{{end}}'\n```\n\n```\n10.244.1.4\n2001:db8::4\n```\n\nYou can also validate Pod IPs using the Downward API via the `status.podIPs` fieldPath.\nThe following snippet demonstrates how you can expose the Pod IPs via an environment variable\ncalled `MY_POD_IPS` within a container.\n\n```yaml\n        env:\n        - name: MY_POD_IPS\n          valueFrom:\n            fieldRef:\n              fieldPath: status.podIPs\n```\n\nThe following command prints the value of the `MY_POD_IPS` environment variable from\nwithin a container. The value is a comma separated list that corresponds to the\nPod's IPv4 and IPv6 addresses.\n\n```shell\nkubectl exec -it pod01 -- set | grep MY_POD_IPS\n```\n\n```\nMY_POD_IPS=10.244.1.4,2001:db8::4\n```\n\nThe Pod's IP addresses will also be written to `/etc/hosts` within a container.\nThe following command executes a cat on `/etc/hosts` on a dual stack Pod.\nFrom the output you can verify both the IPv4 and IPv6 IP address for the Pod.\n\n```shell\nkubectl exec -it pod01 -- cat /etc/hosts\n```\n\n```\n# Kubernetes-managed hosts file.\n127.0.0.1    localhost\n::1    localhost ip6-localhost ip6-loopback\nfe00::0    ip6-localnet\nfe00::0    ip6-mcastprefix\nfe00::1    ip6-allnodes\nfe00::2    ip6-allrouters\n10.244.1.4    pod01\n2001:db8::4    pod01\n```\n\n## Validate Services\n\nCreate the following Service that does not explicitly define `.spec.ipFamilyPolicy`.\nKubernetes will assign a cluster IP for the Service from the first configured\n`service-cluster-ip-range` and set the `.spec.ipFamilyPolicy` to `SingleStack`.\n\n\n\nUse `kubectl` to view the YAML for the Service.\n\n```shell\nkubectl get svc my-service -o yaml\n```\n\nThe Service has `.spec.ipFamilyPolicy` set to `SingleStack` and `.spec.clusterIP` set\nto an IPv4 address from the first configured range set via `--service-cluster-ip-range`\nflag on kube-controller-manager.\n\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  name: my-service\n  namespace: default\nspec:\n  clusterIP: 10.0.217.164\n  clusterIPs:\n  - 10.0.217.164\n  ipFamilies:\n  - IPv4\n  ipFamilyPolicy: SingleStack\n  ports:\n  - port: 80\n    protocol: TCP\n    targetP\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "observability"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/network/validate-dual-stack.md"
      },
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": null,
          "line_end": null,
          "quote": "Validate IPv4/IPv6 dual-stack"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validate-addressing",
      "type": "concept",
      "title": "Validate addressing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 691,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validate-services",
      "type": "concept",
      "title": "Validate Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 3269,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validate-node-addressing",
      "type": "concept",
      "title": "Validate node addressing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 715,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validate-pod-addressing",
      "type": "concept",
      "title": "Validate Pod addressing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 1735,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-dual-stack-load-balanced-service",
      "type": "concept",
      "title": "Create a dual-stack load balanced Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 6853,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/network/customize-hosts-file-for-pods",
      "type": "page",
      "title": "Adding entries to Pod /etc/hosts with HostAliases",
      "summary": "",
      "body": "\n\nAdding entries to a Pod's `/etc/hosts` file provides Pod-level override of hostname resolution when DNS and other options are not applicable. You can add these custom entries with the HostAliases field in PodSpec.\n\nThe Kubernetes project recommends modifying DNS configuration using the `hostAliases` field\n(part of the `.spec` for a Pod), and not by using an init container or other means to edit `/etc/hosts`\ndirectly.\nChange made in other ways may be overwritten by the kubelet during Pod creation or restart.\n\n\n\n## Default hosts file content\n\nStart an Nginx Pod which is assigned a Pod IP:\n\n```shell\nkubectl run nginx --image nginx\n```\n\n```\npod/nginx created\n```\n\nExamine a Pod IP:\n\n```shell\nkubectl get pods --output=wide\n```\n\n```\nNAME     READY     STATUS    RESTARTS   AGE    IP           NODE\nnginx    1/1       Running   0          13s    10.200.0.4   worker0\n```\n\nThe hosts file content would look like this:\n\n```shell\nkubectl exec nginx -- cat /etc/hosts\n```\n\n```\n# Kubernetes-managed hosts file.\n127.0.0.1\tlocalhost\n::1\tlocalhost ip6-localhost ip6-loopback\nfe00::0\tip6-localnet\nfe00::0\tip6-mcastprefix\nfe00::1\tip6-allnodes\nfe00::2\tip6-allrouters\n10.200.0.4\tnginx\n```\n\nBy default, the `hosts` file only includes IPv4 and IPv6 boilerplates like\n`localhost` and its own hostname.\n\n## Adding additional entries with hostAliases\n\nIn addition to the default boilerplate, you can add additional entries to the\n`hosts` file.\nFor example: to resolve `foo.local`, `bar.local` to `127.0.0.1` and `foo.remote`,\n`bar.remote` to `10.1.2.3`, you can configure HostAliases for a Pod under\n`.spec.hostAliases`:\n\n\n\nYou can start a Pod with that configuration by running:\n\n```shell\nkubectl apply -f https://k8s.io/examples/service/networking/hostaliases-pod.yaml\n```\n\n```\npod/hostaliases-pod created\n```\n\nExamine a Pod's details to see its IPv4 address and its status:\n\n```shell\nkubectl get pod --output=wide\n```\n\n```\nNAME                           READY     STATUS      RESTARTS   AGE       IP              NODE\nhostaliases-pod                0/1       Completed   0          6s        10.200.0.5      worker0\n```\n\nThe `hosts` file content looks like this:\n\n```shell\nkubectl logs hostaliases-pod\n```\n\n```\n# Kubernetes-managed hosts file.\n127.0.0.1\tlocalhost\n::1\tlocalhost ip6-localhost ip6-loopback\nfe00::0\tip6-localnet\nfe00::0\tip6-mcastprefix\nfe00::1\tip6-allnodes\nfe00::2\tip6-allrouters\n10.200.0.5\thostaliases-pod\n\n# Entries added by HostAliases.\n127.0.0.1\tfoo.local\tbar.local\n10.1.2.3\tfoo.remote\tbar.remote\n```\n\nwith the additional entries specified at the bottom.\n\n## Why does the kubelet manage the hosts file? {#why-does-kubelet-manage-the-hosts-file}\n\nThe kubelet manages the\n`hosts` file for each container of the Pod to prevent the container runtime from\nmodifying the file after the containers have already been started.\nHistorically, Kubernetes always used Docker Engine as its container runtime, and Docker Engine would\nthen modify the `/etc/hosts` file after each container had started.\n\nCurrent Kubernetes can use a variety of container runtimes; even so, the kubelet manages the\nhosts file within each container so that the outcome is as intended regardless of which\ncontainer runtime you use.\n\n\n> **Caution:** Avoid making manual changes to the hosts file inside a container.\n\nIf you make manual changes to the hosts file,\nthose changes are lost when the container exits.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/network/customize-hosts-file-for-pods.md"
      },
      "provenance": [
        {
          "source": "tasks/network/customize-hosts-file-for-pods.md",
          "url": "https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/",
          "line_start": null,
          "line_end": null,
          "quote": "Adding entries to Pod /etc/hosts with HostAliases"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-hosts-file-content",
      "type": "concept",
      "title": "Default hosts file content",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/customize-hosts-file-for-pods.md",
          "url": "https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/",
          "line_start": 550,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adding-additional-entries-with-hostaliases",
      "type": "concept",
      "title": "Adding additional entries with hostAliases",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/customize-hosts-file-for-pods.md",
          "url": "https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/",
          "line_start": 1324,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-does-the-kubelet-manage-the-hosts-file-why-does-kubelet-manage-the-hosts-file",
      "type": "concept",
      "title": "Why does the kubelet manage the hosts file? {#why-does-kubelet-manage-the-hosts-file}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/customize-hosts-file-for-pods.md",
          "url": "https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/",
          "line_start": 2662,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/network/_index",
      "type": "page",
      "title": "Networking",
      "summary": "Learn how to configure networking for your cluster.",
      "body": "Networking concepts and tasks in Kubernetes, such as pod-to-pod communication.\n\n**Why it matters**\nIt enables secure and efficient communication between pods and services.\n\n**Key facts**\n- Networking page covers topics like pod networking, service discovery, and ingress controllers.\n- This includes understanding network policies and security considerations.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/network/_index/",
      "meta": {
        "weight": 140,
        "rel_path": "tasks/network/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/network/_index.md",
          "url": "https://kubernetes.io/docs/tasks/network/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Networking"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/network/reconfigure-default-service-ip-ranges",
      "type": "page",
      "title": "Kubernetes Default ServiceCIDR Reconfiguration",
      "summary": "",
      "body": "\n\n\nThis document shares how to reconfigure the default Service IP range(s) assigned\nto a cluster.\n\n## \n\n\n\n\n\n\n\n## Kubernetes Default ServiceCIDR Reconfiguration\n\nThis document explains how to manage the Service IP address range within a\nKubernetes cluster, which also influences the cluster's supported IP families\nfor Services.\n\nThe IP families available for Service ClusterIPs are determined by the\n`--service-cluster-ip-range` flag to kube-apiserver. For a better\nunderstanding of Service IP address allocation, refer to the\n[Services IP address allocation tracking](/docs/reference/networking/virtual-ips/#ip-address-objects) documentation.\n\nSince Kubernetes 1.33, the Service IP families configured for the cluster are\nreflected by the ServiceCIDR object named `kubernetes`. The `kubernetes` ServiceCIDR\nobject is created by the first kube-apiserver instance that starts, based on its\nconfigured `--service-cluster-ip-range` flag. To ensure consistent cluster behavior,\nall kube-apiserver instances must be configured with the same `--service-cluster-ip-range` values,\nwhich must match the default `kubernetes` ServiceCIDR object.\n\n### Kubernetes ServiceCIDR Reconfiguration Categories\n\nServiceCIDR reconfiguration typically falls into one of the following categories:\n\n* **Extending the existing ServiceCIDRs:** This can be done dynamically by\n  adding new ServiceCIDR objects without the need for reconfiguring the\n  kube-apiserver. Please refer to the dedicated documentation on\n  [Extending Service IP Ranges](/docs/tasks/network/extend-service-ip-ranges/).\n\n* **Single-to-dual-stack conversion preserving the primary ServiceCIDR:** This\n  involves introducing a secondary IP family (IPv6 to an IPv4-only cluster, or\n  IPv4 to an IPv6-only cluster) while keeping the original IP family as\n  primary. This requires an update to the kube-apiserver configuration and a\n  corresponding modification of various cluster components that need to handle\n  this additional IP family. These components include, but are not limited to,\n  kube-proxy, the CNI or network plugin, service mesh implementations, and DNS\n  services.\n\n* **Dual-to-single conversion preserving the primary ServiceCIDR:** This\n  involves removing the secondary IP family from a dual-stack cluster,\n  reverting to a single IP family while retaining the original primary IP\n  family. In addition to reconfiguring the components to match the\n  new IP family, you might need to address Services that were explicitly\n  configured to use the removed IP family.\n\n* **Anything that results in changing the primary ServiceCIDR:** Completely\n  replacing the default ServiceCIDR is a complex operation. If the new\n  ServiceCIDR does not overlap with the existing one, it will require\n  [renumbering all existing Services and changing the `kubernetes.default` Service](#illustrative-reconfiguration-steps).\n  The case where the primary IP family also changes is even more complicated,\n  and may require changing multiple cluster components (kubelet, network plugins, etc.)\n  to match the new primary IP family.\n\n### Manual Operations for Replacing the Default ServiceCIDR\n\nReconfiguring the default ServiceCIDR necessitates manual steps performed by\nthe cluster operator, administrator, or the software managing the cluster\nlifecycle. These typically include:\n\n1. **Updating** the kube-apiserver configuration: Modify the\n   `--service-cluster-ip-range` flag with the new IP range(s).\n1. **Reconfiguring** the network components: This is a critical step and the\n   specific procedure depends on the different networking components in use. It\n   might involve updating configuration files, restarting agent pods, or\n   updating the components to manage the new ServiceCIDR(s) and the desired IP\n   family configuration for Pods. Typical components can be the implementation\n   of Kubernetes Services, such as kube-proxy, and the configured networking\n   plugin, and potentially other networking components like service mesh\n   controllers and \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/network/reconfigure-default-service-ip-ranges.md"
      },
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Default ServiceCIDR Reconfiguration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-default-servicecidr-reconfiguration",
      "type": "concept",
      "title": "Kubernetes Default ServiceCIDR Reconfiguration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": 303,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-servicecidr-reconfiguration-categories",
      "type": "concept",
      "title": "Kubernetes ServiceCIDR Reconfiguration Categories",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": 1329,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manual-operations-for-replacing-the-default-servicecidr",
      "type": "concept",
      "title": "Manual Operations for Replacing the Default ServiceCIDR",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": 3263,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:illustrative-reconfiguration-steps",
      "type": "concept",
      "title": "Illustrative Reconfiguration Steps",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": 4842,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/user-namespaces",
      "type": "page",
      "title": "Use a User Namespace With a Pod",
      "summary": "",
      "body": "\n\n\nThis page shows how to configure a user namespace for pods. This allows you to\nisolate the user running inside the container from the one in the host.\n\nA process running as root in a container can run as a different (non-root) user\nin the host; in other words, the process has full privileges for operations\ninside the user namespace, but is unprivileged for operations outside the\nnamespace.\n\nYou can use this feature to reduce the damage a compromised container can do to\nthe host or other pods in the same node. There are [several security\nvulnerabilities][KEP-vulns] rated either **HIGH** or **CRITICAL** that were not\nexploitable when user namespaces is active. It is expected user namespace will\nmitigate some future vulnerabilities too.\n\nWithout using a user namespace a container running as root, in the case of a\ncontainer breakout, has root privileges on the node. And if some capability were\ngranted to the container, the capabilities are valid on the host too. None of\nthis is true when user namespaces are used.\n\n[KEP-vulns]: https://github.com/kubernetes/enhancements/tree/217d790720c5aef09b8bd4d6ca96284a0affe6c2/keps/sig-node/127-user-namespaces#motivation\n\n## \n\n \n\n\n\n\n* The node OS needs to be Linux\n* You need to exec commands in the host\n* You need to be able to exec into pods\n\nThe cluster that you're using **must** include at least one node that meets the\n[requirements](/docs/concepts/workloads/pods/user-namespaces/#before-you-begin)\nfor using user namespaces with Pods.\n\nIf you have a mixture of nodes and only some of the nodes provide user namespace support for\nPods, you also need to ensure that the user namespace Pods are\n[scheduled](/docs/concepts/scheduling-eviction/assign-pod-node/) to suitable nodes.\n\n\n\n## Run a Pod that uses a user namespace {#create-pod}\n\nA user namespace for a pod is enabled setting the `hostUsers` field of `.spec`\nto `false`. For example:\n\n\n\n1. Create the pod on your cluster:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/pods/user-namespaces-stateless.yaml\n   ```\n\n1. Exec into the pod and run `readlink /proc/self/ns/user`:\n\n   ```shell\n   kubectl exec -ti userns -- bash\n   ```\n\nRun this command:\n\n```shell\nreadlink /proc/self/ns/user\n```\n\nThe output is similar to:\n\n```shell\nuser:[4026531837]\n```\n\nAlso run:\n\n```shell\ncat /proc/self/uid_map\n```\n\nThe output is similar to:\n```shell\n0  833617920      65536\n```\n\nThen, open a shell in the host and run the same commands.\n\nThe `readlink` command shows the user namespace the process is running in. It\nshould be different when it is run on the host and inside the container.\n\nThe last number of the `uid_map` file inside the container must be 65536, on the\nhost it must be a bigger number.\n\nIf you are running the kubelet inside a user namespace, you need to compare the\noutput from running the command in the pod to the output of running in the host:\n\n```shell\nreadlink /proc/$pid/ns/user\n```\n\nreplacing `$pid` with the kubelet PID.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/user-namespaces/",
      "meta": {
        "weight": 210,
        "rel_path": "tasks/configure-pod-container/user-namespaces.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/user-namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/user-namespaces/",
          "line_start": null,
          "line_end": null,
          "quote": "Use a User Namespace With a Pod"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:run-a-pod-that-uses-a-user-namespace-create-pod",
      "type": "concept",
      "title": "Run a Pod that uses a user namespace {#create-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/user-namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/user-namespaces/",
          "line_start": 2044,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/quality-service-pod",
      "type": "page",
      "title": "Configure Quality of Service for Pods",
      "summary": "",
      "body": "\n\nThis page shows how to configure Pods so that they will be assigned particular\n[Quality of Service (QoS) classes](#gloss:qos-class).\nKubernetes uses QoS classes to make decisions about evicting Pods when Node resources are exceeded.\n\n\nWhen Kubernetes creates a Pod it assigns one of these QoS classes to the Pod:\n\n* [Guaranteed](/docs/concepts/workloads/pods/pod-qos/#guaranteed)\n* [Burstable](/docs/concepts/workloads/pods/pod-qos/#burstable)\n* [BestEffort](/docs/concepts/workloads/pods/pod-qos/#besteffort)\n\n\n> **Note:** Kubernetes assigns the QoS class when the Pod is created, and it remains unchanged\nfor the lifetime of the Pod. If you attempt to\n[resize the Pod's resources](/docs/tasks/configure-pod-container/resize-container-resources/)\nto values that would result in a different QoS class, control plane rejects your request with an error message.\n\n\n\n## \n\n\n\n\nYou also need to be able to create and delete namespaces.\n\n\n\n\n\n\n## Create a namespace\n\nCreate a namespace so that the resources you create in this exercise are\nisolated from the rest of your cluster.\n\n```shell\nkubectl create namespace qos-example\n```\n\n## Create a Pod that gets assigned a QoS class of Guaranteed\n\nFor a Pod to be given a QoS class of `Guaranteed`:\n\n* Every Container in the Pod must have a memory limit and a memory request.\n* For every Container in the Pod, the memory limit must equal the memory request.\n* Every Container in the Pod must have a CPU limit and a CPU request.\n* For every Container in the Pod, the CPU limit must equal the CPU request.\n\nThese restrictions apply to init containers and app containers equally.\n[Ephemeral containers](/docs/concepts/workloads/pods/ephemeral-containers/)\ncannot define resources so these restrictions do not apply.\n\nHere is a manifest for a Pod that has one Container. The Container has a memory limit and a\nmemory request, both equal to 200 MiB. The Container has a CPU limit and a CPU request, both equal to 700 milliCPU:\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/qos/qos-pod.yaml --namespace=qos-example\n```\n\nView detailed information about the Pod:\n\n```shell\nkubectl get pod qos-demo --namespace=qos-example --output=yaml\n```\n\nThe output shows that Kubernetes gave the Pod a QoS class of `Guaranteed`. The output also\nverifies that the Pod Container has a memory request that matches its memory limit, and it has\na CPU request that matches its CPU limit.\n\n```yaml\nspec:\n  containers:\n    ...\n    resources:\n      limits:\n        cpu: 700m\n        memory: 200Mi\n      requests:\n        cpu: 700m\n        memory: 200Mi\n    ...\nstatus:\n  qosClass: Guaranteed\n```\n\n\n> **Note:** If a Container specifies its own memory limit, but does not specify a memory request, Kubernetes\nautomatically assigns a memory request that matches the limit. Similarly, if a Container specifies its own\nCPU limit, but does not specify a CPU request, Kubernetes automatically assigns a CPU request that matches\nthe limit.\n\n\n\n#### Clean up {#clean-up-guaranteed}\n\nDelete your Pod:\n\n```shell\nkubectl delete pod qos-demo --namespace=qos-example\n```\n\n## Create a Pod that gets assigned a QoS class of Burstable\n\nA Pod is given a QoS class of `Burstable` if:\n\n* The Pod does not meet the criteria for QoS class `Guaranteed`.\n* At least one Container in the Pod has a memory or CPU request or limit.\n\nHere is a manifest for a Pod that has one Container. The Container has a memory limit of 200 MiB\nand a memory request of 100 MiB.\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/qos/qos-pod-2.yaml --namespace=qos-example\n```\n\nView detailed information about the Pod:\n\n```shell\nkubectl get pod qos-demo-2 --namespace=qos-example --output=yaml\n```\n\nThe output shows that Kubernetes gave the Pod a QoS class of `Burstable`:\n\n```yaml\nspec:\n  containers:\n  - image: nginx\n    imagePullPolicy: Always\n    name: qos-demo-2-ctr\n    resources:\n      limits:\n        memory: 200Mi\n      requests:\n        memory: 100Mi\n  ...\nstatus:\n  qosCl\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/configure-pod-container/quality-service-pod.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Quality of Service for Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-namespace",
      "type": "concept",
      "title": "Create a namespace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 1087,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-gets-assigned-a-qos-class-of-guaranteed",
      "type": "concept",
      "title": "Create a Pod that gets assigned a QoS class of Guaranteed",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 1275,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-gets-assigned-a-qos-class-of-burstable",
      "type": "concept",
      "title": "Create a Pod that gets assigned a QoS class of Burstable",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 3357,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-gets-assigned-a-qos-class-of-besteffort",
      "type": "concept",
      "title": "Create a Pod that gets assigned a QoS class of BestEffort",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 4507,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-has-two-containers",
      "type": "concept",
      "title": "Create a Pod that has two Containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 5449,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:retrieve-the-qos-class-for-a-pod",
      "type": "concept",
      "title": "Retrieve the QoS class for a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 6422,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clean-up",
      "type": "concept",
      "title": "Clean up",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 6658,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:for-app-developers",
      "type": "concept",
      "title": "For app developers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 6782,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:for-cluster-administrators",
      "type": "concept",
      "title": "For cluster administrators",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 7026,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/configure-projected-volume-storage",
      "type": "page",
      "title": "Configure a Pod to Use a Projected Volume for Storage",
      "summary": "",
      "body": "\nThis page shows how to use a [`projected`](/docs/concepts/storage/volumes/#projected) Volume to mount\nseveral existing volume sources into the same directory. Currently, `secret`, `configMap`, `downwardAPI`,\nand `serviceAccountToken` volumes can be projected.\n\n\n> **Note:** `serviceAccountToken` is not a volume type.\n\n\n\n## \n\n \n\n\n\n## Configure a projected volume for a pod\n\nIn this exercise, you create username and password [Secrets](#gloss:secret) from local files. You then create a Pod that runs one container, using a [`projected`](/docs/concepts/storage/volumes/#projected) Volume to mount the Secrets into the same shared directory.\n\nHere is the configuration file for the Pod:\n\n\n\n1. Create the Secrets:\n\n    ```shell\n    # Create files containing the username and password:\n    echo -n \"admin\" > ./username.txt\n    echo -n \"1f2d1e2e67df\" > ./password.txt\n\n    # Package these files into secrets:\n    kubectl create secret generic user --from-file=./username.txt\n    kubectl create secret generic pass --from-file=./password.txt\n    ```\n1. Create the Pod:\n\n    ```shell\n    kubectl apply -f https://k8s.io/examples/pods/storage/projected.yaml\n    ```\n1. Verify that the Pod's container is running, and then watch for changes to\nthe Pod:\n\n    ```shell\n    kubectl get --watch pod test-projected-volume\n    ```\n    The output looks like this:\n    ```\n    NAME                    READY     STATUS    RESTARTS   AGE\n    test-projected-volume   1/1       Running   0          14s\n    ```\n1. In another terminal, get a shell to the running container:\n\n    ```shell\n    kubectl exec -it test-projected-volume -- /bin/sh\n    ```\n1. In your shell, verify that the `projected-volume` directory contains your projected sources:\n\n    ```shell\n    ls /projected-volume/\n    ```\n\n## Clean up\n\nDelete the Pod and the Secrets:\n\n```shell\nkubectl delete pod test-projected-volume\nkubectl delete secret user pass\n```\n\n\n\n## \n\n* Learn more about [`projected`](/docs/concepts/storage/volumes/#projected) volumes.\n* Read the [all-in-one volume](https://git.k8s.io/design-proposals-archive/node/all-in-one-volume.md) design document.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-projected-volume-storage/",
      "meta": {
        "weight": 100,
        "rel_path": "tasks/configure-pod-container/configure-projected-volume-storage.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-projected-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-projected-volume-storage/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure a Pod to Use a Projected Volume for Storage"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-a-projected-volume-for-a-pod",
      "type": "concept",
      "title": "Configure a projected volume for a pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-projected-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-projected-volume-storage/",
          "line_start": 471,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/configure-service-account",
      "type": "page",
      "title": "Configure Service Accounts for Pods",
      "summary": "",
      "body": "Kubernetes offers two distinct ways for clients that run within your\ncluster, or that otherwise have a relationship to your cluster's\n[control plane](#gloss:control-plane)\nto authenticate to the\n[API server](#gloss:kube-apiserver).\n\nA _service account_ provides an identity for processes that run in a Pod,\nand maps to a ServiceAccount object. When you authenticate to the API\nserver, you identify yourself as a particular _user_. Kubernetes recognises\nthe concept of a user, however, Kubernetes itself does **not** have a User\nAPI.\n\nThis task guide is about ServiceAccounts, which do exist in the Kubernetes\nAPI. The guide shows you some ways to configure ServiceAccounts for Pods.\n\n## \n\n\n\n\n\n## Use the default service account to access the API server\n\nWhen Pods contact the API server, Pods authenticate as a particular\nServiceAccount (for example, `default`). There is always at least one\nServiceAccount in each [namespace](#gloss:namespace).\n\nEvery Kubernetes namespace contains at least one ServiceAccount: the default\nServiceAccount for that namespace, named `default`.\nIf you do not specify a ServiceAccount when you create a Pod, Kubernetes\nautomatically assigns the ServiceAccount named `default` in that namespace.\n\nYou can fetch the details for a Pod you have created. For example:\n\n```shell\nkubectl get pods/<podname> -o yaml\n```\n\nIn the output, you see a field `spec.serviceAccountName`.\nKubernetes automatically\nsets that value if you don't specify it when you create a Pod.\n\nAn application running inside a Pod can access the Kubernetes API using\nautomatically mounted service account credentials.\nSee [accessing the Cluster](/docs/tasks/access-application-cluster/access-cluster/) to learn more.\n\nWhen a Pod authenticates as a ServiceAccount, its level of access depends on the\n[authorization plugin and policy](/docs/reference/access-authn-authz/authorization/#authorization-modules)\nin use.\n\nThe API credentials are automatically revoked when the Pod is deleted, even if\nfinalizers are in place. In particular, the API credentials are revoked 60 seconds\nbeyond the `.metadata.deletionTimestamp` set on the Pod (the deletion timestamp\nis typically the time that the **delete** request was accepted plus the Pod's\ntermination grace period).\n\n### Opt out of API credential automounting\n\nIf you don't want the [kubelet](#gloss:kubelet)\nto automatically mount a ServiceAccount's API credentials, you can opt out of\nthe default behavior.\nYou can opt out of automounting API credentials on `/var/run/secrets/kubernetes.io/serviceaccount/token`\nfor a service account by setting `automountServiceAccountToken: false` on the ServiceAccount:\n\nFor example:\n\n```yaml\napiVersion: v1\nkind: ServiceAccount\nmetadata:\n  name: build-robot\nautomountServiceAccountToken: false\n...\n```\n\nYou can also opt out of automounting API credentials for a particular Pod:\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: my-pod\nspec:\n  serviceAccountName: build-robot\n  automountServiceAccountToken: false\n  ...\n```\n\nIf both the ServiceAccount and the Pod's `.spec` specify a value for\n`automountServiceAccountToken`, the Pod spec takes precedence.\n\n## Use more than one ServiceAccount {#use-multiple-service-accounts}\n\nEvery namespace has at least one ServiceAccount: the default ServiceAccount\nresource, called `default`. You can list all ServiceAccount resources in your\n[current namespace](/docs/concepts/overview/working-with-objects/namespaces/#setting-the-namespace-preference)\nwith:\n\n```shell\nkubectl get serviceaccounts\n```\n\nThe output is similar to this:\n\n```\nNAME      SECRETS    AGE\ndefault   1          1d\n```\n\nYou can create additional ServiceAccount objects like this:\n\n```shell\nkubectl apply -f - <<EOF\napiVersion: v1\nkind: ServiceAccount\nmetadata:\n  name: build-robot\nEOF\n```\n\nThe name of a ServiceAccount object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\nIf you get a complete dump of the service account object, like this:\n\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
      "meta": {
        "weight": 120,
        "rel_path": "tasks/configure-pod-container/configure-service-account.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Service Accounts for Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-the-default-service-account-to-access-the-api-server",
      "type": "concept",
      "title": "Use the default service account to access the API server",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 845,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-more-than-one-serviceaccount-use-multiple-service-accounts",
      "type": "concept",
      "title": "Use more than one ServiceAccount {#use-multiple-service-accounts}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 3355,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manually-create-an-api-token-for-a-serviceaccount",
      "type": "concept",
      "title": "Manually create an API token for a ServiceAccount",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 5493,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:add-imagepullsecrets-to-a-service-account",
      "type": "concept",
      "title": "Add ImagePullSecrets to a service account",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 9587,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccount-token-volume-projection",
      "type": "concept",
      "title": "ServiceAccount token volume projection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 12048,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:opt-out-of-api-credential-automounting",
      "type": "concept",
      "title": "Opt out of API credential automounting",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 2442,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cleanup-cleanup-use-multiple-service-accounts",
      "type": "concept",
      "title": "Cleanup {#cleanup-use-multiple-service-accounts}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 5275,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manually-create-a-long-lived-api-token-for-a-serviceaccount",
      "type": "concept",
      "title": "Manually create a long-lived API token for a ServiceAccount",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 7538,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:add-image-pull-secret-to-service-account",
      "type": "concept",
      "title": "Add image pull secret to service account",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 10445,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-that-imagepullsecrets-are-set-for-new-pods",
      "type": "concept",
      "title": "Verify that imagePullSecrets are set for new Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 11637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:launch-a-pod-using-service-account-token-projection",
      "type": "concept",
      "title": "Launch a Pod using service account token projection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 15565,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-account-issuer-discovery",
      "type": "concept",
      "title": "Service account issuer discovery",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 16504,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/configure-gmsa",
      "type": "page",
      "title": "Configure GMSA for Windows Pods and containers",
      "summary": "",
      "body": "\n\n\n\nThis page shows how to configure\n[Group Managed Service Accounts](https://docs.microsoft.com/en-us/windows-server/security/group-managed-service-accounts/group-managed-service-accounts-overview) (GMSA)\nfor Pods and containers that will run on Windows nodes. Group Managed Service Accounts\nare a specific type of Active Directory account that provides automatic password management,\nsimplified service principal name (SPN) management, and the ability to delegate the management\nto other administrators across multiple servers.\n\nIn Kubernetes, GMSA credential specs are configured at a Kubernetes cluster-wide scope\nas Custom Resources. Windows Pods, as well as individual containers within a Pod,\ncan be configured to use a GMSA for domain based functions (e.g. Kerberos authentication)\nwhen interacting with other Windows services.\n\n## \n\nYou need to have a Kubernetes cluster and the `kubectl` command-line tool must be\nconfigured to communicate with your cluster. The cluster is expected to have Windows worker nodes.\nThis section covers a set of initial steps required once for each cluster:\n\n### Install the GMSACredentialSpec CRD\n\nA [CustomResourceDefinition](/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/)(CRD)\nfor GMSA credential spec resources needs to be configured on the cluster to define\nthe custom resource type `GMSACredentialSpec`. Download the GMSA CRD\n[YAML](https://github.com/kubernetes-sigs/windows-gmsa/blob/master/admission-webhook/deploy/gmsa-crd.yml)\nand save it as gmsa-crd.yaml. Next, install the CRD with `kubectl apply -f gmsa-crd.yaml`\n\n### Install webhooks to validate GMSA users\n\nTwo webhooks need to be configured on the Kubernetes cluster to populate and\nvalidate GMSA credential spec references at the Pod or container level:\n\n1. A mutating webhook that expands references to GMSAs (by name from a Pod specification)\n   into the full credential spec in JSON form within the Pod spec.\n\n1. A validating webhook ensures all references to GMSAs are authorized to be used by the Pod service account.\n\nInstalling the above webhooks and associated objects require the steps below:\n\n1. Create a certificate key pair (that will be used to allow the webhook container to communicate to the cluster)\n\n1. Install a secret with the certificate from above.\n\n1. Create a deployment for the core webhook logic.\n\n1. Create the validating and mutating webhook configurations referring to the deployment.\n\nA [script](https://github.com/kubernetes-sigs/windows-gmsa/blob/master/admission-webhook/deploy/deploy-gmsa-webhook.sh)\ncan be used to deploy and configure the GMSA webhooks and associated objects\nmentioned above. The script can be run with a `--dry-run=server` option to\nallow you to review the changes that would be made to your cluster.\n\nThe [YAML template](https://github.com/kubernetes-sigs/windows-gmsa/blob/master/admission-webhook/deploy/gmsa-webhook.yml.tpl)\nused by the script may also be used to deploy the webhooks and associated objects\nmanually (with appropriate substitutions for the parameters)\n\n\n\n## Configure GMSAs and Windows nodes in Active Directory\n\nBefore Pods in Kubernetes can be configured to use GMSAs, the desired GMSAs need\nto be provisioned in Active Directory as described in the\n[Windows GMSA documentation](https://docs.microsoft.com/en-us/windows-server/security/group-managed-service-accounts/getting-started-with-group-managed-service-accounts#BKMK_Step1).\nWindows worker nodes (that are part of the Kubernetes cluster) need to be configured\nin Active Directory to access the secret credentials associated with the desired GMSA as described in the\n[Windows GMSA documentation](https://docs.microsoft.com/en-us/windows-server/security/group-managed-service-accounts/getting-started-with-group-managed-service-accounts#to-add-member-hosts-using-the-set-adserviceaccount-cmdlet).\n\n## Create GMSA credential spec resources\n\nWith the GMSACredentialSpec CRD installed (as described earlier), custom resources\ncontain\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "scheduling"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/configure-pod-container/configure-gmsa.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure GMSA for Windows Pods and containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-gmsas-and-windows-nodes-in-active-directory",
      "type": "concept",
      "title": "Configure GMSAs and Windows nodes in Active Directory",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 3191,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-gmsa-credential-spec-resources",
      "type": "concept",
      "title": "Create GMSA credential spec resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 3991,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-cluster-role-to-enable-rbac-on-specific-gmsa-credential-specs",
      "type": "concept",
      "title": "Configure cluster role to enable RBAC on specific GMSA credential specs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 6471,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:assign-role-to-service-accounts-to-use-specific-gmsa-credspecs",
      "type": "concept",
      "title": "Assign role to service accounts to use specific GMSA credspecs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 7215,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-gmsa-credential-spec-reference-in-pod-spec",
      "type": "concept",
      "title": "Configure GMSA credential spec reference in Pod spec",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 7946,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authenticating-to-network-shares-using-hostname-or-fqdn",
      "type": "concept",
      "title": "Authenticating to network shares using hostname or FQDN",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 10323,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-the-gmsacredentialspec-crd",
      "type": "concept",
      "title": "Install the GMSACredentialSpec CRD",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 1208,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-webhooks-to-validate-gmsa-users",
      "type": "concept",
      "title": "Install webhooks to validate GMSA users",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 1708,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/pull-image-private-registry",
      "type": "page",
      "title": "Pull an Image from a Private Registry",
      "summary": "",
      "body": "\n\nThis page shows how to create a Pod that uses a\n[Secret](#gloss:secret) to pull an image\nfrom a private container image registry or repository. There are many private\nregistries in use. This task uses [Docker Hub](https://www.docker.com/products/docker-hub)\nas an example registry.\n\n\n\n## \n\n* \n\n* To do this exercise, you need the `docker` command line tool, and a\n  [Docker ID](https://docs.docker.com/docker-id/) for which you know the password.\n* If you are using a different private container registry, you need the command\n  line tool for that registry and any login information for the registry.\n\n\n\n## Log in to Docker Hub\n\nOn your laptop, you must authenticate with a registry in order to pull a private image.\n\nUse the `docker` tool to log in to Docker Hub. See the _log in_ section of\n[Docker ID accounts](https://docs.docker.com/docker-id/#log-in) for more information.\n\n```shell\ndocker login\n```\n\nWhen prompted, enter your Docker ID, and then the credential you want to use (access token,\nor the password for your Docker ID).\n\nThe login process creates or updates a `config.json` file that holds an authorization token.\nReview [how Kubernetes interprets this file](/docs/concepts/containers/images#config-json).\n\nView the `config.json` file:\n\n```shell\ncat ~/.docker/config.json\n```\n\nThe output contains a section similar to this:\n\n```json\n{\n    \"auths\": {\n        \"https://index.docker.io/v1/\": {\n            \"auth\": \"c3R...zE2\"\n        }\n    }\n}\n```\n\n\n> **Note:** If you use a Docker credentials store, you won't see that `auth` entry but a `credsStore` entry with the name of the store as value.\nIn that case, you can create a secret directly.\nSee [Create a Secret by providing credentials on the command line](#create-a-secret-by-providing-credentials-on-the-command-line).\n\n\n## Create a Secret based on existing credentials {#registry-secret-existing-credentials}\n\nA Kubernetes cluster uses the Secret of `kubernetes.io/dockerconfigjson` type to authenticate with\na container registry to pull a private image.\n\nIf you already ran `docker login`, you can copy\nthat credential into Kubernetes:\n\n```shell\nkubectl create secret generic regcred \\\n    --from-file=.dockerconfigjson=<path/to/.docker/config.json> \\\n    --type=kubernetes.io/dockerconfigjson\n```\n\nIf you need more control (for example, to set a namespace or a label on the new\nsecret) then you can customise the Secret before storing it.\nBe sure to:\n\n- set the name of the data item to `.dockerconfigjson`\n- base64 encode the Docker configuration file and then paste that string, unbroken\n  as the value for field `data[\".dockerconfigjson\"]`\n- set `type` to `kubernetes.io/dockerconfigjson`\n\nExample:\n\n```yaml\napiVersion: v1\nkind: Secret\nmetadata:\n  name: myregistrykey\n  namespace: awesomeapps\ndata:\n  .dockerconfigjson: UmVhbGx5IHJlYWxseSByZWVlZWVlZWVlZWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGx5eXl5eXl5eXl5eXl5eXl5eXl5eSBsbGxsbGxsbGxsbGxsbG9vb29vb29vb29vb29vb29vb29vb29vb29vb25ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubmdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2cgYXV0aCBrZXlzCg==\ntype: kubernetes.io/dockerconfigjson\n```\n\nIf you get the error message `error: no objects passed to create`, it may mean the base64 encoded string is invalid.\nIf you get an error message like `Secret \"myregistrykey\" is invalid: data[.dockerconfigjson]: invalid value ...`, it means\nthe base64 encoded string in the data was successfully decoded, but could not be parsed as a `.docker/config.json` file.\n\n## Create a Secret by providing credentials on the command line\n\nCreate this Secret, naming it `regcred`:\n\n```shell\nkubectl create secret docker-registry regcred --docker-server=<your-registry-server> --docker-username=<your-name> --docker-password=<your-pword> --docker-email=<your-email>\n```\n\nwhere:\n\n* `<your-registry-server>` is your Private Docker Registry FQDN.\n  Use `https://index.docker.io/v1/` for DockerHub.\n* `<your-name>` is your Docker username.\n* `<your-pword>` is your Docker password.\n* `<your-email>` is your Dock\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
      "meta": {
        "weight": 130,
        "rel_path": "tasks/configure-pod-container/pull-image-private-registry.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": null,
          "line_end": null,
          "quote": "Pull an Image from a Private Registry"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:log-in-to-docker-hub",
      "type": "concept",
      "title": "Log in to Docker Hub",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 783,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-secret-based-on-existing-credentials-registry-secret-existing-credentials",
      "type": "concept",
      "title": "Create a Secret based on existing credentials {#registry-secret-existing-credentials}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 1981,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-secret-by-providing-credentials-on-the-command-line",
      "type": "concept",
      "title": "Create a Secret by providing credentials on the command line",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 3659,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:inspecting-the-secret-regcred",
      "type": "concept",
      "title": "Inspecting the Secret `regcred`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 4520,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-uses-your-secret",
      "type": "concept",
      "title": "Create a Pod that uses your Secret",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 5901,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-images-from-multiple-registries",
      "type": "concept",
      "title": "Using images from multiple registries",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 7764,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/configure-volume-storage",
      "type": "page",
      "title": "Configure a Pod to Use a Volume for Storage",
      "summary": "",
      "body": "\n\nThis page shows how to configure a Pod to use a Volume for storage.\n\nA Container's file system lives only as long as the Container does. So when a\nContainer terminates and restarts, filesystem changes are lost. For more\nconsistent storage that is independent of the Container, you can use a\n[Volume](/docs/concepts/storage/volumes/). This is especially important for stateful\napplications, such as key-value stores (such as Redis) and databases.\n\n## \n\n \n\n\n\n## Configure a volume for a Pod\n\nIn this exercise, you create a Pod that runs one Container. This Pod has a\nVolume of type\n[emptyDir](/docs/concepts/storage/volumes/#emptydir)\nthat lasts for the life of the Pod, even if the Container terminates and\nrestarts. Here is the configuration file for the Pod:\n\n\n\n1. Create the Pod:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/pods/storage/redis.yaml\n   ```\n\n1. Verify that the Pod's Container is running, and then watch for changes to\n   the Pod:\n\n   ```shell\n   kubectl get pod redis --watch\n   ```\n\n   The output looks like this:\n\n   ```console\n   NAME      READY     STATUS    RESTARTS   AGE\n   redis     1/1       Running   0          13s\n   ```\n\n1. In another terminal, get a shell to the running Container:\n\n   ```shell\n   kubectl exec -it redis -- /bin/bash\n   ```\n\n1. In your shell, go to `/data/redis`, and then create a file:\n\n   ```shell\n   root@redis:/data# cd /data/redis/\n   root@redis:/data/redis# echo Hello > test-file\n   ```\n\n1. In your shell, list the running processes:\n\n   ```shell\n   root@redis:/data/redis# apt-get update\n   root@redis:/data/redis# apt-get install procps\n   root@redis:/data/redis# ps aux\n   ```\n\n   The output is similar to this:\n\n   ```console\n   USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\n   redis        1  0.1  0.1  33308  3828 ?        Ssl  00:46   0:00 redis-server *:6379\n   root        12  0.0  0.0  20228  3020 ?        Ss   00:47   0:00 /bin/bash\n   root        15  0.0  0.0  17500  2072 ?        R+   00:48   0:00 ps aux\n   ```\n\n1. In your shell, kill the Redis process:\n\n   ```shell\n   root@redis:/data/redis# kill <pid>\n   ```\n\n   where `<pid>` is the Redis process ID (PID).\n\n1. In your original terminal, watch for changes to the Redis Pod. Eventually,\n   you will see something like this:\n\n   ```console\n   NAME      READY     STATUS     RESTARTS   AGE\n   redis     1/1       Running    0          13s\n   redis     0/1       Completed  0         6m\n   redis     1/1       Running    1         6m\n   ```\n\nAt this point, the Container has terminated and restarted. This is because the\nRedis Pod has a\n[restartPolicy](/docs/reference/generated/kubernetes-api//#podspec-v1-core)\nof `Always`.\n\n1. Get a shell into the restarted Container:\n\n   ```shell\n   kubectl exec -it redis -- /bin/bash\n   ```\n\n1. In your shell, go to `/data/redis`, and verify that `test-file` is still there.\n\n   ```shell\n   root@redis:/data/redis# cd /data/redis/\n   root@redis:/data/redis# ls\n   test-file\n   ```\n\n1. Delete the Pod that you created for this exercise:\n\n   ```shell\n   kubectl delete pod redis\n   ```\n\n## \n\n- See [Volume](/docs/reference/generated/kubernetes-api//#volume-v1-core).\n\n- See [Pod](/docs/reference/generated/kubernetes-api//#pod-v1-core).\n\n- In addition to the local disk storage provided by `emptyDir`, Kubernetes\n  supports many different network-attached storage solutions, including PD on\n  GCE and EBS on EC2, which are preferred for critical data and will handle\n  details such as mounting and unmounting the devices on the nodes. See\n  [Volumes](/docs/concepts/storage/volumes/) for more details.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/",
      "meta": {
        "weight": 80,
        "rel_path": "tasks/configure-pod-container/configure-volume-storage.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure a Pod to Use a Volume for Storage"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-a-volume-for-a-pod",
      "type": "concept",
      "title": "Configure a volume for a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/",
          "line_start": 585,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/migrate-from-psp",
      "type": "page",
      "title": "Migrate from PodSecurityPolicy to the Built-In PodSecurity Admission Controller",
      "summary": "",
      "body": "\n\nThis page describes the process of migrating from PodSecurityPolicies to the built-in PodSecurity\nadmission controller. This can be done effectively using a combination of dry-run and `audit` and\n`warn` modes, although this becomes harder if mutating PSPs are used.\n\n## \n\n\n\nIf you are currently running a version of Kubernetes other than\n, you may want to switch to viewing this\npage in the documentation for the version of Kubernetes that you\nare actually running.\n\nThis page assumes you are already familiar with the basic [Pod Security Admission](/docs/concepts/security/pod-security-admission/)\nconcepts.\n\n\n\n## Overall approach\n\nThere are multiple strategies you can take for migrating from PodSecurityPolicy to Pod Security\nAdmission. The following steps are one possible migration path, with a goal of minimizing both the\nrisks of a production outage and of a security gap.\n\n\n0. Decide whether Pod Security Admission is the right fit for your use case.\n1. Review namespace permissions\n2. Simplify & standardize PodSecurityPolicies\n3. Update namespaces\n   1. Identify an appropriate Pod Security level\n   2. Verify the Pod Security level\n   3. Enforce the Pod Security level\n   4. Bypass PodSecurityPolicy\n4. Review namespace creation processes\n5. Disable PodSecurityPolicy\n\n## 0. Decide whether Pod Security Admission is right for you {#is-psa-right-for-you}\n\nPod Security Admission was designed to meet the most common security needs out of the box, and to\nprovide a standard set of security levels across clusters. However, it is less flexible than\nPodSecurityPolicy. Notably, the following features are supported by PodSecurityPolicy but not Pod\nSecurity Admission:\n\n- **Setting default security constraints** - Pod Security Admission is a non-mutating admission\n  controller, meaning it won't modify pods before validating them. If you were relying on this\n  aspect of PSP, you will need to either modify your workloads to meet the Pod Security constraints,\n  or use a [Mutating Admission Webhook](/docs/reference/access-authn-authz/extensible-admission-controllers/)\n  to make those changes. See [Simplify & Standardize PodSecurityPolicies](#simplify-psps) below for more detail.\n- **Fine-grained control over policy definition** - Pod Security Admission only supports\n  [3 standard levels](/docs/concepts/security/pod-security-standards/).\n  If you require more control over specific constraints, then you will need to use a\n  [Validating Admission Webhook](/docs/reference/access-authn-authz/extensible-admission-controllers/)\n  to enforce those policies.\n- **Sub-namespace policy granularity** - PodSecurityPolicy lets you bind different policies to\n  different Service Accounts or users, even within a single namespace. This approach has many\n  pitfalls and is not recommended, but if you require this feature anyway you will\n  need to use a 3rd party webhook instead. The exception to this is if you only need to completely exempt\n  specific users or [RuntimeClasses](/docs/concepts/containers/runtime-class/), in which case Pod\n  Security Admission does expose some\n  [static configuration for exemptions](/docs/concepts/security/pod-security-admission/#exemptions).\n\nEven if Pod Security Admission does not meet all of your needs it was designed to be _complementary_\nto other policy enforcement mechanisms, and can provide a useful fallback running alongside other\nadmission webhooks.\n\n\n## 1. Review namespace permissions {#review-namespace-permissions}\n\nPod Security Admission is controlled by [labels on\nnamespaces](/docs/concepts/security/pod-security-admission/#pod-security-admission-labels-for-namespaces).\nThis means that anyone who can update (or patch or create) a namespace can also modify the Pod\nSecurity level for that namespace, which could be used to bypass a more restrictive policy. Before\nproceeding, ensure that only trusted, privileged users have these namespace permissions. It is not\nrecommended to grant these powerful permissions to users that shouldn't h\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
      "meta": {
        "weight": 260,
        "rel_path": "tasks/configure-pod-container/migrate-from-psp.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": null,
          "line_end": null,
          "quote": "Migrate from PodSecurityPolicy to the Built-In PodSecurity Admission Controller"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:overall-approach",
      "type": "concept",
      "title": "Overall approach",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 724,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:0-decide-whether-pod-security-admission-is-right-for-you-is-psa-right-for-you",
      "type": "concept",
      "title": "0. Decide whether Pod Security Admission is right for you {#is-psa-right-for-you}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 1454,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:1-review-namespace-permissions-review-namespace-permissions",
      "type": "concept",
      "title": "1. Review namespace permissions {#review-namespace-permissions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 3580,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:2-simplify-standardize-podsecuritypolicies-simplify-psps",
      "type": "concept",
      "title": "2. Simplify & standardize PodSecurityPolicies {#simplify-psps}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 4415,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:3-update-namespaces-update-namespaces",
      "type": "concept",
      "title": "3. Update Namespaces {#update-namespaces}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 11033,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:4-review-namespace-creation-processes-review-namespace-creation-process",
      "type": "concept",
      "title": "4. Review namespace creation processes {#review-namespace-creation-process}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 16024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:5-disable-podsecuritypolicy-disable-psp",
      "type": "concept",
      "title": "5. Disable PodSecurityPolicy {#disable-psp}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 16687,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:2-a-eliminate-purely-mutating-fields-eliminate-mutating-fields",
      "type": "concept",
      "title": "2.a. Eliminate purely mutating fields {#eliminate-mutating-fields}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 5005,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:2-b-eliminate-options-not-covered-by-the-pod-security-standards-eliminate-non-standard-options",
      "type": "concept",
      "title": "2.b. Eliminate options not covered by the Pod Security Standards {#eliminate-non-standard-options}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 6444,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:2-c-rollout-the-updated-psps-psp-update-rollout",
      "type": "concept",
      "title": "2.c. Rollout the updated PSPs {#psp-update-rollout}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 8392,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:3-a-identify-an-appropriate-pod-security-level-identify-appropriate-level",
      "type": "concept",
      "title": "3.a. Identify an appropriate Pod Security level {#identify-appropriate-level}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 11267,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:3-b-verify-the-pod-security-level-verify-pss-level",
      "type": "concept",
      "title": "3.b. Verify the Pod Security level {#verify-pss-level}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 13013,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:3-c-enforce-the-pod-security-level-enforce-pod-security-level",
      "type": "concept",
      "title": "3.c. Enforce the Pod Security level {#enforce-pod-security-level}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 14504,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:3-d-bypass-podsecuritypolicy-bypass-psp",
      "type": "concept",
      "title": "3.d. Bypass PodSecurityPolicy {#bypass-psp}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 14814,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/assign-memory-resource",
      "type": "page",
      "title": "Assign Memory Resources to Containers and Pods",
      "summary": "",
      "body": "\n\nThis page shows how to assign a memory *request* and a memory *limit* to a\nContainer. A Container is guaranteed to have as much memory as it requests,\nbut is not allowed to use more memory than its limit.\n\n\n\n\n## \n\n\n \n\nEach node in your cluster must have at least 300 MiB of memory.\n\nA few of the steps on this page require you to run the\n[metrics-server](https://github.com/kubernetes-sigs/metrics-server)\nservice in your cluster. If you have the metrics-server\nrunning, you can skip those steps.\n\nIf you are running Minikube, run the following command to enable the\nmetrics-server:\n\n```shell\nminikube addons enable metrics-server\n```\n\nTo see whether the metrics-server is running, or another provider of the resource metrics\nAPI (`metrics.k8s.io`), run the following command:\n\n```shell\nkubectl get apiservices\n```\n\nIf the resource metrics API is available, the output includes a\nreference to `metrics.k8s.io`.\n\n```shell\nNAME\nv1beta1.metrics.k8s.io\n```\n\n\n\n\n\n## Create a namespace\n\nCreate a namespace so that the resources you create in this exercise are\nisolated from the rest of your cluster.\n\n```shell\nkubectl create namespace mem-example\n```\n\n## Specify a memory request and a memory limit\n\nTo specify a memory request for a container, include the `resources.requests.memory` field\nin the container’s resource manifest. To specify a memory limit, include `resources.limits.memory`.\n\nIn this exercise, you create a Pod that has one Container. The Container has a memory\nrequest of 100 MiB and a memory limit of 200 MiB. Here's the configuration file\nfor the Pod:\n\n\n\nThe `args` section in the configuration file provides arguments for the Container when it starts.\nThe `\"--vm-bytes\", \"150M\"` arguments tell the Container to attempt to allocate 150 MiB of memory.\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/resource/memory-request-limit.yaml --namespace=mem-example\n```\n\nVerify that the Pod Container is running:\n\n```shell\nkubectl get pod memory-demo --namespace=mem-example\n```\n\nView detailed information about the Pod:\n\n```shell\nkubectl get pod memory-demo --output=yaml --namespace=mem-example\n```\n\nThe output shows that the one Container in the Pod has a memory request of 100 MiB\nand a memory limit of 200 MiB.\n\n\n```yaml\n...\nresources:\n  requests:\n    memory: 100Mi\n  limits:\n    memory: 200Mi\n...\n```\n\nRun `kubectl top` to fetch the metrics for the pod:\n\n```shell\nkubectl top pod memory-demo --namespace=mem-example\n```\n\nThe output shows that the Pod is using about 162,900,000 bytes of memory, which\nis about 150 MiB. This is greater than the Pod's 100 MiB request, but within the\nPod's 200 MiB limit.\n\n```\nNAME                        CPU(cores)   MEMORY(bytes)\nmemory-demo                 <something>  162856960\n```\n\nDelete your Pod:\n\n```shell\nkubectl delete pod memory-demo --namespace=mem-example\n```\n\n## Exceed a Container's memory limit\n\nA Container can exceed its memory request if the Node has memory available. But a Container\nis not allowed to use more than its memory limit. If a Container allocates more memory than\nits limit, the Container becomes a candidate for termination. If the Container continues to\nconsume memory beyond its limit, the Container is terminated. If a terminated Container can be\nrestarted, the kubelet restarts it, as with any other type of runtime failure.\n\nIn this exercise, you create a Pod that attempts to allocate more memory than its limit.\nHere is the configuration file for a Pod that has one Container with a\nmemory request of 50 MiB and a memory limit of 100 MiB:\n\n\n\nIn the `args` section of the configuration file, you can see that the Container\nwill attempt to allocate 250 MiB of memory, which is well above the 100 MiB limit.\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/resource/memory-request-limit-2.yaml --namespace=mem-example\n```\n\nView detailed information about the Pod:\n\n```shell\nkubectl get pod memory-demo-2 --namespace=mem-example\n```\n\nAt this point, the Container might b\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/configure-pod-container/assign-memory-resource.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": null,
          "line_end": null,
          "quote": "Assign Memory Resources to Containers and Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specify-a-memory-request-and-a-memory-limit",
      "type": "concept",
      "title": "Specify a memory request and a memory limit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 1274,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exceed-a-container-s-memory-limit",
      "type": "concept",
      "title": "Exceed a Container's memory limit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 3061,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specify-a-memory-request-that-is-too-big-for-your-nodes",
      "type": "concept",
      "title": "Specify a memory request that is too big for your Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 6382,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memory-units",
      "type": "concept",
      "title": "Memory units",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "observability"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 8304,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:if-you-do-not-specify-a-memory-limit",
      "type": "concept",
      "title": "If you do not specify a memory limit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 8696,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:motivation-for-memory-requests-and-limits",
      "type": "concept",
      "title": "Motivation for memory requests and limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 9462,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/attach-handler-lifecycle-event",
      "type": "page",
      "title": "Attach Handlers to Container Lifecycle Events",
      "summary": "",
      "body": "\n\nThis page shows how to attach handlers to Container lifecycle events. Kubernetes supports\nthe postStart and preStop events. Kubernetes sends the postStart event immediately\nafter a Container is started, and it sends the preStop event immediately before the\nContainer is terminated. A Container may specify one handler per event.\n\n\n\n\n## \n\n\n \n\n\n\n\n\n\n## Define postStart and preStop handlers\n\nIn this exercise, you create a Pod that has one Container. The Container has handlers\nfor the postStart and preStop events.\n\nHere is the configuration file for the Pod:\n\n\n\nIn the configuration file, you can see that the postStart command writes a `message`\nfile to the Container's `/usr/share` directory. The preStop command shuts down\nnginx gracefully. This is helpful if the Container is being terminated because of a failure.\n\nCreate the Pod:\n\n    kubectl apply -f https://k8s.io/examples/pods/lifecycle-events.yaml\n\nVerify that the Container in the Pod is running:\n\n    kubectl get pod lifecycle-demo\n\nGet a shell into the Container running in your Pod:\n\n    kubectl exec -it lifecycle-demo -- /bin/bash\n\nIn your shell, verify that the `postStart` handler created the `message` file:\n\n    root@lifecycle-demo:/# cat /usr/share/message\n\nThe output shows the text written by the postStart handler:\n\n    Hello from the postStart handler\n\n\n\n\n\n\n\n## Discussion\n\nKubernetes sends the postStart event immediately after the Container is created.\nThere is no guarantee, however, that the postStart handler is called before\nthe Container's entrypoint is called. The postStart handler runs asynchronously\nrelative to the Container's code, but Kubernetes' management of the container\nblocks until the postStart handler completes. The Container's status is not\nset to RUNNING until the postStart handler completes.\n\nKubernetes sends the preStop event immediately before the Container is terminated.\nKubernetes' management of the Container blocks until the preStop handler completes,\nunless the Pod's grace period expires. For more details, see\n[Pod Lifecycle](/docs/concepts/workloads/pods/pod-lifecycle/).\n\n\n> **Note:** Kubernetes only sends the preStop event when a Pod or a container in the Pod is *terminated*.\nThis means that the preStop hook is not invoked when the Pod is *completed*.\nAbout this limitation, please see [Container hooks](/docs/concepts/containers/container-lifecycle-hooks/#container-hooks) for the detail.\n\n\n\n\n\n## \n\n\n* Learn more about [Container lifecycle hooks](/docs/concepts/containers/container-lifecycle-hooks/).\n* Learn more about the [lifecycle of a Pod](/docs/concepts/workloads/pods/pod-lifecycle/).\n\n\n### Reference\n\n* [Lifecycle](/docs/reference/generated/kubernetes-api//#lifecycle-v1-core)\n* [Container](/docs/reference/generated/kubernetes-api//#container-v1-core)\n* See `terminationGracePeriodSeconds` in [PodSpec](/docs/reference/generated/kubernetes-api//#podspec-v1-core)\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "extensibility"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
      "meta": {
        "weight": 180,
        "rel_path": "tasks/configure-pod-container/attach-handler-lifecycle-event.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/attach-handler-lifecycle-event.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
          "line_start": null,
          "line_end": null,
          "quote": "Attach Handlers to Container Lifecycle Events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-poststart-and-prestop-handlers",
      "type": "concept",
      "title": "Define postStart and preStop handlers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "workloads"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/attach-handler-lifecycle-event.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
          "line_start": 475,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:discussion",
      "type": "concept",
      "title": "Discussion",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "api",
        "cli",
        "extensibility"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/attach-handler-lifecycle-event.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
          "line_start": 1534,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reference",
      "type": "concept",
      "title": "Reference",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/attach-handler-lifecycle-event.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
          "line_start": 2855,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/image-volumes",
      "type": "page",
      "title": "Use an Image Volume With a Pod",
      "summary": "",
      "body": "\n\n\n\nThis page shows how to configure a pod using image volumes. This allows you to\nmount content from OCI registries inside containers.\n\n## \n\n \n\n- The container runtime needs to support the image volumes feature\n- You need to exec commands in the host\n- You need to be able to exec into pods\n\n\n\n## Run a Pod that uses an image volume {#create-pod}\n\nAn image volume for a pod is enabled by setting the `volumes[*].image` field of `.spec`\nto a valid reference and consuming it in the `volumeMounts` of the container. For example:\n\n\n\n1. Create the pod on your cluster:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/pods/image-volumes.yaml\n   ```\n\n1. Attach to the container:\n\n   ```shell\n   kubectl exec image-volume -it -- bash\n   ```\n\n1. Check the content of a file in the volume:\n\n   ```shell\n   cat /volume/dir/file\n   ```\n\n   The output is similar to:\n\n   ```none\n   1\n   ```\n\n   You can also check another file in a different path:\n\n   ```shell\n   cat /volume/file\n   ```\n\n   The output is similar to:\n\n   ```none\n   2\n   ```\n\n## Use `subPath` (or `subPathExpr`)\n\nIt is possible to utilize\n[`subPath`](/docs/concepts/storage/volumes/#using-subpath) or\n[`subPathExpr`](/docs/concepts/storage/volumes/#using-subpath-expanded-environment)\nfrom Kubernetes v1.33 when using the image volume feature.\n\n\n\n1. Create the pod on your cluster:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/pods/image-volumes-subpath.yaml\n   ```\n\n1. Attach to the container:\n\n   ```shell\n   kubectl exec image-volume -it -- bash\n   ```\n\n1. Check the content of the file from the `dir` sub path in the volume:\n\n   ```shell\n   cat /volume/file\n   ```\n\n   The output is similar to:\n\n   ```none\n   1\n   ```\n\n## Further reading\n\n- [`image` volumes](/docs/concepts/storage/volumes/#image)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/image-volumes/",
      "meta": {
        "weight": 210,
        "rel_path": "tasks/configure-pod-container/image-volumes.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/image-volumes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/image-volumes/",
          "line_start": null,
          "line_end": null,
          "quote": "Use an Image Volume With a Pod"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:run-a-pod-that-uses-an-image-volume-create-pod",
      "type": "concept",
      "title": "Run a Pod that uses an image volume {#create-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/image-volumes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/image-volumes/",
          "line_start": 474,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-subpath-or-subpathexpr",
      "type": "concept",
      "title": "Use `subPath` (or `subPathExpr`)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/image-volumes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/image-volumes/",
          "line_start": 1270,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:further-reading",
      "type": "concept",
      "title": "Further reading",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/image-volumes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/image-volumes/",
          "line_start": 1988,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "type": "page",
      "title": "Create a Windows HostProcess Pod",
      "summary": "",
      "body": "\n\n\n\nWindows HostProcess containers enable you to run containerized\nworkloads on a Windows host. These containers operate as\nnormal processes but have access to the host network namespace,\nstorage, and devices when given the appropriate user privileges.\nHostProcess containers can be used to deploy network plugins,\nstorage configurations, device plugins, kube-proxy, and other\ncomponents to Windows nodes without the need for dedicated proxies or\nthe direct installation of host services.\n\nAdministrative tasks such as installation of security patches, event\nlog collection, and more can be performed without requiring cluster operators to\nlog onto each Windows node. HostProcess containers can run as any user that is\navailable on the host or is in the domain of the host machine, allowing administrators\nto restrict resource access through user permissions. While neither filesystem or process\nisolation are supported, a new volume is created on the host upon starting the container\nto give it a clean and consolidated workspace. HostProcess containers can also be built on\ntop of existing Windows base images and do not inherit the same\n[compatibility requirements](https://docs.microsoft.com/virtualization/windowscontainers/deploy-containers/version-compatibility)\nas Windows server containers, meaning that the version of the base images does not need\nto match that of the host. It is, however, recommended that you use the same base image\nversion as your Windows Server container workloads to ensure you do not have any unused\nimages taking up space on the node. HostProcess containers also support\n[volume mounts](#volume-mounts) within the container volume.\n\n### When should I use a Windows HostProcess container?\n\n- When you need to perform tasks which require the networking namespace of the host.\nHostProcess containers have access to the host's network interfaces and IP addresses.\n- You need access to resources on the host such as the filesystem, event logs, etc.\n- Installation of specific device drivers or Windows services.\n- Consolidation of administrative tasks and security policies. This reduces the degree of\nprivileges needed by Windows nodes.\n\n## \n\n\n\nThis task guide is specific to Kubernetes v.\nIf you are not running Kubernetes v, check the documentation for\nthat version of Kubernetes.\n\nIn Kubernetes , the HostProcess container feature is enabled by default. The kubelet will\ncommunicate with containerd directly by passing the hostprocess flag via CRI. You can use the\nlatest version of containerd (v1.6+) to run HostProcess containers.\n[How to install containerd.](/docs/setup/production-environment/container-runtimes/#containerd)\n\n## Limitations\n\nThese limitations are relevant for Kubernetes v:\n\n- HostProcess containers require containerd 1.6 or higher\n  [container runtime](#gloss:container-runtime) and\n  containerd 1.7 is recommended.\n- HostProcess pods can only contain HostProcess containers. This is a current limitation\n  of the Windows OS; non-privileged Windows containers cannot share a vNIC with the host IP namespace.\n- HostProcess containers run as a process on the host and do not have any degree of\n  isolation other than resource constraints imposed on the HostProcess user account. Neither\n  filesystem or Hyper-V isolation are supported for HostProcess containers.\n- Volume mounts are supported and are mounted under the container volume. See\n  [Volume Mounts](#volume-mounts)\n- A limited set of host user accounts are available for HostProcess containers by default.\n  See [Choosing a User Account](#choosing-a-user-account).\n- Resource limits (disk, memory, cpu count) are supported in the same fashion as processes\n  on the host.\n- Both Named pipe mounts and Unix domain sockets are **not** supported and should instead\n  be accessed via their path on the host (e.g. \\\\\\\\.\\\\pipe\\\\\\*)\n\n## HostProcess Pod configuration requirements\n\nEnabling a Windows HostProcess pod requires setting the right configurations in the pod security\nconfiguration. \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/configure-pod-container/create-hostprocess-pod.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": null,
          "line_end": null,
          "quote": "Create a Windows HostProcess Pod"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostprocess-pod-configuration-requirements",
      "type": "concept",
      "title": "HostProcess Pod configuration requirements",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "scheduling",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 4136,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-mounts",
      "type": "concept",
      "title": "Volume mounts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 7233,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-limits",
      "type": "concept",
      "title": "Resource limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 8697,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:choosing-a-user-account",
      "type": "concept",
      "title": "Choosing a user account",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 9251,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:base-image-for-hostprocess-containers",
      "type": "concept",
      "title": "Base Image for HostProcess Containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 11665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:troubleshooting-hostprocess-containers",
      "type": "concept",
      "title": "Troubleshooting HostProcess containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 12169,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-should-i-use-a-windows-hostprocess-container",
      "type": "concept",
      "title": "When should I use a Windows HostProcess container?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 1746,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-manifest-excerpt-manifest-example",
      "type": "concept",
      "title": "Example manifest (excerpt) {#manifest-example}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 6871,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerd-v1-6",
      "type": "concept",
      "title": "Containerd v1.6",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 7445,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerd-v1-7-and-greater",
      "type": "concept",
      "title": "Containerd v1.7 (and greater)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 8063,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:system-accounts",
      "type": "concept",
      "title": "System accounts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 9279,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:local-accounts-local-accounts",
      "type": "concept",
      "title": "Local accounts {#local-accounts}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 10128,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "type": "page",
      "title": "Configure a Pod to Use a ConfigMap",
      "summary": "",
      "body": "\nMany applications rely on configuration which is used during either application initialization or runtime.\nMost times, there is a requirement to adjust values assigned to configuration parameters.\nConfigMaps are a Kubernetes mechanism that let you inject configuration data into application\n[pods](#gloss:pod).\n\nThe ConfigMap concept allow you to decouple configuration artifacts from image content to\nkeep containerized applications portable. For example, you can download and run the same\n[container image](#gloss:image) to spin up containers for \nthe purposes of local development, system test, or running a live end-user workload.\n\nThis page provides a series of usage examples demonstrating how to create ConfigMaps and\nconfigure Pods using data stored in ConfigMaps.\n\n## \n\n\n\nYou need to have the `wget` tool installed. If you have a different tool\nsuch as `curl`, and you do not have `wget`, you will need to adapt the\nstep that downloads example data.\n\n\n\n## Create a ConfigMap\n\nYou can use either `kubectl create configmap` or a ConfigMap generator in `kustomization.yaml`\nto create a ConfigMap.\n\n### Create a ConfigMap using `kubectl create configmap`\n\nUse the `kubectl create configmap` command to create ConfigMaps from\n[directories](#create-configmaps-from-directories), [files](#create-configmaps-from-files),\nor [literal values](#create-configmaps-from-literal-values):\n\n```shell\nkubectl create configmap <map-name> <data-source>\n```\n\nwhere \\<map-name> is the name you want to assign to the ConfigMap and \\<data-source> is the\ndirectory, file, or literal value to draw the data from.\nThe name of a ConfigMap object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\nWhen you are creating a ConfigMap based on a file, the key in the \\<data-source> defaults to\nthe basename of the file, and the value defaults to the file content.\n\nYou can use [`kubectl describe`](/docs/reference/generated/kubectl/kubectl-commands/#describe) or\n[`kubectl get`](/docs/reference/generated/kubectl/kubectl-commands/#get) to retrieve information\nabout a ConfigMap.\n\n#### Create a ConfigMap from a directory {#create-configmaps-from-directories}\n\nYou can use `kubectl create configmap` to create a ConfigMap from multiple files in the same\ndirectory. When you are creating a ConfigMap based on a directory, kubectl identifies files\nwhose filename is a valid key in the directory and packages each of those files into the new\nConfigMap. Any directory entries except regular files are ignored (for example: subdirectories,\nsymlinks, devices, pipes, and more).\n\n\n> **Note:** Each filename being used for ConfigMap creation must consist of only acceptable characters,\nwhich are: letters (`A` to `Z` and `a` to `z`), digits (`0` to `9`), '-', '_', or '.'.\nIf you use `kubectl create configmap` with a directory where any of the file names contains\nan unacceptable character, the `kubectl` command may fail.\n\nThe `kubectl` command does not print an error when it encounters an invalid filename.\n\n\nCreate the local directory:\n\n```shell\nmkdir -p configure-pod-container/configmap/\n```\n\nNow, download the sample configuration and create the ConfigMap:\n\n```shell\n# Download the sample files into `configure-pod-container/configmap/` directory\nwget https://kubernetes.io/examples/configmap/game.properties -O configure-pod-container/configmap/game.properties\nwget https://kubernetes.io/examples/configmap/ui.properties -O configure-pod-container/configmap/ui.properties\n\n# Create the ConfigMap\nkubectl create configmap game-config --from-file=configure-pod-container/configmap/\n```\n\nThe above command packages each file, in this case, `game.properties` and `ui.properties`\nin the `configure-pod-container/configmap/` directory into the game-config ConfigMap. You can\ndisplay details of the ConfigMap using the following command:\n\n```shell\nkubectl describe configmaps game-config\n```\n\nThe output is similar to this:\n```\nName:         game-config\nNamespace:    \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
      "meta": {
        "weight": 190,
        "rel_path": "tasks/configure-pod-container/configure-pod-configmap.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure a Pod to Use a ConfigMap"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-configmap",
      "type": "concept",
      "title": "Create a ConfigMap",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 1132,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:interim-cleanup",
      "type": "concept",
      "title": "Interim cleanup",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 14374,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-container-environment-variables-using-configmap-data",
      "type": "concept",
      "title": "Define container environment variables using ConfigMap data",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 14747,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-all-key-value-pairs-in-a-configmap-as-container-environment-variables",
      "type": "concept",
      "title": "Configure all key-value pairs in a ConfigMap as container environment variables",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 16411,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-configmap-defined-environment-variables-in-pod-commands",
      "type": "concept",
      "title": "Use ConfigMap-defined environment variables in Pod commands",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 17312,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:add-configmap-data-to-a-volume",
      "type": "concept",
      "title": "Add ConfigMap data to a Volume",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 18012,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-configmaps-and-pods",
      "type": "concept",
      "title": "Understanding ConfigMaps and Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 22153,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:optional-configmaps",
      "type": "concept",
      "title": "Optional ConfigMaps",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 24122,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restrictions",
      "type": "concept",
      "title": "Restrictions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 26098,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-configmap-using-kubectl-create-configmap",
      "type": "concept",
      "title": "Create a ConfigMap using `kubectl create configmap`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 1274,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-configmap-from-generator",
      "type": "concept",
      "title": "Create a ConfigMap from generator",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 11226,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-a-container-environment-variable-with-data-from-a-single-configmap",
      "type": "concept",
      "title": "Define a container environment variable with data from a single ConfigMap",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 14811,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-container-environment-variables-with-data-from-multiple-configmaps",
      "type": "concept",
      "title": "Define container environment variables with data from multiple ConfigMaps",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 15486,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:populate-a-volume-with-data-stored-in-a-configmap",
      "type": "concept",
      "title": "Populate a Volume with data stored in a ConfigMap",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 18551,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:add-configmap-data-to-a-specific-path-in-the-volume",
      "type": "concept",
      "title": "Add ConfigMap data to a specific path in the Volume",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 19669,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:project-keys-to-specific-paths-and-file-permissions",
      "type": "concept",
      "title": "Project keys to specific paths and file permissions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 20396,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:optional-references",
      "type": "concept",
      "title": "Optional references",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 20901,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mounted-configmaps-are-updated-automatically",
      "type": "concept",
      "title": "Mounted ConfigMaps are updated automatically",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 21223,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/resize-container-resources",
      "type": "page",
      "title": "Resize CPU and Memory Resources assigned to Containers",
      "summary": "",
      "body": "\n\n\n\nThis page explains how to change the CPU and memory resource requests and limits\nassigned to a container *without recreating the Pod*.\n\nTraditionally, changing a Pod's resource requirements necessitated deleting the existing Pod\nand creating a replacement, often managed by a [workload controller](/docs/concepts/workloads/controllers/).\nIn-place Pod Resize allows changing the CPU/memory allocation of container(s) within a running Pod\nwhile potentially avoiding application disruption. The process for resizing Pod resources is covered in [Resize CPU and Memory Resources assigned to Pods](/docs/tasks/configure-pod-container/resize-pod-resources).\n\n**Key Concepts:**\n\n* **Desired Resources:** A container's `spec.containers[*].resources` represent\n  the *desired* resources for the container, and are mutable for CPU and memory.\n* **Actual Resources:** The `status.containerStatuses[*].resources` field\n  reflects the resources *currently configured* for a running container.\n  For containers that haven't started or were restarted,\n  it reflects the resources allocated upon their next start.\n* **Triggering a Resize:** You can request a resize by updating the desired `requests`\n  and `limits` in the Pod's specification.\n  This is typically done using `kubectl patch`, `kubectl apply`, or `kubectl edit`\n  targeting the Pod's `resize` subresource.\n  When the desired resources don't match the allocated resources,\n  the Kubelet will attempt to resize the container.\n* **Allocated Resources (Advanced):**\n  The `status.containerStatuses[*].allocatedResources` field tracks resource values\n  confirmed by the Kubelet, primarily used for internal scheduling logic.\n  For most monitoring and validation purposes, focus on `status.containerStatuses[*].resources`.\n\nIf a node has pods with a pending or incomplete resize (see [Pod Resize Status](#pod-resize-status) below),\nthe [scheduler](#gloss:kube-scheduler) uses\nthe *maximum* of a container's desired requests, allocated requests,\nand actual requests from the status when making scheduling decisions.\n\n## \n\n\n \n\nThe `InPlacePodVerticalScaling` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\nmust be enabled\nfor your control plane and for all nodes in your cluster.\n\nThe `kubectl` client version must be at least v1.32 to use the `--subresource=resize` flag.\n\n## Pod resize status\n\nThe Kubelet updates the Pod's status conditions to indicate the state of a resize request:\n\n* `type: PodResizePending`: The Kubelet cannot immediately grant the request.\n  The `message` field provides an explanation of why.\n    * `reason: Infeasible`: The requested resize is impossible on the current node\n      (for example, requesting more resources than the node has).\n    * `reason: Deferred`: The requested resize is currently not possible,\n      but might become feasible later (for example if another pod is removed).\n      The Kubelet will retry the resize.\n* `type: PodResizeInProgress`: The Kubelet has accepted the resize and allocated resources,\n  but the changes are still being applied.\n  This is usually brief but might take longer depending on the resource type and runtime behavior.\n  Any errors during actuation are reported in the `message` field (along with `reason: Error`).\n\n### How kubelet retries Deferred resizes\n\nIf the requested resize is _Deferred_, the kubelet will periodically re-attempt the resize,\nfor example when another pod is removed or scaled down. If there are multiple deferred\nresizes, they are retried according to the following priority:\n\n* Pods with a higher Priority (based on PriorityClass) will have their resize request retried first.\n* If two pods have the same Priority, resize of guaranteed pods will be retried before the resize of burstable pods.\n* If all else is the same, pods that have been in the Deferred state longer will be prioritized.\n\nA higher priority resize being marked as pending will not block the remaining pending resizes from being attempted;\nall remaining pe\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/configure-pod-container/resize-container-resources.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": null,
          "line_end": null,
          "quote": "Resize CPU and Memory Resources assigned to Containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-resize-status",
      "type": "concept",
      "title": "Pod resize status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 2558,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-resize-policies",
      "type": "concept",
      "title": "Container resize policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 5052,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-1-resizing-cpu-without-restart",
      "type": "concept",
      "title": "Example 1: Resizing CPU without restart",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 9035,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-2-resizing-memory-with-restart",
      "type": "concept",
      "title": "Example 2: Resizing memory with restart",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 10827,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:troubleshooting-infeasible-resize-request",
      "type": "concept",
      "title": "Troubleshooting: Infeasible resize request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 11703,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-kubelet-retries-deferred-resizes",
      "type": "concept",
      "title": "How kubelet retries Deferred resizes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 3478,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:leveraging-observedgeneration-fields",
      "type": "concept",
      "title": "Leveraging `observedGeneration` Fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 4304,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:for-application-developers",
      "type": "concept",
      "title": "For application developers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 13148,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/assign-pods-nodes-using-node-affinity",
      "type": "page",
      "title": "Assign Pods to Nodes using Node Affinity",
      "summary": "",
      "body": "\nThis page shows how to assign a Kubernetes Pod to a particular node using Node Affinity in a\nKubernetes cluster.\n\n\n## \n\n\n \n\n\n\n\n\n## Add a label to a node\n\n1. List the nodes in your cluster, along with their labels:\n\n    ```shell\n    kubectl get nodes --show-labels\n    ```\n    The output is similar to this:\n\n    ```shell\n    NAME      STATUS    ROLES    AGE     VERSION        LABELS\n    worker0   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker0\n    worker1   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker1\n    worker2   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker2\n    ```\n1. Choose one of your nodes, and add a label to it:\n\n    ```shell\n    kubectl label nodes <your-node-name> disktype=ssd\n    ```\n    where `<your-node-name>` is the name of your chosen node.\n\n1. Verify that your chosen node has a `disktype=ssd` label:\n\n    ```shell\n    kubectl get nodes --show-labels\n    ```\n\n    The output is similar to this:\n\n    ```\n    NAME      STATUS    ROLES    AGE     VERSION        LABELS\n    worker0   Ready     <none>   1d      v1.13.0        ...,disktype=ssd,kubernetes.io/hostname=worker0\n    worker1   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker1\n    worker2   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker2\n    ```\n\n    In the preceding output, you can see that the `worker0` node has a\n    `disktype=ssd` label.\n\n## Schedule a Pod using required node affinity\n\nThis manifest describes a Pod that has a `requiredDuringSchedulingIgnoredDuringExecution` node affinity,`disktype: ssd`. \nThis means that the pod will get scheduled only on a node that has a `disktype=ssd` label. \n\n\n\n1. Apply the manifest to create a Pod that is scheduled onto your\n   chosen node:\n    \n    ```shell\n    kubectl apply -f https://k8s.io/examples/pods/pod-nginx-required-affinity.yaml\n    ```\n\n1. Verify that the pod is running on your chosen node:\n\n    ```shell\n    kubectl get pods --output=wide\n    ```\n\n    The output is similar to this:\n    \n    ```\n    NAME     READY     STATUS    RESTARTS   AGE    IP           NODE\n    nginx    1/1       Running   0          13s    10.200.0.4   worker0\n    ```\n    \n## Schedule a Pod using preferred node affinity\n\nThis manifest describes a Pod that has a `preferredDuringSchedulingIgnoredDuringExecution` node affinity,`disktype: ssd`. \nThis means that the pod will prefer a node that has a `disktype=ssd` label. \n\n\n\n1. Apply the manifest to create a Pod that is scheduled onto your\n   chosen node:\n    \n    ```shell\n    kubectl apply -f https://k8s.io/examples/pods/pod-nginx-preferred-affinity.yaml\n    ```\n\n1. Verify that the pod is running on your chosen node:\n\n    ```shell\n    kubectl get pods --output=wide\n    ```\n\n    The output is similar to this:\n    \n    ```\n    NAME     READY     STATUS    RESTARTS   AGE    IP           NODE\n    nginx    1/1       Running   0          13s    10.200.0.4   worker0\n    ```\n\n\n\n## \n\nLearn more about\n[Node Affinity](/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity).\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
      "meta": {
        "weight": 160,
        "rel_path": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
          "line_start": null,
          "line_end": null,
          "quote": "Assign Pods to Nodes using Node Affinity"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:add-a-label-to-a-node",
      "type": "concept",
      "title": "Add a label to a node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
          "line_start": 255,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:schedule-a-pod-using-required-node-affinity",
      "type": "concept",
      "title": "Schedule a Pod using required node affinity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
          "line_start": 1602,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:schedule-a-pod-using-preferred-node-affinity",
      "type": "concept",
      "title": "Schedule a Pod using preferred node affinity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
          "line_start": 2438,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "type": "page",
      "title": "Assign CPU Resources to Containers and Pods",
      "summary": "",
      "body": "\n\nThis page shows how to assign a CPU *request* and a CPU *limit* to\na container. Containers cannot use more CPU than the configured limit.\nProvided the system has CPU time free, a container is guaranteed to be\nallocated as much CPU as it requests.\n\n\n\n\n## \n\n\n \n\nYour cluster must have at least 1 CPU available for use to run the task examples.\n\nA few of the steps on this page require you to run the\n[metrics-server](https://github.com/kubernetes-sigs/metrics-server)\nservice in your cluster. If you have the metrics-server\nrunning, you can skip those steps.\n\nIf you are running [minikube](#gloss:minikube), run the\nfollowing command to enable metrics-server:\n\n```shell\nminikube addons enable metrics-server\n```\n\nTo see whether metrics-server (or another provider of the resource metrics\nAPI, `metrics.k8s.io`) is running, type the following command:\n\n```shell\nkubectl get apiservices\n```\n\nIf the resource metrics API is available, the output will include a\nreference to `metrics.k8s.io`.\n\n\n```\nNAME\nv1beta1.metrics.k8s.io\n```\n\n\n\n\n\n\n## Create a namespace\n\nCreate a [namespace](#gloss:namespace) so that the resources you\ncreate in this exercise are isolated from the rest of your cluster.\n\n```shell\nkubectl create namespace cpu-example\n```\n\n## Specify a CPU request and a CPU limit\n\nTo specify a CPU request for a container, include the `resources.requests.cpu` field\nin the container’s resource manifest. To specify a CPU limit, include `resources.limits.cpu`.\n\nIn this exercise, you create a Pod that has one container. The container has a request\nof 0.5 CPU and a limit of 1 CPU. Here is the configuration file for the Pod:\n\n\n\nThe `args` section of the configuration file provides arguments for the container when it starts.\nThe `-cpus \"2\"` argument tells the Container to attempt to use 2 CPUs.\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/resource/cpu-request-limit.yaml --namespace=cpu-example\n```\n\nVerify that the Pod is running:\n\n```shell\nkubectl get pod cpu-demo --namespace=cpu-example\n```\n\nView detailed information about the Pod:\n\n```shell\nkubectl get pod cpu-demo --output=yaml --namespace=cpu-example\n```\n\nThe output shows that the one container in the Pod has a CPU request of 500 milliCPU\nand a CPU limit of 1 CPU.\n\n```yaml\nresources:\n  limits:\n    cpu: \"1\"\n  requests:\n    cpu: 500m\n```\n\nUse `kubectl top` to fetch the metrics for the Pod:\n\n```shell\nkubectl top pod cpu-demo --namespace=cpu-example\n```\n\nThis example output shows that the Pod is using 974 milliCPU, which is\nslightly less than the limit of 1 CPU specified in the Pod configuration.\n\n```\nNAME                        CPU(cores)   MEMORY(bytes)\ncpu-demo                    974m         <something>\n```\n\nRecall that by setting `-cpu \"2\"`, you configured the Container to attempt to use 2 CPUs, but the Container is only being allowed to use about 1 CPU. The container's CPU use is being throttled, because the container is attempting to use more CPU resources than its limit.\n\n\n> **Note:** Another possible explanation for the CPU use being below 1.0 is that the Node might not have\nenough CPU resources available. Recall that the prerequisites for this exercise require your cluster to have at least 1 CPU available for use. If your Container runs on a Node that has only 1 CPU, the Container cannot use more than 1 CPU regardless of the CPU limit specified for the Container.\n\n\n## CPU units\n\nThe CPU resource is measured in *CPU* units. One CPU, in Kubernetes, is equivalent to:\n\n* 1 AWS vCPU\n* 1 GCP Core\n* 1 Azure vCore\n* 1 Hyperthread on a bare-metal Intel processor with Hyperthreading\n\nFractional values are allowed. A Container that requests 0.5 CPU is guaranteed half as much\nCPU as a Container that requests 1 CPU. You can use the suffix m to mean milli. For example\n100m CPU, 100 milliCPU, and 0.1 CPU are all the same. Precision finer than 1m is not allowed.\n\nCPU is always requested as an absolute quantity, never as a relative quantity; 0.1 is the same\namount of CPU on a single\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/configure-pod-container/assign-cpu-resource.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": null,
          "line_end": null,
          "quote": "Assign CPU Resources to Containers and Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specify-a-cpu-request-and-a-cpu-limit",
      "type": "concept",
      "title": "Specify a CPU request and a CPU limit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 1398,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cpu-units",
      "type": "concept",
      "title": "CPU units",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 3646,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specify-a-cpu-request-that-is-too-big-for-your-nodes",
      "type": "concept",
      "title": "Specify a CPU request that is too big for your Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 4381,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:if-you-do-not-specify-a-cpu-limit",
      "type": "concept",
      "title": "If you do not specify a CPU limit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 6323,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:if-you-specify-a-cpu-limit-but-do-not-specify-a-cpu-request",
      "type": "concept",
      "title": "If you specify a CPU limit but do not specify a CPU request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 6927,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:motivation-for-cpu-requests-and-limits",
      "type": "concept",
      "title": "Motivation for CPU requests and limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 7311,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "type": "page",
      "title": "Configure Liveness, Readiness and Startup Probes",
      "summary": "",
      "body": "\n\nThis page shows how to configure liveness, readiness and startup probes for\ncontainers.\n\nFor more information about probes, see\n[Liveness, Readiness and Startup Probes](/docs/concepts/workloads/pods/probes).\n\n## \n\n\n\n\n\n## Define a liveness command\n\nMany applications running for long periods of time eventually transition to\nbroken states, and cannot recover except by being restarted. Kubernetes provides\nliveness probes to detect and remedy such situations.\n\nIn this exercise, you create a Pod that runs a container based on the\n`registry.k8s.io/busybox:1.27.2` image. Here is the configuration file for the Pod:\n\n\n\nIn the configuration file, you can see that the Pod has a single `Container`.\nThe `periodSeconds` field specifies that the kubelet should perform a liveness\nprobe every 5 seconds. The `initialDelaySeconds` field tells the kubelet that it\nshould wait 5 seconds before performing the first probe. To perform a probe, the\nkubelet executes the command `cat /tmp/healthy` in the target container. If the\ncommand succeeds, it returns 0, and the kubelet considers the container to be alive and\nhealthy. If the command returns a non-zero value, the kubelet kills the container\nand restarts it.\n\nWhen the container starts, it executes this command:\n\n```shell\n/bin/sh -c \"touch /tmp/healthy; sleep 30; rm -f /tmp/healthy; sleep 600\"\n```\n\nFor the first 30 seconds of the container's life, there is a `/tmp/healthy` file.\nSo during the first 30 seconds, the command `cat /tmp/healthy` returns a success\ncode. After 30 seconds, `cat /tmp/healthy` returns a failure code.\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/probe/exec-liveness.yaml\n```\n\nWithin 30 seconds, view the Pod events:\n\n```shell\nkubectl describe pod liveness-exec\n```\n\nThe output indicates that no liveness probes have failed yet:\n\n```none\nType    Reason     Age   From               Message\n----    ------     ----  ----               -------\nNormal  Scheduled  11s   default-scheduler  Successfully assigned default/liveness-exec to node01\nNormal  Pulling    9s    kubelet, node01    Pulling image \"registry.k8s.io/busybox:1.27.2\"\nNormal  Pulled     7s    kubelet, node01    Successfully pulled image \"registry.k8s.io/busybox:1.27.2\"\nNormal  Created    7s    kubelet, node01    Created container liveness\nNormal  Started    7s    kubelet, node01    Started container liveness\n```\n\nAfter 35 seconds, view the Pod events again:\n\n```shell\nkubectl describe pod liveness-exec\n```\n\nAt the bottom of the output, there are messages indicating that the liveness\nprobes have failed, and the failed containers have been killed and recreated.\n\n```none\nType     Reason     Age                From               Message\n----     ------     ----               ----               -------\nNormal   Scheduled  57s                default-scheduler  Successfully assigned default/liveness-exec to node01\nNormal   Pulling    55s                kubelet, node01    Pulling image \"registry.k8s.io/busybox:1.27.2\"\nNormal   Pulled     53s                kubelet, node01    Successfully pulled image \"registry.k8s.io/busybox:1.27.2\"\nNormal   Created    53s                kubelet, node01    Created container liveness\nNormal   Started    53s                kubelet, node01    Started container liveness\nWarning  Unhealthy  10s (x3 over 20s)  kubelet, node01    Liveness probe failed: cat: can't open '/tmp/healthy': No such file or directory\nNormal   Killing    10s                kubelet, node01    Container liveness failed liveness probe, will be restarted\n```\n\nWait another 30 seconds, and verify that the container has been restarted:\n\n```shell\nkubectl get pod liveness-exec\n```\n\nThe output shows that `RESTARTS` has been incremented. Note that the `RESTARTS` counter\nincrements as soon as a failed container comes back to the running state:\n\n```none\nNAME            READY     STATUS    RESTARTS   AGE\nliveness-exec   1/1       Running   1          1m\n```\n\n## Define a liveness HTTP request\n\nAnother kind of liveness pr\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
      "meta": {
        "weight": 140,
        "rel_path": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Liveness, Readiness and Startup Probes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-a-liveness-command",
      "type": "concept",
      "title": "Define a liveness command",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 325,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-a-liveness-http-request",
      "type": "concept",
      "title": "Define a liveness HTTP request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 4099,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-a-tcp-liveness-probe",
      "type": "concept",
      "title": "Define a TCP liveness probe",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 6420,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-a-grpc-liveness-probe",
      "type": "concept",
      "title": "Define a gRPC liveness probe",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 7928,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-a-named-port",
      "type": "concept",
      "title": "Use a named port",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 9335,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protect-slow-starting-containers-with-startup-probes-define-startup-probes",
      "type": "concept",
      "title": "Protect slow starting containers with startup probes {#define-startup-probes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 9664,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-readiness-probes",
      "type": "concept",
      "title": "Define readiness probes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 10871,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "type": "page",
      "title": "Translate a Docker Compose File to Kubernetes Resources",
      "summary": "",
      "body": "\n\nWhat's Kompose? It's a conversion tool for all things compose (namely Docker Compose) to container orchestrators (Kubernetes or OpenShift).\n\nMore information can be found on the Kompose website at [https://kompose.io/](https://kompose.io/).\n\n## \n\n \n\n\n\n## Install Kompose\n\nWe have multiple ways to install Kompose. Our preferred method is downloading the binary from the latest GitHub release.\n\n\n\n\nKompose is released via GitHub on a three-week cycle, you can see all current releases on the [GitHub release page](https://github.com/kubernetes/kompose/releases).\n\n```sh\n# Linux\ncurl -L https://github.com/kubernetes/kompose/releases/download/v1.34.0/kompose-linux-amd64 -o kompose\n\n# macOS\ncurl -L https://github.com/kubernetes/kompose/releases/download/v1.34.0/kompose-darwin-amd64 -o kompose\n\n# Windows\ncurl -L https://github.com/kubernetes/kompose/releases/download/v1.34.0/kompose-windows-amd64.exe -o kompose.exe\n\nchmod +x kompose\nsudo mv ./kompose /usr/local/bin/kompose\n```\n\nAlternatively, you can download the [tarball](https://github.com/kubernetes/kompose/releases).\n\n\n\n\nInstalling using `go get` pulls from the master branch with the latest development changes.\n\n```sh\ngo get -u github.com/kubernetes/kompose\n```\n\n\n\n\nOn macOS you can install the latest release via [Homebrew](https://brew.sh):\n\n```bash\nbrew install kompose\n```\n\n\n\n\n## Use Kompose\n\nIn a few steps, we'll take you from Docker Compose to Kubernetes. All\nyou need is an existing `docker-compose.yml` file.\n\n1. Go to the directory containing your `docker-compose.yml` file. If you don't have one, test using this one.\n\n   ```yaml\n\n   services:\n\n     redis-leader:\n       container_name: redis-leader\n       image: redis\n       ports:\n         - \"6379\"\n\n     redis-replica:\n       container_name: redis-replica\n       image: redis\n       ports:\n         - \"6379\"\n       command: redis-server --replicaof redis-leader 6379 --dir /tmp\n\n     web:\n       container_name: web\n       image: quay.io/kompose/web\n       ports:\n         - \"8080:8080\"\n       environment:\n         - GET_HOSTS_FROM=dns\n       labels:\n         kompose.service.type: LoadBalancer\n   ```\n\n2. To convert the `docker-compose.yml` file to files that you can use with\n   `kubectl`, run `kompose convert` and then `kubectl apply -f <output file>`.\n\n   ```bash\n   kompose convert\n   ```\n\n   The output is similar to:\n\n   ```none\n   INFO Kubernetes file \"redis-leader-service.yaml\" created\n   INFO Kubernetes file \"redis-replica-service.yaml\" created\n   INFO Kubernetes file \"web-tcp-service.yaml\" created\n   INFO Kubernetes file \"redis-leader-deployment.yaml\" created\n   INFO Kubernetes file \"redis-replica-deployment.yaml\" created\n   INFO Kubernetes file \"web-deployment.yaml\" created\n   ```\n\n   ```bash\n    kubectl apply -f web-tcp-service.yaml,redis-leader-service.yaml,redis-replica-service.yaml,web-deployment.yaml,redis-leader-deployment.yaml,redis-replica-deployment.yaml\n   ```\n\n   The output is similar to:\n\n   ```none\n   deployment.apps/redis-leader created\n   deployment.apps/redis-replica created\n   deployment.apps/web created\n   service/redis-leader created\n   service/redis-replica created\n   service/web-tcp created\n   ```\n\n    Your deployments are running in Kubernetes.\n\n3. Access your application.\n\n   If you're already using `minikube` for your development process:\n\n   ```bash\n   minikube service web-tcp\n   ```\n\n   Otherwise, let's look up what IP your service is using!\n\n   ```sh\n   kubectl describe svc web-tcp\n   ```\n\n   ```none\n    Name:                     web-tcp\n    Namespace:                default\n    Labels:                   io.kompose.service=web-tcp\n    Annotations:              kompose.cmd: kompose convert\n                              kompose.service.type: LoadBalancer\n                              kompose.version: 1.33.0 (3ce457399)\n    Selector:                 io.kompose.service=web\n    Type:                     LoadBalancer\n    IP Family Policy:         SingleStack\n    IP Families:              IPv4\n    IP:      \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
      "meta": {
        "weight": 230,
        "rel_path": "tasks/configure-pod-container/translate-compose-kubernetes.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": null,
          "line_end": null,
          "quote": "Translate a Docker Compose File to Kubernetes Resources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-kompose",
      "type": "concept",
      "title": "Install Kompose",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 380,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-kompose",
      "type": "concept",
      "title": "Use Kompose",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 1656,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:user-guide",
      "type": "concept",
      "title": "User Guide",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 5200,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kompose-convert",
      "type": "concept",
      "title": "`kompose convert`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 5632,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alternative-conversions",
      "type": "concept",
      "title": "Alternative Conversions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 10204,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:labels",
      "type": "concept",
      "title": "Labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 12469,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restart",
      "type": "concept",
      "title": "Restart",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 14166,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-compose-versions",
      "type": "concept",
      "title": "Docker Compose Versions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 15851,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-kompose-convert-example",
      "type": "concept",
      "title": "Kubernetes `kompose convert` example",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 5761,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:openshift-kompose-convert-example",
      "type": "concept",
      "title": "OpenShift `kompose convert` example",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 8128,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:warning-about-deployment-configurations",
      "type": "concept",
      "title": "Warning about Deployment Configurations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 15157,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/enforce-standards-namespace-labels",
      "type": "page",
      "title": "Enforce Pod Security Standards with Namespace Labels",
      "summary": "",
      "body": "Namespaces can be labeled to enforce the [Pod Security Standards](/docs/concepts/security/pod-security-standards). The three policies\n[privileged](/docs/concepts/security/pod-security-standards/#privileged), [baseline](/docs/concepts/security/pod-security-standards/#baseline)\nand [restricted](/docs/concepts/security/pod-security-standards/#restricted) broadly cover the security spectrum\nand are implemented by the [Pod Security](/docs/concepts/security/pod-security-admission/) [admission controller](#gloss:admission-controller).\n\n## \n\nPod Security Admission was available by default in Kubernetes v1.23, as\na beta. From version 1.25 onwards, Pod Security Admission is generally\navailable.\n\n\n\n## Requiring the `baseline` Pod Security Standard with namespace labels\n\nThis manifest defines a Namespace `my-baseline-namespace` that:\n\n- _Blocks_ any pods that don't satisfy the `baseline` policy requirements.\n- Generates a user-facing warning and adds an audit annotation to any created pod that does not\n  meet the `restricted` policy requirements.\n- Pins the versions of the `baseline` and `restricted` policies to v.\n\n```yaml\napiVersion: v1\nkind: Namespace\nmetadata:\n  name: my-baseline-namespace\n  labels:\n    pod-security.kubernetes.io/enforce: baseline\n    pod-security.kubernetes.io/enforce-version: v\n\n    # We are setting these to our _desired_ `enforce` level.\n    pod-security.kubernetes.io/audit: restricted\n    pod-security.kubernetes.io/audit-version: v\n    pod-security.kubernetes.io/warn: restricted\n    pod-security.kubernetes.io/warn-version: v\n```\n\n## Add labels to existing namespaces with `kubectl label`\n\n\n> **Note:** When an `enforce` policy (or version) label is added or changed, the admission plugin will test\neach pod in the namespace against the new policy. Violations are returned to the user as warnings.\n\n\nIt is helpful to apply the `--dry-run` flag when initially evaluating security profile changes for\nnamespaces. The Pod Security Standard checks will still be run in _dry run_ mode, giving you\ninformation about how the new policy would treat existing pods, without actually updating a policy.\n\n```shell\nkubectl label --dry-run=server --overwrite ns --all \\\n    pod-security.kubernetes.io/enforce=baseline\n```\n\n### Applying to all namespaces\n\nIf you're just getting started with the Pod Security Standards, a suitable first step would be to\nconfigure all namespaces with audit annotations for a stricter level such as `baseline`:\n\n```shell\nkubectl label --overwrite ns --all \\\n  pod-security.kubernetes.io/audit=baseline \\\n  pod-security.kubernetes.io/warn=baseline\n```\n\nNote that this is not setting an enforce level, so that namespaces that haven't been explicitly\nevaluated can be distinguished. You can list namespaces without an explicitly set enforce level\nusing this command:\n\n```shell\nkubectl get namespaces --selector='!pod-security.kubernetes.io/enforce'\n```\n\n### Applying to a single namespace\n\nYou can update a specific namespace as well. This command adds the `enforce=restricted`\npolicy to `my-existing-namespace`, pinning the restricted policy version to v.\n\n```shell\nkubectl label --overwrite ns my-existing-namespace \\\n  pod-security.kubernetes.io/enforce=restricted \\\n  pod-security.kubernetes.io/enforce-version=v\n```\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
      "meta": {
        "weight": 250,
        "rel_path": "tasks/configure-pod-container/enforce-standards-namespace-labels.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": null,
          "line_end": null,
          "quote": "Enforce Pod Security Standards with Namespace Labels"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:requiring-the-baseline-pod-security-standard-with-namespace-labels",
      "type": "concept",
      "title": "Requiring the `baseline` Pod Security Standard with namespace labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": 782,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:add-labels-to-existing-namespaces-with-kubectl-label",
      "type": "concept",
      "title": "Add labels to existing namespaces with `kubectl label`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": 1762,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applying-to-all-namespaces",
      "type": "concept",
      "title": "Applying to all namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": 2453,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applying-to-a-single-namespace",
      "type": "concept",
      "title": "Applying to a single namespace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": 3112,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/configure-pod-initialization",
      "type": "page",
      "title": "Configure Pod Initialization",
      "summary": "",
      "body": "\n\nThis page shows how to use an Init Container to initialize a Pod before an\napplication Container runs.\n\n## \n\n \n\n\n\n## Create a Pod that has an Init Container\n\nIn this exercise you create a Pod that has one application Container and one\nInit Container. The init container runs to completion before the application\ncontainer starts.\n\nHere is the configuration file for the Pod:\n\n\n\nIn the configuration file, you can see that the Pod has a Volume that the init\ncontainer and the application container share.\n\nThe init container mounts the\nshared Volume at `/work-dir`, and the application container mounts the shared\nVolume at `/usr/share/nginx/html`. The init container runs the following command\nand then terminates:\n\n```shell\nwget -O /work-dir/index.html http://info.cern.ch\n```\n\nNotice that the init container writes the `index.html` file in the root directory\nof the nginx server.\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/init-containers.yaml\n```\n\nVerify that the nginx container is running:\n\n```shell\nkubectl get pod init-demo\n```\n\nThe output shows that the nginx container is running:\n\n```\nNAME        READY     STATUS    RESTARTS   AGE\ninit-demo   1/1       Running   0          1m\n```\n\nGet a shell into the nginx container running in the init-demo Pod:\n\n```shell\nkubectl exec -it init-demo -- /bin/bash\n```\n\nIn your shell, send a GET request to the nginx server:\n\n```\nroot@nginx:~# apt-get update\nroot@nginx:~# apt-get install curl\nroot@nginx:~# curl localhost\n```\n\nThe output shows that nginx is serving the web page that was written by the init container:\n\n```html\n<html><head></head><body><header>\n<title>http://info.cern.ch</title>\n</header>\n\n<h1>http://info.cern.ch - home of the first website</h1>\n  ...\n  <li><a href=\"http://info.cern.ch/hypertext/WWW/TheProject.html\">Browse the first website</a></li>\n  ...\n```\n\n## \n\n* Learn more about\n  [communicating between Containers running in the same Pod](/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/).\n* Learn more about [Init Containers](/docs/concepts/workloads/pods/init-containers/).\n* Learn more about [Volumes](/docs/concepts/storage/volumes/).\n* Learn more about [Debugging Init Containers](/docs/tasks/debug/debug-application/debug-init-containers/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/",
      "meta": {
        "weight": 170,
        "rel_path": "tasks/configure-pod-container/configure-pod-initialization.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-initialization.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Pod Initialization"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-has-an-init-container",
      "type": "concept",
      "title": "Create a Pod that has an Init Container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-initialization.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/extended-resource",
      "type": "page",
      "title": "Assign Extended Resources to a Container",
      "summary": "",
      "body": "\n\n\n\nThis page shows how to assign extended resources to a Container.\n\n\n\n\n## \n\n\n \n\nBefore you do this exercise, do the exercise in\n[Advertise Extended Resources for a Node](/docs/tasks/administer-cluster/extended-resource-node/).\nThat will configure one of your Nodes to advertise a dongle resource.\n\n\n\n\n\n\n## Assign an extended resource to a Pod\n\nTo request an extended resource, include the `resources.requests.<resource_name>` field\nin the container manifest.\n`*.kubernetes.io/`. Valid extended resource names have the form `example.com/foo` where\n`example.com` is replaced with your organization's domain and `foo` is a\ndescriptive resource name.\n\nHere is the configuration file for a Pod that has one Container:\n\n\n\nIn the configuration file, you can see that the Container requests 3 dongles.\n\nCreate a Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/resource/extended-resource-pod.yaml\n```\n\nVerify that the Pod is running:\n\n```shell\nkubectl get pod extended-resource-demo\n```\n\nDescribe the Pod:\n\n```shell\nkubectl describe pod extended-resource-demo\n```\n\nThe output shows dongle requests:\n\n```yaml\nLimits:\n  example.com/dongle: 3\nRequests:\n  example.com/dongle: 3\n```\n\n## Attempt to create a second Pod\n\nHere is the configuration file for a Pod that has one Container. The Container requests\ntwo dongles.\n\n\n\nKubernetes will not be able to satisfy the request for two dongles, because the first Pod\nused three of the four available dongles.\n\nAttempt to create a Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/resource/extended-resource-pod-2.yaml\n```\n\nDescribe the Pod\n\n```shell\nkubectl describe pod extended-resource-demo-2\n```\n\nThe output shows that the Pod cannot be scheduled, because there is no Node that has\n2 dongles available:\n\n\n```\nConditions:\n  Type    Status\n  PodScheduled  False\n...\nEvents:\n  ...\n  ... Warning   FailedScheduling  pod (extended-resource-demo-2) failed to fit in any node\nfit failure summary on nodes : Insufficient example.com/dongle (1)\n```\n\nView the Pod status:\n\n```shell\nkubectl get pod extended-resource-demo-2\n```\n\nThe output shows that the Pod was created, but not scheduled to run on a Node.\nIt has a status of Pending:\n\n```yaml\nNAME                       READY     STATUS    RESTARTS   AGE\nextended-resource-demo-2   0/1       Pending   0          6m\n```\n\n## Clean up\n\nDelete the Pods that you created for this exercise:\n\n```shell\nkubectl delete pod extended-resource-demo\nkubectl delete pod extended-resource-demo-2\n```\n\n\n\n## \n\n\n### For application developers\n\n* [Assign Memory Resources to Containers and Pods](/docs/tasks/configure-pod-container/assign-memory-resource/)\n* [Assign CPU Resources to Containers and Pods](/docs/tasks/configure-pod-container/assign-cpu-resource/)\n\n### For cluster administrators\n\n* [Advertise Extended Resources for a Node](/docs/tasks/administer-cluster/extended-resource-node/)\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
      "meta": {
        "weight": 70,
        "rel_path": "tasks/configure-pod-container/extended-resource.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": null,
          "line_end": null,
          "quote": "Assign Extended Resources to a Container"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:assign-an-extended-resource-to-a-pod",
      "type": "concept",
      "title": "Assign an extended resource to a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": 467,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:attempt-to-create-a-second-pod",
      "type": "concept",
      "title": "Attempt to create a second Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": 1414,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/static-pod",
      "type": "page",
      "title": "Create static Pods",
      "summary": "",
      "body": "\n \nThis page shows you how to create _static Pods_ on a node.\nFor an overview of what static Pods are and when to use them, see\n[Static Pods](/docs/concepts/workloads/pods/static-pods/).\n\n## \n\n \n\nThis page assumes you're using [cri-o](#gloss:cri-o) to run Pods,\nand that your nodes are running the Fedora operating system.\nInstructions for other distributions or Kubernetes installations may vary.\n\n\n\n## Create a static pod {#static-pod-creation}\n\nYou can configure a static Pod with either a [file system hosted configuration file](#configuration-files)\nor a [web hosted configuration file](#pods-created-via-http).\n\n### Filesystem-hosted static Pod manifest {#configuration-files}\n\nManifests are standard Pod definitions in JSON or YAML format in a specific directory.\nUse the `staticPodPath: <the directory>` field in the\n[kubelet configuration file](/docs/reference/config-api/kubelet-config.v1beta1/),\nwhich periodically scans the directory and creates/deletes static Pods as YAML/JSON files appear/disappear there.\nNote that the kubelet will ignore files starting with dots when scanning the specified directory.\n\n\n> **Caution:** The kubelet processes **all files not starting with a dot** in the static Pod directory\n— there is no filtering by file extension. For example, if you create a backup of a\nmanifest by running `cp kube-apiserver.yaml kube-apiserver.yaml.backup`, the kubelet\nwill read **both** files and attempt to create a static Pod from each. When two files\ndefine a Pod with the same name, the resulting behavior is undefined and can cause the\nbackup's outdated spec to silently take effect instead of the current manifest. If you\ndo create a backup, store it **outside** the static Pod directory (for example, in\n`/etc/kubernetes/backup/`).\n\n\nFor example, this is how to start a simple web server as a static Pod:\n\n1. Choose a node where you want to run the static Pod. In this example, it's `my-node1`.\n\n   ```shell\n   ssh my-node1\n   ```\n\n1. Choose a directory, say `/etc/kubernetes/manifests` and place a web server\n   Pod definition there, for example `/etc/kubernetes/manifests/static-web.yaml`:\n\n   ```shell\n   # Run this command on the node where kubelet is running\n   mkdir -p /etc/kubernetes/manifests/\n   cat <<EOF >/etc/kubernetes/manifests/static-web.yaml\n   apiVersion: v1\n   kind: Pod\n   metadata:\n     name: static-web\n     labels:\n       role: myrole\n   spec:\n     containers:\n       - name: web\n         image: nginx\n         ports:\n           - name: web\n             containerPort: 80\n             protocol: TCP\n   EOF\n   ```\n\n1. Configure the kubelet on that node to set a `staticPodPath` value in the\n   [kubelet configuration file](/docs/reference/config-api/kubelet-config.v1beta1/).  \n   See [Set Kubelet Parameters Via A Configuration File](/docs/tasks/administer-cluster/kubelet-config-file/)\n   for more information.\n\n   An alternative and deprecated method is to configure the kubelet on that node\n   to look for static Pod manifests locally, using a command line argument.\n   To use the deprecated approach, start the kubelet with the  \n   `--pod-manifest-path=/etc/kubernetes/manifests/` argument.\n      \n1. Restart the kubelet. On Fedora, you would run:\n\n   ```shell\n   # Run this command on the node where the kubelet is running\n   systemctl restart kubelet\n   ```\n\n### Web-hosted static pod manifest {#pods-created-via-http}\n\nKubelet periodically downloads a file specified by `--manifest-url=<URL>` argument\nand interprets it as a JSON/YAML file that contains Pod definitions.\nSimilar to how [filesystem-hosted manifests](#configuration-files) work, the kubelet\nrefetches the manifest on a schedule. If there are changes to the list of static\nPods, the kubelet applies them.\n\nTo use this approach:\n\n1. Create a YAML file and store it on a web server so that you can pass the URL of that file to the kubelet.\n\n   ```yaml\n   apiVersion: v1\n   kind: Pod\n   metadata:\n     name: static-web\n     labels:\n       role: myrole\n   spec:\n     containers\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
      "meta": {
        "weight": 220,
        "rel_path": "tasks/configure-pod-container/static-pod.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": null,
          "line_end": null,
          "quote": "Create static Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-static-pod-static-pod-creation",
      "type": "concept",
      "title": "Create a static pod {#static-pod-creation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 546,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:observe-static-pod-behavior-behavior-of-static-pods",
      "type": "concept",
      "title": "Observe static pod behavior {#behavior-of-static-pods}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 4789,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dynamic-addition-and-removal-of-static-pods",
      "type": "concept",
      "title": "Dynamic addition and removal of static pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 7928,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:filesystem-hosted-static-pod-manifest-configuration-files",
      "type": "concept",
      "title": "Filesystem-hosted static Pod manifest {#configuration-files}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 763,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:web-hosted-static-pod-manifest-pods-created-via-http",
      "type": "concept",
      "title": "Web-hosted static pod manifest {#pods-created-via-http}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 3482,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/enforce-standards-admission-controller",
      "type": "page",
      "title": "Enforce Pod Security Standards by Configuring the Built-in Admission Controller",
      "summary": "",
      "body": "Kubernetes provides a built-in [admission controller](/docs/reference/access-authn-authz/admission-controllers/#podsecurity)\nto enforce the [Pod Security Standards](/docs/concepts/security/pod-security-standards).\nYou can configure this admission controller to set cluster-wide defaults and [exemptions](/docs/concepts/security/pod-security-admission/#exemptions).\n\n## \n\nFollowing an alpha release in Kubernetes v1.22,\nPod Security Admission became available by default in Kubernetes v1.23, as\na beta. From version 1.25 onwards, Pod Security Admission is generally\navailable.\n\n\n\nIf you are not running Kubernetes , you can switch\nto viewing this page in the documentation for the Kubernetes version that you\nare running.\n\n## Configure the Admission Controller\n\n\n> **Note:** `pod-security.admission.config.k8s.io/v1` configuration requires v1.25+.\nFor v1.23 and v1.24, use [v1beta1](https://v1-24.docs.kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-admission-controller/).\nFor v1.22, use [v1alpha1](https://v1-22.docs.kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-admission-controller/).\n\n\n```yaml\napiVersion: apiserver.config.k8s.io/v1\nkind: AdmissionConfiguration\nplugins:\n- name: PodSecurity\n  configuration:\n    apiVersion: pod-security.admission.config.k8s.io/v1 # see compatibility note\n    kind: PodSecurityConfiguration\n    # Defaults applied when a mode label is not set.\n    #\n    # Level label values must be one of:\n    # - \"privileged\" (default)\n    # - \"baseline\"\n    # - \"restricted\"\n    #\n    # Version label values must be one of:\n    # - \"latest\" (default) \n    # - specific version like \"v\"\n    defaults:\n      enforce: \"privileged\"\n      enforce-version: \"latest\"\n      audit: \"privileged\"\n      audit-version: \"latest\"\n      warn: \"privileged\"\n      warn-version: \"latest\"\n    exemptions:\n      # Array of authenticated usernames to exempt.\n      usernames: []\n      # Array of runtime class names to exempt.\n      runtimeClasses: []\n      # Array of namespaces to exempt.\n      namespaces: []\n```\n\n\n> **Note:** The above manifest needs to be specified via the `--admission-control-config-file` to kube-apiserver.\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-admission-controller/",
      "meta": {
        "weight": 240,
        "rel_path": "tasks/configure-pod-container/enforce-standards-admission-controller.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-admission-controller.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-admission-controller/",
          "line_start": null,
          "line_end": null,
          "quote": "Enforce Pod Security Standards by Configuring the Built-in Admission Controller"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-the-admission-controller",
      "type": "concept",
      "title": "Configure the Admission Controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-admission-controller.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-admission-controller/",
          "line_start": 802,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/security-context",
      "type": "page",
      "title": "Configure a Security Context for a Pod or Container",
      "summary": "",
      "body": "\n\nA security context defines privilege and access control settings for\na Pod or Container. Security context settings include, but are not limited to:\n\n* Discretionary Access Control: Permission to access an object, like a file, is based on\n  [user ID (UID) and group ID (GID)](https://wiki.archlinux.org/index.php/users_and_groups).\n\n* [Security Enhanced Linux (SELinux)](https://en.wikipedia.org/wiki/Security-Enhanced_Linux):\n  Objects are assigned security labels.\n\n* Running as privileged or unprivileged.\n\n* [Linux Capabilities](https://linux-audit.com/linux-capabilities-hardening-linux-binaries-by-removing-setuid/):\n  Give a process some privileges, but not all the privileges of the root user.\n\n* [AppArmor](/docs/tutorials/security/apparmor/):\n  Use program profiles to restrict the capabilities of individual programs.\n\n* [Seccomp](/docs/tutorials/security/seccomp/): Filter a process's system calls.\n\n* `allowPrivilegeEscalation`: Controls whether a process can gain more privileges than\n  its parent process. This bool directly controls whether the\n  [`no_new_privs`](https://www.kernel.org/doc/Documentation/prctl/no_new_privs.txt)\n  flag gets set on the container process.\n  `allowPrivilegeEscalation` is always true when the container:\n\n  - is run as privileged, or\n  - has `CAP_SYS_ADMIN`\n\n* `readOnlyRootFilesystem`: Mounts the container's root filesystem as read-only.\n\nThe above bullets are not a complete set of security context settings -- please see\n[SecurityContext](/docs/reference/generated/kubernetes-api//#securitycontext-v1-core)\nfor a comprehensive list.\n\n## \n\n \n\n\n\n## Set the security context for a Pod\n\nTo specify security settings for a Pod, include the `securityContext` field\nin the Pod specification. The `securityContext` field is a\n[PodSecurityContext](/docs/reference/generated/kubernetes-api//#podsecuritycontext-v1-core) object.\nThe security settings that you specify for a Pod apply to all Containers in the Pod.\nHere is a configuration file for a Pod that has a `securityContext` and an `emptyDir` volume:\n\n\n\nIn the configuration file, the `runAsUser` field specifies that for any Containers in\nthe Pod, all processes run with user ID 1000. The `runAsGroup` field specifies the primary group ID of 3000 for\nall processes within any containers of the Pod. If this field is omitted, the primary group ID of the containers\nwill be root(0). Any files created will also be owned by user 1000 and group 3000 when `runAsGroup` is specified.\nSince `fsGroup` field is specified, all processes of the container are also part of the supplementary group ID 2000.\nThe owner for volume `/data/demo` and any files created in that volume will be Group ID 2000.\nAdditionally, when the `supplementalGroups` field is specified, all processes of the container are also part of the\nspecified groups. If this field is omitted, it means empty.\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/security/security-context.yaml\n```\n\nVerify that the Pod's Container is running:\n\n```shell\nkubectl get pod security-context-demo\n```\n\nGet a shell to the running Container:\n\n```shell\nkubectl exec -it security-context-demo -- sh\n```\n\nIn your shell, list the running processes:\n\n```shell\nps\n```\n\nThe output shows that the processes are running as user 1000, which is the value of `runAsUser`:\n\n```none\nPID   USER     TIME  COMMAND\n    1 1000      0:00 sleep 1h\n    6 1000      0:00 sh\n...\n```\n\nIn your shell, navigate to `/data`, and list the one directory:\n\n```shell\ncd /data\nls -l\n```\n\nThe output shows that the `/data/demo` directory has group ID 2000, which is\nthe value of `fsGroup`.\n\n```none\ndrwxrwsrwx 2 root 2000 4096 Jun  6 20:08 demo\n```\n\nIn your shell, navigate to `/data/demo`, and create a file:\n\n```shell\ncd demo\necho hello > testfile\n```\n\nList the file in the `/data/demo` directory:\n\n```shell\nls -l\n```\n\nThe output shows that `testfile` has group ID 2000, which is the value of `fsGroup`.\n\n```none\n-rw-r--r-- 1 1000 2000 6 Jun  6 20:08 testfile\n```\n\nR\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
      "meta": {
        "weight": 110,
        "rel_path": "tasks/configure-pod-container/security-context.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure a Security Context for a Pod or Container"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-the-security-context-for-a-pod",
      "type": "concept",
      "title": "Set the security context for a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 1745,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-fine-grained-supplementalgroups-control-for-a-pod-supplementalgroupspolicy",
      "type": "concept",
      "title": "Configure fine-grained SupplementalGroups control for a Pod {#supplementalgroupspolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 6581,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-volume-permission-and-ownership-change-policy-for-pods",
      "type": "concept",
      "title": "Configure volume permission and ownership change policy for Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 10768,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delegating-volume-permission-and-ownership-change-to-csi-driver",
      "type": "concept",
      "title": "Delegating volume permission and ownership change to CSI driver",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 12411,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-the-security-context-for-a-container",
      "type": "concept",
      "title": "Set the security context for a Container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 13201,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-capabilities-for-a-container",
      "type": "concept",
      "title": "Set capabilities for a Container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 14770,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-the-seccomp-profile-for-a-container",
      "type": "concept",
      "title": "Set the Seccomp Profile for a Container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 17756,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-the-apparmor-profile-for-a-container",
      "type": "concept",
      "title": "Set the AppArmor Profile for a Container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 18887,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:assign-selinux-labels-to-a-container",
      "type": "concept",
      "title": "Assign SELinux labels to a Container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 20888,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managing-access-to-the-proc-filesystem-proc-access",
      "type": "concept",
      "title": "Managing access to the `/proc` filesystem {#proc-access}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 28198,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:implicit-group-memberships-defined-in-etc-group-in-the-container-image",
      "type": "concept",
      "title": "Implicit group memberships defined in `/etc/group` in the container image",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 4857,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:implementations-implementations-supplementalgroupspolicy",
      "type": "concept",
      "title": "Implementations {#implementations-supplementalgroupspolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 9472,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:efficient-selinux-volume-relabeling",
      "type": "concept",
      "title": "Efficient SELinux volume relabeling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 21608,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/assign-pods-nodes",
      "type": "page",
      "title": "Assign Pods to Nodes",
      "summary": "",
      "body": "\nThis page shows how to assign a Kubernetes Pod to a particular node in a\nKubernetes cluster.\n\n\n## \n\n\n \n\n\n\n\n\n## Add a label to a node\n\n1. List the [nodes](#gloss:node) in your cluster, along with their labels:\n\n    ```shell\n    kubectl get nodes --show-labels\n    ```\n\n    The output is similar to this:\n\n    ```shell\n    NAME      STATUS    ROLES    AGE     VERSION        LABELS\n    worker0   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker0\n    worker1   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker1\n    worker2   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker2\n    ```\n1. Choose one of your nodes, and add a label to it:\n\n    ```shell\n    kubectl label nodes <your-node-name> disktype=ssd\n    ```\n\n    where `<your-node-name>` is the name of your chosen node.\n\n1. Verify that your chosen node has a `disktype=ssd` label:\n\n    ```shell\n    kubectl get nodes --show-labels\n    ```\n\n    The output is similar to this:\n\n    ```shell\n    NAME      STATUS    ROLES    AGE     VERSION        LABELS\n    worker0   Ready     <none>   1d      v1.13.0        ...,disktype=ssd,kubernetes.io/hostname=worker0\n    worker1   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker1\n    worker2   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker2\n    ```\n\n    In the preceding output, you can see that the `worker0` node has a\n    `disktype=ssd` label.\n\n## Create a pod that gets scheduled to your chosen node\n\nThis pod configuration file describes a pod that has a node selector,\n`disktype: ssd`. This means that the pod will get scheduled on a node that has\na `disktype=ssd` label.\n\n\n\n1. Use the configuration file to create a pod that will get scheduled on your\n   chosen node:\n    \n    ```shell\n    kubectl apply -f https://k8s.io/examples/pods/pod-nginx.yaml\n    ```\n\n1. Verify that the pod is running on your chosen node:\n\n    ```shell\n    kubectl get pods --output=wide\n    ```\n\n    The output is similar to this:\n    \n    ```shell\n    NAME     READY     STATUS    RESTARTS   AGE    IP           NODE\n    nginx    1/1       Running   0          13s    10.200.0.4   worker0\n    ```\n## Create a pod that gets scheduled to specific node\n\nYou can also schedule a pod to one specific node via setting `nodeName`.\n\n\n\nUse the configuration file to create a pod that will get scheduled on `foo-node` only.\n\n\n\n## \n\n* Learn more about [labels and selectors](/docs/concepts/overview/working-with-objects/labels/).\n* Learn more about [nodes](/docs/concepts/architecture/nodes/).\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
      "meta": {
        "weight": 150,
        "rel_path": "tasks/configure-pod-container/assign-pods-nodes.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": "Assign Pods to Nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-gets-scheduled-to-your-chosen-node",
      "type": "concept",
      "title": "Create a pod that gets scheduled to your chosen node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
          "line_start": 1636,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-gets-scheduled-to-specific-node",
      "type": "concept",
      "title": "Create a pod that gets scheduled to specific node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
          "line_start": 2416,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/resize-pod-resources",
      "type": "page",
      "title": "Resize CPU and Memory Resources assigned to Pods",
      "summary": "",
      "body": "\n\n\n\nThis page explains how to change the CPU and memory resources set at the Pod level without recreating the Pod.\n\nThe In-place Pod Resize feature allows modifying resource allocations for a running Pod, avoiding application disruption. The process for resizing individual container resources is covered in [Resize CPU and Memory Resources assigned to Containers](/docs/tasks/configure-pod-container/resize-container-resources).\n\nThis page highlights In-place Pod-level resources resize. Pod-level resources\nare defined in `spec.resources` and they act as the upper bound on the aggregate resources\nconsumed by all containers in the Pod. The In-place Pod-level resources resize feature\nlets you change these aggregate CPU and memory allocations for a running Pod directly.\n\n## \n\n \n\nThe following [feature gates](/docs/reference/command-line-tools-reference/feature-gates/)\nmust be enabled for your control plane and for all nodes in your cluster:\n\n* [`InPlacePodLevelResourcesVerticalScaling`](/docs/reference/command-line-tools-reference/feature-gates/#InPlacePodLevelResourcesVerticalScaling)\n* [`PodLevelResources`](/docs/reference/command-line-tools-reference/feature-gates/#PodLevelResources)\n* [`InPlacePodVerticalScaling`](/docs/reference/command-line-tools-reference/feature-gates/#InPlacePodVerticalScaling)\n* [`NodeDeclaredFeatures`](/docs/reference/command-line-tools-reference/feature-gates/#NodeDeclaredFeatures)\n\nThe kubectl client version must be at least v1.32 to use the `--subresource=resize` flag.\n\n## Pod Resize Status and Retry Logic\n\nThe mechanism the `kubelet` uses to track and retry resource changes is shared between container-level and Pod-level resize requests.\n\nThe statuses, reasons, and retry priorities are identical to those defined for container resize:\n\n* Status Conditions: The `kubelet` uses PodResizePending (with reasons like Infeasible or Deferred) and PodResizeInProgress to communicate the state of the request.\n\n* Retry Priority: Deferred resizes are retried based on PriorityClass, then QoS class (Guaranteed over Burstable), and finally by the duration they have been deferred.\n\n* Tracking: You can use the `observedGeneration` fields to track which Pod specification (metadata.generation) corresponds to the status of the latest processed resize request.\n\nFor a full description of these conditions and retry logic, please refer to the [Pod resize status](/docs/tasks/configure-pod-container/resize-container-resources/#pod-resize-status) section in the container resize documentation.\n\n## Container Resize Policy and Pod-Level Resize\n\nPod-level resource resize does not support or require its own restart policy.\n\n* No Pod-Level Policy: Changes to the Pod's aggregate resources (spec.resources) are always applied in-place without triggering a restart. This is because Pod-level resources act as an overall constraint on the Pod's cgroup and do not directly manage the application runtime within containers.\n\n* [Container Policy](/docs/tasks/configure-pod-container/resize-container-resources/#container-resize-policies) Still Governs: The resizePolicy must still be configured at the container level (spec.containers[*].resizePolicy). This policy governs whether an individual container is restarted when its resource requests or limits change, regardless of whether that change was initiated by a direct container-level resize or by an update to the overall Pod-level resource envelope.\n\n## Limitations\n\nFor Kubernetes , resizing Pod-level resources in-place is subject to all the limitations described for container-level resource resize, which you can find here: [Resize CPU and Memory Resources assigned to Containers: Limitations](/docs/tasks/configure-pod-container/resize-container-resources/#limitations).\n\nAdditionally, the following constraint is specific to Pod-level resource resize:\n* Container Requests Validation: A resize is only permitted if the resulting\n  Pod-level resource requests (spec.resources.requests) are greater than or eq\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/configure-pod-container/resize-pod-resources.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": null,
          "line_end": null,
          "quote": "Resize CPU and Memory Resources assigned to Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-resize-status-and-retry-logic",
      "type": "concept",
      "title": "Pod Resize Status and Retry Logic",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 1712,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-resize-policy-and-pod-level-resize",
      "type": "concept",
      "title": "Container Resize Policy and Pod-Level Resize",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 2727,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-resizing-pod-level-resources",
      "type": "concept",
      "title": "Example: Resizing Pod-Level Resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 4789,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/configure-runasusername",
      "type": "page",
      "title": "Configure RunAsUserName for Windows pods and containers",
      "summary": "",
      "body": "\n\n\n\nThis page shows how to use the `runAsUserName` setting for Pods and containers that will run on Windows nodes. This is roughly equivalent of the Linux-specific `runAsUser` setting, allowing you to run applications in a container as a different username than the default.\n\n\n\n## \n\n\nYou need to have a Kubernetes cluster and the kubectl command-line tool must be configured to communicate with your cluster. The cluster is expected to have Windows worker nodes where pods with containers running Windows workloads will get scheduled.\n\n\n\n\n\n## Set the Username for a Pod\n\nTo specify the username with which to execute the Pod's container processes, include the `securityContext` field ([PodSecurityContext](/docs/reference/generated/kubernetes-api//#podsecuritycontext-v1-core)) in the Pod specification, and within it, the `windowsOptions` ([WindowsSecurityContextOptions](/docs/reference/generated/kubernetes-api//#windowssecuritycontextoptions-v1-core)) field containing the `runAsUserName` field.\n\nThe Windows security context options that you specify for a Pod apply to all Containers and init Containers in the Pod.\n\nHere is a configuration file for a Windows Pod that has the `runAsUserName` field set:\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/windows/run-as-username-pod.yaml\n```\n\nVerify that the Pod's Container is running:\n\n```shell\nkubectl get pod run-as-username-pod-demo\n```\n\nGet a shell to the running Container:\n\n```shell\nkubectl exec -it run-as-username-pod-demo -- powershell\n```\n\nCheck that the shell is running user the correct username:\n\n```powershell\necho $env:USERNAME\n```\n\nThe output should be:\n\n```\nContainerUser\n```\n\n## Set the Username for a Container\n\nTo specify the username with which to execute a Container's processes, include the `securityContext` field ([SecurityContext](/docs/reference/generated/kubernetes-api//#securitycontext-v1-core)) in the Container manifest, and within it, the `windowsOptions` ([WindowsSecurityContextOptions](/docs/reference/generated/kubernetes-api//#windowssecuritycontextoptions-v1-core)) field containing the `runAsUserName` field.\n\nThe Windows security context options that you specify for a Container apply only to that individual Container, and they override the settings made at the Pod level.\n\nHere is the configuration file for a Pod that has one Container, and the `runAsUserName` field is set at the Pod level and the Container level:\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/windows/run-as-username-container.yaml\n```\n\nVerify that the Pod's Container is running:\n\n```shell\nkubectl get pod run-as-username-container-demo\n```\n\nGet a shell to the running Container:\n\n```shell\nkubectl exec -it run-as-username-container-demo -- powershell\n```\n\nCheck that the shell is running user the correct username (the one set at the Container level):\n\n```powershell\necho $env:USERNAME\n```\n\nThe output should be:\n\n```\nContainerAdministrator\n```\n\n## Windows Username limitations\n\nIn order to use this feature, the value set in the `runAsUserName` field must be a valid username. It must have the following format: `DOMAIN\\USER`, where `DOMAIN\\` is optional. Windows user names are case insensitive. Additionally, there are some restrictions regarding the `DOMAIN` and `USER`:\n\n- The `runAsUserName` field cannot be empty, and it cannot contain control characters (ASCII values: `0x00-0x1F`, `0x7F`)\n- The `DOMAIN` must be either a NetBios name, or a DNS name, each with their own restrictions:\n  - NetBios names: maximum 15 characters, cannot start with `.` (dot), and cannot contain the following characters: `\\ / : * ? \" < > |`\n  - DNS names: maximum 255 characters, contains only alphanumeric characters, dots, and dashes, and it cannot start or end with a `.` (dot) or `-` (dash).\n- The `USER` must have at most 20 characters, it cannot contain *only* dots or spaces, and it cannot contain the following characters: `\" / \\ [ ] : ; | = , + * ? < > @`.\n\nExamples of acceptable values \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/configure-pod-container/configure-runasusername.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-runasusername.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure RunAsUserName for Windows pods and containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-the-username-for-a-pod",
      "type": "concept",
      "title": "Set the Username for a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-runasusername.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
          "line_start": 663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-the-username-for-a-container",
      "type": "concept",
      "title": "Set the Username for a Container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-runasusername.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
          "line_start": 1898,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:windows-username-limitations",
      "type": "concept",
      "title": "Windows Username limitations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-runasusername.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
          "line_start": 3300,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/share-process-namespace",
      "type": "page",
      "title": "Share Process Namespace between Containers in a Pod",
      "summary": "",
      "body": "\n\nThis page shows how to configure process namespace sharing for a pod. When\nprocess namespace sharing is enabled, processes in a container are visible\nto all other containers in the same pod.\n\nYou can use this feature to configure cooperating containers, such as a log\nhandler sidecar container, or to troubleshoot container images that don't\ninclude debugging utilities like a shell.\n\n## \n\n\n\n\n\n## Configure a Pod\n\nProcess namespace sharing is enabled using the `shareProcessNamespace` field of\n`.spec` for a Pod. For example:\n\n\n\n1. Create the pod `nginx` on your cluster:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/pods/share-process-namespace.yaml\n   ```\n\n1. Attach to the `shell` container and run `ps`:\n\n   ```shell\n   kubectl exec -it nginx -c shell -- /bin/sh\n   ```\n\n   If you don't see a command prompt, try pressing enter. In the container shell:\n\n   ```shell\n   # run this inside the \"shell\" container\n   ps ax\n   ```\n\n   The output is similar to this:\n\n   ```none\n   PID   USER     TIME  COMMAND\n       1 root      0:00 /pause\n       8 root      0:00 nginx: master process nginx -g daemon off;\n      14 101       0:00 nginx: worker process\n      15 root      0:00 sh\n      21 root      0:00 ps ax\n   ```\n\nYou can signal processes in other containers. For example, send `SIGHUP` to\n`nginx` to restart the worker process. This requires the `SYS_PTRACE` capability.\n\n```shell\n# run this inside the \"shell\" container\nkill -HUP 8   # change \"8\" to match the PID of the nginx leader process, if necessary\nps ax\n```\n\nThe output is similar to this:\n\n```none\nPID   USER     TIME  COMMAND\n    1 root      0:00 /pause\n    8 root      0:00 nginx: master process nginx -g daemon off;\n   15 root      0:00 sh\n   22 101       0:00 nginx: worker process\n   23 root      0:00 ps ax\n```\n\nIt's even possible to access the file system of another container using the\n`/proc/$pid/root` link.\n\n```shell\n# run this inside the \"shell\" container\n# change \"8\" to the PID of the Nginx process, if necessary\nhead /proc/8/root/etc/nginx/nginx.conf\n```\n\nThe output is similar to this:\n\n```none\nuser  nginx;\nworker_processes  1;\n\nerror_log  /var/log/nginx/error.log warn;\npid        /var/run/nginx.pid;\n\n\nevents {\n    worker_connections  1024;\n```\n\n\n\n## Understanding process namespace sharing\n\nPods share many resources so it makes sense they would also share a process\nnamespace. Some containers may expect to be isolated from others, though,\nso it's important to understand the differences:\n\n1. **The container process no longer has PID 1.** Some containers refuse\n   to start without PID 1 (for example, containers using `systemd`) or run\n   commands like `kill -HUP 1` to signal the container process. In pods with a\n   shared process namespace, `kill -HUP 1` will signal the pod sandbox\n   (`/pause` in the above example).\n\n1. **Processes are visible to other containers in the pod.** This includes all\n   information visible in `/proc`, such as passwords that were passed as arguments\n   or environment variables. These are protected only by regular Unix permissions.\n\n1. **Container filesystems are visible to other containers in the pod through the\n   `/proc/$pid/root` link.** This makes debugging easier, but it also means\n   that filesystem secrets are protected only by filesystem permissions.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/",
      "meta": {
        "weight": 200,
        "rel_path": "tasks/configure-pod-container/share-process-namespace.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/share-process-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": "Share Process Namespace between Containers in a Pod"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-a-pod",
      "type": "concept",
      "title": "Configure a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/share-process-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/",
          "line_start": 501,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-process-namespace-sharing",
      "type": "concept",
      "title": "Understanding process namespace sharing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/share-process-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/",
          "line_start": 2429,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/_index",
      "type": "page",
      "title": "Configure Pods and Containers",
      "summary": "Perform common configuration tasks for Pods and containers.",
      "body": "Configure Pods and Containers to ensure they have the necessary resources and settings.\n\n**Why it matters**\nProper configuration is crucial for pod and container performance, security, and reliability.\n\n**Key facts**\n- Pods and containers can be configured with various settings, such as environment variables and resource requests.\n- Incorrect configuration can lead to issues like resource starvation or security vulnerabilities.\n\n**Common pitfalls**\n- Insufficient resources allocated to pods and containers can cause performance degradation.\n- Inadequate security settings can expose sensitive data or allow unauthorized access.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/configure-pod-container/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/_index.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Pods and Containers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "type": "page",
      "title": "Assign Pod-level CPU and memory resources",
      "summary": "",
      "body": "\n\n\n\nThis page shows how to specify CPU and memory resources for a Pod at pod-level in\naddition to container-level resource specifications. A Kubernetes node allocates\nresources to a pod based on the pod's resource requests. These requests can be\ndefined at the pod level or individually for containers within the pod. When\nboth are present, the pod-level requests take precedence.\n\nSimilarly, a pod's resource usage is restricted by limits, which can also be set at\nthe pod-level or individually for containers within the pod. Again,\npod-level limits are prioritized when both are present. This allows for flexible\nresource management, enabling you to control resource allocation at both the pod and\ncontainer levels.\n\nIn order to specify the resources at pod-level, it is required to enable\n`PodLevelResources` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/).\n\nFor Pod Level Resources:\n* Priority: When both pod-level and container-level resources are specified,\n  pod-level resources take precedence.\n* QoS: Pod-level resources take precedence in influencing the QoS class of the pod.\n* OOM Score: The OOM score adjustment calculation considers both pod-level and\n  container-level resources.\n* Compatibility: Pod-level resources are designed to be compatible with existing\n  features.\n\n## \n\n\n \n\nThe `PodLevelResources` [feature\ngate](/docs/reference/command-line-tools-reference/feature-gates/) must be enabled\nfor your control plane and for all nodes in your cluster.\n\n## Limitations\n\nFor Kubernetes , pod-level resources have the\nfollowing limitations:\n\n* **Resource Types:** Only CPU, memory and hugepages resources can be specified at pod-level.\n* **Operating System:** Pod-level resources are not supported for Windows\n  pods.\n* **Resource Managers:** The Topology Manager, Memory Manager and CPU Manager\n  support pod-level resources when the `PodLevelResourceManagers` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\n  is enabled. See [Pod-level resource managers](/docs/concepts/workloads/resource-managers/#pod-level-resource-managers)\n  for more details. Without this feature gate enabled, they do not align pods\n  and containers based on pod-level resources.\n* **In-Place Resize:** [In-place resize](/docs/tasks/configure-pod-container/resize-container-resources/)\n  of pod-level resources requires the `InPlacePodLevelResourcesVerticalScaling` feature gate,\n  which is alpha in Kubernetes . For more details, see\n  [Resize Pod CPU and Memory Resources](/docs/tasks/configure-pod-container/resize-pod-resources/).\n\n\n\n## Create a namespace\n\nCreate a namespace so that the resources you create in this exercise are\nisolated from the rest of your cluster.\n\n```shell\nkubectl create namespace pod-resources-example\n```\n\n## Create a pod with memory requests and limits at pod-level\n\nTo specify memory requests for a Pod at pod-level, include the `resources.requests.memory`\nfield in the Pod spec manifest. To specify a memory limit, include `resources.limits.memory`.\n\nIn this exercise, you create a Pod that has one Container. The Pod has a\nmemory request of 100 MiB and a memory limit of 200 MiB. Here's the configuration\nfile for the Pod:\n\n\n\nThe `args` section in the manifest provides arguments for the container when it starts.\nThe `\"--vm-bytes\", \"150M\"` arguments tell the Container to attempt to allocate 150 MiB of memory.\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/resource/pod-level-memory-request-limit.yaml --namespace=pod-resources-example\n```\n\nVerify that the Pod is running:\n\n```shell\nkubectl get pod memory-demo --namespace=pod-resources-example\n```\n\nView detailed information about the Pod:\n\n```shell\nkubectl get pod memory-demo --output=yaml --namespace=pod-resources-example\n```\n\nThe output shows that the Pod has a memory request of 100 MiB\nand a memory limit of 200 MiB.\n\n\n```yaml\n...\nspec:\n  containers:\n  ...\n  resources:\n    requests:\n      memory: 100Mi\n    limits:\n      memory: 2\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/configure-pod-container/assign-pod-level-resources.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": null,
          "line_end": null,
          "quote": "Assign Pod-level CPU and memory resources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-with-memory-requests-and-limits-at-pod-level",
      "type": "concept",
      "title": "Create a pod with memory requests and limits at pod-level",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 3024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-with-cpu-requests-and-limits-at-pod-level",
      "type": "concept",
      "title": "Create a pod with CPU requests and limits at pod-level",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 4756,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-with-resource-requests-and-limits-at-both-pod-level-and-container-level",
      "type": "concept",
      "title": "Create a pod with resource requests and limits at both pod-level and container-level",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 6638,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/assign-resources/access-dra-device-metadata",
      "type": "page",
      "title": "Access DRA Device Metadata",
      "summary": "",
      "body": "\n\n\n\nThis page shows you how to access\n[device metadata](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#device-metadata)\nfrom containers that use _dynamic resource allocation (DRA)_. Device metadata\nlets workloads discover information about allocated devices such as device\nattributes or network interface details — by reading JSON files at\nwell-known paths inside the container.\n\nBefore reading this page, familiarize yourself with\n[Dynamic Resource Allocation (DRA)](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/)\nand how to\n[allocate devices to workloads](/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/).\n\n\n\n## \n\n \n\n* Ensure that your cluster admin has set up DRA, attached devices, and installed\n  drivers. For more information, see\n  [Set Up DRA in a Cluster](/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster).\n* Ensure that the DRA driver deployed in your cluster supports device metadata.\n  Drivers that use the [DRA kubelet plugin](https://pkg.go.dev/k8s.io/dynamic-resource-allocation/kubeletplugin) enable the `EnableDeviceMetadata` and\n  `MetadataVersions` options when starting the plugin. Check the driver's\n  documentation for details.\n\n## Access device metadata with a ResourceClaim {#access-metadata-resourceclaim}\n\nWhen you use a directly referenced ResourceClaim to allocate devices, the\ndevice metadata files appear inside the container at:\n\n```\n/var/run/kubernetes.io/dra-device-attributes/resourceclaims/<claimName>/<requestName>/<driverName>-metadata.json\n```\n\n1. Review the following example manifest:\n\n   \n\n   This manifest creates a ResourceClaim named `gpu-claim` that requests a\n   device from the `gpu.example.com` DeviceClass, and a Pod that reads the\n   device metadata.\n\n1. Create the ResourceClaim and Pod:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/dra/dra-device-metadata-pod.yaml\n   ```\n\n1. After the Pod is running, view the container logs to see the metadata:\n\n   ```shell\n   kubectl logs gpu-metadata-reader\n   ```\n\n   The output is similar to:\n\n   ```\n   === DRA device metadata ===\n   /var/run/kubernetes.io/dra-device-attributes/resourceclaims/gpu-claim/gpu/gpu.example.com-metadata.json\n   {\n     \"kind\": \"DeviceMetadata\",\n     \"apiVersion\": \"metadata.resource.k8s.io/v1alpha1\",\n     ...\n   }\n   ```\n\n1. To inspect the full metadata file, exec into the container:\n\n   ```shell\n   kubectl exec gpu-metadata-reader -- \\\n     cat /var/run/kubernetes.io/dra-device-attributes/resourceclaims/gpu-claim/gpu/gpu.example.com-metadata.json\n   ```\n\n   The output is a JSON object containing device attributes like the model,\n   driver version, and device UUID. See\n   [metadata schema](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#device-metadata-schema)\n   for details on the JSON structure.\n\n## Access device metadata with a ResourceClaimTemplate {#access-metadata-template}\n\nWhen you use a ResourceClaimTemplate, Kubernetes generates a ResourceClaim for\neach Pod. Because the generated claim name is not predictable, the metadata\nfiles appear at a path that uses the Pod's claim reference name instead:\n\n```\n/var/run/kubernetes.io/dra-device-attributes/resourceclaimtemplates/<podClaimName>/<requestName>/<driverName>-metadata.json\n```\n\nThe `<podClaimName>` corresponds to the `name` field in the Pod's\n`spec.resourceClaims[]` entry. The JSON metadata also includes a\n`podClaimName` field that records this mapping.\n\n1. Review the following example manifest:\n\n   \n\n   This manifest creates a ResourceClaimTemplate and a Pod. Each Pod gets its\n   own generated ResourceClaim. The metadata path uses the Pod's claim\n   reference name `my-gpu`.\n\n1. Create the ResourceClaimTemplate and Pod:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/dra/dra-device-metadata-template-pod.yaml\n   ```\n\n1. After the Pod is running, view the metadata:\n\n   ```shell\n   kubectl exec gpu-metadata-template-reader -- \\\n     cat /var/run/kubernetes.io/dra-devic\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": null,
          "line_end": null,
          "quote": "Access DRA Device Metadata"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:access-device-metadata-with-a-resourceclaim-access-metadata-resourceclaim",
      "type": "concept",
      "title": "Access device metadata with a ResourceClaim {#access-metadata-resourceclaim}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 1420,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:access-device-metadata-with-a-resourceclaimtemplate-access-metadata-template",
      "type": "concept",
      "title": "Access device metadata with a ResourceClaimTemplate {#access-metadata-template}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 3087,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:read-metadata-in-your-application-read-metadata-application",
      "type": "concept",
      "title": "Read metadata in your application {#read-metadata-application}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 4396,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clean-up-clean-up",
      "type": "concept",
      "title": "Clean up {#clean-up}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 5604,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:go-applications",
      "type": "concept",
      "title": "Go applications",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 4463,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "type": "page",
      "title": "Set Up DRA in a Cluster",
      "summary": "",
      "body": "\n\n\n\nThis page shows you how to configure _dynamic resource allocation (DRA)_ in a\nKubernetes cluster by enabling API groups and configuring classes of devices.\nThese instructions are for cluster administrators. \n\n\n\n## About DRA {#about-dra}\n\n[definition:dra]\n\nEnsure that you're familiar with how DRA works and with DRA terminology like\n[DeviceClasses](#gloss:deviceclass),\n[ResourceClaims](#gloss:resourceclaim), and\n[ResourceClaimTemplates](#gloss:resourceclaimtemplate).\nFor details, see\n[Dynamic Resource Allocation (DRA)](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/).\n\n\n\n## \n\n \n\n* Directly or indirectly attach devices to your cluster. To avoid potential\n  issues with drivers, wait until you set up the DRA feature for your\n  cluster before you install drivers.\n\n\n\n## Optional: enable additional DRA API groups {#enable-dra}\n\nDRA overall is a stable feature in Kubernetes; however, aspects of it may still be alpha or beta.\nIf you want to use any aspect of DRA that is not yet stable,\nand the associated feature relies on a dedicated API kind,\nthen you must enable the associated alpha or beta API groups.\n\nSome older DRA drivers or workloads might still need the\nv1beta1 API from Kubernetes 1.30 or v1beta2 from Kubernetes 1.32.\nIf and only if support for those is desired, then enable the following\n[API groups](#gloss:api-group):\n\n    * `resource.k8s.io/v1beta1`\n    * `resource.k8s.io/v1beta2`\n\nAlpha features with separate API types need:\n\n   * `resource.k8s.io/v1alpha3`\n\nFor more information, see\n[Enabling or disabling API groups](/docs/reference/using-api/#enabling-or-disabling).\n\n## Verify that DRA is enabled {#verify}\n\nTo verify that the cluster is configured correctly, try to list DeviceClasses:\n\n```shell\nkubectl get deviceclasses\n```\nIf the component configuration was correct, the output is similar to the\nfollowing:\n\n```\nNo resources found\n```\n\nIf DRA isn't correctly configured, the output of the preceding command is\nsimilar to the following:\n   \n```\nerror: the server doesn't have a resource type \"deviceclasses\"\n```\n\nFor example, this can occur when the resource.k8s.io API group was disabled.\nA similar check is applicable to alpha or beta quality top-level types.\n\nTry the following troubleshooting steps:\n\n1. Reconfigure and restart the `kube-apiserver` component.\n\n1. If the complete `.spec.resourceClaims` field gets removed from Pods, or if\n   Pods get scheduled without considering the ResourceClaims, then verify\n   that the `DynamicResourceAllocation` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) is not turned off\n   for kube-apiserver, kube-controller-manager, kube-scheduler or the kubelet.\n\n## Install device drivers {#install-drivers}\n\nAfter you enable DRA for your cluster, you can install the drivers for your\nattached devices. For instructions, check the documentation of your device\nowner or the project that maintains the device drivers. The drivers that you\ninstall must be compatible with DRA.\n\nTo verify that your installed drivers are working as expected, list\nResourceSlices in your cluster:\n\n```shell\nkubectl get resourceslices\n```\nThe output is similar to the following:\n\n```\nNAME                                                  NODE                DRIVER               POOL                             AGE\n00000-driver.example.com-cluster-1-node-1-abcde      cluster-1-node-1    driver.example.com   cluster-1-device-pool-1-r1gc     7s\n00000-driver.example.com-cluster-1-node-2-fghij      cluster-1-node-2    driver.example.com   cluster-1-device-pool-2-446z     8s\n```\n\nTry the following troubleshooting steps:\n\n1. Check the health of the DRA driver and look for error messages about\n   publishing ResourceSlices in its log output. The vendor of the driver\n   may have further instructions about installation and troubleshooting.\n\n## Create DeviceClasses {#create-deviceclasses}\n\nYou can define categories of devices that your application operators can\nclaim in workloads by creating\n[Device\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "Set Up DRA in a Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:about-dra-about-dra",
      "type": "concept",
      "title": "About DRA {#about-dra}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:optional-enable-additional-dra-api-groups-enable-dra",
      "type": "concept",
      "title": "Optional: enable additional DRA API groups {#enable-dra}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 1153,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-that-dra-is-enabled-verify",
      "type": "concept",
      "title": "Verify that DRA is enabled {#verify}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 2011,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-device-drivers-install-drivers",
      "type": "concept",
      "title": "Install device drivers {#install-drivers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 3078,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-deviceclasses-create-deviceclasses",
      "type": "concept",
      "title": "Create DeviceClasses {#create-deviceclasses}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 4234,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "type": "page",
      "title": "Allocate Devices to Workloads with DRA",
      "summary": "",
      "body": "\n\n\n\nThis page shows you how to allocate devices to your Pods by using\n_dynamic resource allocation (DRA)_. These instructions are for workload\noperators. Before reading this page, familiarize yourself with how DRA works and\nwith DRA terminology like\n[ResourceClaims](#gloss:resourceclaim) and\n[ResourceClaimTemplates](#gloss:resourceclaimtemplate).\nFor more information, see\n[Dynamic Resource Allocation (DRA)](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/).\n\n\n\n## About device allocation with DRA {#about-device-allocation-dra}\n\nAs a workload operator, you can _claim_ devices for your workloads by creating\nResourceClaims or ResourceClaimTemplates. When you deploy your workload,\nKubernetes and the device drivers find available devices, allocate them to your\nPods, and place the Pods on nodes that can access those devices.\n\n\n\n## \n\n \n\n* Ensure that your cluster admin has set up DRA, attached devices, and installed\n  drivers. For more information, see\n  [Set Up DRA in a Cluster](/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster).\n\n\n\n## Identify devices to claim {#identify-devices}\n\nYour cluster administrator or the device drivers create\n_[DeviceClasses](#gloss:deviceclass)_ that\ndefine categories of devices. You can claim devices by using\n[cel](#gloss:cel) to filter for specific device properties.\n\nGet a list of DeviceClasses in the cluster:\n\n```shell\nkubectl get deviceclasses\n```\nThe output is similar to the following:\n\n```\nNAME                 AGE\ndriver.example.com   16m\n```\nIf you get a permission error, you might not have access to get DeviceClasses.\nCheck with your cluster administrator or with the driver provider for available\ndevice properties.\n\n## Claim resources {#claim-resources}\n\nYou can request resources from a DeviceClass by using \n[ResourceClaims](#gloss:resourceclaim). To\ncreate a ResourceClaim, do one of the following:\n\n* Manually create a ResourceClaim if you want multiple Pods to share access to\n  the same devices, or if you want a claim to exist beyond the lifetime of a\n  Pod.\n* Use a\n  [ResourceClaimTemplate](#gloss:resourceclaimtemplate)\n  to let Kubernetes generate and manage per-Pod ResourceClaims. Create a\n  ResourceClaimTemplate if you want every Pod to have access to separate devices\n  that have similar configurations. For example, you might want simultaneous\n  access to devices for Pods in a Job that uses\n  [parallel execution](/docs/concepts/workloads/controllers/job/#parallel-jobs).\n\nIf you directly reference a specific ResourceClaim in a Pod, that ResourceClaim\nmust already exist in the cluster. If a referenced ResourceClaim doesn't exist,\nthe Pod remains in a pending state until the ResourceClaim is created. You can\nreference an auto-generated ResourceClaim in a Pod, but this isn't recommended\nbecause auto-generated ResourceClaims are bound to the lifetime of the Pod that\ntriggered the generation.\n\nTo create a workload that claims resources, select one of the following options:\n\n\n\n\nReview the following example manifest: \n\n\n\nThis manifest creates a ResourceClaimTemplate that requests devices in the\n`example-device-class` DeviceClass that match both of the following parameters:\n\n  * Devices that have a `driver.example.com/type` attribute with a value of\n    `gpu`.\n  * Devices that have `64Gi` of capacity.\n\nTo create the ResourceClaimTemplate, run the following command:\n\n```shell\nkubectl apply -f https://k8s.io/examples/dra/resourceclaimtemplate.yaml\n```\n\n\n\n\nReview the following example manifest:\n\n\n\nThis manifest creates ResourceClaim that requests devices in the\n`example-device-class` DeviceClass that match both of the following parameters:\n\n  * Devices that have a `driver.example.com/type` attribute with a value of\n    `gpu`.\n  * Devices that have `64Gi` of capacity.\n\nTo create the ResourceClaim, run the following command:\n\n```shell\nkubectl apply -f https://k8s.io/examples/dra/resourceclaim.yaml\n```\n\n\n\n\n## Request devices in workloads using DRA {#request-devices-work\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": null,
          "line_end": null,
          "quote": "Allocate Devices to Workloads with DRA"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:about-device-allocation-with-dra-about-device-allocation-dra",
      "type": "concept",
      "title": "About device allocation with DRA {#about-device-allocation-dra}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 642,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:identify-devices-to-claim-identify-devices",
      "type": "concept",
      "title": "Identify devices to claim {#identify-devices}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 1371,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claim-resources-claim-resources",
      "type": "concept",
      "title": "Claim resources {#claim-resources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 2057,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:request-devices-in-workloads-using-dra-request-devices-workloads",
      "type": "concept",
      "title": "Request devices in workloads using DRA {#request-devices-workloads}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 4595,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configure-pod-container/assign-resources/_index",
      "type": "page",
      "title": "Assign Devices to Pods and Containers",
      "summary": "Assign infrastructure resources to your Kubernetes workloads.",
      "body": "Assign devices to Pods and Containers for efficient resource utilization.\n\n**Why it matters**\nProper device assignment ensures optimal performance, security, and reliability of pods and containers.\n\n**Key facts**\n- Devices can be assigned to pods and containers using various methods, such as hostPath or persistent volumes.\n- Incorrect device assignment can lead to issues like resource contention or data corruption.\n\n**Common pitfalls**\n- Insufficient device allocation can cause performance bottlenecks or data loss.\n- Inadequate security settings for assigned devices can expose sensitive data or allow unauthorized access.\n\n**Related**\nConfigure Pods and Containers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/configure-pod-container/assign-resources/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/_index.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Assign Devices to Pods and Containers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/manage-hugepages/scheduling-hugepages",
      "type": "page",
      "title": "Manage HugePages",
      "summary": "Configure and manage huge pages as a schedulable resource in a cluster.",
      "body": "\n\n\nKubernetes supports the allocation and consumption of pre-allocated huge pages\nby applications in a Pod. This page describes how users can consume huge pages.\n\n## \n\nKubernetes nodes must\n[pre-allocate huge pages](https://www.kernel.org/doc/html/latest/admin-guide/mm/hugetlbpage.html)\nin order for the node to report its huge page capacity.\n\nA node can pre-allocate huge pages for multiple sizes, for instance,\nthe following line in `/etc/default/grub` allocates `2*1GiB` of 1 GiB\nand `512*2 MiB` of 2 MiB pages:\n\n```\nGRUB_CMDLINE_LINUX=\"hugepagesz=1G hugepages=2 hugepagesz=2M hugepages=512\"\n```\n\nThe nodes will automatically discover and report all huge page resources as\nschedulable resources.\n\nWhen you describe the Node, you should see something similar to the following\nin the following in the `Capacity` and `Allocatable` sections:\n\n```\nCapacity:\n  cpu:                ...\n  ephemeral-storage:  ...\n  hugepages-1Gi:      2Gi\n  hugepages-2Mi:      1Gi\n  memory:             ...\n  pods:               ...\nAllocatable:\n  cpu:                ...\n  ephemeral-storage:  ...\n  hugepages-1Gi:      2Gi\n  hugepages-2Mi:      1Gi\n  memory:             ...\n  pods:               ...\n```\n\n\n> **Note:** For dynamically allocated pages (after boot), the Kubelet needs to be restarted\nfor the new allocations to be refrelected.\n\n\n\n\n## API\n\nHuge pages can be consumed via container level resource requirements using the\nresource name `hugepages-<size>`, where `<size>` is the most compact binary\nnotation using integer values supported on a particular node. For example, if a\nnode supports 2048KiB and 1048576KiB page sizes, it will expose a schedulable\nresources `hugepages-2Mi` and `hugepages-1Gi`. Unlike CPU or memory, huge pages\ndo not support overcommit. Note that when requesting hugepage resources, either\nmemory or CPU resources must be requested as well.\n\nA pod may consume multiple huge page sizes in a single pod spec. In this case it\nmust use `medium: HugePages-<hugepagesize>` notation for all volume mounts.\n\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: huge-pages-example\nspec:\n  containers:\n  - name: example\n    image: fedora:latest\n    command:\n    - sleep\n    - inf\n    volumeMounts:\n    - mountPath: /hugepages-2Mi\n      name: hugepage-2mi\n    - mountPath: /hugepages-1Gi\n      name: hugepage-1gi\n    resources:\n      limits:\n        hugepages-2Mi: 100Mi\n        hugepages-1Gi: 2Gi\n        memory: 100Mi\n      requests:\n        memory: 100Mi\n  volumes:\n  - name: hugepage-2mi\n    emptyDir:\n      medium: HugePages-2Mi\n  - name: hugepage-1gi\n    emptyDir:\n      medium: HugePages-1Gi\n```\n\nA pod may use `medium: HugePages` only if it requests huge pages of one size.\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: huge-pages-example\nspec:\n  containers:\n  - name: example\n    image: fedora:latest\n    command:\n    - sleep\n    - inf\n    volumeMounts:\n    - mountPath: /hugepages\n      name: hugepage\n    resources:\n      limits:\n        hugepages-2Mi: 100Mi\n        memory: 100Mi\n      requests:\n        memory: 100Mi\n  volumes:\n  - name: hugepage\n    emptyDir:\n      medium: HugePages\n```\n\n- Huge page requests must equal the limits. This is the default if limits are\n  specified, but requests are not.\n- Huge pages are isolated at a container scope, so each container has own\n  limit on their cgroup sandbox as requested in a container spec.\n- EmptyDir volumes backed by huge pages may not consume more huge page memory\n  than the pod request.\n- Applications that consume huge pages via `shmget()` with `SHM_HUGETLB` must\n  run with a supplemental group that matches `proc/sys/vm/hugetlb_shm_group`.\n- Huge page usage in a namespace is controllable via ResourceQuota similar\n  to other compute resources like `cpu` or `memory` using the `hugepages-<size>`\n  token.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/manage-hugepages/scheduling-hugepages.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-hugepages/scheduling-hugepages.md",
          "url": "https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/",
          "line_start": null,
          "line_end": null,
          "quote": "Manage HugePages"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api",
      "type": "concept",
      "title": "API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-hugepages/scheduling-hugepages.md",
          "url": "https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/",
          "line_start": 1454,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/change-pv-access-mode-readwriteoncepod",
      "type": "page",
      "title": "Change the Access Mode of a PersistentVolume to ReadWriteOncePod",
      "summary": "",
      "body": "\n\nThis page shows how to change the access mode on an existing PersistentVolume to\nuse `ReadWriteOncePod`.\n\n## \n\n \n\n\n> **Note:** The `ReadWriteOncePod` access mode graduated to stable in the Kubernetes v1.29\nrelease. If you are running a version of Kubernetes older than v1.29, you might\nneed to enable a feature gate. Check the documentation for your version of\nKubernetes.\n\n\n\n> **Note:** The `ReadWriteOncePod` access mode is only supported for\n volumes.\nTo use this volume access mode you will need to update the following\n[CSI sidecars](https://kubernetes-csi.github.io/docs/sidecar-containers.html)\nto these versions or greater:\n\n* [csi-provisioner:v3.0.0+](https://github.com/kubernetes-csi/external-provisioner/releases/tag/v3.0.0)\n* [csi-attacher:v3.3.0+](https://github.com/kubernetes-csi/external-attacher/releases/tag/v3.3.0)\n* [csi-resizer:v1.3.0+](https://github.com/kubernetes-csi/external-resizer/releases/tag/v1.3.0)\n\n\n## Why should I use `ReadWriteOncePod`?\n\nPrior to Kubernetes v1.22, the `ReadWriteOnce` access mode was commonly used to\nrestrict PersistentVolume access for workloads that required single-writer\naccess to storage. However, this access mode had a limitation: it restricted\nvolume access to a single *node*, allowing multiple pods on the same node to\nread from and write to the same volume simultaneously. This could pose a risk\nfor applications that demand strict single-writer access for data safety.\n\nIf ensuring single-writer access is critical for your workloads, consider\nmigrating your volumes to `ReadWriteOncePod`.\n\n\n\n## Migrating existing PersistentVolumes\n\nIf you have existing PersistentVolumes, they can be migrated to use\n`ReadWriteOncePod`. Only migrations from `ReadWriteOnce` to `ReadWriteOncePod`\nare supported.\n\nIn this example, there is already a `ReadWriteOnce` \"cat-pictures-pvc\"\nPersistentVolumeClaim that is bound to a \"cat-pictures-pv\" PersistentVolume,\nand a \"cat-pictures-writer\" Deployment that uses this PersistentVolumeClaim.\n\n\n> **Note:** If your storage plugin supports\n[Dynamic provisioning](/docs/concepts/storage/dynamic-provisioning/),\nthe \"cat-pictures-pv\" will be created for you, but its name may differ. To get\nyour PersistentVolume's name run:\n\n```shell\nkubectl get pvc cat-pictures-pvc -o jsonpath='{.spec.volumeName}'\n```\n\n\nAnd you can view the PVC before you make changes. Either view the manifest\nlocally, or run `kubectl get pvc <name-of-pvc> -o yaml`. The output is similar\nto:\n\n```yaml\n# cat-pictures-pvc.yaml\nkind: PersistentVolumeClaim\napiVersion: v1\nmetadata:\n  name: cat-pictures-pvc\nspec:\n  accessModes:\n  - ReadWriteOnce\n  resources:\n    requests:\n      storage: 1Gi\n```\n\nHere's an example Deployment that relies on that PersistentVolumeClaim:\n\n```yaml\n# cat-pictures-writer-deployment.yaml\napiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: cat-pictures-writer\nspec:\n  replicas: 3\n  selector:\n    matchLabels:\n      app: cat-pictures-writer\n  template:\n    metadata:\n      labels:\n        app: cat-pictures-writer\n    spec:\n      containers:\n      - name: nginx\n        image: nginx:1.14.2\n        ports:\n        - containerPort: 80\n        volumeMounts:\n        - name: cat-pictures\n          mountPath: /mnt\n      volumes:\n      - name: cat-pictures\n        persistentVolumeClaim:\n          claimName: cat-pictures-pvc\n          readOnly: false\n```\n\nAs a first step, you need to edit your PersistentVolume's\n`spec.persistentVolumeReclaimPolicy` and set it to `Retain`. This ensures your\nPersistentVolume will not be deleted when you delete the corresponding\nPersistentVolumeClaim:\n\n```shell\nkubectl patch pv cat-pictures-pv -p '{\"spec\":{\"persistentVolumeReclaimPolicy\":\"Retain\"}}'\n```\n\nNext you need to stop any workloads that are using the PersistentVolumeClaim\nbound to the PersistentVolume you want to migrate, and then delete the\nPersistentVolumeClaim. Avoid making any other changes to the\nPersistentVolumeClaim, such as volume resizes, until after the migration is\ncomplete.\n\nOnce that is done, you \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-access-mode-readwriteoncepod/",
      "meta": {
        "weight": 90,
        "rel_path": "tasks/administer-cluster/change-pv-access-mode-readwriteoncepod.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-access-mode-readwriteoncepod.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-access-mode-readwriteoncepod/",
          "line_start": null,
          "line_end": null,
          "quote": "Change the Access Mode of a PersistentVolume to ReadWriteOncePod"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-should-i-use-readwriteoncepod",
      "type": "concept",
      "title": "Why should I use `ReadWriteOncePod`?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-access-mode-readwriteoncepod.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-access-mode-readwriteoncepod/",
          "line_start": 1122,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-existing-persistentvolumes",
      "type": "concept",
      "title": "Migrating existing PersistentVolumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-access-mode-readwriteoncepod.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-access-mode-readwriteoncepod/",
          "line_start": 1762,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/safely-drain-node",
      "type": "page",
      "title": "Safely Drain a Node",
      "summary": "",
      "body": "\nThis page shows how to safely drain a [node](#gloss:node),\noptionally respecting the PodDisruptionBudget you have defined.\n\n## \n\nThis task assumes that you have met the following prerequisites:\n  1. You do not require your applications to be highly available during the\n     node drain, or\n  1. You have read about the [PodDisruptionBudget](/docs/concepts/workloads/pods/disruptions/) concept,\n     and have [configured PodDisruptionBudgets](/docs/tasks/run-application/configure-pdb/) for\n     applications that need them.\n\n\n\n## (Optional) Configure a disruption budget {#configure-poddisruptionbudget}\n\nTo ensure that your workloads remain available during maintenance, you can\nconfigure a [PodDisruptionBudget](/docs/concepts/workloads/pods/disruptions/).\n\nIf availability is important for any applications that run or could run on the node(s)\nthat you are draining, [configure a PodDisruptionBudgets](/docs/tasks/run-application/configure-pdb/)\nfirst and then continue following this guide.\n\nIt is recommended to set `AlwaysAllow` [Unhealthy Pod Eviction Policy](/docs/tasks/run-application/configure-pdb/#unhealthy-pod-eviction-policy)\nto your PodDisruptionBudgets to support eviction of misbehaving applications during a node drain.\nThe default behavior is to wait for the application pods to become [healthy](/docs/tasks/run-application/configure-pdb/#healthiness-of-a-pod)\nbefore the drain can proceed.\n\n## Use `kubectl drain` to remove a node from service\n\nYou can use `kubectl drain` to safely evict all of your pods from a\nnode before you perform maintenance on the node (e.g. kernel upgrade,\nhardware maintenance, etc.). Safe evictions allow the pod's containers\nto [gracefully terminate](/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination)\nand will respect the PodDisruptionBudgets you have specified.\n\n\n> **Note:** By default `kubectl drain` ignores certain system pods on the node\nthat cannot be killed; see\nthe [kubectl drain](/docs/reference/generated/kubectl/kubectl-commands/#drain)\ndocumentation for more details.\n\n\nWhen `kubectl drain` returns successfully, that indicates that all of\nthe pods (except the ones excluded as described in the previous paragraph)\nhave been safely evicted (respecting the desired graceful termination period,\nand respecting the PodDisruptionBudget you have defined). It is then safe to\nbring down the node by powering down its physical machine or, if running on a\ncloud platform, deleting its virtual machine.\n\n\n> **Note:** If any new Pods tolerate the `node.kubernetes.io/unschedulable` taint, then those Pods\nmight be scheduled to the node you have drained. Avoid tolerating that taint other than\nfor DaemonSets.\n\nIf you or another API user directly set the [`nodeName`](/docs/concepts/scheduling-eviction/assign-pod-node/#nodename)\nfield for a Pod (bypassing the scheduler), then the Pod is bound to the specified node\nand will run there, even though you have drained that node and marked it unschedulable.\n\n\nFirst, identify the name of the node you wish to drain. You can list all of the nodes in your cluster with\n\n```shell\nkubectl get nodes\n```\n\nNext, tell Kubernetes to drain the node:\n\n```shell\nkubectl drain --ignore-daemonsets <node name>\n```\n\nIf there are pods managed by a DaemonSet, you will need to specify\n`--ignore-daemonsets` with `kubectl` to successfully drain the node. The `kubectl drain` subcommand on its own does not actually drain\na node of its DaemonSet pods:\nthe DaemonSet controller (part of the control plane) immediately replaces missing Pods with\nnew equivalent Pods. The DaemonSet controller also creates Pods that ignore unschedulable\ntaints, which allows the new Pods to launch onto a node that you are draining.\n\nOnce it returns (without giving an error), you can power down the node\n(or equivalently, if on a cloud platform, delete the virtual machine backing the node).\nIf you leave the node in the cluster during the maintenance operation, you need to run\n\n```shell\nkubectl uncordon <node name>\n```\naf\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
      "meta": {
        "weight": 310,
        "rel_path": "tasks/administer-cluster/safely-drain-node.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": null,
          "line_end": null,
          "quote": "Safely Drain a Node"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:optional-configure-a-disruption-budget-configure-poddisruptionbudget",
      "type": "concept",
      "title": "(Optional) Configure a disruption budget {#configure-poddisruptionbudget}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 623,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-kubectl-drain-to-remove-a-node-from-service",
      "type": "concept",
      "title": "Use `kubectl drain` to remove a node from service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 1508,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:draining-multiple-nodes-in-parallel",
      "type": "concept",
      "title": "Draining multiple nodes in parallel",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 4204,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-eviction-api-eviction-api",
      "type": "concept",
      "title": "The Eviction API {#eviction-api}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 5234,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/node-overprovisioning",
      "type": "page",
      "title": "Overprovision Node Capacity For A Cluster",
      "summary": "",
      "body": "\n\nThis page guides you through configuring [Node](#gloss:node)\noverprovisioning in your Kubernetes cluster. Node overprovisioning is a strategy that proactively\nreserves a portion of your cluster's compute resources. This reservation helps reduce the time\nrequired to schedule new pods during scaling events, enhancing your cluster's responsiveness\nto sudden spikes in traffic or workload demands.\n\nBy maintaining some unused capacity, you ensure that resources are immediately available when\nnew pods are created, preventing them from entering a pending state while the cluster scales up.\n\n## \n\n- You need to have a Kubernetes cluster, and the kubectl command-line tool must be configured to communicate with\n  your cluster.\n- You should already have a basic understanding of\n  [Deployments](/docs/concepts/workloads/controllers/deployment/),\n  Pod [priority](#gloss:pod-priority),\n  and [PriorityClasses](#gloss:priority-class).\n- Your cluster must be set up with an [autoscaler](/docs/concepts/cluster-administration/cluster-autoscaling/)\n  that manages nodes based on demand.\n\n\n\n## Create a PriorityClass\n\nBegin by defining a PriorityClass for the placeholder Pods. First, create a PriorityClass with a\nnegative priority value, that you will shortly assign to the placeholder pods.\nLater, you will set up a Deployment that uses this PriorityClass\n\n\n\nThen create the PriorityClass:\n\n```shell\nkubectl apply -f https://k8s.io/examples/priorityclass/low-priority-class.yaml\n```\n\nYou will next define a Deployment that uses the negative-priority PriorityClass and runs a minimal container.\nWhen you add this to your cluster, Kubernetes runs those placeholder pods to reserve capacity. Any time there\nis a capacity shortage, the control plane will pick one these placeholder pods as the first candidate to\n[preempt](#gloss:preemption).\n\n## Run Pods that request node capacity\n\nReview the sample manifest:\n\n\n\n### Pick a namespace for the placeholder pods\n\nYou should select, or create, a [namespace](#gloss:namespace)\nthat the placeholder Pods will go into.\n\n### Create the placeholder deployment\n\nCreate a Deployment based on that manifest:\n\n```shell\n# Change the namespace name \"example\"\nkubectl --namespace example apply -f https://k8s.io/examples/deployments/deployment-with-capacity-reservation.yaml\n```\n\n## Adjust placeholder resource requests\n\nConfigure the resource requests and limits for the placeholder pods to define the amount of overprovisioned resources you want to maintain. This reservation ensures that a specific amount of CPU and memory is kept available for new pods.\n\nTo edit the Deployment, modify the `resources` section in the Deployment manifest file\nto set appropriate requests and limits. You can download that file locally and then edit it\nwith whichever text editor you prefer.\n\nYou can also edit the Deployment using kubectl:\n\n```shell\nkubectl edit deployment capacity-reservation\n```\n\nFor example, to reserve a total of a 0.5 CPU and 1GiB of memory across 5 placeholder pods,\ndefine the resource requests and limits for a single placeholder pod as follows:\n\n```yaml\n  resources:\n    requests:\n      cpu: \"100m\"\n      memory: \"200Mi\"\n    limits:\n      cpu: \"100m\"\n```\n\n## Set the desired replica count\n\n### Calculate the total reserved resources\n\n\nFor example, with 5 replicas each reserving 0.1 CPU and 200MiB of memory:  \nTotal CPU reserved: 5 × 0.1 = 0.5 (in the Pod specification, you'll write the quantity `500m`)  \nTotal memory reserved: 5 × 200MiB = 1GiB (in the Pod specification, you'll write `1 Gi`)  \n\nTo scale the Deployment, adjust the number of replicas based on your cluster's size and expected workload:\n\n```shell\nkubectl scale deployment capacity-reservation --replicas=5\n```\n\nVerify the scaling:\n\n```shell\nkubectl get deployment capacity-reservation\n```\n\nThe output should reflect the updated number of replicas:\n\n```none\nNAME                   READY   UP-TO-DATE   AVAILABLE   AGE\ncapacity-reservation   5/5     5            5           2m\n```\n\n\n> **Not\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/administer-cluster/node-overprovisioning.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": null,
          "line_end": null,
          "quote": "Overprovision Node Capacity For A Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-priorityclass",
      "type": "concept",
      "title": "Create a PriorityClass",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 1242,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:run-pods-that-request-node-capacity",
      "type": "concept",
      "title": "Run Pods that request node capacity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 2106,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adjust-placeholder-resource-requests",
      "type": "concept",
      "title": "Adjust placeholder resource requests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 2705,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-the-desired-replica-count",
      "type": "concept",
      "title": "Set the desired replica count",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 3595,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pick-a-namespace-for-the-placeholder-pods",
      "type": "concept",
      "title": "Pick a namespace for the placeholder pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 2273,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-the-placeholder-deployment",
      "type": "concept",
      "title": "Create the placeholder deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 2454,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:calculate-the-total-reserved-resources",
      "type": "concept",
      "title": "Calculate the total reserved resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 3629,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubelet-config-file",
      "type": "page",
      "title": "Set Kubelet Parameters Via A Configuration File",
      "summary": "",
      "body": "## \n\nSome steps in this page use the `jq` tool. If you don't have `jq`, you can\ninstall it via your operating system's software sources, or fetch it from\n[https://jqlang.github.io/jq/](https://jqlang.github.io/jq/).\n\nSome steps also involve installing `curl`, which can be installed via your\noperating system's software sources.\n\n\n\n\nA subset of the kubelet's configuration parameters may be\nset via an on-disk config file, as a substitute for command-line flags.\n\nProviding parameters via a config file is the recommended approach because\nit simplifies node deployment and configuration management.\n\n\n\n## Create the config file\n\nThe subset of the kubelet's configuration that can be configured via a file\nis defined by the\n[`KubeletConfiguration`](/docs/reference/config-api/kubelet-config.v1beta1/)\nstruct.\n\nThe configuration file must be a JSON or YAML representation of the parameters\nin this struct. Make sure the kubelet has read permissions on the file.\n\nHere is an example of what this file might look like:\n\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\naddress: \"192.168.0.8\"\nport: 20250\nserializeImagePulls: false\nevictionHard:\n    memory.available:  \"100Mi\"\n    nodefs.available:  \"10%\"\n    nodefs.inodesFree: \"5%\"\n    imagefs.available: \"15%\"\n    imagefs.inodesFree: \"5%\"\n```\n\nIn this example, the kubelet is configured with the following settings:\n\n1. `address`: The kubelet will serve on IP address `192.168.0.8`.\n1. `port`: The kubelet will serve on port `20250`.\n1. `serializeImagePulls`: Image pulls will be done in parallel.\n1. `evictionHard`: The kubelet will evict Pods under one of the following conditions:\n\n   - When the node's available memory drops below 100MiB.\n   - When the node's main filesystem's available space is less than 10%.\n   - When the image filesystem's available space is less than 15%.\n   - When more than 95% of the node's main filesystem's inodes are in use.\n\n\n> **Note:** In the example, by changing the default value of only one parameter for\nevictionHard, the default values of other parameters will not be inherited and\nwill be set to zero. In order to provide custom values, you should provide all\nthe threshold values respectively.\nAlternatively, you can set the MergeDefaultEvictionSettings to true in the kubelet\nconfiguration file, if any parameter is changed then the other parameters will inherit\ntheir default values instead of 0.\n\n\nThe `imagefs` is an optional filesystem that container runtimes use to store container\nimages and container writable layers.\n\n## Start a kubelet process configured via the config file\n\n\n> **Note:** If you use kubeadm to initialize your cluster, use the kubelet-config while creating your cluster with `kubeadm init`.\nSee [configuring kubelet using kubeadm](/docs/setup/production-environment/tools/kubeadm/kubelet-integration/) for details.\n\n\nStart the kubelet with the `--config` flag set to the path of the kubelet's config file.\nThe kubelet will then load its config from this file.\n\nNote that command line flags which target the same value as a config file will override that value.\nThis helps ensure backwards compatibility with the command-line API.\n\nNote that relative file paths in the kubelet config file are resolved relative to the\nlocation of the kubelet config file, whereas relative paths in command line flags are resolved\nrelative to the kubelet's current working directory.\n\nNote that some default values differ between command-line flags and the kubelet config file.\nIf `--config` is provided and the values are not specified via the command line, the\ndefaults for the `KubeletConfiguration` version apply.\nIn the above example, this version is `kubelet.config.k8s.io/v1beta1`.\n\n## Drop-in directory for kubelet configuration files {#kubelet-conf-d}\n\nYou can specify a drop-in configuration directory for the kubelet. By default, the kubelet does not look\nfor drop-in configuration files anywhere - you must specify a path.\nFor example: `--config-dir=/etc/kubern\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
      "meta": {
        "weight": 330,
        "rel_path": "tasks/administer-cluster/kubelet-config-file.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": null,
          "line_end": null,
          "quote": "Set Kubelet Parameters Via A Configuration File"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-the-config-file",
      "type": "concept",
      "title": "Create the config file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:start-a-kubelet-process-configured-via-the-config-file",
      "type": "concept",
      "title": "Start a kubelet process configured via the config file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 2622,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:drop-in-directory-for-kubelet-configuration-files-kubelet-conf-d",
      "type": "concept",
      "title": "Drop-in directory for kubelet configuration files {#kubelet-conf-d}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 3806,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:viewing-the-kubelet-configuration",
      "type": "concept",
      "title": "Viewing the kubelet configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 6265,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-configuration-merging-order",
      "type": "concept",
      "title": "Kubelet configuration merging order",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 5383,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "type": "page",
      "title": "Autoscale the DNS Service in a Cluster",
      "summary": "",
      "body": "\nThis page shows how to enable and configure autoscaling of the DNS service in\nyour Kubernetes cluster.\n\n\n## \n\n\n*  \n\n* This guide assumes your nodes use the AMD64 or Intel 64 CPU architecture.\n\n* Make sure [Kubernetes DNS](/docs/concepts/services-networking/dns-pod-service/) is enabled.\n\n\n\n\n\n## Determine whether DNS horizontal autoscaling is already enabled {#determining-whether-dns-horizontal-autoscaling-is-already-enabled}\n\nList the [Deployments](#gloss:deployment)\nin your cluster in the kube-system [namespace](#gloss:namespace):\n\n```shell\nkubectl get deployment --namespace=kube-system\n```\n\nThe output is similar to this:\n\n    NAME                   READY   UP-TO-DATE   AVAILABLE   AGE\n    ...\n    kube-dns-autoscaler    1/1     1            1           ...\n    ...\n\nIf you see \"kube-dns-autoscaler\" in the output, DNS horizontal autoscaling is\nalready enabled, and you can skip to\n[Tuning autoscaling parameters](#tuning-autoscaling-parameters).\n\n## Get the name of your DNS Deployment {#find-scaling-target}\n\nList the DNS deployments in your cluster in the kube-system namespace:\n\n```shell\nkubectl get deployment -l k8s-app=kube-dns --namespace=kube-system\n```\n\nThe output is similar to this:\n\n    NAME      READY   UP-TO-DATE   AVAILABLE   AGE\n    ...\n    coredns   2/2     2            2           ...\n    ...\n\nIf you don't see a Deployment for DNS services, you can also look for it by name:\n\n```shell\nkubectl get deployment --namespace=kube-system\n```\n\nand look for a deployment named `coredns` or `kube-dns`.\n\n\nYour scale target is\n\n    Deployment/<your-deployment-name>\n\nwhere `<your-deployment-name>` is the name of your DNS Deployment. For example, if\nthe name of your Deployment for DNS is coredns, your scale target is Deployment/coredns.\n\n\n> **Note:** CoreDNS is the default DNS service for Kubernetes. CoreDNS sets the label\n`k8s-app=kube-dns` so that it can work in clusters that originally used\nkube-dns.\n\n\n## Enable DNS horizontal autoscaling {#enablng-dns-horizontal-autoscaling}\n\nIn this section, you create a new Deployment. The Pods in the Deployment run a\ncontainer based on the `cluster-proportional-autoscaler-amd64` image.\n\nCreate a file named `dns-horizontal-autoscaler.yaml` with this content:\n\n\n\nIn the file, replace `<SCALE_TARGET>` with your scale target.\n\nGo to the directory that contains your configuration file, and enter this\ncommand to create the Deployment:\n\n```shell\nkubectl apply -f dns-horizontal-autoscaler.yaml\n```\n\nThe output of a successful command is:\n\n    deployment.apps/kube-dns-autoscaler created\n\nDNS horizontal autoscaling is now enabled.\n\n## Tune DNS autoscaling parameters {#tuning-autoscaling-parameters}\n\nVerify that the kube-dns-autoscaler [ConfigMap](#gloss:configmap) exists:\n\n```shell\nkubectl get configmap --namespace=kube-system\n```\n\nThe output is similar to this:\n\n    NAME                  DATA      AGE\n    ...\n    kube-dns-autoscaler   1         ...\n    ...\n\nModify the data in the ConfigMap:\n\n```shell\nkubectl edit configmap kube-dns-autoscaler --namespace=kube-system\n```\n\nLook for this line:\n\n```yaml\nlinear: '{\"coresPerReplica\":256,\"min\":1,\"nodesPerReplica\":16}'\n```\n\nModify the fields according to your needs. The \"min\" field indicates the\nminimal number of DNS backends. The actual number of backends is\ncalculated using this equation:\n\n    replicas = max( ceil( cores × 1/coresPerReplica ) , ceil( nodes × 1/nodesPerReplica ) )\n\nNote that the values of both `coresPerReplica` and `nodesPerReplica` are\nfloats.\n\nThe idea is that when a cluster is using nodes that have many cores,\n`coresPerReplica` dominates. When a cluster is using nodes that have fewer\ncores, `nodesPerReplica` dominates.\n\nThere are other supported scaling patterns. For details, see\n[cluster-proportional-autoscaler](https://github.com/kubernetes-sigs/cluster-proportional-autoscaler).\n\n## Disable DNS horizontal autoscaling\n\nThere are a few options for tuning DNS horizontal autoscaling. Which option to\nuse depends on different conditions.\n\n### O\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
      "meta": {
        "weight": 80,
        "rel_path": "tasks/administer-cluster/dns-horizontal-autoscaling.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": null,
          "line_end": null,
          "quote": "Autoscale the DNS Service in a Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:determine-whether-dns-horizontal-autoscaling-is-already-enabled-determining-whether-dns-horizontal-autoscaling-is-already-enabled",
      "type": "concept",
      "title": "Determine whether DNS horizontal autoscaling is already enabled {#determining-whether-dns-horizontal-autoscaling-is-already-enabled}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 419,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-the-name-of-your-dns-deployment-find-scaling-target",
      "type": "concept",
      "title": "Get the name of your DNS Deployment {#find-scaling-target}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 1148,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-dns-horizontal-autoscaling-enablng-dns-horizontal-autoscaling",
      "type": "concept",
      "title": "Enable DNS horizontal autoscaling {#enablng-dns-horizontal-autoscaling}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 2136,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tune-dns-autoscaling-parameters-tuning-autoscaling-parameters",
      "type": "concept",
      "title": "Tune DNS autoscaling parameters {#tuning-autoscaling-parameters}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 2871,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disable-dns-horizontal-autoscaling",
      "type": "concept",
      "title": "Disable DNS horizontal autoscaling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 4141,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-how-dns-horizontal-autoscaling-works",
      "type": "concept",
      "title": "Understanding how DNS horizontal autoscaling works",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 5834,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:option-1-scale-down-the-kube-dns-autoscaler-deployment-to-0-replicas",
      "type": "concept",
      "title": "Option 1: Scale down the kube-dns-autoscaler deployment to 0 replicas",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 4297,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:option-2-delete-the-kube-dns-autoscaler-deployment",
      "type": "concept",
      "title": "Option 2: Delete the kube-dns-autoscaler deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 4908,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:option-3-delete-the-kube-dns-autoscaler-manifest-file-from-the-master-node",
      "type": "concept",
      "title": "Option 3: Delete the kube-dns-autoscaler manifest file from the master node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 5223,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kms-provider",
      "type": "page",
      "title": "Using a KMS provider for data encryption",
      "summary": "",
      "body": "\nThis page shows how to configure a Key Management Service (KMS) provider and plugin to enable secret data encryption.\nIn Kubernetes  there are two versions of KMS at-rest encryption.\nYou should use KMS v2 if feasible because KMS v1 is deprecated (since Kubernetes v1.28) and disabled by default (since Kubernetes v1.29).\nKMS v2 offers significantly better performance characteristics than KMS v1.\n\n\n> **Caution:** This documentation is for the generally available implementation of KMS v2 (and for the\ndeprecated version 1 implementation).\nIf you are using any control plane components older than Kubernetes v1.29, please check\nthe equivalent page in the documentation for the version of Kubernetes that your cluster\nis running. Earlier releases of Kubernetes had different behavior that may be relevant\nfor information security.\n\n\n## \n\n\n\nThe version of Kubernetes that you need depends on which KMS API version\nyou have selected.  Kubernetes recommends using KMS v2.\n\n- If you selected KMS API v1 to support clusters prior to version v1.27\n  or if you have a legacy KMS plugin that only supports KMS v1,\n  any supported Kubernetes version will work.  This API is deprecated as of Kubernetes v1.28.\n  Kubernetes does not recommend the use of this API.\n\n\n\n### KMS v1\n\n\n* Kubernetes version 1.10.0 or later is required\n\n* For version 1.29 and later, the v1 implementation of KMS is disabled by default.\n  To enable the feature, set `--feature-gates=KMSv1=true` to configure a KMS v1 provider.\n\n* Your cluster must use etcd v3 or later\n\n### KMS v2\n\n\n* Your cluster must use etcd v3 or later\n\n\n\n## KMS encryption and per-object encryption keys\n\nThe KMS encryption provider uses an envelope encryption scheme to encrypt data in etcd.\nThe data is encrypted using a data encryption key (DEK).\nThe DEKs are encrypted with a key encryption key (KEK) that is stored and managed in a remote KMS.\n\nIf you use the (deprecated) v1 implementation of KMS, a new DEK is generated for each encryption.\n\nWith KMS v2, a new DEK is generated **per encryption**: the API server uses a\n_key derivation function_ to generate single use data encryption keys from a secret seed\ncombined with some random data.\nThe seed is rotated whenever the KEK is rotated\n(see the _Understanding key_id and Key Rotation_ section below for more details).\n\nThe KMS provider uses gRPC to communicate with a specific KMS plugin over a UNIX domain socket.\nThe KMS plugin, which is implemented as a gRPC server and deployed on the same host(s)\nas the Kubernetes control plane, is responsible for all communication with the remote KMS.\n\n## Configuring the KMS provider\n\nTo configure a KMS provider on the API server, include a provider of type `kms` in the\n`providers` array in the encryption configuration file and set the following properties:\n\n### KMS v1 {#configuring-the-kms-provider-kms-v1}\n\n* `apiVersion`: API Version for KMS provider. Leave this value empty or set it to `v1`.\n* `name`: Display name of the KMS plugin. Cannot be changed once set.\n* `endpoint`: Listen address of the gRPC server (KMS plugin). The endpoint is a UNIX domain socket.\n* `cachesize`: Number of data encryption keys (DEKs) to be cached in the clear.\n  When cached, DEKs can be used without another call to the KMS;\n  whereas DEKs that are not cached require a call to the KMS to unwrap.\n* `timeout`: How long should `kube-apiserver` wait for kms-plugin to respond before\n  returning an error (default is 3 seconds).\n\n### KMS v2 {#configuring-the-kms-provider-kms-v2}\n\n* `apiVersion`: API Version for KMS provider. Set this to `v2`.\n* `name`: Display name of the KMS plugin. Cannot be changed once set.\n* `endpoint`: Listen address of the gRPC server (KMS plugin). The endpoint is a UNIX domain socket.\n* `timeout`: How long should `kube-apiserver` wait for kms-plugin to respond before\n  returning an error (default is 3 seconds).\n\nKMS v2 does not support the `cachesize` property. All data encryption keys (DEKs) will be cached in\nthe clear once the server ha\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
      "meta": {
        "weight": 370,
        "rel_path": "tasks/administer-cluster/kms-provider.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": null,
          "line_end": null,
          "quote": "Using a KMS provider for data encryption"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kms-encryption-and-per-object-encryption-keys",
      "type": "concept",
      "title": "KMS encryption and per-object encryption keys",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 1885,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-the-kms-provider",
      "type": "concept",
      "title": "Configuring the KMS provider",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 2884,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:implementing-a-kms-plugin",
      "type": "concept",
      "title": "Implementing a KMS plugin",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 4537,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:encrypting-your-data-with-the-kms-provider",
      "type": "concept",
      "title": "Encrypting your data with the KMS provider",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 13786,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verifying-that-the-data-is-encrypted",
      "type": "concept",
      "title": "Verifying that the data is encrypted",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 17589,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ensuring-all-secrets-are-encrypted",
      "type": "concept",
      "title": "Ensuring all secrets are encrypted",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 18808,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:switching-from-a-local-encryption-provider-to-the-kms-provider",
      "type": "concept",
      "title": "Switching from a local encryption provider to the KMS provider",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 19347,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kms-v1",
      "type": "concept",
      "title": "KMS v1",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 1411,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kms-v2",
      "type": "concept",
      "title": "KMS v2",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 1754,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kms-v1-configuring-the-kms-provider-kms-v1",
      "type": "concept",
      "title": "KMS v1 {#configuring-the-kms-provider-kms-v1}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 3094,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kms-v2-configuring-the-kms-provider-kms-v2",
      "type": "concept",
      "title": "KMS v2 {#configuring-the-kms-provider-kms-v2}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 3750,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-the-kms-supported-by-your-cloud-provider",
      "type": "concept",
      "title": "Enabling the KMS supported by your cloud provider",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 4797,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:developing-a-kms-plugin-grpc-server",
      "type": "concept",
      "title": "Developing a KMS plugin gRPC server",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 4951,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:integrating-a-kms-plugin-with-the-remote-kms",
      "type": "concept",
      "title": "Integrating a KMS plugin with the remote KMS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 13142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploying-the-kms-plugin",
      "type": "concept",
      "title": "Deploying the KMS plugin",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 13670,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kms-v1-encrypting-your-data-with-the-kms-provider-kms-v1",
      "type": "concept",
      "title": "KMS v1 {#encrypting-your-data-with-the-kms-provider-kms-v1}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 14583,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kms-v2-encrypting-your-data-with-the-kms-provider-kms-v2",
      "type": "concept",
      "title": "KMS v2 {#encrypting-your-data-with-the-kms-provider-kms-v2}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 15189,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/quota-api-object",
      "type": "page",
      "title": "Configure Quotas for API Objects",
      "summary": "",
      "body": "\n\nThis page shows how to configure quotas for API objects, including\nPersistentVolumeClaims and Services. A quota restricts the number of\nobjects, of a particular type, that can be created in a namespace.\nYou specify quotas in a\n[ResourceQuota](/docs/reference/generated/kubernetes-api//#resourcequota-v1-core)\nobject.\n\n\n\n\n## \n\n\n \n\n\n\n\n\n\n## Create a namespace\n\nCreate a namespace so that the resources you create in this exercise are\nisolated from the rest of your cluster.\n\n```shell\nkubectl create namespace quota-object-example\n```\n\n## Create a ResourceQuota\n\nHere is the configuration file for a ResourceQuota object:\n\n\n\nCreate the ResourceQuota:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/quota-objects.yaml --namespace=quota-object-example\n```\n\nView detailed information about the ResourceQuota:\n\n```shell\nkubectl get resourcequota object-quota-demo --namespace=quota-object-example --output=yaml\n```\n\nThe output shows that in the quota-object-example namespace, there can be at most\none PersistentVolumeClaim, at most two Services of type LoadBalancer, and no Services\nof type NodePort.\n\n```yaml\nstatus:\n  hard:\n    persistentvolumeclaims: \"1\"\n    services.loadbalancers: \"2\"\n    services.nodeports: \"0\"\n  used:\n    persistentvolumeclaims: \"0\"\n    services.loadbalancers: \"0\"\n    services.nodeports: \"0\"\n```\n\n## Create a PersistentVolumeClaim\n\nHere is the configuration file for a PersistentVolumeClaim object:\n\n\n\nCreate the PersistentVolumeClaim:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/quota-objects-pvc.yaml --namespace=quota-object-example\n```\n\nVerify that the PersistentVolumeClaim was created:\n\n```shell\nkubectl get persistentvolumeclaims --namespace=quota-object-example\n```\n\nThe output shows that the PersistentVolumeClaim exists and has status Pending:\n\n```\nNAME             STATUS\npvc-quota-demo   Pending\n```\n\n## Attempt to create a second PersistentVolumeClaim\n\nHere is the configuration file for a second PersistentVolumeClaim:\n\n\n\nAttempt to create the second PersistentVolumeClaim:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/quota-objects-pvc-2.yaml --namespace=quota-object-example\n```\n\nThe output shows that the second PersistentVolumeClaim was not created,\nbecause it would have exceeded the quota for the namespace.\n\n```\npersistentvolumeclaims \"pvc-quota-demo-2\" is forbidden:\nexceeded quota: object-quota-demo, requested: persistentvolumeclaims=1,\nused: persistentvolumeclaims=1, limited: persistentvolumeclaims=1\n```\n\n## Notes\n\nThese are the strings used to identify API resources that can be constrained\nby quotas:\n\n<table>\n<tr><th>String</th><th>API Object</th></tr>\n<tr><td>\"pods\"</td><td>Pod</td></tr>\n<tr><td>\"services\"</td><td>Service</td></tr>\n<tr><td>\"replicationcontrollers\"</td><td>ReplicationController</td></tr>\n<tr><td>\"resourcequotas\"</td><td>ResourceQuota</td></tr>\n<tr><td>\"secrets\"</td><td>Secret</td></tr>\n<tr><td>\"configmaps\"</td><td>ConfigMap</td></tr>\n<tr><td>\"persistentvolumeclaims\"</td><td>PersistentVolumeClaim</td></tr>\n<tr><td>\"services.nodeports\"</td><td>Service of type NodePort</td></tr>\n<tr><td>\"services.loadbalancers\"</td><td>Service of type LoadBalancer</td></tr>\n</table>\n\n## Clean up\n\nDelete your namespace:\n\n```shell\nkubectl delete namespace quota-object-example\n```\n\n\n\n## \n\n\n### For cluster administrators\n\n* [Configure Default Memory Requests and Limits for a Namespace](/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/)\n\n* [Configure Default CPU Requests and Limits for a Namespace](/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/)\n\n* [Configure Minimum and Maximum Memory Constraints for a Namespace](/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/)\n\n* [Configure Minimum and Maximum CPU Constraints for a Namespace](/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/)\n\n* [Configure Memory and CPU Quotas for a Namespace](/docs/tasks/administer-cluster/manage-re\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
      "meta": {
        "weight": 130,
        "rel_path": "tasks/administer-cluster/quota-api-object.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Quotas for API Objects"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-resourcequota",
      "type": "concept",
      "title": "Create a ResourceQuota",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 683,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-persistentvolumeclaim",
      "type": "concept",
      "title": "Create a PersistentVolumeClaim",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 1546,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:attempt-to-create-a-second-persistentvolumeclaim",
      "type": "concept",
      "title": "Attempt to create a second PersistentVolumeClaim",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 2148,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:notes",
      "type": "concept",
      "title": "Notes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 2854,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/use-cascading-deletion",
      "type": "page",
      "title": "Use Cascading Deletion in a Cluster",
      "summary": "",
      "body": "\n\nThis page shows you how to specify the type of\n[cascading deletion](/docs/concepts/architecture/garbage-collection/#cascading-deletion)\nto use in your cluster during [garbage collection](#gloss:garbage-collection).\n\n## \n\n\n\nYou also need to [create a sample Deployment](/docs/tasks/run-application/run-stateless-application-deployment/#creating-and-exploring-an-nginx-deployment) \nto experiment with the different types of cascading deletion. You will need to\nrecreate the Deployment for each type.\n\n## Check owner references on your pods\n\nCheck that the `ownerReferences` field is present on your pods:\n\n```shell \nkubectl get pods -l app=nginx --output=yaml\n```\n\nThe output has an `ownerReferences` field similar to this:\n\n```yaml\napiVersion: v1\n    ...\n    ownerReferences:\n    - apiVersion: apps/v1\n      blockOwnerDeletion: true\n      controller: true\n      kind: ReplicaSet\n      name: nginx-deployment-6b474476c4\n      uid: 4fdcd81c-bd5d-41f7-97af-3a3b759af9a7\n    ...\n```\n\n## Use foreground cascading deletion {#use-foreground-cascading-deletion}\n\nBy default, Kubernetes uses [background cascading deletion](/docs/concepts/architecture/garbage-collection/#background-deletion)\nto delete dependents of an object. You can switch to foreground cascading deletion\nusing either `kubectl` or the Kubernetes API, depending on the Kubernetes\nversion your cluster runs. \n\n\nYou can delete objects using foreground cascading deletion using `kubectl` or the\nKubernetes API.\n\n**Using kubectl**\n\nRun the following command:\n\n\n```shell\nkubectl delete deployment nginx-deployment --cascade=foreground\n```\n\n**Using the Kubernetes API**\n\n1. Start a local proxy session:\n\n   ```shell\n   kubectl proxy --port=8080\n   ```\n\n1. Use `curl` to trigger deletion:\n\n   ```shell\n   curl -X DELETE localhost:8080/apis/apps/v1/namespaces/default/deployments/nginx-deployment \\\n       -d '{\"kind\":\"DeleteOptions\",\"apiVersion\":\"v1\",\"propagationPolicy\":\"Foreground\"}' \\\n       -H \"Content-Type: application/json\"\n   ```\n\n   The output contains a `foregroundDeletion` [finalizer](#gloss:finalizer)\n   like this:\n\n   ```\n   \"kind\": \"Deployment\",\n   \"apiVersion\": \"apps/v1\",\n   \"metadata\": {\n       \"name\": \"nginx-deployment\",\n       \"namespace\": \"default\",\n       \"uid\": \"d1ce1b02-cae8-4288-8a53-30e84d8fa505\",\n       \"resourceVersion\": \"1363097\",\n       \"creationTimestamp\": \"2021-07-08T20:24:37Z\",\n       \"deletionTimestamp\": \"2021-07-08T20:27:39Z\",\n       \"finalizers\": [\n         \"foregroundDeletion\"\n       ]\n       ...\n   ```\n\n\n## Use background cascading deletion {#use-background-cascading-deletion}\n\n1. [Create a sample Deployment](/docs/tasks/run-application/run-stateless-application-deployment/#creating-and-exploring-an-nginx-deployment).\n1. Use either `kubectl` or the Kubernetes API to delete the Deployment,\n   depending on the Kubernetes version your cluster runs. \n\n\nYou can delete objects using background cascading deletion using `kubectl`\nor the Kubernetes API.\n\nKubernetes uses background cascading deletion by default, and does so\neven if you run the following commands without the `--cascade` flag or the\n`propagationPolicy` argument.\n\n**Using kubectl**\n\nRun the following command:\n\n```shell\nkubectl delete deployment nginx-deployment --cascade=background\n```\n\n**Using the Kubernetes API**\n\n1. Start a local proxy session:\n\n   ```shell\n   kubectl proxy --port=8080\n   ```\n\n1. Use `curl` to trigger deletion:\n\n   ```shell\n   curl -X DELETE localhost:8080/apis/apps/v1/namespaces/default/deployments/nginx-deployment \\\n       -d '{\"kind\":\"DeleteOptions\",\"apiVersion\":\"v1\",\"propagationPolicy\":\"Background\"}' \\\n       -H \"Content-Type: application/json\"\n   ```\n\n   The output is similar to this:\n\n   ```\n   \"kind\": \"Status\",\n   \"apiVersion\": \"v1\",\n   ...\n   \"status\": \"Success\",\n   \"details\": {\n       \"name\": \"nginx-deployment\",\n       \"group\": \"apps\",\n       \"kind\": \"deployments\",\n       \"uid\": \"cc9eefb9-2d49-4445-b1c1-d261c9396456\"\n   }\n   ```\n\n\n## Delete owner objects and orphan dependents {#set-orphan\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
      "meta": {
        "weight": 360,
        "rel_path": "tasks/administer-cluster/use-cascading-deletion.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": null,
          "line_end": null,
          "quote": "Use Cascading Deletion in a Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-owner-references-on-your-pods",
      "type": "concept",
      "title": "Check owner references on your pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 620,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-foreground-cascading-deletion-use-foreground-cascading-deletion",
      "type": "concept",
      "title": "Use foreground cascading deletion {#use-foreground-cascading-deletion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 1100,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-background-cascading-deletion-use-background-cascading-deletion",
      "type": "concept",
      "title": "Use background cascading deletion {#use-background-cascading-deletion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 2844,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-owner-objects-and-orphan-dependents-set-orphan-deletion-policy",
      "type": "concept",
      "title": "Delete owner objects and orphan dependents {#set-orphan-deletion-policy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 4300,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/declare-network-policy",
      "type": "page",
      "title": "Declare Network Policy",
      "summary": "",
      "body": "\nThis document helps you get started using the Kubernetes [NetworkPolicy API](/docs/concepts/services-networking/network-policies/) to declare network policies that govern how pods communicate with each other.\n\n\n\n## \n\n\n \n\nMake sure you've configured a network provider with network policy support. There are a number of network providers that support NetworkPolicy, including:\n\n* [Antrea](/docs/tasks/administer-cluster/network-policy-provider/antrea-network-policy/)\n* [Calico](/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/)\n* [Cilium](/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/)\n* [Kube-router](/docs/tasks/administer-cluster/network-policy-provider/kube-router-network-policy/)\n* [Romana](/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/)\n* [Weave Net](/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/)\n\n\n\n## Create an `nginx` deployment and expose it via a service\n\nTo see how Kubernetes network policy works, start off by creating an `nginx` Deployment.\n\n```console\nkubectl create deployment nginx --image=nginx\n```\n```none\ndeployment.apps/nginx created\n```\n\nExpose the Deployment through a Service called `nginx`.\n\n```console\nkubectl expose deployment nginx --port=80\n```\n\n```none\nservice/nginx exposed\n```\n\nThe above commands create a Deployment with an nginx Pod and expose the Deployment through a Service named `nginx`. The `nginx` Pod and Deployment are found in the `default` namespace.\n\n```console\nkubectl get svc,pod\n```\n\n```none\nNAME                        CLUSTER-IP    EXTERNAL-IP   PORT(S)    AGE\nservice/kubernetes          10.100.0.1    <none>        443/TCP    46m\nservice/nginx               10.100.0.16   <none>        80/TCP     33s\n\nNAME                        READY         STATUS        RESTARTS   AGE\npod/nginx-701339712-e0qfq   1/1           Running       0          35s\n```\n\n## Test the service by accessing it from another Pod\n\nYou should be able to access the new `nginx` service from other Pods. To access the `nginx` Service from another Pod in the `default` namespace, start a busybox container:\n\n```console\nkubectl run busybox --rm -ti --image=busybox -- /bin/sh\n```\n\nIn your shell, run the following command:\n\n```shell\nwget --spider --timeout=1 nginx\n```\n\n```none\nConnecting to nginx (10.100.0.16:80)\nremote file exists\n```\n\n## Limit access to the `nginx` service\n\nTo limit the access to the `nginx` service so that only Pods with the label `access: true` can query it, create a NetworkPolicy object as follows:\n\n\n\nThe name of a NetworkPolicy object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\n\n> **Note:** NetworkPolicy includes a `podSelector` which selects the grouping of Pods to which the policy applies. You can see this policy selects Pods with the label `app=nginx`. The label was automatically added to the Pod in the `nginx` Deployment. An empty `podSelector` selects all pods in the namespace.\n\n\n## Assign the policy to the service\n\nUse kubectl to create a NetworkPolicy from the above `nginx-policy.yaml` file:\n\n```console\nkubectl apply -f https://k8s.io/examples/service/networking/nginx-policy.yaml\n```\n\n```none\nnetworkpolicy.networking.k8s.io/access-nginx created\n```\n\n## Test access to the service when access label is not defined\nWhen you attempt to access the `nginx` Service from a Pod without the correct labels, the request times out:\n\n```console\nkubectl run busybox --rm -ti --image=busybox -- /bin/sh\n```\n\nIn your shell, run the command:\n\n```shell\nwget --spider --timeout=1 nginx\n```\n\n```none\nConnecting to nginx (10.100.0.16:80)\nwget: download timed out\n```\n\n## Define access label and test again\n\nYou can create a Pod with the correct labels to see that the request is allowed:\n\n```console\nkubectl run busybox --rm -ti --labels=\"access=true\" --image=busybox -- /bin/sh\n```\n\nIn your shell, run the command:\n\n```shell\nwget --spider --timeout=1 nginx\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
      "meta": {
        "weight": 180,
        "rel_path": "tasks/administer-cluster/declare-network-policy.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Declare Network Policy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-an-nginx-deployment-and-expose-it-via-a-service",
      "type": "concept",
      "title": "Create an `nginx` deployment and expose it via a service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 1085,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:test-the-service-by-accessing-it-from-another-pod",
      "type": "concept",
      "title": "Test the service by accessing it from another Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 2081,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limit-access-to-the-nginx-service",
      "type": "concept",
      "title": "Limit access to the `nginx` service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 2538,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:assign-the-policy-to-the-service",
      "type": "concept",
      "title": "Assign the policy to the service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 3263,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:test-access-to-the-service-when-access-label-is-not-defined",
      "type": "concept",
      "title": "Test access to the service when access label is not defined",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 3540,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-access-label-and-test-again",
      "type": "concept",
      "title": "Define access label and test again",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 3939,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/extended-resource-node",
      "type": "page",
      "title": "Advertise Extended Resources for a Node",
      "summary": "",
      "body": "\n\nThis page shows how to specify extended resources for a Node.\nExtended resources allow cluster administrators to advertise node-level\nresources that would otherwise be unknown to Kubernetes.\n\n## \n\n \n\n\n\n## Get the names of your Nodes\n\n```shell\nkubectl get nodes\n```\n\nChoose one of your Nodes to use for this exercise.\n\n## Advertise a new extended resource on one of your Nodes\n\nTo advertise a new extended resource on a Node, send an HTTP PATCH request to\nthe Kubernetes API server. For example, suppose one of your Nodes has four dongles\nattached. Here's an example of a PATCH request that advertises four dongle resources\nfor your Node.\n\n```\nPATCH /api/v1/nodes/<your-node-name>/status HTTP/1.1\nAccept: application/json\nContent-Type: application/json-patch+json\nHost: k8s-master:8080\n\n[\n  {\n    \"op\": \"add\",\n    \"path\": \"/status/capacity/example.com~1dongle\",\n    \"value\": \"4\"\n  }\n]\n```\n\nNote that Kubernetes does not need to know what a dongle is or what a dongle is for.\nThe preceding PATCH request tells Kubernetes that your Node has four things that\nyou call dongles.\n\nStart a proxy, so that you can easily send requests to the Kubernetes API server:\n\n```shell\nkubectl proxy\n```\n\nIn another command window, send the HTTP PATCH request.\nReplace `<your-node-name>` with the name of your Node:\n\n```shell\ncurl --header \"Content-Type: application/json-patch+json\" \\\n  --request PATCH \\\n  --data '[{\"op\": \"add\", \"path\": \"/status/capacity/example.com~1dongle\", \"value\": \"4\"}]' \\\n  http://localhost:8001/api/v1/nodes/<your-node-name>/status\n```\n\n\n> **Note:** In the preceding request, `~1` is the encoding for the character / in\nthe patch path. The operation path value in JSON-Patch is interpreted as a\nJSON-Pointer. For more details, see\n[IETF RFC 6901](https://tools.ietf.org/html/rfc6901), section 3.\n\n\nThe output shows that the Node has a capacity of 4 dongles:\n\n```\n\"capacity\": {\n  \"cpu\": \"2\",\n  \"memory\": \"2049008Ki\",\n  \"example.com/dongle\": \"4\",\n```\n\nDescribe your Node:\n\n```\nkubectl describe node <your-node-name>\n```\n\nOnce again, the output shows the dongle resource:\n\n```yaml\nCapacity:\n  cpu: 2\n  memory: 2049008Ki\n  example.com/dongle: 4\n```\n\nNow, application developers can create Pods that request a certain\nnumber of dongles. See\n[Assign Extended Resources to a Container](/docs/tasks/configure-pod-container/extended-resource/).\n\n## Discussion\n\nExtended resources are similar to memory and CPU resources. For example,\njust as a Node has a certain amount of memory and CPU to be shared by all components\nrunning on the Node, it can have a certain number of dongles to be shared\nby all components running on the Node. And just as application developers\ncan create Pods that request a certain amount of memory and CPU, they can\ncreate Pods that request a certain number of dongles.\n\nExtended resources are opaque to Kubernetes; Kubernetes does not\nknow anything about what they are. Kubernetes knows only that a Node\nhas a certain number of them. Extended resources must be advertised in integer\namounts. For example, a Node can advertise four dongles, but not 4.5 dongles.\n\n### Storage example\n\nSuppose a Node has 800 GiB of a special kind of disk storage. You could\ncreate a name for the special storage, say example.com/special-storage.\nThen you could advertise it in chunks of a certain size, say 100 GiB. In that case,\nyour Node would advertise that it has eight resources of type\nexample.com/special-storage.\n\n```yaml\nCapacity:\n ...\n example.com/special-storage: 8\n```\n\nIf you want to allow arbitrary requests for special storage, you\ncould advertise special storage in chunks of size 1 byte. In that case, you would advertise\n800Gi resources of type example.com/special-storage.\n\n```yaml\nCapacity:\n ...\n example.com/special-storage:  800Gi\n```\n\nThen a Container could request any number of bytes of special storage, up to 800Gi.\n\n## Clean up\n\nHere is a PATCH request that removes the dongle advertisement from a Node.\n\n```\nPATCH /api/v1/nodes/<your-node-name>/status HTTP/1.1\nAccep\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
      "meta": {
        "weight": 70,
        "rel_path": "tasks/administer-cluster/extended-resource-node.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": null,
          "line_end": null,
          "quote": "Advertise Extended Resources for a Node"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-the-names-of-your-nodes",
      "type": "concept",
      "title": "Get the names of your Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 330,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:advertise-a-new-extended-resource-on-one-of-your-nodes",
      "type": "concept",
      "title": "Advertise a new extended resource on one of your Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 446,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storage-example",
      "type": "concept",
      "title": "Storage example",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 3226,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/reserve-compute-resources",
      "type": "page",
      "title": "Reserve Compute Resources for System Daemons",
      "summary": "",
      "body": "\n\nKubernetes nodes can be scheduled to `Capacity`. Pods can consume all the\navailable capacity on a node by default. This is an issue because nodes\ntypically run quite a few system daemons that power the OS and Kubernetes\nitself. Unless resources are set aside for these system daemons, pods and system\ndaemons compete for resources and lead to resource starvation issues on the\nnode.\n\nThe `kubelet` exposes a feature named 'Node Allocatable' that helps to reserve\ncompute resources for system daemons. Kubernetes recommends cluster\nadministrators to configure 'Node Allocatable' based on their workload density\non each node.\n\n## \n\n\n\nYou can configure below kubelet [configuration settings](/docs/reference/config-api/kubelet-config.v1beta1/)\nusing the [kubelet configuration file](/docs/tasks/administer-cluster/kubelet-config-file/).\n\n\n\n## Node Allocatable\n\n![node capacity](/images/docs/node-capacity.svg)\n\n'Allocatable' on a Kubernetes node is defined as the amount of compute resources\nthat are available for pods. The scheduler does not over-subscribe\n'Allocatable'. 'CPU', 'memory' and 'ephemeral-storage' are supported as of now.\n\nNode Allocatable is exposed as part of `v1.Node` object in the API and as part\nof `kubectl describe node` in the CLI.\n\nResources can be reserved for two categories of system daemons in the `kubelet`.\n\n### Enabling QoS and Pod level cgroups\n\nTo properly enforce node allocatable constraints on the node, you must\nenable the new cgroup hierarchy via the `cgroupsPerQOS` setting. This setting is\nenabled by default. When enabled, the `kubelet` will parent all end-user pods\nunder a cgroup hierarchy managed by the `kubelet`.\n\n### Configuring a cgroup driver\n\nThe `kubelet` supports manipulation of the cgroup hierarchy on\nthe host using a cgroup driver. The driver is configured via the `cgroupDriver` setting.\n\nThe supported values are the following:\n\n* `cgroupfs` is the default driver that performs direct manipulation of the\ncgroup filesystem on the host in order to manage cgroup sandboxes.\n* `systemd` is an alternative driver that manages cgroup sandboxes using\ntransient slices for resources that are supported by that init system.\n\nDepending on the configuration of the associated container runtime,\noperators may have to choose a particular cgroup driver to ensure\nproper system behavior. For example, if operators use the `systemd`\ncgroup driver provided by the `containerd` runtime, the `kubelet` must\nbe configured to use the `systemd` cgroup driver.\n\n### Kube Reserved\n\n- **KubeletConfiguration Setting**: `kubeReserved: {}`. Example value `{cpu: 100m, memory: 100Mi, ephemeral-storage: 1Gi, pid=1000}`\n- **KubeletConfiguration Setting**: `kubeReservedCgroup: \"\"`\n\n`kubeReserved` is meant to capture resource reservation for kubernetes system\ndaemons like the `kubelet`, `container runtime`, etc.\nIt is not meant to reserve resources for system daemons that are run as pods.\n`kubeReserved` is typically a function of `pod density` on the nodes.\n\nIn addition to `cpu`, `memory`, and `ephemeral-storage`, `pid` may be\nspecified to reserve the specified number of process IDs for\nkubernetes system daemons.\n\nTo optionally enforce `kubeReserved` on kubernetes system daemons, specify the parent\ncontrol group for kube daemons as the value for `kubeReservedCgroup` setting,\nand [add `kube-reserved` to `enforceNodeAllocatable`](#enforcing-node-allocatable).\n\nIt is recommended that the kubernetes system daemons are placed under a top\nlevel control group (`runtime.slice` on systemd machines for example). Each\nsystem daemon should ideally run within its own child control group. Refer to\n[the design proposal](https://git.k8s.io/design-proposals-archive/node/node-allocatable.md#recommended-cgroups-setup)\nfor more details on recommended control group hierarchy.\n\nNote that Kubelet **does not** create `kubeReservedCgroup` if it doesn't\nexist. The kubelet will fail to start if an invalid cgroup is specified. With `systemd`\ncgroup driver, you should fol\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
      "meta": {
        "weight": 290,
        "rel_path": "tasks/administer-cluster/reserve-compute-resources.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": null,
          "line_end": null,
          "quote": "Reserve Compute Resources for System Daemons"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-allocatable",
      "type": "concept",
      "title": "Node Allocatable",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 944,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:general-guidelines",
      "type": "concept",
      "title": "General Guidelines",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 9087,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-scenario",
      "type": "concept",
      "title": "Example Scenario",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 10973,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-qos-and-pod-level-cgroups",
      "type": "concept",
      "title": "Enabling QoS and Pod level cgroups",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 1445,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-a-cgroup-driver",
      "type": "concept",
      "title": "Configuring a cgroup driver",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 1767,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-reserved",
      "type": "concept",
      "title": "Kube Reserved",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 2606,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:system-reserved",
      "type": "concept",
      "title": "System Reserved",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 4255,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:explicitly-reserved-cpu-list",
      "type": "concept",
      "title": "Explicitly Reserved CPU List",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 5691,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:eviction-thresholds",
      "type": "concept",
      "title": "Eviction Thresholds",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 7006,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enforcing-node-allocatable",
      "type": "concept",
      "title": "Enforcing Node Allocatable",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 7993,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/coredns",
      "type": "page",
      "title": "Using CoreDNS for Service Discovery",
      "summary": "",
      "body": "\nThis page describes the CoreDNS upgrade process and how to install CoreDNS instead of kube-dns.\n\n\n## \n\n \n\n\n\n\n## About CoreDNS\n\n[CoreDNS](https://coredns.io) is a flexible, extensible DNS server\nthat can serve as the Kubernetes cluster DNS.\nLike Kubernetes, the CoreDNS project is hosted by the\n[CNCF](#gloss:cncf).\n\nYou can use CoreDNS instead of kube-dns in your cluster by replacing\nkube-dns in an existing deployment, or by using tools like kubeadm\nthat will deploy and upgrade the cluster for you.\n\n## Installing CoreDNS\n\nFor manual deployment or replacement of kube-dns, see the documentation at the\n[CoreDNS website](https://coredns.io/manual/installation/).\n\n## Migrating to CoreDNS\n\n### Upgrading an existing cluster with kubeadm\n\nIn Kubernetes version 1.21, kubeadm removed its support for `kube-dns` as a DNS application.\nFor `kubeadm` v, the only supported cluster DNS application\nis CoreDNS.\n\nYou can move to CoreDNS when you use `kubeadm` to upgrade a cluster that is\nusing `kube-dns`. In this case, `kubeadm` generates the CoreDNS configuration\n(\"Corefile\") based upon the `kube-dns` ConfigMap, preserving configurations for\nstub domains, and upstream name server.\n\n## Upgrading CoreDNS\n\nYou can check the version of CoreDNS that kubeadm installs for each version of\nKubernetes in the page\n[CoreDNS version in Kubernetes](https://github.com/coredns/deployment/blob/master/kubernetes/CoreDNS-k8s_version.md).\n\nCoreDNS can be upgraded manually in case you want to only upgrade CoreDNS\nor use your own custom image.\nThere is a helpful [guideline and walkthrough](https://github.com/coredns/deployment/blob/master/kubernetes/Upgrading_CoreDNS.md)\navailable to ensure a smooth upgrade.\nMake sure the existing CoreDNS configuration (\"Corefile\") is retained when\nupgrading your cluster.\n\nIf you are upgrading your cluster using the `kubeadm` tool, `kubeadm`\ncan take care of retaining the existing CoreDNS configuration automatically.\n\n\n## Tuning CoreDNS\n\nWhen resource utilisation is a concern, it may be useful to tune the\nconfiguration of CoreDNS. For more details, check out the\n[documentation on scaling CoreDNS](https://github.com/coredns/deployment/blob/master/kubernetes/Scaling_CoreDNS.md).\n\n## \n\nYou can configure [CoreDNS](https://coredns.io) to support many more use cases than\nkube-dns does by modifying the CoreDNS configuration (\"Corefile\").\nFor more information, see the [documentation](https://coredns.io/plugins/kubernetes/)\nfor the `kubernetes` CoreDNS plugin, or read the \n[Custom DNS Entries for Kubernetes](https://coredns.io/2017/05/08/custom-dns-entries-for-kubernetes/).\nin the CoreDNS blog.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
      "meta": {
        "weight": 380,
        "rel_path": "tasks/administer-cluster/coredns.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": null,
          "line_end": null,
          "quote": "Using CoreDNS for Service Discovery"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:about-coredns",
      "type": "concept",
      "title": "About CoreDNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 236,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installing-coredns",
      "type": "concept",
      "title": "Installing CoreDNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 662,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-to-coredns",
      "type": "concept",
      "title": "Migrating to CoreDNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 825,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrading-coredns",
      "type": "concept",
      "title": "Upgrading CoreDNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 1366,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tuning-coredns",
      "type": "concept",
      "title": "Tuning CoreDNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 2130,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrading-an-existing-cluster-with-kubeadm",
      "type": "concept",
      "title": "Upgrading an existing cluster with kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 850,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/configure-feature-gates",
      "type": "page",
      "title": "Enable Or Disable Feature Gates",
      "summary": "",
      "body": "\n\nThis page shows how to enable or disable feature gates to control specific Kubernetes \nfeatures in your cluster. Enabling feature gates allows you to test and use Alpha or \nBeta features before they become generally available.\n\n\n> **Note:** For some stable (GA) gates, you can also disable them, usually for one minor release \nafter GA; however if you do that, your cluster may not be conformant as Kubernetes.\n\n\n\n\n## \n\n\n\nYou also need:\n\n* Administrative access to your cluster\n* Knowledge of which feature gate you want to enable (see the [Feature Gates reference](/docs/reference/command-line-tools-reference/feature-gates/))\n\n\n> **Note:** GA (stable) features are always enabled by default. You typically configure gates for \nAlpha or Beta features.\n\n\n\n\n## Understand feature gate maturity\n\nBefore enabling a feature gate, check the [Feature Gates reference](/docs/reference/command-line-tools-reference/feature-gates/) \nfor the feature's maturity level:\n\n- **Alpha**: Disabled by default, may be buggy. Use only in test clusters.\n- **Beta**: Usually enabled by default, well-tested.\n- **GA**: Always enabled by default; can sometimes be disabled for one release after GA.\n\n## Identify which components need the feature gate\n\nDifferent feature gates affect different Kubernetes components:\n\n- Some features require enabling the gate on **multiple components** (e.g., API server and controller manager)\n- Other features only need the gate on a **single component** (e.g., only kubelet)\n\nThe [Feature Gates reference](/docs/reference/command-line-tools-reference/feature-gates/) \ntypically indicates which components are affected by each gate. All Kubernetes components \nshare the same feature gate definitions, so all gates appear in help output, but only \nrelevant gates affect each component's behavior.\n\n## Configuration\n\n### During cluster initialization\n\nCreate a configuration file to enable feature gates across relevant components:\n\n```yaml\napiVersion: kubeadm.k8s.io/v1beta4\nkind: ClusterConfiguration\napiServer:\n  extraArgs:\n    feature-gates: \"FeatureName=true\"\ncontrollerManager:\n  extraArgs:\n    feature-gates: \"FeatureName=true\"\nscheduler:\n  extraArgs:\n    feature-gates: \"FeatureName=true\"\n---\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nfeatureGates:\n  FeatureName: true\n```\n\nInitialize the cluster:\n\n```shell\nkubeadm init --config kubeadm-config.yaml\n```\n\n### On an existing cluster\n\nFor kubeadm clusters, feature gate configuration can be set in several locations \nincluding manifest files, configuration files, and kubeadm configuration.\n\nEdit control plane component manifests in `/etc/kubernetes/manifests/`:\n\n1. For kube-apiserver, kube-controller-manager, or kube-scheduler, add the flag to the command:\n\n   ```yaml\n   spec:\n     containers:\n     - command:\n       - kube-apiserver\n       - --feature-gates=FeatureName=true\n       # ... other flags\n   ```\n\n   Save the file. The pod restarts automatically.\n\n2. For kubelet, edit `/var/lib/kubelet/config.yaml`:\n\n   ```yaml\n   apiVersion: kubelet.config.k8s.io/v1beta1\n   kind: KubeletConfiguration\n   featureGates:\n     FeatureName: true\n   ```\n\n   Restart kubelet:\n\n   ```shell\n   sudo systemctl restart kubelet\n   ```\n\n3. For kube-proxy, edit the ConfigMap:\n\n   ```shell\n   kubectl -n kube-system edit configmap kube-proxy\n   ```\n\n   Add feature gates to the configuration:\n\n   ```yaml\n   featureGates:\n     FeatureName: true\n   ```\n\n   Restart the DaemonSet:\n\n   ```shell\n   kubectl -n kube-system rollout restart daemonset kube-proxy\n   ```\n\n## Configure multiple feature gates\n\nUse comma-separated lists for command-line flags:\n\n```shell\n--feature-gates=FeatureA=true,FeatureB=false,FeatureC=true\n```\n\nFor components that support configuration files (kubelet, kube-proxy):\n\n```yaml\nfeatureGates:\n  FeatureA: true\n  FeatureB: false\n  FeatureC: true\n```\n\n\n> **Note:** In kubeadm clusters, control plane components (kube-apiserver, kube-controller-manager, \nand kube-scheduler) are typically conf\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/administer-cluster/configure-feature-gates.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": null,
          "line_end": null,
          "quote": "Enable Or Disable Feature Gates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understand-feature-gate-maturity",
      "type": "concept",
      "title": "Understand feature gate maturity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 1331,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:identify-which-components-need-the-feature-gate",
      "type": "concept",
      "title": "Identify which components need the feature gate",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 1751,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuration",
      "type": "concept",
      "title": "Configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 2383,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-multiple-feature-gates",
      "type": "concept",
      "title": "Configure multiple feature gates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 4120,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-feature-gate-configuration",
      "type": "concept",
      "title": "Verify feature gate configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 4831,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-component-specific-requirements",
      "type": "concept",
      "title": "Understanding component-specific requirements",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 6832,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:during-cluster-initialization",
      "type": "concept",
      "title": "During cluster initialization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 2401,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:on-an-existing-cluster",
      "type": "concept",
      "title": "On an existing cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 2974,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-control-plane-component-manifests",
      "type": "concept",
      "title": "Check control plane component manifests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 5026,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-kubelet-configuration",
      "type": "concept",
      "title": "Check kubelet configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 5234,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-via-metrics-endpoint",
      "type": "concept",
      "title": "Check via metrics endpoint",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 5570,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-via-flagz-endpoint",
      "type": "concept",
      "title": "Check via /flagz endpoint",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 6256,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/encrypt-data",
      "type": "page",
      "title": "Encrypting Confidential Data at Rest",
      "summary": "",
      "body": "\n\nAll of the APIs in Kubernetes that let you write persistent API resource data support\nat-rest encryption. For example, you can enable at-rest encryption for\n[Secrets](#gloss:secret).\nThis at-rest encryption is additional to any system-level encryption for the\netcd cluster or for the filesystem(s) on hosts where you are running the\nkube-apiserver.\n\nThis page shows how to enable and configure encryption of API data at rest.\n\n\n> **Note:** This task covers encryption for resource data stored using the\n. For example, you can\nencrypt Secret objects, including the key-value data they contain.\n\nIf you want to encrypt data in filesystems that are mounted into containers, you instead need\nto either:\n\n- use a storage integration that provides encrypted\n  \n- encrypt the data within your own application\n\n\n## \n\n* \n\n* This task assumes that you are running the Kubernetes API server as a\n  [static pod](#gloss:static-pod) on each control\n  plane node.\n\n* Your cluster's control plane **must** use etcd v3.x (major version 3, any minor version).\n\n* To encrypt a custom resource, your cluster must be running Kubernetes v1.26 or newer.\n\n* To use a wildcard to match resources, your cluster must be running Kubernetes v1.27 or newer.\n\n\n\n\n\n\n## Determine whether encryption at rest is already enabled {#determining-whether-encryption-at-rest-is-already-enabled}\n\nBy default, the API server stores plain-text representations of resources into etcd, with\nno at-rest encryption.\n\nThe `kube-apiserver` process accepts an argument `--encryption-provider-config`\nthat specifies a path to a configuration file. The contents of that file, if you specify one,\ncontrol how Kubernetes API data is encrypted in etcd.\nIf you are running the kube-apiserver without the `--encryption-provider-config` command line\nargument, you do not have encryption at rest enabled. If you are running the kube-apiserver\nwith the `--encryption-provider-config` command line argument, and the file that it references\nspecifies the `identity` provider as the first encryption provider in the list, then you\ndo not have at-rest encryption enabled\n(**the default `identity` provider does not provide any confidentiality protection.**)\n\nIf you are running the kube-apiserver\nwith the `--encryption-provider-config` command line argument, and the file that it references\nspecifies a provider other than `identity` as the first encryption provider in the list, then\nyou already have at-rest encryption enabled. However, that check does not tell you whether\na previous migration to encrypted storage has succeeded. If you are not sure, see\n[ensure all relevant data are encrypted](#ensure-all-secrets-are-encrypted).\n\n## Understanding the encryption at rest configuration\n\n\n\n\n\n---\n#\n# CAUTION: this is an example configuration.\n#          Do not use this for your own cluster!\n#\napiVersion: apiserver.config.k8s.io/v1\nkind: EncryptionConfiguration\nresources:\n  - resources:\n      - secrets\n      - configmaps\n      - pandas.awesome.bears.example # a custom resource API\n    providers:\n      # This configuration does not provide data confidentiality. The first\n      # configured provider is specifying the \"identity\" mechanism, which\n      # stores resources as plain text.\n      #\n      - identity: {} # plain text, in other words NO encryption\n      - aesgcm:\n          keys:\n            - name: key1\n              secret: c2VjcmV0IGlzIHNlY3VyZQ==\n            - name: key2\n              secret: dGhpcyBpcyBwYXNzd29yZA==\n      - aescbc:\n          keys:\n            - name: key1\n              secret: c2VjcmV0IGlzIHNlY3VyZQ==\n            - name: key2\n              secret: dGhpcyBpcyBwYXNzd29yZA==\n      - secretbox:\n          keys:\n            - name: key1\n              secret: YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoxMjM0NTY=\n  - resources:\n      - events\n    providers:\n      - identity: {} # do not encrypt Events even though *.* is specified below\n  - resources:\n      - '*.apps' # wildcard match requires Kubernetes 1.27 or later\n    provid\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
      "meta": {
        "weight": 210,
        "rel_path": "tasks/administer-cluster/encrypt-data.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": null,
          "line_end": null,
          "quote": "Encrypting Confidential Data at Rest"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:determine-whether-encryption-at-rest-is-already-enabled-determining-whether-encryption-at-rest-is-already-enabled",
      "type": "concept",
      "title": "Determine whether encryption at rest is already enabled {#determining-whether-encryption-at-rest-is-already-enabled}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 1566,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-the-encryption-at-rest-configuration",
      "type": "concept",
      "title": "Understanding the encryption at rest configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 3004,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:encrypt-your-data-encrypting-your-data",
      "type": "concept",
      "title": "Encrypt your data {#encrypting-your-data}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 15052,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prevent-plain-text-retrieval-cleanup-all-secrets-encrypted",
      "type": "concept",
      "title": "Prevent plain text retrieval {#cleanup-all-secrets-encrypted}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 25324,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rotate-a-decryption-key-rotating-a-decryption-key",
      "type": "concept",
      "title": "Rotate a decryption key {#rotating-a-decryption-key}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 26655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:decrypt-all-data-decrypting-all-data",
      "type": "concept",
      "title": "Decrypt all data {#decrypting-all-data}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 27980,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-automatic-reloading",
      "type": "concept",
      "title": "Configure automatic reloading",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 29075,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:available-providers-providers",
      "type": "concept",
      "title": "Available providers {#providers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 8799,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:key-storage",
      "type": "concept",
      "title": "Key storage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 13153,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protection-for-encryption-keys",
      "type": "concept",
      "title": "Protection for encryption keys",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 14536,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generate-the-encryption-key-generate-key-no-kms",
      "type": "concept",
      "title": "Generate the encryption key {#generate-key-no-kms}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 15098,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicate-the-encryption-key",
      "type": "concept",
      "title": "Replicate the encryption key",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 17271,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:write-an-encryption-configuration-file",
      "type": "concept",
      "title": "Write an encryption configuration file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 17645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-the-new-encryption-configuration-file",
      "type": "concept",
      "title": "Use the new encryption configuration file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 18716,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reconfigure-other-control-plane-hosts-api-server-config-update-more",
      "type": "concept",
      "title": "Reconfigure other control plane hosts {#api-server-config-update-more}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 20697,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-that-newly-written-data-is-encrypted-verifying-that-data-is-encrypted",
      "type": "concept",
      "title": "Verify that newly written data is encrypted {#verifying-that-data-is-encrypted}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 21535,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ensure-all-relevant-data-are-encrypted-ensure-all-secrets-are-encrypted",
      "type": "concept",
      "title": "Ensure all relevant data are encrypted {#ensure-all-secrets-are-encrypted}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 24322,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/namespaces",
      "type": "page",
      "title": "Share a Cluster with Namespaces",
      "summary": "",
      "body": "\nThis page shows how to view, work in, and delete [namespaces](#gloss:namespace).\nThe page also shows how to use Kubernetes namespaces to subdivide your cluster.\n\n## \n\n* Have an [existing Kubernetes cluster](/docs/setup/).\n* You have a basic understanding of Kubernetes [Pods](#gloss:pod),\n  [Services](#gloss:service), and\n  [Deployments](#gloss:deployment).\n\n\n\n## Viewing namespaces\n\nList the current namespaces in a cluster using:\n\n```shell\nkubectl get namespaces\n```\n```console\nNAME              STATUS   AGE\ndefault           Active   11d\nkube-node-lease   Active   11d\nkube-public       Active   11d\nkube-system       Active   11d\n```\n\nKubernetes starts with four initial namespaces:\n\n* `default` The default namespace for objects with no other namespace\n* `kube-node-lease` This namespace holds [Lease](/docs/concepts/architecture/leases/) objects associated with each node. Node leases allow the kubelet to send [heartbeats](/docs/concepts/architecture/nodes/#heartbeats) so that the control plane can detect node failure.\n* `kube-public` This namespace is created automatically and is readable by all users\n  (including those not authenticated). This namespace is mostly reserved for cluster usage,\n  in case that some resources should be visible and readable publicly throughout the whole cluster.\n  The public aspect of this namespace is only a convention, not a requirement.\n* `kube-system` The namespace for objects created by the Kubernetes system\n\nYou can also get the summary of a specific namespace using:\n\n```shell\nkubectl get namespaces <name>\n```\n\nOr you can get detailed information with:\n\n```shell\nkubectl describe namespaces <name>\n```\n```console\nName:           default\nLabels:         <none>\nAnnotations:    <none>\nStatus:         Active\n\nNo resource quota.\n\nResource Limits\n Type       Resource    Min Max Default\n ----               --------    --- --- ---\n Container          cpu         -   -   100m\n```\n\nNote that these details show both resource quota (if present) as well as resource limit ranges.\n\nResource quota tracks aggregate usage of resources in the Namespace and allows cluster operators\nto define *Hard* resource usage limits that a Namespace may consume.\n\nA limit range defines min/max constraints on the amount of resources a single entity can consume in\na Namespace.\n\nSee [Admission control: Limit Range](https://git.k8s.io/design-proposals-archive/resource-management/admission_control_limit_range.md)\n\nA namespace can be in one of two phases:\n\n* `Active` the namespace is in use\n* `Terminating` the namespace is being deleted, and can not be used for new objects\n\nFor more details, see [Namespace](/docs/reference/kubernetes-api/cluster-resources/namespace-v1/)\nin the API reference.\n\n## Creating a new namespace\n\n\n> **Note:** Avoid creating namespace with prefix `kube-`, since it is reserved for Kubernetes system namespaces.\n\n\nCreate a new YAML file called `my-namespace.yaml` with the contents:\n\n```yaml\napiVersion: v1\nkind: Namespace\nmetadata:\n  name: <insert-namespace-name-here>\n```\nThen run:\n\n```shell\nkubectl create -f ./my-namespace.yaml\n```\n\nAlternatively, you can create namespace using below command:\n\n```shell\nkubectl create namespace <insert-namespace-name-here>\n``` \n\nThe name of your namespace must be a valid\n[DNS label](/docs/concepts/overview/working-with-objects/names#dns-label-names).\n\nThere's an optional field `finalizers`, which allows observables to purge resources whenever the\nnamespace is deleted. Keep in mind that if you specify a nonexistent finalizer, the namespace will\nbe created but will get stuck in the `Terminating` state if the user tries to delete it.\n\nMore information on `finalizers` can be found in the namespace\n[design doc](https://git.k8s.io/design-proposals-archive/architecture/namespaces.md#finalizers).\n\n## Deleting a namespace\n\nDelete a namespace with\n\n```shell\nkubectl delete namespaces <insert-some-namespace-name>\n```\n\n\n> **Warning:** This deletes _everything_ under the namespace!\n\n\nThis delete is\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
      "meta": {
        "weight": 340,
        "rel_path": "tasks/administer-cluster/namespaces.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": null,
          "line_end": null,
          "quote": "Share a Cluster with Namespaces"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:viewing-namespaces",
      "type": "concept",
      "title": "Viewing namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 554,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-new-namespace",
      "type": "concept",
      "title": "Creating a new namespace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 2922,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-a-namespace",
      "type": "concept",
      "title": "Deleting a namespace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 4006,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:subdividing-your-cluster-using-kubernetes-namespaces",
      "type": "concept",
      "title": "Subdividing your cluster using Kubernetes namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 4305,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-the-motivation-for-using-namespaces",
      "type": "concept",
      "title": "Understanding the motivation for using namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 8896,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-namespaces-and-dns",
      "type": "concept",
      "title": "Understanding namespaces and DNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 10593,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-new-namespaces",
      "type": "concept",
      "title": "Create new namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 4747,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-pods-in-each-namespace",
      "type": "concept",
      "title": "Create pods in each namespace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 6333,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/ip-masq-agent",
      "type": "page",
      "title": "IP Masquerade Agent User Guide",
      "summary": "",
      "body": "\nThis page shows how to configure and enable the `ip-masq-agent`.\n\n## \n\n \n\n\n## IP Masquerade Agent User Guide\n\nThe `ip-masq-agent` configures iptables rules to hide a pod's IP address behind the cluster\nnode's IP address. This is typically done when sending traffic to destinations outside the\ncluster's pod [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) range.\n\n### Key Terms\n\n* **NAT (Network Address Translation)**:\n  Is a method of remapping one IP address to another by modifying either the source and/or\n  destination address information in the IP header. Typically performed by a device doing IP routing.\n* **Masquerading**:\n  A form of NAT that is typically used to perform a many to one address translation, where\n  multiple source IP addresses are masked behind a single address, which is typically the\n  device doing the IP routing. In Kubernetes this is the Node's IP address.\n* **CIDR (Classless Inter-Domain Routing)**:\n  Based on the variable-length subnet masking, allows specifying arbitrary-length prefixes.\n  CIDR introduced a new method of representation for IP addresses, now commonly known as\n  **CIDR notation**, in which an address or routing prefix is written with a suffix indicating\n  the number of bits of the prefix, such as 192.168.2.0/24.\n* **Link Local**:\n  A link-local address is a network address that is valid only for communications within the\n  network segment or the broadcast domain that the host is connected to. Link-local addresses\n  for IPv4 are defined in the address block 169.254.0.0/16 in CIDR notation.\n\nThe ip-masq-agent configures iptables rules to handle masquerading node/pod IP addresses when\nsending traffic to destinations outside the cluster node's IP and the Cluster IP range. This\nessentially hides pod IP addresses behind the cluster node's IP address. In some environments,\ntraffic to \"external\" addresses must come from a known machine address. For example, in Google\nCloud, any traffic to the internet must come from a VM's IP. When containers are used, as in\nGoogle Kubernetes Engine, the Pod IP will be rejected for egress. To avoid this, we must hide\nthe Pod IP behind the VM's own IP address - generally known as \"masquerade\". By default, the\nagent is configured to treat the three private IP ranges specified by\n[RFC 1918](https://tools.ietf.org/html/rfc1918) as non-masquerade\n[CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing).\nThese ranges are `10.0.0.0/8`, `172.16.0.0/12`, and `192.168.0.0/16`.\nThe agent will also treat link-local (169.254.0.0/16) as a non-masquerade CIDR by default.\nThe agent is configured to reload its configuration from the location\n*/etc/config/ip-masq-agent* every 60 seconds, which is also configurable.\n\n![masq/non-masq example](/images/docs/ip-masq.png)\n\nThe agent configuration file must be written in YAML or JSON syntax, and may contain three\noptional keys:\n\n* `nonMasqueradeCIDRs`: A list of strings in\n  [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) notation that specify\n  the non-masquerade ranges.\n* `masqLinkLocal`: A Boolean (true/false) which indicates whether to masquerade traffic to the\n  link local prefix `169.254.0.0/16`. False by default.\n* `resyncInterval`: A time interval at which the agent attempts to reload config from disk.\n  For example: '30s', where 's' means seconds, 'ms' means milliseconds.\n\nTraffic to 10.0.0.0/8, 172.16.0.0/12 and 192.168.0.0/16 ranges will NOT be masqueraded. Any\nother traffic (assumed to be internet) will be masqueraded.  An example of a local destination\nfrom a pod could be its Node's IP address as well as another node's address or one of the IP\naddresses in Cluster's IP range. Any other traffic will be masqueraded by default. The\nbelow entries show the default set of rules that are applied by the ip-masq-agent:\n\n```shell\niptables -t nat -L IP-MASQ-AGENT\n```\n\n```none\ntarget     prot opt source               destination\nRETURN     all  --  anywhere             169.254.0.0/16\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/ip-masq-agent/",
      "meta": {
        "weight": 230,
        "rel_path": "tasks/administer-cluster/ip-masq-agent.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/ip-masq-agent.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/ip-masq-agent/",
          "line_start": null,
          "line_end": null,
          "quote": "IP Masquerade Agent User Guide"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ip-masquerade-agent-user-guide",
      "type": "concept",
      "title": "IP Masquerade Agent User Guide",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/ip-masq-agent.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/ip-masq-agent/",
          "line_start": 207,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-an-ip-masq-agent",
      "type": "concept",
      "title": "Create an ip-masq-agent",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/ip-masq-agent.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/ip-masq-agent/",
          "line_start": 5341,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:key-terms",
      "type": "concept",
      "title": "Key Terms",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/ip-masq-agent.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/ip-masq-agent/",
          "line_start": 516,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/nodelocaldns",
      "type": "page",
      "title": "Using NodeLocal DNSCache in Kubernetes Clusters",
      "summary": "",
      "body": "\n\n\n\nThis page provides an overview of NodeLocal DNSCache feature in Kubernetes.\n\n## \n\n \n\n \n\n## Introduction\n\nNodeLocal DNSCache improves Cluster DNS performance by running a DNS caching agent\non cluster nodes as a DaemonSet. In today's architecture, Pods in 'ClusterFirst' DNS mode\nreach out to a kube-dns `serviceIP` for DNS queries. This is translated to a\nkube-dns/CoreDNS endpoint via iptables rules added by kube-proxy.\nWith this new architecture, Pods will reach out to the DNS caching agent\nrunning on the same node, thereby avoiding iptables DNAT rules and connection tracking.\nThe local caching agent will query kube-dns service for cache misses of cluster\nhostnames (\"`cluster.local`\" suffix by default).\n\n## Motivation\n\n* With the current DNS architecture, it is possible that Pods with the highest DNS QPS\n  have to reach out to a different node, if there is no local kube-dns/CoreDNS instance.\n  Having a local cache will help improve the latency in such scenarios.\n\n* Skipping iptables DNAT and connection tracking will help reduce\n  [conntrack races](https://github.com/kubernetes/kubernetes/issues/56903)\n  and avoid UDP DNS entries filling up conntrack table.\n\n* Connections from the local caching agent to kube-dns service can be upgraded to TCP.\n  TCP conntrack entries will be removed on connection close in contrast with\n  UDP entries that have to timeout\n  ([default](https://www.kernel.org/doc/Documentation/networking/nf_conntrack-sysctl.txt)\n  `nf_conntrack_udp_timeout` is 30 seconds)\n\n* Upgrading DNS queries from UDP to TCP would reduce tail latency attributed to\n  dropped UDP packets and DNS timeouts usually up to 30s (3 retries + 10s timeout).\n  Since the nodelocal cache listens for UDP DNS queries, applications don't need to be changed.\n\n* Metrics & visibility into DNS requests at a node level.\n\n* Negative caching can be re-enabled, thereby reducing the number of queries for the kube-dns service.\n\n## Architecture Diagram\n\nThis is the path followed by DNS Queries after NodeLocal DNSCache is enabled:\n\n\n\n![NodeLocal DNSCache flow](/images/docs/nodelocaldns.svg) — This image shows how NodeLocal DNSCache handles DNS queries.\n\n\n## Configuration\n\n\n> **Note:** The local listen IP address for NodeLocal DNSCache can be any address that\ncan be guaranteed to not collide with any existing IP in your cluster.\nIt's recommended to use an address with a local scope, for example,\nfrom the 'link-local' range '169.254.0.0/16' for IPv4 or from the\n'Unique Local Address' range in IPv6 'fd00::/8'.\n\n\nThis feature can be enabled using the following steps:\n\n* Prepare a manifest similar to the sample\n  [`nodelocaldns.yaml`](https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/dns/nodelocaldns/nodelocaldns.yaml)\n  and save it as `nodelocaldns.yaml`.\n\n* If using IPv6, the CoreDNS configuration file needs to enclose all the IPv6 addresses\n  into square brackets if used in 'IP:Port' format. \n  If you are using the sample manifest from the previous point, this will require you to modify\n  [the configuration line L70](https://github.com/kubernetes/kubernetes/blob/b2ecd1b3a3192fbbe2b9e348e095326f51dc43dd/cluster/addons/dns/nodelocaldns/nodelocaldns.yaml#L70)\n  like this: \"`health [__PILLAR__LOCAL__DNS__]:8080`\"\n\n* Substitute the variables in the manifest with the right values:\n\n  ```shell\n  kubedns=`kubectl get svc kube-dns -n kube-system -o jsonpath={.spec.clusterIP}`\n  domain=<cluster-domain>\n  localdns=<node-local-address>\n  ```\n\n  `<cluster-domain>` is \"`cluster.local`\" by default. `<node-local-address>` is the\n  local listen IP address chosen for NodeLocal DNSCache.\n\n  * If kube-proxy is running in IPTABLES mode:\n\n    ``` bash\n    sed -i \"s/__PILLAR__LOCAL__DNS__/$localdns/g; s/__PILLAR__DNS__DOMAIN__/$domain/g; s/__PILLAR__DNS__SERVER__/$kubedns/g\" nodelocaldns.yaml\n    ```\n\n    `__PILLAR__CLUSTER__DNS__` and `__PILLAR__UPSTREAM__SERVERS__` will be populated by\n    the `node-local-dns` pods.\n    In this mode, the `node-local-dns` pods\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
      "meta": {
        "weight": 390,
        "rel_path": "tasks/administer-cluster/nodelocaldns.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": null,
          "line_end": null,
          "quote": "Using NodeLocal DNSCache in Kubernetes Clusters"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:motivation",
      "type": "concept",
      "title": "Motivation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 902,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:architecture-diagram",
      "type": "concept",
      "title": "Architecture Diagram",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 2122,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stubdomains-and-upstream-server-configuration",
      "type": "concept",
      "title": "StubDomains and Upstream server Configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 5818,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-memory-limits",
      "type": "concept",
      "title": "Setting memory limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 6424,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubelet-in-userns",
      "type": "page",
      "title": "Running Kubernetes Node Components as a Non-root User",
      "summary": "",
      "body": "\n\n\n\nThis document describes how to run Kubernetes Node components such as kubelet, CRI, OCI, and CNI\nwithout root privileges, by using a [user namespace](#gloss:userns).\n\nThis technique is also known as _rootless mode_.\n\n\n> **Note:** This document describes how to run Kubernetes Node components (and hence pods) as a non-root user.\n\nIf you are just looking for how to run a pod as a non-root user, see [SecurityContext](/docs/tasks/configure-pod-container/security-context/).\n\n\n## \n\n\n\n* [Enable Cgroup v2](https://rootlesscontaine.rs/getting-started/common/cgroup2/)\n* [Enable systemd with user session](https://rootlesscontaine.rs/getting-started/common/login/)\n* [Configure several sysctl values, depending on host Linux distribution](https://rootlesscontaine.rs/getting-started/common/sysctl/)\n* [Ensure that your unprivileged user is listed in `/etc/subuid` and `/etc/subgid`](https://rootlesscontaine.rs/getting-started/common/subuid/)\n* Enable the `KubeletInUserNamespace` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\n\n\n\n## Running Kubernetes inside Rootless Docker/Podman\n\n### kind\n\n[kind](https://kind.sigs.k8s.io/) supports running Kubernetes inside Rootless Docker or Rootless Podman.\n\nSee [Running kind with Rootless Docker](https://kind.sigs.k8s.io/docs/user/rootless/).\n\n### minikube\n\n[minikube](https://minikube.sigs.k8s.io/) also supports running Kubernetes inside Rootless Docker or Rootless Podman.\n\nSee the Minikube documentation:\n\n* [Rootless Docker](https://minikube.sigs.k8s.io/docs/drivers/docker/)\n* [Rootless Podman](https://minikube.sigs.k8s.io/docs/drivers/podman/)\n\n## Running Kubernetes inside Unprivileged Containers\n\n\n\n### sysbox\n\n[Sysbox](https://github.com/nestybox/sysbox) is an open-source container runtime\n(similar to \"runc\") that supports running system-level workloads such as Docker\nand Kubernetes inside unprivileged containers isolated with the Linux user\nnamespace.\n\nSee [Sysbox Quick Start Guide: Kubernetes-in-Docker](https://github.com/nestybox/sysbox/blob/master/docs/quickstart/kind.md) for more info.\n\nSysbox supports running Kubernetes inside unprivileged containers without\nrequiring Cgroup v2 and without the `KubeletInUserNamespace` feature gate. It\ndoes this by exposing specially crafted `/proc` and `/sys` filesystems inside\nthe container plus several other advanced OS virtualization techniques.\n\n## Running Rootless Kubernetes directly on a host\n\n\n\n### K3s\n\n[K3s](https://k3s.io/) experimentally supports rootless mode.\n\nSee [Running K3s with Rootless mode](https://rancher.com/docs/k3s/latest/en/advanced/#running-k3s-with-rootless-mode-experimental) for the usage.\n\n### Usernetes\n[Usernetes](https://github.com/rootless-containers/usernetes) is a reference distribution of Kubernetes that can be installed under `$HOME` directory without the root privilege.\n\nUsernetes supports both containerd and CRI-O as CRI runtimes.\nUsernetes supports multi-node clusters using Flannel (VXLAN).\n\nSee [the Usernetes repo](https://github.com/rootless-containers/usernetes) for the usage.\n\n## Manually deploy a node that runs the kubelet in a user namespace {#userns-the-hard-way}\n\nThis section provides hints for running Kubernetes in a user namespace manually.\n\n\n> **Note:** This section is intended to be read by developers of Kubernetes distributions, not by end users.\n\n\n### Creating a user namespace\n\nThe first step is to create a [user namespace](#gloss:userns).\n\nIf you are trying to run Kubernetes in a user-namespaced container such as\nRootless Docker/Podman or LXC/LXD, you are all set, and you can go to the next subsection.\n\nOtherwise you have to create a user namespace by yourself, by calling `unshare(2)` with `CLONE_NEWUSER`.\n\nA user namespace can be also unshared by using command line tools such as:\n\n- [`unshare(1)`](https://man7.org/linux/man-pages/man1/unshare.1.html)\n- [RootlessKit](https://github.com/rootless-containers/rootlesskit)\n- [become-root](https://github.com/giuseppe/become-root)\n\nAfter u\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
      "meta": {
        "weight": 300,
        "rel_path": "tasks/administer-cluster/kubelet-in-userns.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": null,
          "line_end": null,
          "quote": "Running Kubernetes Node Components as a Non-root User"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-kubernetes-inside-rootless-docker-podman",
      "type": "concept",
      "title": "Running Kubernetes inside Rootless Docker/Podman",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 1247,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-kubernetes-inside-unprivileged-containers",
      "type": "concept",
      "title": "Running Kubernetes inside Unprivileged Containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 1813,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-rootless-kubernetes-directly-on-a-host",
      "type": "concept",
      "title": "Running Rootless Kubernetes directly on a host",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 2599,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manually-deploy-a-node-that-runs-the-kubelet-in-a-user-namespace-userns-the-hard-way",
      "type": "concept",
      "title": "Manually deploy a node that runs the kubelet in a user namespace {#userns-the-hard-way}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 3306,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:caveats",
      "type": "concept",
      "title": "Caveats",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 10516,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-seealso",
      "type": "concept",
      "title": "{{% heading \"seealso\" %}}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 10919,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sysbox",
      "type": "concept",
      "title": "sysbox",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 1895,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k3s",
      "type": "concept",
      "title": "K3s",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 2678,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:usernetes",
      "type": "concept",
      "title": "Usernetes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 2897,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-user-namespace",
      "type": "concept",
      "title": "Creating a user namespace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 3605,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-delegated-cgroup-tree",
      "type": "concept",
      "title": "Creating a delegated cgroup tree",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 4827,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-network",
      "type": "concept",
      "title": "Configuring network",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 5554,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-cri",
      "type": "concept",
      "title": "Configuring CRI",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 6665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-kubelet",
      "type": "concept",
      "title": "Configuring kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 8809,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-kube-proxy",
      "type": "concept",
      "title": "Configuring kube-proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 10017,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "type": "page",
      "title": "Operating etcd clusters for Kubernetes",
      "summary": "",
      "body": "\n\n[definition:etcd]\n\n## \n\nBefore you follow steps in this page to deploy, manage, back up or restore etcd,\nyou need to understand the typical expectations for operating an etcd cluster.\nRefer to the [etcd documentation](https://etcd.io/docs/) for more context.\n\nKey details include:\n\n* The minimum recommended etcd versions to run in production are `3.4.29+` and `3.5.11+`.\n\n* etcd is a leader-based distributed system. Ensure that the leader\n  periodically send heartbeats on time to all followers to keep the cluster\n  stable.\n\n* You should run etcd as a cluster with an odd number of members.\n\n* Aim to ensure that no resource starvation occurs.\n\n  Performance and stability of the cluster is sensitive to network and disk\n  I/O. Any resource starvation can lead to heartbeat timeout, causing instability\n  of the cluster. An unstable etcd indicates that no leader is elected. Under\n  such circumstances, a cluster cannot make any changes to its current state,\n  which implies no new pods can be scheduled.\n\n### Resource requirements for etcd\n\nOperating etcd with limited resources is suitable only for testing purposes.\nFor deploying in production, advanced hardware configuration is required.\nBefore deploying etcd in production, see\n[resource requirement reference](https://etcd.io/docs/current/op-guide/hardware/#example-hardware-configurations).\n\nKeeping etcd clusters stable is critical to the stability of Kubernetes\nclusters. Therefore, run etcd clusters on dedicated machines or isolated\nenvironments for [guaranteed resource requirements](https://etcd.io/docs/current/op-guide/hardware/).\n\n### Tools\n\nDepending on which specific outcome you're working on, you will need the `etcdctl` tool or the\n`etcdutl` tool (you may need both).\n\n\n\n## Understanding etcdctl and etcdutl\n\n`etcdctl` and `etcdutl` are command-line tools used to interact with etcd clusters, but they serve different purposes:\n\n- `etcdctl`: This is the primary command-line client for interacting with etcd over a\nnetwork. It is used for day-to-day operations such as managing keys and values,\nadministering the cluster, checking health, and more.\n\n- `etcdutl`: This is an administration utility designed to operate directly on etcd data\nfiles, including migrating data between etcd versions, defragmenting the database,\nrestoring snapshots, and validating data consistency. For network operations, `etcdctl`\nshould be used.\n\nFor more information on `etcdutl`, you can refer to the [etcd recovery documentation](https://etcd.io/docs/v3.5/op-guide/recovery/).\n\n\n## Starting etcd clusters\n\nThis section covers starting a single-node and multi-node etcd cluster.\n\nThis guide assumes that `etcd` is already installed.\n\n### Single-node etcd cluster\n\nUse a single-node etcd cluster only for testing purposes.\n\n1. Run the following:\n\n   ```sh\n   etcd --listen-client-urls=http://$PRIVATE_IP:2379 \\\n      --advertise-client-urls=http://$PRIVATE_IP:2379\n   ```\n\n2. Start the Kubernetes API server with the flag\n   `--etcd-servers=$PRIVATE_IP:2379`.\n\n   Make sure `PRIVATE_IP` is set to your etcd client IP.\n\n### Multi-node etcd cluster\n\nFor durability and high availability, run etcd as a multi-node cluster in\nproduction and back it up periodically. A five-member cluster is recommended\nin production. For more information, see\n[FAQ documentation](https://etcd.io/docs/current/faq/#what-is-failure-tolerance).\n\nAs you're using Kubernetes, you have the option to run etcd as a container inside\none or more Pods. The `kubeadm` tool sets up etcd\n[static pods](#gloss:static-pod) by default, or\nyou can deploy a\n[separate cluster](/docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm/)\nand instruct kubeadm to use that etcd cluster as the control plane's backing store.\n\nYou configure an etcd cluster either by static member information or by dynamic\ndiscovery. For more information on clustering, see\n[etcd clustering documentation](https://etcd.io/docs/current/op-guide/clustering/).\n\nFor an example, consider\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
      "meta": {
        "weight": 270,
        "rel_path": "tasks/administer-cluster/configure-upgrade-etcd.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": null,
          "line_end": null,
          "quote": "Operating etcd clusters for Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-etcdctl-and-etcdutl",
      "type": "concept",
      "title": "Understanding etcdctl and etcdutl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 1869,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:starting-etcd-clusters",
      "type": "concept",
      "title": "Starting etcd clusters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 2660,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:securing-etcd-clusters",
      "type": "concept",
      "title": "Securing etcd clusters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 5131,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replacing-a-failed-etcd-member",
      "type": "concept",
      "title": "Replacing a failed etcd member",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 7623,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:backing-up-an-etcd-cluster",
      "type": "concept",
      "title": "Backing up an etcd cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 10859,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-out-etcd-clusters",
      "type": "concept",
      "title": "Scaling out etcd clusters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 14323,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restoring-an-etcd-cluster",
      "type": "concept",
      "title": "Restoring an etcd cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 15052,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrading-etcd-clusters",
      "type": "concept",
      "title": "Upgrading etcd clusters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 18767,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:maintaining-etcd-clusters",
      "type": "concept",
      "title": "Maintaining etcd clusters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 19004,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-requirements-for-etcd",
      "type": "concept",
      "title": "Resource requirements for etcd",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 1118,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tools",
      "type": "concept",
      "title": "Tools",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 1710,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:single-node-etcd-cluster",
      "type": "concept",
      "title": "Single-node etcd cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 2814,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multi-node-etcd-cluster",
      "type": "concept",
      "title": "Multi-node etcd cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 3198,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multi-node-etcd-cluster-with-load-balancer",
      "type": "concept",
      "title": "Multi-node etcd cluster with load balancer",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 4821,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:securing-communication",
      "type": "concept",
      "title": "Securing communication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 6043,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limiting-access-of-etcd-clusters",
      "type": "concept",
      "title": "Limiting access of etcd clusters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 6674,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:built-in-snapshot",
      "type": "concept",
      "title": "Built-in snapshot",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 11354,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-snapshot",
      "type": "concept",
      "title": "Volume snapshot",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 13536,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:snapshot-using-etcdctl-options",
      "type": "concept",
      "title": "Snapshot using etcdctl options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 13719,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-defragmentation",
      "type": "concept",
      "title": "Cluster defragmentation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 19178,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/dns-custom-nameservers",
      "type": "page",
      "title": "Customizing DNS Service",
      "summary": "",
      "body": "\nThis page explains how to configure your DNS\n[Pod(s)](#gloss:pod) and customize the\nDNS resolution process in your cluster.\n\n## \n\n\n\nYour cluster must be running the CoreDNS add-on.\n\n\n\n\n\n## Introduction\n\nDNS is a built-in Kubernetes service launched automatically\nusing the _addon manager_ [cluster add-on](https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/addon-manager/README.md).\n\n\n> **Note:** The CoreDNS Service is named `kube-dns` in the `metadata.name` field.  \nThe intent is to ensure greater interoperability with workloads that relied on\nthe legacy `kube-dns` Service name to resolve addresses internal to the cluster.\nUsing a Service named `kube-dns` abstracts away the implementation detail of\nwhich DNS provider is running behind that common name.\n\n\nIf you are running CoreDNS as a Deployment, it will typically be exposed as\na Kubernetes Service with a static IP address.\nThe kubelet passes DNS resolver information to each container with the\n`--cluster-dns=<dns-service-ip>` flag.\n\nDNS names also need domains. You configure the local domain in the kubelet\nwith the flag `--cluster-domain=<default-local-domain>`.\n\nThe DNS server supports forward lookups (A and AAAA records), port lookups (SRV records),\nreverse IP address lookups (PTR records), and more. For more information, see\n[DNS for Services and Pods](/docs/concepts/services-networking/dns-pod-service/).\n\nIf a Pod's `dnsPolicy` is set to `default`, it inherits the name resolution\nconfiguration from the node that the Pod runs on. The Pod's DNS resolution\nshould behave the same as the node.\nBut see [Known issues](/docs/tasks/administer-cluster/dns-debugging-resolution/#known-issues).\n\nIf you don't want this, or if you want a different DNS config for pods, you can\nuse the kubelet's `--resolv-conf` flag.  Set this flag to \"\" to prevent Pods from\ninheriting DNS. Set it to a valid file path to specify a file other than\n`/etc/resolv.conf` for DNS inheritance.\n\n## CoreDNS\n\nCoreDNS is a general-purpose authoritative DNS server that can serve as cluster DNS,\ncomplying with the [DNS specifications](https://github.com/kubernetes/dns/blob/master/docs/specification.md).\n\n### CoreDNS ConfigMap options\n\nCoreDNS is a DNS server that is modular and pluggable, with plugins adding new functionalities.\nThe CoreDNS server can be configured by maintaining a [Corefile](https://coredns.io/2017/07/23/corefile-explained/),\nwhich is the CoreDNS configuration file. As a cluster administrator, you can modify the\n[ConfigMap](#gloss:configmap) for the CoreDNS Corefile to\nchange how DNS service discovery behaves for that cluster.\n\nIn Kubernetes, CoreDNS is installed with the following default Corefile configuration:\n\n```yaml\napiVersion: v1\nkind: ConfigMap\nmetadata:\n  name: coredns\n  namespace: kube-system\ndata:\n  Corefile: |\n    .:53 {\n        errors\n        health {\n            lameduck 5s\n        }\n        ready\n        kubernetes cluster.local in-addr.arpa ip6.arpa {\n            pods insecure\n            fallthrough in-addr.arpa ip6.arpa\n            ttl 30\n        }\n        prometheus :9153\n        forward . /etc/resolv.conf\n        cache 30\n        loop\n        reload\n        loadbalance\n    }\n```\n\nThe Corefile configuration includes the following [plugins](https://coredns.io/plugins/) of CoreDNS:\n\n* [errors](https://coredns.io/plugins/errors/): Errors are logged to stdout.\n* [health](https://coredns.io/plugins/health/): Health of CoreDNS is reported to\n  `http://localhost:8080/health`. In this extended syntax `lameduck` will make the process\n  unhealthy then wait for 5 seconds before the process is shut down.\n* [ready](https://coredns.io/plugins/ready/): An HTTP endpoint on port 8181 will return 200 OK,\n  when all plugins that are able to signal readiness have done so.\n* [kubernetes](https://coredns.io/plugins/kubernetes/): CoreDNS will reply to DNS queries\n  based on IP of the Services and Pods. You can find [more details](https://coredns.io/plugins/kubernetes/)\n  about this plugin \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
      "meta": {
        "weight": 160,
        "rel_path": "tasks/administer-cluster/dns-custom-nameservers.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": null,
          "line_end": null,
          "quote": "Customizing DNS Service"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:coredns",
      "type": "concept",
      "title": "CoreDNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 2129,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:coredns-configmap-options",
      "type": "concept",
      "title": "CoreDNS ConfigMap options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 2337,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuration-of-stub-domain-and-upstream-nameserver-using-coredns",
      "type": "concept",
      "title": "Configuration of Stub-domain and upstream nameserver using CoreDNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 5773,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/memory-manager",
      "type": "page",
      "title": "Control Memory Management Policies on a Node",
      "summary": "",
      "body": "\n\n\n\nThe Kubernetes *Memory Manager* enables the feature of guaranteed memory (and hugepages)\nallocation for pods in the `Guaranteed` [QoS class](#gloss:qos-class).\n\nThe Memory Manager employs a hint generation protocol to yield the most suitable NUMA affinity for a pod.\nThe Memory Manager feeds the central manager (*Topology Manager*) with these affinity hints.\nBased on both the hints and Topology Manager policy, the pod is rejected or admitted to the node.\n\nMoreover, the Memory Manager ensures that the memory which a pod requests\nis allocated from a minimum number of NUMA nodes.\n\nFor background about memory resources for Pods, read\n[Assign Memory Resources to Containers and Pods](/docs/tasks/configure-pod-container/assign-memory-resource/).\n\n## \n\n\n\n If you are running an older version of Kubernetes, check the documentation\nfor the version of Kubernetes you are running.\n\n### Resource alignment prerequisites\n\nTo align memory resources with other requested resources in a Pod spec:\n\n- the CPU Manager should be enabled and proper CPU Manager policy should be configured on a Node.\n  See [control CPU Management Policies](/docs/tasks/administer-cluster/cpu-management-policies/);\n- the Topology Manager should be enabled and proper Topology Manager policy should be configured on a Node.\n  See [control Topology Management Policies](/docs/tasks/administer-cluster/topology-manager/).\n\n### Windows support\n\n\n\nWindows support can be enabled via the `WindowsCPUAndMemoryAffinity` feature gate\nand it requires support in the container runtime.  \nOnly the [None](#policy-none) and [BestEffort](#policy-best-effort) policies are supported on Windows.\n\n## How does the Memory Manager operate?\n\nFor Linux nodes, the Memory Manager offers the guaranteed memory (and hugepages) allocation\nfor Pods in Guaranteed QoS class.\nTo immediately put the Memory Manager into operation follow the guidelines in the section\n[Memory Manager configuration](#memory-manager-configuration), and subsequently,\nprepare and deploy a `Guaranteed` Pod as illustrated in the section\n[Placing a Pod in the Guaranteed QoS class](#placing-a-pod-in-the-guaranteed-qos-class).\n\nThe Memory Manager is a hint provider, and it provides topology hints for\nthe Topology Manager which then aligns the requested resources according to these topology hints.\nOn Linux, it also enforces `cgroups` (specifically, `cpuset.mems`) for Pods.\nThe complete flow diagram concerning pod admission and deployment process is illustrated\nbelow:\n\n![Memory Manager in the pod admission and deployment process](/images/docs/memory-manager-diagram.svg)\n\nDuring this process, the Memory Manager updates its internal counters stored in\n[Node Map and Memory Maps][2] to manage guaranteed memory allocation.\n\nThe memory manager activates during kubelet startup if a node administrator configures\n`reservedMemory` for the kubelet (section [Reserved memory configuration](#reserved-memory-flag)).\nIn this case, the kubelet updates its node map to reflect this reservation.\n\nWhen the `Static` policy is configured, you **must** configure reserved memory for the node\n(for example, with the `reservedMemory` configuration field in the kubelet configuration).\n\nAn important topic in the context of Memory Manager operation is the management of NUMA groups.\nEach time pod's memory request is in excess of single NUMA node capacity, the Memory Manager\nattempts to create a group that comprises several NUMA nodes and that features extended memory\ncapacity.\n\n## Memory Manager configuration\n\nOther Managers should already be configured (see [resource alignment prerequisites](#resource-alignment-prerequisites).\nSet the `memoryManagerPolicy` configuration field within the [kubelet configuration](), to the name of your chosen [policy](#policies).\n\nOptionally, some amount of memory can be reserved for system or kubelet processes to increase\nnode stability (section [Reserved memory configuration](#reserved-memory-flag)).\n\n### Policies\n\nKubernetes' memory manag\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
      "meta": {
        "weight": 145,
        "rel_path": "tasks/administer-cluster/memory-manager.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": null,
          "line_end": null,
          "quote": "Control Memory Management Policies on a Node"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-does-the-memory-manager-operate",
      "type": "concept",
      "title": "How does the Memory Manager operate?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 1925,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memory-manager-configuration",
      "type": "concept",
      "title": "Memory Manager configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 3764,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reserved-memory-configuration-reserved-memory-flag",
      "type": "concept",
      "title": "Reserved memory configuration {#reserved-memory-flag}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 6539,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:placing-a-pod-in-the-guaranteed-qos-class",
      "type": "concept",
      "title": "Placing a Pod in the Guaranteed QoS class",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 11520,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-alignment-prerequisites",
      "type": "concept",
      "title": "Resource alignment prerequisites",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 1083,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:windows-support",
      "type": "concept",
      "title": "Windows support",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 1595,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policies",
      "type": "concept",
      "title": "Policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 4296,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memory-manager-reserved-memory-syntax-reserved-memory-syntax",
      "type": "concept",
      "title": "Memory manager reserved memory syntax {#reserved-memory-syntax}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 8386,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:constraints-on-numa-memory-reservation",
      "type": "concept",
      "title": "Constraints on NUMA memory reservation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 8939,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configurations-to-avoid-reserved-memory-configurations-to-avoid",
      "type": "concept",
      "title": "Configurations to avoid {#reserved-memory-configurations-to-avoid}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 11099,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/switch-to-evented-pleg",
      "type": "page",
      "title": "Switching from Polling to CRI Event-based Updates to Container Status",
      "summary": "",
      "body": "\n\n\n\n\nThis page shows how to migrate nodes to use event based updates for container status. The event-based\nimplementation reduces node resource consumption by the kubelet, compared to the legacy approach\nthat relies on polling.\nYou may know this feature as _evented Pod lifecycle event generator (PLEG)_. That's the name used\ninternally within the Kubernetes project for a key implementation detail.\n\nThe polling based approach is referred to as _generic PLEG_.\n\n## \n\n* You need to run a version of Kubernetes that provides this feature.\n  Kubernetes v1.27 includes beta support for event-based container\n  status updates. The feature is beta but is _disabled_ by default\n  because it requires support from the container runtime.\n* \n  If you are running a different version of Kubernetes, check the documentation for that release.\n* The container runtime in use must support container lifecycle events.\n  The kubelet automatically switches back to the legacy generic PLEG\n  mechanism if the container runtime does not announce support for\n  container lifecycle events, even if you have this feature gate enabled.\n\n\n\n## Why switch to Evented PLEG?\n\n* The _Generic PLEG_ incurs non-negligible overhead due to frequent polling of container statuses.\n* This overhead is exacerbated by Kubelet's parallelized polling of container states, thus limiting\n  its scalability and causing poor performance and reliability problems.\n* The goal of _Evented PLEG_ is to reduce unnecessary work during inactivity\n  by replacing periodic polling.\n\n## Switching to Evented PLEG\n\n1. Start the Kubelet with the [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\n   `EventedPLEG` enabled. You can manage the kubelet feature gates editing the kubelet\n   [config file](/docs/tasks/administer-cluster/kubelet-config-file/) and restarting the kubelet service.\n   You need to do this on each node where you are using this feature.\n\n2. Make sure the node is [drained](/docs/tasks/administer-cluster/safely-drain-node/) before proceeding. \n\n3. Start the container runtime with the container event generation enabled. \n\n   \n   \n   Version 1.7+\n   \n   \n   Version 1.26+\n\n   Check if the CRI-O is already configured to emit CRI events by verifying the configuration,\n\n   ```shell\n   crio config | grep enable_pod_events\n   ```\n\n   If it is enabled, the output should be similar to the following:\n\n   ```none\n   enable_pod_events = true\n   ```\n\n   To enable it, start the CRI-O daemon with the flag `--enable-pod-events=true` or\n   use a dropin config with the following lines:\n\n   ```toml\n   [crio.runtime]\n   enable_pod_events: true\n   ```\n   \n   \n\n   \n\n4. Verify that the kubelet is using event-based container stage change monitoring.\n   To check, look for the term `EventedPLEG` in the kubelet logs.\n\n   The output should be similar to this:\n\n   ```console\n   I0314 11:10:13.909915 1105457 feature_gate.go:249] feature gates: &{map[EventedPLEG:true]}\n   ```\n\n   If you have set `--v` to 4 and above, you might see more entries that indicate\n   that the kubelet is using event-based container state monitoring.\n\n   ```console\n   I0314 11:12:42.009542 1110177 evented.go:238] \"Evented PLEG: Generated pod status from the received event\" podUID=3b2c6172-b112-447a-ba96-94e7022912dc\n   I0314 11:12:44.623326 1110177 evented.go:238] \"Evented PLEG: Generated pod status from the received event\" podUID=b3fba5ea-a8c5-4b76-8f43-481e17e8ec40\n   I0314 11:12:44.714564 1110177 evented.go:238] \"Evented PLEG: Generated pod status from the received event\" podUID=b3fba5ea-a8c5-4b76-8f43-481e17e8ec40\n   ```\n\n## \n\n* Learn more about the design in the Kubernetes Enhancement Proposal (KEP):\n  [Kubelet Evented PLEG for Better Performance](https://github.com/kubernetes/enhancements/blob/5b258a990adabc2ffdc9d84581ea6ed696f7ce6c/keps/sig-node/3386-kubelet-evented-pleg/README.md).\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/switch-to-evented-pleg/",
      "meta": {
        "weight": 90,
        "rel_path": "tasks/administer-cluster/switch-to-evented-pleg.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/switch-to-evented-pleg.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/switch-to-evented-pleg/",
          "line_start": null,
          "line_end": null,
          "quote": "Switching from Polling to CRI Event-based Updates to Container Status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-switch-to-evented-pleg",
      "type": "concept",
      "title": "Why switch to Evented PLEG?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/switch-to-evented-pleg.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/switch-to-evented-pleg/",
          "line_start": 1253,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:switching-to-evented-pleg",
      "type": "concept",
      "title": "Switching to Evented PLEG",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/switch-to-evented-pleg.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/switch-to-evented-pleg/",
          "line_start": 1668,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/verify-signed-artifacts",
      "type": "page",
      "title": "Verify Signed Kubernetes Artifacts",
      "summary": "",
      "body": "\n\n\n\n## \n\nYou will need to have the following tools installed:\n\n- `cosign` ([install guide](https://docs.sigstore.dev/cosign/system_config/installation/))\n- `curl` (often provided by your operating system)\n- `jq` ([download jq](https://jqlang.github.io/jq/download/))\n\n## Verifying binary signatures\n\nThe Kubernetes release process signs all binary artifacts (tarballs, SPDX files,\nstandalone binaries) by using cosign's keyless signing. To verify a particular\nbinary, retrieve it together with its signature and certificate:\n\n```bash\nURL=https://dl.k8s.io/release/v/bin/linux/amd64\nBINARY=kubectl\n\nFILES=(\n    \"$BINARY\"\n    \"$BINARY.sig\"\n    \"$BINARY.cert\"\n)\n\nfor FILE in \"${FILES[@]}\"; do\n    curl -sSfL --retry 3 --retry-delay 3 \"$URL/$FILE\" -o \"$FILE\"\ndone\n```\n\nThen verify the blob by using `cosign verify-blob`:\n\n```shell\ncosign verify-blob \"$BINARY\" \\\n  --signature \"$BINARY\".sig \\\n  --certificate \"$BINARY\".cert \\\n  --certificate-identity krel-staging@k8s-releng-prod.iam.gserviceaccount.com \\\n  --certificate-oidc-issuer https://accounts.google.com\n```\n\n\n> **Note:** Cosign 2.0 requires the `--certificate-identity` and `--certificate-oidc-issuer` options.\n\nTo learn more about keyless signing, please refer to [Keyless Signatures](https://docs.sigstore.dev/cosign/signing/overview/).\n\nPrevious versions of Cosign required that you set `COSIGN_EXPERIMENTAL=1`.\n\nFor additional information, please refer to the [sigstore Blog](https://blog.sigstore.dev/cosign-2-0-released/)\n\n\n## Verifying image signatures\n\nFor a complete list of images that are signed please refer\nto [Releases](/releases/download/).\n\nPick one image from this list and verify its signature using\nthe `cosign verify` command:\n\n```shell\ncosign verify registry.k8s.io/kube-apiserver-amd64:v \\\n  --certificate-identity krel-trust@k8s-releng-prod.iam.gserviceaccount.com \\\n  --certificate-oidc-issuer https://accounts.google.com \\\n  | jq .\n```\n\n### Verifying images for all control plane components\n\nTo verify all signed control plane images for the latest stable version\n(v), please run the following commands:\n\n```shell\ncurl -Ls \"https://sbom.k8s.io/$(curl -Ls https://dl.k8s.io/release/stable.txt)/release\" \\\n  | grep \"SPDXID: SPDXRef-Package-registry.k8s.io\" \\\n  | grep -v sha256 | cut -d- -f3- | sed 's/-/\\//' | sed 's/-v1/:v1/' \\\n  | sort > images.txt\ninput=images.txt\nwhile IFS= read -r image\ndo\n  cosign verify \"$image\" \\\n    --certificate-identity krel-trust@k8s-releng-prod.iam.gserviceaccount.com \\\n    --certificate-oidc-issuer https://accounts.google.com \\\n    | jq .\ndone < \"$input\"\n```\n\nOnce you have verified an image, you can specify the image by its digest in your Pod\nmanifests as per this example:\n\n```console\nregistry-url/image-name@sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2\n```\n\nFor more information, please refer\nto the [Image Pull Policy](/docs/concepts/containers/images/#image-pull-policy)\nsection.\n\n## Verifying Image Signatures with Admission Controller\n\nFor non-control plane images (for example\n[conformance image](https://github.com/kubernetes/kubernetes/blob/master/test/conformance/image/README.md)),\nsignatures can also be verified at deploy time using\n[sigstore policy-controller](https://docs.sigstore.dev/policy-controller/overview)\nadmission controller.\n\nHere are some helpful resources to get started with `policy-controller`:\n\n- [Installation](https://github.com/sigstore/helm-charts/tree/main/charts/policy-controller)\n- [Configuration Options](https://github.com/sigstore/policy-controller/tree/main/config)\n\n## Verify the Software Bill Of Materials\n\nYou can verify the Kubernetes Software Bill of Materials (SBOM) by using the\nsigstore certificate and signature, or the corresponding SHA files:\n\n```shell\n# Retrieve the latest available Kubernetes release version\nVERSION=$(curl -Ls https://dl.k8s.io/release/stable.txt)\n\n# Verify the SHA512 sum\ncurl -Ls \"https://sbom.k8s.io/$VERSION/release\" -o \"$VERSION.spdx\"\necho \"$(curl -Ls \"https://sbom.k8s.io/$VERS\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
      "meta": {
        "weight": 420,
        "rel_path": "tasks/administer-cluster/verify-signed-artifacts.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": null,
          "line_end": null,
          "quote": "Verify Signed Kubernetes Artifacts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verifying-binary-signatures",
      "type": "concept",
      "title": "Verifying binary signatures",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 375,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verifying-image-signatures",
      "type": "concept",
      "title": "Verifying image signatures",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 1636,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verifying-image-signatures-with-admission-controller",
      "type": "concept",
      "title": "Verifying Image Signatures with Admission Controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 3143,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-the-software-bill-of-materials",
      "type": "concept",
      "title": "Verify the Software Bill Of Materials",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 3768,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verifying-images-for-all-control-plane-components",
      "type": "concept",
      "title": "Verifying images for all control plane components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 2100,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/developing-cloud-controller-manager",
      "type": "page",
      "title": "Developing Cloud Controller Manager",
      "summary": "",
      "body": "\n\n\n\n[definition:cloud-controller-manager]\n\n\n\n\n\n## Background\n\nSince cloud providers develop and release at a different pace compared to the Kubernetes project, abstracting the provider-specific code to the `cloud-controller-manager` binary allows cloud vendors to evolve independently from the core Kubernetes code.\n\nThe Kubernetes project provides skeleton cloud-controller-manager code with Go interfaces to allow you (or your cloud provider) to plug in your own implementations. This means that a cloud provider can implement a cloud-controller-manager by importing packages from Kubernetes core; each cloudprovider will register their own code by calling `cloudprovider.RegisterCloudProvider` to update a global variable of available cloud providers.\n\n## Developing\n\n### Out of tree\n\nTo build an out-of-tree cloud-controller-manager for your cloud:\n\n1. Create a go package with an implementation that satisfies [cloudprovider.Interface](https://github.com/kubernetes/cloud-provider/blob/master/cloud.go).\n2. Use [`main.go` in cloud-controller-manager](https://github.com/kubernetes/kubernetes/blob/master/cmd/cloud-controller-manager/main.go) from Kubernetes core as a template for your `main.go`. As mentioned above, the only difference should be the cloud package that will be imported.\n3. Import your cloud package in `main.go`, ensure your package has an `init` block to run [`cloudprovider.RegisterCloudProvider`](https://github.com/kubernetes/cloud-provider/blob/master/plugins.go).\n\nMany cloud providers publish their controller manager code as open source. If you are creating\na new cloud-controller-manager from scratch, you could take an existing out-of-tree cloud\ncontroller manager as your starting point.\n\n### In tree\n\nFor in-tree cloud providers, you can run the in-tree cloud controller manager as a [daemonset](#gloss:daemonset) in your cluster. See [Cloud Controller Manager Administration](/docs/tasks/administer-cluster/running-cloud-controller/) for more details.\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
      "meta": {
        "weight": 190,
        "rel_path": "tasks/administer-cluster/developing-cloud-controller-manager.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": null,
          "line_end": null,
          "quote": "Developing Cloud Controller Manager"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:background",
      "type": "concept",
      "title": "Background",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": 215,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:developing",
      "type": "concept",
      "title": "Developing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": 924,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:out-of-tree",
      "type": "concept",
      "title": "Out of tree",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": 939,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:in-tree",
      "type": "concept",
      "title": "In tree",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": 1891,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "type": "page",
      "title": "Debugging DNS Resolution",
      "summary": "",
      "body": "\nThis page provides hints on diagnosing DNS problems.\n\n## \n\n  \nYour cluster must be configured to use the CoreDNS\n[addon](#gloss:addons) or its precursor,\nkube-dns.  \n\n\n\n\n\n### Create a simple Pod to use as a test environment\n\n\n\n\n> **Note:** This example creates a pod in the `default` namespace. DNS name resolution for \nservices depends on the namespace of the pod. For more information, review\n[DNS for Services and Pods](/docs/concepts/services-networking/dns-pod-service/#what-things-get-dns-names).\n\n\nUse that manifest to create a Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/dns/dnsutils.yaml\n```\n```\npod/dnsutils created\n```\n…and verify its status:\n```shell\nkubectl get pods dnsutils\n```\n```\nNAME       READY     STATUS    RESTARTS   AGE\ndnsutils   1/1       Running   0          <some-time>\n```\n\nOnce that Pod is running, you can exec `nslookup` in that environment.\nIf you see something like the following, DNS is working correctly.\n\n```shell\nkubectl exec -i -t dnsutils -- nslookup kubernetes.default\n```\n```\nServer:    10.0.0.10\nAddress 1: 10.0.0.10\n\nName:      kubernetes.default\nAddress 1: 10.0.0.1\n```\n\nIf the `nslookup` command fails, check the following:\n\n### Check the local DNS configuration first\n\nTake a look inside the resolv.conf file.\n(See [Customizing DNS Service](/docs/tasks/administer-cluster/dns-custom-nameservers) and\n[Known issues](#known-issues) below for more information)\n\n```shell\nkubectl exec -ti dnsutils -- cat /etc/resolv.conf\n```\n\nVerify that the search path and name server are set up like the following\n(note that search path may vary for different cloud providers):\n\n```\nsearch default.svc.cluster.local svc.cluster.local cluster.local google.internal c.gce_project_id.internal\nnameserver 10.0.0.10\noptions ndots:5\n```\n\nErrors such as the following indicate a problem with the CoreDNS (or kube-dns)\nadd-on or with associated Services:\n\n```shell\nkubectl exec -i -t dnsutils -- nslookup kubernetes.default\n```\n```\nServer:    10.0.0.10\nAddress 1: 10.0.0.10\n\nnslookup: can't resolve 'kubernetes.default'\n```\n\nor\n\n```shell\nkubectl exec -i -t dnsutils -- nslookup kubernetes.default\n```\n```\nServer:    10.0.0.10\nAddress 1: 10.0.0.10 kube-dns.kube-system.svc.cluster.local\n\nnslookup: can't resolve 'kubernetes.default'\n```\n\n### Check if the DNS pod is running\n\nUse the `kubectl get pods` command to verify that the DNS pod is running.\n\n```shell\nkubectl get pods --namespace=kube-system -l k8s-app=kube-dns\n```\n```\nNAME                       READY     STATUS    RESTARTS   AGE\n...\ncoredns-7b96bf9f76-5hsxb   1/1       Running   0           1h\ncoredns-7b96bf9f76-mvmmt   1/1       Running   0           1h\n...\n```\n\n\n> **Note:** The value for label `k8s-app` is `kube-dns` for both CoreDNS and kube-dns deployments.\n\n\n\nIf you see that no CoreDNS Pod is running or that the Pod has failed/completed,\nthe DNS add-on may not be deployed by default in your current environment and you\nwill have to deploy it manually.\n\n### Check for errors in the DNS pod\n\nUse the `kubectl logs` command to see logs for the DNS containers.\n\nFor CoreDNS:\n```shell\nkubectl logs --namespace=kube-system -l k8s-app=kube-dns\n```\n\nHere is an example of a healthy CoreDNS log:\n\n```\n.:53\n2018/08/15 14:37:17 [INFO] CoreDNS-1.2.2\n2018/08/15 14:37:17 [INFO] linux/amd64, go1.10.3, 2e322f6\nCoreDNS-1.2.2\nlinux/amd64, go1.10.3, 2e322f6\n2018/08/15 14:37:17 [INFO] plugin/reload: Running configuration MD5 = 24e6c59e83ce706f07bcc82c31b1ea1c\n```\n\nSee if there are any suspicious or unexpected messages in the logs.\n\n### Is DNS service up?\n\nVerify that the DNS service is up by using the `kubectl get service` command.\n\n```shell\nkubectl get svc --namespace=kube-system\n```\n```\nNAME         TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)             AGE\n...\nkube-dns     ClusterIP   10.0.0.10      <none>        53/UDP,53/TCP        1h\n...\n```\n\n\n> **Note:** The service name is `kube-dns` for both CoreDNS and kube-dns deployments.\n\n\n\n\nIf you have created the Service or in the case it \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
      "meta": {
        "weight": 170,
        "rel_path": "tasks/administer-cluster/dns-debugging-resolution.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": null,
          "line_end": null,
          "quote": "Debugging DNS Resolution"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:known-issues",
      "type": "concept",
      "title": "Known issues",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 8723,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-simple-pod-to-use-as-a-test-environment",
      "type": "concept",
      "title": "Create a simple Pod to use as a test environment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 330,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-the-local-dns-configuration-first",
      "type": "concept",
      "title": "Check the local DNS configuration first",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 1411,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-if-the-dns-pod-is-running",
      "type": "concept",
      "title": "Check if the DNS pod is running",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 2499,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-for-errors-in-the-dns-pod",
      "type": "concept",
      "title": "Check for errors in the DNS pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 3200,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:is-dns-service-up",
      "type": "concept",
      "title": "Is DNS service up?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 3765,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:are-dns-endpoints-exposed",
      "type": "concept",
      "title": "Are DNS endpoints exposed?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 4401,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:are-dns-queries-being-received-processed",
      "type": "concept",
      "title": "Are DNS queries being received/processed?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 4935,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:does-coredns-have-sufficient-permissions",
      "type": "concept",
      "title": "Does CoreDNS have sufficient permissions?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 6609,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:are-you-in-the-right-namespace-for-the-service",
      "type": "concept",
      "title": "Are you in the right namespace for the service?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 8097,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubelet-credential-provider",
      "type": "page",
      "title": "Configure a kubelet image credential provider",
      "summary": "",
      "body": "\n\n\n\nStarting from Kubernetes v1.20, the kubelet can dynamically retrieve credentials for a container image registry\nusing exec plugins. The kubelet and the exec plugin communicate through stdio (stdin, stdout, and stderr) using\nKubernetes versioned APIs. These plugins allow the kubelet to request credentials for a container registry dynamically\nas opposed to storing static credentials on disk. For example, the plugin may talk to a local metadata server to retrieve\nshort-lived credentials for an image that is being pulled by the kubelet.\n\nYou may be interested in using this capability if any of the below are true:\n\n* API calls to a cloud provider service are required to retrieve authentication information for a registry.\n* Credentials have short expiration times and requesting new credentials frequently is required.\n* Storing registry credentials on disk or in imagePullSecrets is not acceptable.\n\nThis guide demonstrates how to configure the kubelet's image credential provider plugin mechanism.\n\n## Service Account Token for Image Pulls\n\n\nStarting from Kubernetes v1.33,\nthe kubelet can be configured to send a service account token\nbound to the pod for which the image pull is being performed\nto the credential provider plugin.\n\nThis allows the plugin to exchange the token for credentials\nto access the image registry.\n\nTo enable this feature,\nthe `KubeletServiceAccountTokenForCredentialProviders` feature gate\nmust be enabled on the kubelet,\nand the `tokenAttributes` field must be set\nin the `CredentialProviderConfig` file for the plugin.\n\nThe `tokenAttributes` field contains information\nabout the service account token that will be passed to the plugin,\nincluding the intended audience for the token\nand whether the plugin requires the pod to have a service account.\n\nUsing service account token credentials can enable the following use-cases:\n\n* Avoid needing a kubelet/node-based identity to pull images from a registry.\n* Allow workloads to pull images based on their own runtime identity\nwithout long-lived/persisted secrets.\n\n## \n\n* You need a Kubernetes cluster with nodes that support kubelet credential\n  provider plugins. This support is available in Kubernetes ;\n  Kubernetes v1.24 and v1.25 included this as a beta feature, enabled by default.\n* If you are configuring a credential provider plugin\nthat requires the service account token,\nyou need a Kubernetes cluster with nodes running Kubernetes v1.33 or later\nand the `KubeletServiceAccountTokenForCredentialProviders` feature gate\nenabled on the kubelet.\n* A working implementation of a credential provider exec plugin. You can build your own plugin or use one provided by cloud providers.\n\n\n\n\n\n## Installing Plugins on Nodes\n\nA credential provider plugin is an executable binary that will be run by the kubelet. Ensure that the plugin binary exists on\nevery node in your cluster and stored in a known directory. The directory will be required later when configuring kubelet flags.\n\n## Configuring the Kubelet\n\nIn order to use this feature, the kubelet expects two flags to be set:\n\n* `--image-credential-provider-config` - the path to the credential provider plugin config file.\n* `--image-credential-provider-bin-dir` - the path to the directory where credential provider plugin binaries are located.\n\n### Configure a kubelet credential provider\n\nThe configuration file passed into `--image-credential-provider-config` is read by the kubelet to determine which exec plugins\nshould be invoked for which container images. Here's an example configuration file you may end up using if you are using the\n[ECR-based plugin](https://github.com/kubernetes/cloud-provider-aws/tree/master/cmd/ecr-credential-provider):\n\n```yaml\napiVersion: kubelet.config.k8s.io/v1\nkind: CredentialProviderConfig\n# providers is a list of credential provider helper plugins that will be enabled by the kubelet.\n# Multiple providers may match against a single image, in which case credentials\n# from all providers will be returned to the ku\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
      "meta": {
        "weight": 120,
        "rel_path": "tasks/administer-cluster/kubelet-credential-provider.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure a kubelet image credential provider"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-account-token-for-image-pulls",
      "type": "concept",
      "title": "Service Account Token for Image Pulls",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": 1087,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installing-plugins-on-nodes",
      "type": "concept",
      "title": "Installing Plugins on Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": 2943,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-the-kubelet",
      "type": "concept",
      "title": "Configuring the Kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": 3231,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-a-kubelet-credential-provider",
      "type": "concept",
      "title": "Configure a kubelet credential provider",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": 3552,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/enable-disable-api",
      "type": "page",
      "title": "Enable Or Disable A Kubernetes API",
      "summary": "",
      "body": "\nThis page shows how to enable or disable an API version from your cluster's\n[control plane](#gloss:control-plane).\n\n\n\n\nSpecific API versions can be turned on or off by passing `--runtime-config=api/<version>` as a\ncommand line argument to the API server. The values for this argument are a comma-separated\nlist of API versions. Later values override earlier values.\n\nThe `runtime-config` command line argument also supports 2 special keys:\n\n- `api/all`, representing all known APIs\n- `api/legacy`, representing only legacy APIs. Legacy APIs are any APIs that have been\n   explicitly [deprecated](/docs/reference/using-api/deprecation-policy/).\n\nFor example, to turn off all API versions except v1, pass `--runtime-config=api/all=false,api/v1=true`\nto the `kube-apiserver`.\n\n## \n\nRead the [full documentation](/docs/reference/command-line-tools-reference/kube-apiserver/)\nfor the `kube-apiserver` component.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/enable-disable-api/",
      "meta": {
        "weight": 200,
        "rel_path": "tasks/administer-cluster/enable-disable-api.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/enable-disable-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/enable-disable-api/",
          "line_start": null,
          "line_end": null,
          "quote": "Enable Or Disable A Kubernetes API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/certificates",
      "type": "page",
      "title": "Generate Certificates Manually",
      "summary": "",
      "body": "\n\nWhen using client certificate authentication, you can generate certificates\nmanually through [`easyrsa`](https://github.com/OpenVPN/easy-rsa), [`openssl`](https://github.com/openssl/openssl) or [`cfssl`](https://github.com/cloudflare/cfssl).\n\n\n\n### easyrsa\n\n**easyrsa** can manually generate certificates for your cluster.\n\n1. Download, unpack, and initialize the patched version of `easyrsa3`.\n\n   ```shell\n   curl -LO https://dl.k8s.io/easy-rsa/easy-rsa.tar.gz\n   tar xzf easy-rsa.tar.gz\n   cd easy-rsa-master/easyrsa3\n   ./easyrsa init-pki\n   ```\n1. Generate a new certificate authority (CA). `--batch` sets automatic mode;\n   `--req-cn` specifies the Common Name (CN) for the CA's new root certificate.\n\n   ```shell\n   ./easyrsa --batch \"--req-cn=${MASTER_IP}@`date +%s`\" build-ca nopass\n   ```\n\n1. Generate server certificate and key.\n\n   The argument `--subject-alt-name` sets the possible IPs and DNS names the API server will\n   be accessed with. The `MASTER_CLUSTER_IP` is usually the first IP from the service CIDR\n   that is specified as the `--service-cluster-ip-range` argument for both the API server and\n   the controller manager component. The argument `--days` is used to set the number of days\n   after which the certificate expires.\n   The sample below also assumes that you are using `cluster.local` as the default\n   DNS domain name.\n\n   ```shell\n   ./easyrsa --subject-alt-name=\"IP:${MASTER_IP},\"\\\n   \"IP:${MASTER_CLUSTER_IP},\"\\\n   \"DNS:kubernetes,\"\\\n   \"DNS:kubernetes.default,\"\\\n   \"DNS:kubernetes.default.svc,\"\\\n   \"DNS:kubernetes.default.svc.cluster,\"\\\n   \"DNS:kubernetes.default.svc.cluster.local\" \\\n   --days=10000 \\\n   build-server-full server nopass\n   ```\n\n1. Copy `pki/ca.crt`, `pki/issued/server.crt`, and `pki/private/server.key` to your directory.\n\n1. Fill in and add the following parameters into the API server start parameters:\n\n   ```shell\n   --client-ca-file=/yourdirectory/ca.crt\n   --tls-cert-file=/yourdirectory/server.crt\n   --tls-private-key-file=/yourdirectory/server.key\n   ```\n\n### openssl\n\n**openssl** can manually generate certificates for your cluster.\n\n1. Generate a ca.key with 2048bit:\n\n   ```shell\n   openssl genrsa -out ca.key 2048\n   ```\n\n1. According to the ca.key generate a ca.crt (use `-days` to set the certificate effective time):\n\n   ```shell\n   openssl req -x509 -new -noenc -key ca.key -subj \"/CN=${MASTER_IP}\" -days 10000 -out ca.crt\n   ```\n\n1. Generate a server.key with 2048bit:\n\n   ```shell\n   openssl genrsa -out server.key 2048\n   ```\n\n1. Create a config file for generating a Certificate Signing Request (CSR).\n\n   Be sure to substitute the values marked with angle brackets (e.g. `<MASTER_IP>`)\n   with real values before saving this to a file (e.g. `csr.conf`).\n   Note that the value for `MASTER_CLUSTER_IP` is the service cluster IP for the\n   API server as described in previous subsection.\n   The sample below also assumes that you are using `cluster.local` as the default\n   DNS domain name.\n\n   ```ini\n   [ req ]\n   default_bits = 2048\n   prompt = no\n   default_md = sha256\n   req_extensions = req_ext\n   distinguished_name = dn\n\n   [ dn ]\n   C = <country>\n   ST = <state>\n   L = <city>\n   O = <organization>\n   OU = <organization unit>\n   CN = <MASTER_IP>\n\n   [ req_ext ]\n   subjectAltName = @alt_names\n\n   [ alt_names ]\n   DNS.1 = kubernetes\n   DNS.2 = kubernetes.default\n   DNS.3 = kubernetes.default.svc\n   DNS.4 = kubernetes.default.svc.cluster\n   DNS.5 = kubernetes.default.svc.cluster.local\n   IP.1 = <MASTER_IP>\n   IP.2 = <MASTER_CLUSTER_IP>\n\n   [ v3_ext ]\n   authorityKeyIdentifier=keyid,issuer:always\n   basicConstraints=CA:FALSE\n   keyUsage=keyEncipherment,dataEncipherment\n   extendedKeyUsage=serverAuth,clientAuth\n   subjectAltName=@alt_names\n   ```\n\n1. Generate the certificate signing request based on the config file:\n\n   ```shell\n   openssl req -new -key server.key -out server.csr -config csr.conf\n   ```\n\n1. Generate the server certificate using the ca.key, ca.crt and server.csr:\n\n   ```shell\n   o\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/administer-cluster/certificates.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": null,
          "line_end": null,
          "quote": "Generate Certificates Manually"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:distributing-self-signed-ca-certificate",
      "type": "concept",
      "title": "Distributing Self-Signed CA Certificate",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": 7896,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificates-api",
      "type": "concept",
      "title": "Certificates API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": 8517,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:easyrsa",
      "type": "concept",
      "title": "easyrsa",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:openssl",
      "type": "concept",
      "title": "openssl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": 2059,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cfssl",
      "type": "concept",
      "title": "cfssl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": 4646,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods",
      "type": "page",
      "title": "Guaranteed Scheduling For Critical Add-On Pods",
      "summary": "",
      "body": "\n\nKubernetes core components such as the API server, scheduler, and controller-manager run on a control plane node. However, add-ons must run on a regular cluster node.\nSome of these add-ons are critical to a fully functional cluster, such as metrics-server, DNS, and UI.\nA cluster may stop working properly if a critical add-on is evicted (either manually or as a side effect of another operation like upgrade)\nand becomes pending (for example when the cluster is highly utilized and either there are other pending pods that schedule into the space\nvacated by the evicted critical add-on pod or the amount of resources available on the node changed for some other reason).\n\nNote that marking a pod as critical is not meant to prevent evictions entirely; it only prevents the pod from becoming permanently unavailable.\nA static pod marked as critical can't be evicted. However, non-static pods marked as critical are always rescheduled.\n\n\n\n### Marking pod as critical\n\nTo mark a Pod as critical, set priorityClassName for that Pod to `system-cluster-critical` or `system-node-critical`. `system-node-critical` is the highest available priority, even higher than `system-cluster-critical`.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/",
      "meta": {
        "weight": 220,
        "rel_path": "tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/",
          "line_start": null,
          "line_end": null,
          "quote": "Guaranteed Scheduling For Critical Add-On Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:marking-pod-as-critical",
      "type": "concept",
      "title": "Marking pod as critical",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/",
          "line_start": 971,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/topology-manager",
      "type": "page",
      "title": "Control Topology Management Policies on a node",
      "summary": "",
      "body": "\n\n\n\nAn increasing number of systems leverage a combination of CPUs and hardware accelerators to\nsupport latency-critical execution and high-throughput parallel computation. These include\nworkloads in fields such as telecommunications, scientific computing, machine learning, financial\nservices and data analytics. Such hybrid systems comprise a high performance environment.\n\nIn order to extract the best performance, optimizations related to CPU isolation, memory and\ndevice locality are required. However, in Kubernetes, these optimizations are handled by a\ndisjoint set of components.\n\n_Topology Manager_ is a kubelet component that aims to coordinate the set of components that are\nresponsible for these optimizations.\n\n## \n\n \n\n\n\n## How topology manager works\n\nPrior to the introduction of Topology Manager, the CPU and Device Manager in Kubernetes make\nresource allocation decisions independently of each other. This can result in undesirable\nallocations on multiple-socketed systems, and performance/latency sensitive applications will suffer\ndue to these undesirable allocations. Undesirable in this case meaning, for example, CPUs and\ndevices being allocated from different NUMA Nodes, thus incurring additional latency.\n\nThe Topology Manager is a kubelet component, which acts as a source of truth so that other kubelet\ncomponents can make topology aligned resource allocation choices.\n\nThe Topology Manager provides an interface for components, called *Hint Providers*, to send and\nreceive topology information. The Topology Manager has a set of node level policies which are\nexplained below.\n\nThe Topology Manager receives topology information from the *Hint Providers* as a bitmask denoting\nNUMA Nodes available and a preferred allocation indication. The Topology Manager policies perform\na set of operations on the hints provided and converge on the hint determined by the policy to\ngive the optimal result. If an undesirable hint is stored, the preferred field for the hint will be\nset to false. In the current policies preferred is the narrowest preferred mask.\nThe selected hint is stored as part of the Topology Manager. Depending on the policy configured,\nthe pod can be accepted or rejected from the node based on the selected hint.\nThe hint is then stored in the Topology Manager for use by the *Hint Providers* when making the\nresource allocation decisions.\n\nThe flow can be seen in the following diagram.\n\n![topology_manager_flow](/images/docs/topology-manager-flow.png)\n\n## Windows Support\n\n\n\nThe Topology Manager support can be enabled on Windows by using the `WindowsCPUAndMemoryAffinity` feature gate and\nit requires support in the container runtime.\n\n## Topology manager scopes and policies\n\nThe Topology Manager currently:\n\n- aligns Pods of all QoS classes.\n- aligns the requested resources that Hint Provider provides topology hints for.\n\nIf these conditions are met, the Topology Manager will align the requested resources.\n\nIn order to customize how this alignment is carried out, the Topology Manager provides two\ndistinct options: `scope` and `policy`.\n\nThe `scope` defines the granularity at which you would like resource alignment to be performed,\nfor example, at the `pod` or `container` level. And the `policy` defines the actual policy used to\ncarry out the alignment, for example, `best-effort`, `restricted`, and `single-numa-node`.\nDetails on the various `scopes` and `policies` available today can be found below.\n\n\n> **Note:** To align CPU resources with other requested resources in a Pod spec, the CPU Manager should be\nenabled and proper CPU Manager policy should be configured on a Node.\nSee [Control CPU Management Policies on the Node](/docs/tasks/administer-cluster/cpu-management-policies/).\n\n\n\n> **Note:** To align memory (and hugepages) resources with other requested resources in a Pod spec, the Memory\nManager should be enabled and proper Memory Manager policy should be configured on a Node. Refer to\n[Memory Manager](/docs/tasks/administer-clu\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
      "meta": {
        "weight": 150,
        "rel_path": "tasks/administer-cluster/topology-manager.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": null,
          "line_end": null,
          "quote": "Control Topology Management Policies on a node"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-topology-manager-works",
      "type": "concept",
      "title": "How topology manager works",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 920,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-manager-scopes-and-policies",
      "type": "concept",
      "title": "Topology manager scopes and policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 2933,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-manager-scopes",
      "type": "concept",
      "title": "Topology manager scopes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 4320,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-manager-policies",
      "type": "concept",
      "title": "Topology manager policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 7441,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-manager-policy-options",
      "type": "concept",
      "title": "Topology manager policy options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 10507,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-interactions-with-topology-manager-policies",
      "type": "concept",
      "title": "Pod interactions with topology manager policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 14064,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:known-limitations",
      "type": "concept",
      "title": "Known limitations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 17184,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-scope",
      "type": "concept",
      "title": "`container` scope",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 4669,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-scope",
      "type": "concept",
      "title": "`pod` scope",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 5417,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:none-policy-policy-none",
      "type": "concept",
      "title": "`none` policy {#policy-none}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 7987,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:best-effort-policy-policy-best-effort",
      "type": "concept",
      "title": "`best-effort` policy {#policy-best-effort}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 8094,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restricted-policy-policy-restricted",
      "type": "concept",
      "title": "`restricted` policy {#policy-restricted}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 8610,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:single-numa-node-policy-policy-single-numa-node",
      "type": "concept",
      "title": "`single-numa-node` policy {#policy-single-numa-node}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 9542,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prefer-closest-numa-nodes-policy-option-prefer-closest-numa-nodes",
      "type": "concept",
      "title": "`prefer-closest-numa-nodes` {#policy-option-prefer-closest-numa-nodes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 11144,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:max-allowable-numa-nodes-policy-option-max-allowable-numa-nodes",
      "type": "concept",
      "title": "`max-allowable-numa-nodes` {#policy-option-max-allowable-numa-nodes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 12438,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/change-default-storage-class",
      "type": "page",
      "title": "Change the default StorageClass",
      "summary": "",
      "body": "\nThis page shows how to change the default Storage Class that is used to\nprovision volumes for PersistentVolumeClaims that have no special requirements.\n\n## \n\n \n\n\n\n## Why change the default storage class?\n\nDepending on the installation method, your Kubernetes cluster may be deployed with\nan existing StorageClass that is marked as default. This default StorageClass\nis then used to dynamically provision storage for PersistentVolumeClaims\nthat do not require any specific storage class. See\n[PersistentVolumeClaim documentation](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims)\nfor details.\n\nThe pre-installed default StorageClass may not fit well with your expected workload;\nfor example, it might provision storage that is too expensive. If this is the case,\nyou can either change the default StorageClass or disable it completely to avoid\ndynamic provisioning of storage.\n\nDeleting the default StorageClass may not work, as it may be re-created\nautomatically by the addon manager running in your cluster. Please consult the docs for your installation\nfor details about addon manager and how to disable individual addons.\n\n## Changing the default StorageClass\n\n1. List the StorageClasses in your cluster:\n\n   ```bash\n   kubectl get storageclass\n   ```\n\n   The output is similar to this:\n\n   ```bash\n   NAME                 PROVISIONER               AGE\n   standard (default)   kubernetes.io/gce-pd      1d\n   gold                 kubernetes.io/gce-pd      1d\n   ```\n\n   The default StorageClass is marked by `(default)`.\n\n1. Mark the default StorageClass as non-default:\n\n   The default StorageClass has an annotation\n   `storageclass.kubernetes.io/is-default-class` set to `true`. Any other value\n   or absence of the annotation is interpreted as `false`.\n\n   To mark a StorageClass as non-default, you need to change its value to `false`:\n\n   ```bash\n   kubectl patch storageclass standard -p '{\"metadata\": {\"annotations\":{\"storageclass.kubernetes.io/is-default-class\":\"false\"}}}'\n   ```\n\n   where `standard` is the name of your chosen StorageClass.\n\n1. Mark a StorageClass as default:\n\n   Similar to the previous step, you need to add/set the annotation\n   `storageclass.kubernetes.io/is-default-class=true`.\n\n   ```bash\n   kubectl patch storageclass gold -p '{\"metadata\": {\"annotations\":{\"storageclass.kubernetes.io/is-default-class\":\"true\"}}}'\n   ```\n\n   Please note you can have multiple `StorageClass` marked as default. If more \n   than one `StorageClass` is marked as default, a `PersistentVolumeClaim` without \n   an explicitly defined `storageClassName` will be created using the most recently \n   created default `StorageClass`.\n   When a `PersistentVolumeClaim` is created with a specified `volumeName`, it remains \n   in a pending state if the static volume's `storageClassName` does not match the \n   `StorageClass` on the `PersistentVolumeClaim`.\n\n1. Verify that your chosen StorageClass is default:\n\n   ```bash\n   kubectl get storageclass\n   ```\n\n   The output is similar to this:\n\n   ```bash\n   NAME             PROVISIONER               AGE\n   standard         kubernetes.io/gce-pd      1d\n   gold (default)   kubernetes.io/gce-pd      1d\n   ```\n\n## \n\n* Learn more about [PersistentVolumes](/docs/concepts/storage/persistent-volumes/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/",
      "meta": {
        "weight": 90,
        "rel_path": "tasks/administer-cluster/change-default-storage-class.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-default-storage-class.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/",
          "line_start": null,
          "line_end": null,
          "quote": "Change the default StorageClass"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-change-the-default-storage-class",
      "type": "concept",
      "title": "Why change the default storage class?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-default-storage-class.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:changing-the-default-storageclass",
      "type": "concept",
      "title": "Changing the default StorageClass",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-default-storage-class.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/",
          "line_start": 1270,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/sysctl-cluster",
      "type": "page",
      "title": "Using sysctls in a Kubernetes Cluster",
      "summary": "",
      "body": "\n\n\n\nThis document describes how to configure and use kernel parameters within a\nKubernetes cluster using the [sysctl](#gloss:sysctl)\ninterface.\n\n\n> **Note:** Starting from Kubernetes version 1.23, the kubelet supports the use of either `/` or `.`\nas separators for sysctl names.\nStarting from Kubernetes version 1.25, setting Sysctls for a Pod supports setting sysctls with slashes.\nFor example, you can represent the same sysctl name as `kernel.shm_rmid_forced` using a\nperiod as the separator, or as `kernel/shm_rmid_forced` using a slash as a separator.\nFor more sysctl parameter conversion method details, please refer to\nthe page [sysctl.d(5)](https://man7.org/linux/man-pages/man5/sysctl.d.5.html) from\nthe Linux man-pages project.\n\n## \n\n\n> **Note:** `sysctl` is a Linux-specific command-line tool used to configure various kernel parameters\nand it is not available on non-Linux operating systems.\n\n\n\n\nFor some steps, you also need to be able to reconfigure the command line\noptions for the kubelets running on your cluster.\n\n\n\n\n## Listing all Sysctl Parameters\n\nIn Linux, the sysctl interface allows an administrator to modify kernel\nparameters at runtime. Parameters are available via the `/proc/sys/` virtual\nprocess file system. The parameters cover various subsystems such as:\n\n- kernel (common prefix: `kernel.`)\n- networking (common prefix: `net.`)\n- virtual memory (common prefix: `vm.`)\n- MDADM (common prefix: `dev.`)\n- More subsystems are described in [Kernel docs](https://www.kernel.org/doc/Documentation/sysctl/README).\n\nTo get a list of all parameters, you can run\n\n```shell\nsudo sysctl -a\n```\n\n## Safe and Unsafe Sysctls\n\nKubernetes classes sysctls as either _safe_ or _unsafe_. In addition to proper\nnamespacing, a _safe_ sysctl must be properly _isolated_ between pods on the\nsame node. This means that setting a _safe_ sysctl for one pod\n\n- must not have any influence on any other pod on the node\n- must not allow to harm the node's health\n- must not allow to gain CPU or memory resources outside of the resource limits\n  of a pod.\n\nBy far, most of the _namespaced_ sysctls are not necessarily considered _safe_.\nThe following sysctls are supported in the _safe_ set:\n\n- `kernel.shm_rmid_forced`;\n- `net.ipv4.ip_local_port_range`;\n- `net.ipv4.tcp_syncookies`;\n- `net.ipv4.ping_group_range` (since Kubernetes 1.18);\n- `net.ipv4.ip_unprivileged_port_start` (since Kubernetes 1.22);\n- `net.ipv4.ip_local_reserved_ports` (since Kubernetes 1.27, needs kernel 3.16+);\n- `net.ipv4.tcp_keepalive_time` (since Kubernetes 1.29, needs kernel 4.5+);\n- `net.ipv4.tcp_fin_timeout` (since Kubernetes 1.29, needs kernel 4.6+);\n- `net.ipv4.tcp_keepalive_intvl` (since Kubernetes 1.29, needs kernel 4.5+);\n- `net.ipv4.tcp_keepalive_probes` (since Kubernetes 1.29, needs kernel 4.5+).\n- `net.ipv4.tcp_rmem` (since Kubernetes 1.32, needs kernel 4.15+).\n- `net.ipv4.tcp_wmem` (since Kubernetes 1.32, needs kernel 4.15+).\n\n\n> **Note:** There are some exceptions to the set of safe sysctls:\n\n- The `net.*` sysctls are not allowed with host networking enabled.\n- The `net.ipv4.tcp_syncookies` sysctl is not namespaced on Linux kernel version 4.5 or lower.\n\n\nThis list will be extended in future Kubernetes versions when the kubelet\nsupports better isolation mechanisms.\n\n### Enabling Unsafe Sysctls\n\nAll _safe_ sysctls are enabled by default.\n\nAll _unsafe_ sysctls are disabled by default and must be allowed manually by the\ncluster admin on a per-node basis. Pods with disabled unsafe sysctls will be\nscheduled, but will fail to launch.\n\nWith the warning above in mind, the cluster admin can allow certain _unsafe_\nsysctls for very special situations such as high-performance or real-time\napplication tuning. _Unsafe_ sysctls are enabled on a node-by-node basis with a\nflag of the kubelet; for example:\n\n```shell\nkubelet --allowed-unsafe-sysctls \\\n  'kernel.msg*,net.core.somaxconn' ...\n```\n\nFor [minikube](#gloss:minikube), this can be done via the `extra-config` flag:\n\n```shell\nminikube start -\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
      "meta": {
        "weight": 400,
        "rel_path": "tasks/administer-cluster/sysctl-cluster.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "Using sysctls in a Kubernetes Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:listing-all-sysctl-parameters",
      "type": "concept",
      "title": "Listing all Sysctl Parameters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 1244,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:safe-and-unsafe-sysctls",
      "type": "concept",
      "title": "Safe and Unsafe Sysctls",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 1825,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-sysctls-for-a-pod",
      "type": "concept",
      "title": "Setting Sysctls for a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 4376,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-unsafe-sysctls",
      "type": "concept",
      "title": "Enabling Unsafe Sysctls",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 3495,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/cluster-upgrade",
      "type": "page",
      "title": "Upgrade A Cluster",
      "summary": "",
      "body": "\nThis page provides an overview of the steps you should follow to upgrade a\nKubernetes cluster.\n\nThe Kubernetes project recommends upgrading to the latest patch releases promptly, and\nto ensure that you are running a supported minor release of Kubernetes.\nFollowing this recommendation helps you to stay secure.\n\nThe way that you upgrade a cluster depends on how you initially deployed it\nand on any subsequent changes.\n\nAt a high level, the steps you perform are:\n\n- Upgrade the [control plane](#gloss:control-plane)\n- Upgrade the nodes in your cluster\n- Upgrade clients such as [kubectl](#gloss:kubectl)\n- Adjust manifests and other resources based on the API changes that accompany the\n  new Kubernetes version\n\n## \n\nYou must have an existing cluster. This page is about upgrading from Kubernetes\n to Kubernetes . If your cluster\nis not currently running Kubernetes  then please check\nthe documentation for the version of Kubernetes that you plan to upgrade to.\n\n\nOn Linux nodes, the kubelet defaults to supporting only cgroups v2.\nFor Kubernetes  the `FailCgroupV1` kubelet configuration option is set to `true` by default.\n\nTo learn more, refer to the [Kubernetes cgroup v1 deprecation documentation](/docs/concepts/architecture/cgroups/#deprecation-of-cgroup-v1).\n\n\n## Upgrade approaches\n\n### kubeadm {#upgrade-kubeadm}\n\nIf your cluster was deployed using the `kubeadm` tool, refer to \n[Upgrading kubeadm clusters](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/)\nfor detailed information on how to upgrade the cluster.\n\nOnce you have upgraded the cluster, remember to\n[install the latest version of `kubectl`](/docs/tasks/tools/).\n\n### Manual deployments\n\n\n> **Caution:** These steps do not account for third-party extensions such as network and storage\nplugins.\n\n\nYou should manually update the control plane following this sequence:\n\n- etcd (all instances)\n- kube-apiserver (all control plane hosts)\n- kube-controller-manager\n- kube-scheduler\n- cloud controller manager, if you use one\n\nAt this point you should\n[install the latest version of `kubectl`](/docs/tasks/tools/).\n\nFor each node in your cluster, [drain](/docs/tasks/administer-cluster/safely-drain-node/)\nthat node and then either replace it with a new node that uses the \nkubelet, or upgrade the kubelet on that node and bring the node back into service.\n\n\nDraining nodes before upgrading kubelet ensures that pods are re-admitted and containers are\nre-created, which may be necessary to resolve some security issues or other important bugs.\n\n\n### Other deployments {#upgrade-other}\n\nRefer to the documentation for your cluster deployment tool to learn the recommended set\nup steps for maintenance.\n\n## Post-upgrade tasks\n\n### Switch your cluster's storage API version\n\nThe objects that are serialized into etcd for a cluster's internal\nrepresentation of the Kubernetes resources active in the cluster are\nwritten using a particular version of the API.\n\nWhen the supported API changes, these objects may need to be rewritten\nin the newer API. Failure to do this will eventually result in resources\nthat are no longer decodable or usable by the Kubernetes API server.\n\nFor each affected object, fetch it using the latest supported API and then\nwrite it back also using the latest supported API.\n\n### Update manifests\n\nUpgrading to a new Kubernetes version can provide new APIs.\n\nYou can use `kubectl convert` command to convert manifests between different API versions.\nFor example:\n\n```shell\nkubectl convert -f pod.yaml --output-version v1\n```\n\nThe `kubectl` tool replaces the contents of `pod.yaml` with a manifest that sets `kind` to\nPod (unchanged), but with a revised `apiVersion`.\n\n### Device Plugins\n\nIf your cluster is running device plugins and the node needs to be upgraded to a Kubernetes\nrelease with a newer device plugin API version, device plugins must be upgraded to support\nboth version before the node is upgraded in order to guarantee that device allocations\ncontinue to complete successfully during the\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
      "meta": {
        "weight": 350,
        "rel_path": "tasks/administer-cluster/cluster-upgrade.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": null,
          "line_end": null,
          "quote": "Upgrade A Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-approaches",
      "type": "concept",
      "title": "Upgrade approaches",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 1540,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:post-upgrade-tasks",
      "type": "concept",
      "title": "Post-upgrade tasks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 3021,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-kubeadm",
      "type": "concept",
      "title": "kubeadm {#upgrade-kubeadm}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 1563,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manual-deployments",
      "type": "concept",
      "title": "Manual deployments",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 1915,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:other-deployments-upgrade-other",
      "type": "concept",
      "title": "Other deployments {#upgrade-other}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 2865,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:switch-your-cluster-s-storage-api-version",
      "type": "concept",
      "title": "Switch your cluster's storage API version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 3044,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-manifests",
      "type": "concept",
      "title": "Update manifests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 3616,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-plugins",
      "type": "concept",
      "title": "Device Plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 4008,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/securing-a-cluster",
      "type": "page",
      "title": "Securing a Cluster",
      "summary": "",
      "body": "\n\nThis document covers topics related to protecting a cluster from accidental or malicious access\nand provides recommendations on overall security.\n\n## \n\n*  \n\n\n\n## Controlling access to the Kubernetes API\n\nAs Kubernetes is entirely API-driven, controlling and limiting who can access the cluster and what actions\nthey are allowed to perform is the first line of defense.\n\n### Use Transport Layer Security (TLS) for all API traffic\n\nKubernetes expects that all API communication in the cluster is encrypted by default with TLS, and the\nmajority of installation methods will allow the necessary certificates to be created and distributed to\nthe cluster components. Note that some components and installation methods may enable local ports over\nHTTP and administrators should familiarize themselves with the settings of each component to identify\npotentially unsecured traffic.\n\n### API Authentication\n\nChoose an authentication mechanism for the API servers to use that matches the common access patterns\nwhen you install a cluster. For instance, small, single-user clusters may wish to use a simple certificate\nor static Bearer token approach. Larger clusters may wish to integrate an existing OIDC or LDAP server that\nallow users to be subdivided into groups.\n\nAll API clients must be authenticated, even those that are part of the infrastructure like nodes,\nproxies, the scheduler, and volume plugins. These clients are typically [service accounts](/docs/reference/access-authn-authz/service-accounts-admin/) or use x509 client certificates, and they are created automatically at cluster startup or are setup as part of the cluster installation.\n\nConsult the [authentication reference document](/docs/reference/access-authn-authz/authentication/) for more information.\n\n### API Authorization\n\nOnce authenticated, every API call is also expected to pass an authorization check. Kubernetes ships\nan integrated [Role-Based Access Control (RBAC)](/docs/reference/access-authn-authz/rbac/) component that matches an incoming user or group to a\nset of permissions bundled into roles. These permissions combine verbs (get, create, delete) with\nresources (pods, services, nodes) and can be namespace-scoped or cluster-scoped. A set of out-of-the-box\nroles are provided that offer reasonable default separation of responsibility depending on what\nactions a client might want to perform. It is recommended that you use the\n[Node](/docs/reference/access-authn-authz/node/) and\n[RBAC](/docs/reference/access-authn-authz/rbac/) authorizers together, in combination with the\n[NodeRestriction](/docs/reference/access-authn-authz/admission-controllers/#noderestriction) admission plugin.\n\nAs with authentication, simple and broad roles may be appropriate for smaller clusters, but as\nmore users interact with the cluster, it may become necessary to separate teams into separate\n[namespaces](#gloss:namespace) with more limited roles.\n\nWith authorization, it is important to understand how updates on one object may cause actions in\nother places. For instance, a user may not be able to create pods directly, but allowing them to\ncreate a deployment, which creates pods on their behalf, will let them create those pods\nindirectly. Likewise, deleting a node from the API will result in the pods scheduled to that node\nbeing terminated and recreated on other nodes. The out-of-the box roles represent a balance\nbetween flexibility and common use cases, but more limited roles should be carefully reviewed\nto prevent accidental escalation. You can make roles specific to your use case if the out-of-box ones don't meet your needs.\n\nConsult the [authorization reference section](/docs/reference/access-authn-authz/authorization/) for more information.\n\nIf your cluster uses [Dynamic Resource Allocation (DRA)](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/),\nreview DRA synthetic subresource authorization (`resourceclaims/binding` and\n`resourceclaims/driver`) and grant only the minimum required verbs t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
      "meta": {
        "weight": 320,
        "rel_path": "tasks/administer-cluster/securing-a-cluster.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "Securing a Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controlling-access-to-the-kubernetes-api",
      "type": "concept",
      "title": "Controlling access to the Kubernetes API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 287,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controlling-access-to-the-kubelet",
      "type": "concept",
      "title": "Controlling access to the Kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 4417,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controlling-the-capabilities-of-a-workload-or-user-at-runtime",
      "type": "concept",
      "title": "Controlling the capabilities of a workload or user at runtime",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 4827,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protecting-cluster-components-from-compromise",
      "type": "concept",
      "title": "Protecting cluster components from compromise",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 10728,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-s-next",
      "type": "concept",
      "title": "What's next",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 15588,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-transport-layer-security-tls-for-all-api-traffic",
      "type": "concept",
      "title": "Use Transport Layer Security (TLS) for all API traffic",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 498,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-authentication",
      "type": "concept",
      "title": "API Authentication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 1002,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-authorization",
      "type": "concept",
      "title": "API Authorization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 1896,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limiting-resource-usage-on-a-cluster",
      "type": "concept",
      "title": "Limiting resource usage on a cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 5128,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controlling-what-privileges-containers-run-with",
      "type": "concept",
      "title": "Controlling what privileges containers run with",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 5807,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preventing-containers-from-loading-unwanted-kernel-modules",
      "type": "concept",
      "title": "Preventing containers from loading unwanted kernel modules",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 6949,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restricting-network-access",
      "type": "concept",
      "title": "Restricting network access",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 8405,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restricting-cloud-metadata-api-access",
      "type": "concept",
      "title": "Restricting cloud metadata API access",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 9238,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controlling-which-nodes-pods-may-access",
      "type": "concept",
      "title": "Controlling which nodes pods may access",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 9926,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restrict-access-to-etcd",
      "type": "concept",
      "title": "Restrict access to etcd",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 10864,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-audit-logging",
      "type": "concept",
      "title": "Enable audit logging",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 11675,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restrict-access-to-alpha-or-beta-features",
      "type": "concept",
      "title": "Restrict access to alpha or beta features",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 11955,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rotate-infrastructure-credentials-frequently",
      "type": "concept",
      "title": "Rotate infrastructure credentials frequently",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 12299,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:review-third-party-integrations-before-enabling-them",
      "type": "concept",
      "title": "Review third party integrations before enabling them",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 12899,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:encrypt-secrets-at-rest",
      "type": "concept",
      "title": "Encrypt secrets at rest",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 14264,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:receiving-alerts-for-security-updates-and-reporting-vulnerabilities",
      "type": "concept",
      "title": "Receiving alerts for security updates and reporting vulnerabilities",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 15254,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/decrypt-data",
      "type": "page",
      "title": "Decrypt Confidential Data that is Already Encrypted at Rest",
      "summary": "",
      "body": "\n\nAll of the APIs in Kubernetes that let you write persistent API resource data support\nat-rest encryption. For example, you can enable at-rest encryption for\n[Secrets](#gloss:secret).\nThis at-rest encryption is additional to any system-level encryption for the\netcd cluster or for the filesystem(s) on hosts where you are running the\nkube-apiserver.\n\nThis page shows how to switch from encryption of API data at rest, so that API data\nare stored unencrypted. You might want to do this to improve performance; usually,\nthough, if it was a good idea to encrypt some data, it's also a good idea to leave them\nencrypted.\n\n\n> **Note:** This task covers encryption for resource data stored using the\n. For example, you can\nencrypt Secret objects, including the key-value data they contain.\n\nIf you wanted to manage encryption for data in filesystems that are mounted into containers, you instead\nneed to either:\n\n- use a storage integration that provides encrypted\n  \n- encrypt the data within your own application\n\n\n## \n\n* \n\n* This task assumes that you are running the Kubernetes API server as a\n  [static pod](#gloss:static-pod) on each control\n  plane node.\n\n* Your cluster's control plane **must** use etcd v3.x (major version 3, any minor version).\n\n* To encrypt a custom resource, your cluster must be running Kubernetes v1.26 or newer.\n\n* You should have some API data that are already encrypted.\n\n\n\n\n\n\n## Determine whether encryption at rest is already enabled\n\nBy default, the API server uses an `identity` provider that stores plain-text representations\nof resources.\n**The default `identity` provider does not provide any confidentiality protection.**\n\nThe `kube-apiserver` process accepts an argument `--encryption-provider-config`\nthat specifies a path to a configuration file. The contents of that file, if you specify one,\ncontrol how Kubernetes API data is encrypted in etcd.\nIf it is not specified, you do not have encryption at rest enabled.\n\nThe format of that configuration file is YAML, representing a configuration API kind named\n[`EncryptionConfiguration`](/docs/reference/config-api/apiserver-config.v1/).\nYou can see an example configuration\nin [Encryption at rest configuration](/docs/tasks/administer-cluster/encrypt-data/#understanding-the-encryption-at-rest-configuration).\n\nIf `--encryption-provider-config` is set, check which resources (such as `secrets`) are\nconfigured for encryption, and what provider is used.\nMake sure that the preferred provider for that resource type is **not** `identity`; you\nonly set `identity` (_no encryption_) as default when you want to disable encryption at\nrest.\nVerify that the first-listed provider for a resource is something **other** than `identity`,\nwhich means that any new information written to resources of that type will be encrypted as\nconfigured. If you do see `identity` as the first-listed provider for any resource, this\nmeans that those resources are being written out to etcd without encryption.\n\n## Decrypt all data {#decrypting-all-data}\n\nThis example shows how to stop encrypting the Secret API at rest. If you are encrypting\nother API kinds, adjust the steps to match.\n\n### Locate the encryption configuration file\n\nFirst, find the API server configuration files. On each control plane node, static Pod manifest\nfor the kube-apiserver specifies a command line argument, `--encryption-provider-config`.\nYou are likely to find that this file is mounted into the static Pod using a\n[`hostPath`](/docs/concepts/storage/volumes/#hostpath) volume mount. Once you locate the volume\nyou can find the file on the node filesystem and inspect it.\n\n### Configure the API server to decrypt objects\n\nTo disable encryption at rest, place the `identity` provider as the first\nentry in your encryption configuration file.\n\nFor example, if your existing EncryptionConfiguration file reads:\n```yaml\n---\napiVersion: apiserver.config.k8s.io/v1\nkind: EncryptionConfiguration\nresources:\n  - resources:\n      - secrets\n    providers:\n      -\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
      "meta": {
        "weight": 215,
        "rel_path": "tasks/administer-cluster/decrypt-data.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": null,
          "line_end": null,
          "quote": "Decrypt Confidential Data that is Already Encrypted at Rest"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:determine-whether-encryption-at-rest-is-already-enabled",
      "type": "concept",
      "title": "Determine whether encryption at rest is already enabled",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 1736,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:locate-the-encryption-configuration-file",
      "type": "concept",
      "title": "Locate the encryption configuration file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 3483,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-the-api-server-to-decrypt-objects",
      "type": "concept",
      "title": "Configure the API server to decrypt objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 3950,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reconfigure-other-control-plane-hosts-api-server-config-update-more-1",
      "type": "concept",
      "title": "Reconfigure other control plane hosts {#api-server-config-update-more-1}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 4875,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:force-decryption",
      "type": "concept",
      "title": "Force decryption",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 5148,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reconfigure-other-control-plane-hosts-api-server-config-update-more-2",
      "type": "concept",
      "title": "Reconfigure other control plane hosts {#api-server-config-update-more-2}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 5766,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/limit-storage-consumption",
      "type": "page",
      "title": "Limit Storage Consumption",
      "summary": "",
      "body": "\n\nThis example demonstrates how to limit the amount of storage consumed in a namespace.\n\nThe following resources are used in the demonstration: [ResourceQuota](/docs/concepts/policy/resource-quotas/),\n[LimitRange](/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/),\nand [PersistentVolumeClaim](/docs/concepts/storage/persistent-volumes/).\n\n\n## \n\n\n*  \n\n\n\n\n## Scenario: Limiting Storage Consumption\n\nThe cluster-admin is operating a cluster on behalf of a user population and the admin wants to control\nhow much storage a single namespace can consume in order to control cost.\n\nThe admin would like to limit:\n\n1. The number of persistent volume claims in a namespace\n2. The amount of storage each claim can request\n3. The amount of cumulative storage the namespace can have\n\n\n## LimitRange to limit requests for storage\n\nAdding a `LimitRange` to a namespace enforces storage request sizes to a minimum and maximum. Storage is requested\nvia `PersistentVolumeClaim`. The admission controller that enforces limit ranges will reject any PVC that is above or below\nthe values set by the admin.\n\nIn this example, a PVC requesting 10Gi of storage would be rejected because it exceeds the 2Gi max.\n\n```yaml\napiVersion: v1\nkind: LimitRange\nmetadata:\n  name: storagelimits\nspec:\n  limits:\n  - type: PersistentVolumeClaim\n    max:\n      storage: 2Gi\n    min:\n      storage: 1Gi\n```\n\nMinimum storage requests are used when the underlying storage provider requires certain minimums. For example,\nAWS EBS volumes have a 1Gi minimum requirement.\n\n## ResourceQuota to limit PVC count and cumulative storage capacity\n\nAdmins can limit the number of PVCs in a namespace as well as the cumulative capacity of those PVCs. New PVCs that exceed\neither maximum value will be rejected.\n\nIn this example, a 6th PVC in the namespace would be rejected because it exceeds the maximum count of 5. Alternatively,\na 5Gi maximum quota when combined with the 2Gi max limit above, cannot have 3 PVCs where each has 2Gi. That would be 6Gi requested\n for a namespace capped at 5Gi.\n\n```yaml\napiVersion: v1\nkind: ResourceQuota\nmetadata:\n  name: storagequota\nspec:\n  hard:\n    persistentvolumeclaims: \"5\"\n    requests.storage: \"5Gi\"\n```\n\n\n\n## Summary\n\nA limit range can put a ceiling on how much storage is requested while a resource quota can effectively cap the storage\nconsumed by a namespace through claim counts and cumulative storage capacity. The allows a cluster-admin to plan their\ncluster's storage budget without risk of any one project going over their allotment.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/limit-storage-consumption/",
      "meta": {
        "weight": 240,
        "rel_path": "tasks/administer-cluster/limit-storage-consumption.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/limit-storage-consumption.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/limit-storage-consumption/",
          "line_start": null,
          "line_end": null,
          "quote": "Limit Storage Consumption"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scenario-limiting-storage-consumption",
      "type": "concept",
      "title": "Scenario: Limiting Storage Consumption",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/limit-storage-consumption.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/limit-storage-consumption/",
          "line_start": 505,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitrange-to-limit-requests-for-storage",
      "type": "concept",
      "title": "LimitRange to limit requests for storage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/limit-storage-consumption.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/limit-storage-consumption/",
          "line_start": 924,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcequota-to-limit-pvc-count-and-cumulative-storage-capacity",
      "type": "concept",
      "title": "ResourceQuota to limit PVC count and cumulative storage capacity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/limit-storage-consumption.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/limit-storage-consumption/",
          "line_start": 1680,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/change-pv-reclaim-policy",
      "type": "page",
      "title": "Change the Reclaim Policy of a PersistentVolume",
      "summary": "",
      "body": "\nThis page shows how to change the reclaim policy of a Kubernetes\nPersistentVolume.\n\n## \n\n \n\n\n\n## Why change reclaim policy of a PersistentVolume\n\nPersistentVolumes can have various reclaim policies, including \"Retain\",\n\"Recycle\", and \"Delete\". For dynamically provisioned PersistentVolumes,\nthe default reclaim policy is \"Delete\". This means that a dynamically provisioned\nvolume is automatically deleted when a user deletes the corresponding\nPersistentVolumeClaim. This automatic behavior might be inappropriate if the volume\ncontains precious data. In that case, it is more appropriate to use the \"Retain\"\npolicy. With the \"Retain\" policy, if a user deletes a PersistentVolumeClaim,\nthe corresponding PersistentVolume will not be deleted. Instead, it is moved to the\nReleased phase, where all of its data can be manually recovered.\n\n## Changing the reclaim policy of a PersistentVolume\n\n1. List the PersistentVolumes in your cluster:\n\n   ```shell\n   kubectl get pv\n   ```\n\n   The output is similar to this:\n\n   ```none\n   NAME                                       CAPACITY   ACCESSMODES   RECLAIMPOLICY   STATUS    CLAIM             STORAGECLASS     REASON    AGE\n   pvc-b6efd8da-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Delete          Bound     default/claim1    manual                     10s\n   pvc-b95650f8-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Delete          Bound     default/claim2    manual                     6s\n   pvc-bb3ca71d-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Delete          Bound     default/claim3    manual                     3s\n   ```\n\n   This list also includes the name of the claims that are bound to each volume\n   for easier identification of dynamically provisioned volumes.\n\n1. Choose one of your PersistentVolumes and change its reclaim policy:\n\n   ```shell\n   kubectl patch pv <your-pv-name> -p '{\"spec\":{\"persistentVolumeReclaimPolicy\":\"Retain\"}}'\n   ```\n\n   where `<your-pv-name>` is the name of your chosen PersistentVolume.\n\n   \n> **Note:** On Windows, you must _double_ quote any JSONPath template that contains spaces (not single\n   quote as shown above for bash). This in turn means that you must use a single quote or escaped\n   double quote around any literals in the template. For example:\n\n   ```cmd\n   kubectl patch pv <your-pv-name> -p \"{\\\"spec\\\":{\\\"persistentVolumeReclaimPolicy\\\":\\\"Retain\\\"}}\"\n   ```\n\n\n1. Verify that your chosen PersistentVolume has the right policy:\n\n   ```shell\n   kubectl get pv\n   ```\n\n   The output is similar to this:\n\n   ```none\n   NAME                                       CAPACITY   ACCESSMODES   RECLAIMPOLICY   STATUS    CLAIM             STORAGECLASS     REASON    AGE\n   pvc-b6efd8da-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Delete          Bound     default/claim1    manual                     40s\n   pvc-b95650f8-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Delete          Bound     default/claim2    manual                     36s\n   pvc-bb3ca71d-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Retain          Bound     default/claim3    manual                     33s\n   ```\n\n   In the preceding output, you can see that the volume bound to claim\n   `default/claim3` has reclaim policy `Retain`. It will not be automatically\n   deleted when a user deletes claim `default/claim3`.\n\n## \n\n* Learn more about [PersistentVolumes](/docs/concepts/storage/persistent-volumes/).\n* Learn more about [PersistentVolumeClaims](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims).\n\n### References {#reference}\n\n* \n  * Pay attention to the `.spec.persistentVolumeReclaimPolicy`\n    [field](/docs/reference/kubernetes-api/config-and-storage-resources/persistent-volume-v1/#PersistentVolumeSpec)\n    of PersistentVolume.\n* \n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
      "meta": {
        "weight": 100,
        "rel_path": "tasks/administer-cluster/change-pv-reclaim-policy.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-reclaim-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Change the Reclaim Policy of a PersistentVolume"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-change-reclaim-policy-of-a-persistentvolume",
      "type": "concept",
      "title": "Why change reclaim policy of a PersistentVolume",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-reclaim-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
          "line_start": 221,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:changing-the-reclaim-policy-of-a-persistentvolume",
      "type": "concept",
      "title": "Changing the reclaim policy of a PersistentVolume",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-reclaim-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
          "line_start": 962,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:references-reference",
      "type": "concept",
      "title": "References {#reference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-reclaim-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
          "line_start": 3725,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/hardening-dra",
      "type": "page",
      "title": "Harden Dynamic Resource Allocation in Your Cluster",
      "summary": "",
      "body": "\n\nThis page shows cluster administrators how to harden authorization for\nDynamic Resource Allocation (DRA), with a focus on least-privilege access for\n`ResourceClaim` status updates.\n\n\n\n## \n\n-  \n- Dynamic Resource Allocation is configured in your cluster.\n- You can edit RBAC resources and restart or roll out DRA components.\n\n\n\n## Identify DRA components that write status\n\nDocument which identities (usually ServiceAccounts) update ResourceClaim\nstatus in your cluster. Typical writers are:\n\n- kube-scheduler or a custom allocation controller\n- node-local DRA drivers\n- multi-node DRA status controllers\n\n## Grant least-privilege permissions for synthetic subresources\n\nStarting in Kubernetes v1.36, DRA status updates require synthetic subresource\npermissions in addition to `resourceclaims/status`.\n\n### Grant scheduler and allocation-controller permissions\n\nApply a role that allows binding-related updates:\n\n```yaml\napiVersion: rbac.authorization.k8s.io/v1\nkind: ClusterRole\nmetadata:\n  name: dra-binding-updater\nrules:\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/status\"]\n    verbs: [\"get\", \"patch\", \"update\"]\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/binding\"]\n    verbs: [\"patch\", \"update\"]\n```\n\n### Grant node-local driver permissions\n\nUse node-aware verbs for node-local drivers:\n\n```yaml\napiVersion: rbac.authorization.k8s.io/v1\nkind: ClusterRole\nmetadata:\n  name: dra-node-driver-status-updater\nrules:\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/status\"]\n    verbs: [\"get\", \"patch\", \"update\"]\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/driver\"]\n    verbs: [\"associated-node:patch\", \"associated-node:update\"]\n    resourceNames: [\"dra.example.com\"]\n```\n\n### Grant multi-node controller permissions only when needed\n\nUse `arbitrary-node:*` only for components that must update from any node:\n\n```yaml\napiVersion: rbac.authorization.k8s.io/v1\nkind: ClusterRole\nmetadata:\n  name: dra-multinode-status-updater\nrules:\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/status\"]\n    verbs: [\"get\", \"patch\", \"update\"]\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/driver\"]\n    verbs: [\"arbitrary-node:patch\", \"arbitrary-node:update\"]\n    resourceNames: [\"dra.example.com\"]\n```\n\n## Bind roles to explicit identities\n\nCreate `ClusterRoleBinding` objects for each component identity, and avoid\nsharing a broad role across unrelated DRA components.\n\nRestrict `resourceclaims/driver` rules with `resourceNames` where possible so\nan identity can only write status for the specific DRA driver it operates.\n\n## Validate and monitor\n\n1. Verify each identity has only the required verbs and subresources.\n1. Confirm DRA status updates work after rollout.\n1. Watch API server audit events for denied `resourceclaims/binding` and\n   `resourceclaims/driver` requests.\n\n## \n\n- [Hardening Guide - Dynamic Resource Allocation](/docs/concepts/security/hardening-guide/dynamic-resource-allocation/)\n- [Securing a Cluster](/docs/tasks/administer-cluster/securing-a-cluster/)\n- [Authorization](/docs/reference/access-authn-authz/authorization/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
      "meta": {
        "weight": 330,
        "rel_path": "tasks/administer-cluster/hardening-dra.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": null,
          "line_end": null,
          "quote": "Harden Dynamic Resource Allocation in Your Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:identify-dra-components-that-write-status",
      "type": "concept",
      "title": "Identify DRA components that write status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 477,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:grant-least-privilege-permissions-for-synthetic-subresources",
      "type": "concept",
      "title": "Grant least-privilege permissions for synthetic subresources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 755,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bind-roles-to-explicit-identities",
      "type": "concept",
      "title": "Bind roles to explicit identities",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 2462,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validate-and-monitor",
      "type": "concept",
      "title": "Validate and monitor",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 2784,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:grant-scheduler-and-allocation-controller-permissions",
      "type": "concept",
      "title": "Grant scheduler and allocation-controller permissions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 952,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:grant-node-local-driver-permissions",
      "type": "concept",
      "title": "Grant node-local driver permissions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 1401,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:grant-multi-node-controller-permissions-only-when-needed",
      "type": "concept",
      "title": "Grant multi-node controller permissions only when needed",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 1908,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/_index",
      "type": "page",
      "title": "Administer a Cluster",
      "summary": "Learn common tasks for administering a cluster.",
      "body": "Administer a Cluster to ensure smooth operation, security, and scalability.\n\n**Why it matters**\nProper cluster administration is crucial for maintaining high availability, performance, and security.\n\n**Key facts**\n- Cluster administrators manage resources, configure settings, and monitor performance.\n- Inadequate cluster administration can lead to issues like downtime, data loss, or security breaches.\n\n**Common pitfalls**\n- Insufficient resource allocation can cause performance degradation or downtime.\n- Inadequate security measures can expose sensitive data or allow unauthorized access.\n\n**Related**\nManage Memory, CPU, and API Resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/administer-cluster/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Administer a Cluster"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "type": "page",
      "title": "Migrate Replicated Control Plane To Use Cloud Controller Manager",
      "summary": "",
      "body": "\n\n[definition:cloud-controller-manager]\n\n## Background\n\nAs part of the [cloud provider extraction effort](/blog/2019/04/17/the-future-of-cloud-providers-in-kubernetes/),\nall cloud specific controllers must be moved out of the `kube-controller-manager`.\nAll existing clusters that run cloud controllers in the `kube-controller-manager`\nmust migrate to instead run the controllers in a cloud provider specific\n`cloud-controller-manager`.\n\nLeader Migration provides a mechanism in which HA clusters can safely migrate \"cloud\nspecific\" controllers between the `kube-controller-manager` and the\n`cloud-controller-manager` via a shared resource lock between the two components\nwhile upgrading the replicated control plane. For a single-node control plane, or if\nunavailability of controller managers can be tolerated during the upgrade, Leader\nMigration is not needed and this guide can be ignored.\n\nLeader Migration can be enabled by setting `--enable-leader-migration` on\n`kube-controller-manager` or `cloud-controller-manager`. Leader Migration only\napplies during the upgrade and can be safely disabled or left enabled after the\nupgrade is complete.\n\nThis guide walks you through the manual process of upgrading the control plane from\n`kube-controller-manager` with built-in cloud provider to running both\n`kube-controller-manager` and `cloud-controller-manager`. If you use a tool to deploy\nand manage the cluster, please refer to the documentation of the tool and the cloud\nprovider for specific instructions of the migration.\n\n## \n\nIt is assumed that the control plane is running Kubernetes version N and to be\nupgraded to version N + 1. Although it is possible to migrate within the same\nversion, ideally the migration should be performed as part of an upgrade so that\nchanges of configuration can be aligned to each release. The exact versions of N and\nN + 1 depend on each cloud provider. For example, if a cloud provider builds a\n`cloud-controller-manager` to work with Kubernetes 1.24, then N can be 1.23 and N + 1\ncan be 1.24.\n\nThe control plane nodes should run `kube-controller-manager` with Leader Election\nenabled, which is the default. As of version N, an in-tree cloud provider must be set\nwith `--cloud-provider` flag and `cloud-controller-manager` should not yet be\ndeployed.\n\nThe out-of-tree cloud provider must have built a `cloud-controller-manager` with\nLeader Migration implementation. If the cloud provider imports\n`k8s.io/cloud-provider` and `k8s.io/controller-manager` of version v0.21.0 or later,\nLeader Migration will be available. However, for version before v0.22.0, Leader\nMigration is alpha and requires feature gate `ControllerManagerLeaderMigration` to be\nenabled in `cloud-controller-manager`.\n\nThis guide assumes that kubelet of each control plane node starts\n`kube-controller-manager` and `cloud-controller-manager` as static pods defined by\ntheir manifests. If the components run in a different setting, please adjust the\nsteps accordingly.\n\nFor authorization, this guide assumes that the cluster uses RBAC. If another\nauthorization mode grants permissions to `kube-controller-manager` and\n`cloud-controller-manager` components, please grant the needed access in a way that\nmatches the mode.\n\n\n\n### Grant access to Migration Lease\n\nThe default permissions of the controller manager allow only accesses to their main\nLease. In order for the migration to work, accesses to another Lease are required.\n\nYou can grant `kube-controller-manager` full access to the leases API by modifying\nthe `system::leader-locking-kube-controller-manager` role. This task guide assumes\nthat the name of the migration lease is `cloud-provider-extraction-migration`.\n\n```shell\nkubectl patch -n kube-system role 'system::leader-locking-kube-controller-manager' -p '{\"rules\": [ {\"apiGroups\":[ \"coordination.k8s.io\"], \"resources\": [\"leases\"], \"resourceNames\": [\"cloud-provider-extraction-migration\"], \"verbs\": [\"create\", \"list\", \"get\", \"update\"] } ]}' --type=merge\n```\n\nDo the same to the `\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
      "meta": {
        "weight": 250,
        "rel_path": "tasks/administer-cluster/controller-manager-leader-migration.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": null,
          "line_end": null,
          "quote": "Migrate Replicated Control Plane To Use Cloud Controller Manager"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:grant-access-to-migration-lease",
      "type": "concept",
      "title": "Grant access to Migration Lease",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 3372,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:initial-leader-migration-configuration",
      "type": "concept",
      "title": "Initial Leader Migration configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 4498,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploy-cloud-controller-manager",
      "type": "concept",
      "title": "Deploy Cloud Controller Manager",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 6439,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-control-plane",
      "type": "concept",
      "title": "Upgrade Control Plane",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 8204,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:optional-disable-leader-migration-disable-leader-migration",
      "type": "concept",
      "title": "(Optional) Disable Leader Migration {#disable-leader-migration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 9175,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-configuration",
      "type": "concept",
      "title": "Default Configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 9955,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:special-case-migrating-the-node-ipam-controller-node-ipam-controller-migration",
      "type": "concept",
      "title": "Special case: migrating the Node IPAM controller {#node-ipam-controller-migration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 10490,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/cpu-management-policies",
      "type": "page",
      "title": "Control CPU Management Policies on the Node",
      "summary": "",
      "body": "\n\n\n\nKubernetes keeps many aspects of how pods execute on nodes abstracted\nfrom the user. This is by design.  However, some workloads require\nstronger guarantees in terms of latency and/or performance in order to operate\nacceptably. The kubelet provides methods to enable more complex workload\nplacement policies while keeping the abstraction free from explicit placement\ndirectives.\n\nFor detailed information on resource management, please refer to the\n[Resource Management for Pods and Containers](/docs/concepts/configuration/manage-resources-containers)\ndocumentation.\n\nFor detailed information on how the kubelet implements resource management, please refer to the\n[Node ResourceManagers](/docs/concepts/policy/node-resource-managers) documentation.\n\n## \n\n\n \n\nIf you are running an older version of Kubernetes, please look at the documentation for the version you are actually running.\n\n\n\n\n## Configuring CPU management policies\n\nBy default, the kubelet uses [CFS quota](https://en.wikipedia.org/wiki/Completely_Fair_Scheduler)\nto enforce pod CPU limits.  When the node runs many CPU-bound pods,\nthe workload can move to different CPU cores depending on\nwhether the pod is throttled and which CPU cores are available at\nscheduling time. Many workloads are not sensitive to this migration and thus\nwork fine without any intervention.\n\nHowever, in workloads where CPU cache affinity and scheduling latency\nsignificantly affect workload performance, the kubelet allows alternative CPU\nmanagement policies to determine some placement preferences on the node.\n\n## Windows Support\n\n\n\nCPU Manager support can be enabled on Windows by using the `WindowsCPUAndMemoryAffinity` feature gate\nand it requires support in the container runtime.\nOnce the feature gate is enabled, follow the steps below to configure the [CPU manager policy](#configuration).\n\n## Configuration\n\nThe CPU Manager policy is set with the `--cpu-manager-policy` kubelet\nflag or the `cpuManagerPolicy` field in [KubeletConfiguration](/docs/reference/config-api/kubelet-config.v1beta1/).\nThere are two supported policies:\n\n* [`none`](#none-policy): the default policy.\n* [`static`](#static-policy): allows pods with certain resource characteristics to be\n  granted increased CPU affinity and exclusivity on the node.\n\nThe CPU manager periodically writes resource updates through the CRI in\norder to reconcile in-memory CPU assignments with cgroupfs. The reconcile\nfrequency is set through a new Kubelet configuration value\n`--cpu-manager-reconcile-period`. If not specified, it defaults to the same\nduration as `--node-status-update-frequency`.\n\nThe behavior of the static policy can be fine-tuned using the `--cpu-manager-policy-options` flag.\nThe flag takes a comma-separated list of `key=value` policy options.\nIf you disable the `CPUManagerPolicyOptions`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\nthen you cannot fine-tune CPU manager policies. In that case, the CPU manager\noperates only using its default settings.\n\nIn addition to the top-level `CPUManagerPolicyOptions` feature gate, the policy options are split\ninto two groups: alpha quality (hidden by default) and beta quality (visible by default).\nThe groups are guarded respectively by the `CPUManagerPolicyAlphaOptions`\nand `CPUManagerPolicyBetaOptions` feature gates. Diverging from the Kubernetes standard, these\nfeature gates guard groups of options, because it would have been too cumbersome to add a feature\ngate for each individual option.\n\n## Changing the CPU Manager Policy\n\nSince the CPU manager policy can only be applied when kubelet spawns new pods, simply changing from\n\"none\" to \"static\" won't apply to existing pods. So in order to properly change the CPU manager\npolicy on a node, perform the following steps:\n\n1. [Drain](/docs/tasks/administer-cluster/safely-drain-node) the node.\n2. Stop kubelet.\n3. Remove the old CPU manager state file. The path to this file is\n`/var/lib/kubelet/cpu_manager_state` by default. This cle\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
      "meta": {
        "weight": 140,
        "rel_path": "tasks/administer-cluster/cpu-management-policies.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": null,
          "line_end": null,
          "quote": "Control CPU Management Policies on the Node"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-cpu-management-policies",
      "type": "concept",
      "title": "Configuring CPU management policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 1080,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:changing-the-cpu-manager-policy",
      "type": "concept",
      "title": "Changing the CPU Manager Policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 3763,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:none-policy-configuration",
      "type": "concept",
      "title": "`none` policy configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 5099,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:static-policy-configuration",
      "type": "concept",
      "title": "`static` policy configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 5179,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:static-policy-options-cpu-policy-static-options",
      "type": "concept",
      "title": "Static policy options {#cpu-policy-static--options}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 6481,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/running-cloud-controller",
      "type": "page",
      "title": "Cloud Controller Manager Administration",
      "summary": "",
      "body": "\n\n\n\nSince cloud providers develop and release at a different pace compared to the\nKubernetes project, abstracting the provider-specific code to the\n`[cloud-controller-manager](#gloss:cloud-controller-manager)`\nbinary allows cloud vendors to evolve independently from the core Kubernetes code.\n\nThe `cloud-controller-manager` can be linked to any cloud provider that satisfies\n[cloudprovider.Interface](https://github.com/kubernetes/cloud-provider/blob/master/cloud.go).\nFor backwards compatibility, the\n[cloud-controller-manager](https://github.com/kubernetes/kubernetes/tree/master/cmd/cloud-controller-manager)\nprovided in the core Kubernetes project uses the same cloud libraries as `kube-controller-manager`.\nCloud providers already supported in Kubernetes core are expected to use the in-tree\ncloud-controller-manager to transition out of Kubernetes core.\n\n\n\n## Administration\n\n### Requirements\n\nEvery cloud has their own set of requirements for running their own cloud provider\nintegration, it should not be too different from the requirements when running\n`kube-controller-manager`. As a general rule of thumb you'll need:\n\n* cloud authentication/authorization: your cloud may require a token or IAM rules\n  to allow access to their APIs\n* kubernetes authentication/authorization: cloud-controller-manager may need RBAC\n  rules set to speak to the kubernetes apiserver\n* high availability: like kube-controller-manager, you may want a high available\n  setup for cloud controller manager using leader election (on by default).\n\n### Running cloud-controller-manager\n\nSuccessfully running cloud-controller-manager requires some changes to your cluster configuration.\n\n* `kubelet` and `kube-controller-manager` must be set according to the\n  user's usage of external CCM. If the user has an external CCM (not the internal cloud\n  controller loops in the Kubernetes Controller Manager), then `--cloud-provider=external`\n  must be specified. Otherwise, it should not be specified.\n\nKeep in mind that setting up your cluster to use cloud controller manager will\nchange your cluster behaviour in a few ways:\n\n* Components that specify `--cloud-provider=external` will add a taint\n `node.cloudprovider.kubernetes.io/uninitialized` with an effect `NoSchedule`\n during initialization. This marks the node as needing a second initialization\n from an external controller before it can be scheduled work. Note that in the\n event that cloud controller manager is not available, new nodes in the cluster\n will be left unschedulable. The taint is important since the scheduler may\n require cloud specific information about nodes such as their region or type\n (high cpu, gpu, high memory, spot instance, etc).\n* cloud information about nodes in the cluster will no longer be retrieved using\n  local metadata, but instead all API calls to retrieve node information will go\n  through cloud controller manager. This may mean you can restrict access to your\n  cloud API on the kubelets for better security. For larger clusters you may want\n  to consider if cloud controller manager will hit rate limits since it is now\n  responsible for almost all API calls to your cloud from within the cluster.\n\nThe cloud controller manager can implement:\n\n* Node controller - responsible for updating kubernetes nodes using cloud APIs\n  and deleting kubernetes nodes that were deleted on your cloud.\n* Service controller - responsible for loadbalancers on your cloud against\n  services of type LoadBalancer.\n* Route controller - responsible for setting up network routes on your cloud\n* any other features you would like to implement if you are running an out-of-tree provider.\n\n## Examples\n\nIf you are using a cloud that is currently supported in Kubernetes core and would\nlike to adopt cloud controller manager, see the\n[cloud controller manager in kubernetes core](https://github.com/kubernetes/kubernetes/tree/master/cmd/cloud-controller-manager).\n\nFor cloud controller managers not in Kubernetes core, you can find the resp\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
      "meta": {
        "weight": 110,
        "rel_path": "tasks/administer-cluster/running-cloud-controller.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": null,
          "line_end": null,
          "quote": "Cloud Controller Manager Administration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:administration",
      "type": "concept",
      "title": "Administration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 985,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:examples",
      "type": "concept",
      "title": "Examples",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 3772,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:requirements",
      "type": "concept",
      "title": "Requirements",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 1004,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-cloud-controller-manager",
      "type": "concept",
      "title": "Running cloud-controller-manager",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 1655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:support-for-volumes",
      "type": "concept",
      "title": "Support for Volumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 4648,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scalability",
      "type": "concept",
      "title": "Scalability",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 5164,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:chicken-and-egg",
      "type": "concept",
      "title": "Chicken and Egg",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 5393,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/access-cluster-api",
      "type": "page",
      "title": "Access Clusters Using the Kubernetes API",
      "summary": "",
      "body": "\nThis page shows how to access clusters using the Kubernetes API.\n\n## \n\n \n\n\n\n## Accessing the Kubernetes API\n\n### Accessing for the first time with kubectl\n\nWhen accessing the Kubernetes API for the first time, use the\nKubernetes command-line tool, `kubectl`.\n\nTo access a cluster, you need to know the location of the cluster and have credentials\nto access it. Typically, this is automatically set-up when you work through\na [Getting started guide](/docs/setup/),\nor someone else set up the cluster and provided you with credentials and a location.\n\nCheck the location and credentials that kubectl knows about with this command:\n\n```shell\nkubectl config view\n```\n\nMany of the [examples](https://github.com/kubernetes/examples/tree/master/) provide an introduction to using\nkubectl. Complete documentation is found in the [kubectl manual](/docs/reference/kubectl/).\n\n### Directly accessing the REST API\n\nkubectl handles locating and authenticating to the API server. If you want to directly access the REST API with an http client like\n`curl` or `wget`, or a browser, there are multiple ways you can locate and authenticate against the API server:\n\n1. Run kubectl in proxy mode (recommended). This method is recommended, since it uses\n   the stored API server location and verifies the identity of the API server using a\n   self-signed certificate. No man-in-the-middle (MITM) attack is possible using this method.\n1. Alternatively, you can provide the location and credentials directly to the http client.\n   This works with client code that is confused by proxies. To protect against man in the\n   middle attacks, you'll need to import a root cert into your browser.\n\nUsing the Go or Python client libraries provides accessing kubectl in proxy mode.\n\n#### Using kubectl proxy\n\nThe following command runs kubectl in a mode where it acts as a reverse proxy. It handles\nlocating the API server and authenticating.\n\nRun it like this:\n\n```shell\nkubectl proxy --port=8080 &\n```\n\nSee [kubectl proxy](/docs/reference/generated/kubectl/kubectl-commands/#proxy) for more details.\n\nThen you can explore the API with curl, wget, or a browser, like so:\n\n```shell\ncurl http://localhost:8080/api/\n```\n\nThe output is similar to this:\n\n```json\n{\n  \"versions\": [\n    \"v1\"\n  ],\n  \"serverAddressByClientCIDRs\": [\n    {\n      \"clientCIDR\": \"0.0.0.0/0\",\n      \"serverAddress\": \"10.0.1.149:443\"\n    }\n  ]\n}\n```\n\n#### Without kubectl proxy\n\nIt is possible to avoid using kubectl proxy by passing an authentication token\ndirectly to the API server, like this:\n\nUsing `grep/cut` approach:\n\n```shell\n# Check all possible clusters, as your .KUBECONFIG may have multiple contexts:\nkubectl config view -o jsonpath='{\"Cluster name\\tServer\\n\"}{range .clusters[*]}{.name}{\"\\t\"}{.cluster.server}{\"\\n\"}{end}'\n\n# Select name of cluster you want to interact with from above output:\nexport CLUSTER_NAME=\"some_server_name\"\n\n# Point to the API server referring the cluster name\nAPISERVER=$(kubectl config view -o jsonpath=\"{.clusters[?(@.name==\\\"$CLUSTER_NAME\\\")].cluster.server}\")\n\n# Create a secret to hold a token for the default service account\nkubectl apply -f - <<EOF\napiVersion: v1\nkind: Secret\nmetadata:\n  name: default-token\n  annotations:\n    kubernetes.io/service-account.name: default\ntype: kubernetes.io/service-account-token\nEOF\n\n# Wait for the token controller to populate the secret with a token:\nwhile ! kubectl describe secret default-token | grep -E '^token' >/dev/null; do\n  echo \"waiting for token...\" >&2\n  sleep 1\ndone\n\n# Get the token value\nTOKEN=$(kubectl get secret default-token -o jsonpath='{.data.token}' | base64 --decode)\n\n# Explore the API with TOKEN\ncurl -X GET $APISERVER/api --header \"Authorization: Bearer $TOKEN\" --insecure\n```\n\nThe output is similar to this:\n\n```json\n{\n  \"kind\": \"APIVersions\",\n  \"versions\": [\n    \"v1\"\n  ],\n  \"serverAddressByClientCIDRs\": [\n    {\n      \"clientCIDR\": \"0.0.0.0/0\",\n      \"serverAddress\": \"10.0.1.149:443\"\n    }\n  ]\n}\n```\n\nThe above example uses the `--insecure` flag.\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/administer-cluster/access-cluster-api.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/access-cluster-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
          "line_start": null,
          "line_end": null,
          "quote": "Access Clusters Using the Kubernetes API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-the-kubernetes-api",
      "type": "concept",
      "title": "Accessing the Kubernetes API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/access-cluster-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-for-the-first-time-with-kubectl",
      "type": "concept",
      "title": "Accessing for the first time with kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/access-cluster-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
          "line_start": 236,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:programmatic-access-to-the-api",
      "type": "concept",
      "title": "Programmatic access to the API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/access-cluster-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
          "line_start": 4780,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors",
      "type": "page",
      "title": "Troubleshooting CNI plugin-related errors",
      "summary": "",
      "body": "\n\nTo avoid CNI plugin-related errors, verify that you are using or upgrading to a\ncontainer runtime that has been tested to work correctly with your version of\nKubernetes.\n\n## About the \"Incompatible CNI versions\" and \"Failed to destroy network for sandbox\" errors\n\nService issues exist for pod CNI network setup and tear down in containerd\nv1.6.0-v1.6.3 when the CNI plugins have not been upgraded and/or the CNI config\nversion is not declared in the CNI config files. The containerd team reports,\n\"these issues are resolved in containerd v1.6.4.\"\n\nWith containerd v1.6.0-v1.6.3, if you do not upgrade the CNI plugins and/or\ndeclare the CNI config version, you might encounter the following \"Incompatible\nCNI versions\" or \"Failed to destroy network for sandbox\" error conditions.\n\n### Incompatible CNI versions error\n\nIf the version of your CNI plugin does not correctly match the plugin version in\nthe config because the config version is later than the plugin version, the\ncontainerd log will likely show an error message on startup of a pod similar\nto:\n\n```\nincompatible CNI versions; config is \\\"1.0.0\\\", plugin supports [\\\"0.1.0\\\" \\\"0.2.0\\\" \\\"0.3.0\\\" \\\"0.3.1\\\" \\\"0.4.0\\\"]\"\n```\n\nTo fix this issue, [update your CNI plugins and CNI config files](#updating-your-cni-plugins-and-cni-config-files).\n\n### Failed to destroy network for sandbox error\n\nIf the version of the plugin is missing in the CNI plugin config, the pod may\nrun. However, stopping the pod generates an error similar to:\n\n```\nERROR[2022-04-26T00:43:24.518165483Z] StopPodSandbox for \"b\" failed\nerror=\"failed to destroy network for sandbox \\\"bbc85f891eaf060c5a879e27bba9b6b06450210161dfdecfbb2732959fb6500a\\\": invalid version \\\"\\\": the version is empty\"\n```\n\nThis error leaves the pod in the not-ready state with a network namespace still\nattached. To recover from this problem, [edit the CNI config file](#updating-your-cni-plugins-and-cni-config-files) to add\nthe missing version information. The next attempt to stop the pod should\nbe successful.\n\n### Updating your CNI plugins and CNI config files\n\nIf you're using containerd v1.6.0-v1.6.3 and encountered \"Incompatible CNI\nversions\" or \"Failed to destroy network for sandbox\" errors, consider updating\nyour CNI plugins and editing the CNI config files.\n\nHere's an overview of the typical steps for each node:\n\n1. [Safely drain and cordon the node](/docs/tasks/administer-cluster/safely-drain-node/).\n1. After stopping your container runtime and kubelet services, perform the\n   following upgrade operations:\n\n   - If you're running CNI plugins, upgrade them to the latest version.\n   - If you're using non-CNI plugins, replace them with CNI plugins. Use the\n     latest version of the plugins.\n   - Update the plugin configuration file to specify or match a version of the\n     CNI specification that the plugin supports, as shown in the following\n     [\"An example containerd configuration file\"](#an-example-containerd-configuration-file) section.\n   - For `containerd`, ensure that you have installed the latest version (v1.0.0 or later)\n     of the CNI loopback plugin.\n   - Upgrade node components (for example, the kubelet) to Kubernetes v1.24\n   - Upgrade to or install the most current version of the container runtime.\n\n1. Bring the node back into your cluster by restarting your container runtime\n   and kubelet. Uncordon the node (`kubectl uncordon <nodename>`).\n\n## An example containerd configuration file\n\nThe following example shows a configuration for `containerd` runtime v1.6.x,\nwhich supports a recent version of the CNI specification (v1.0.0).\n\nPlease see the documentation from your plugin and networking provider for\nfurther instructions on configuring your system.\n\nOn Kubernetes, containerd runtime adds a loopback interface, `lo`, to pods as a\ndefault behavior. The containerd runtime configures the loopback interface via a\nCNI plugin, `loopback`. The `loopback` plugin is distributed as part of the\n`containerd` release packages that have the `cni` d\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": null,
          "line_end": null,
          "quote": "Troubleshooting CNI plugin-related errors"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:about-the-incompatible-cni-versions-and-failed-to-destroy-network-for-sandbox-errors",
      "type": "concept",
      "title": "About the \"Incompatible CNI versions\" and \"Failed to destroy network for sandbox\" errors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:an-example-containerd-configuration-file",
      "type": "concept",
      "title": "An example containerd configuration file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": 3416,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:incompatible-cni-versions-error",
      "type": "concept",
      "title": "Incompatible CNI versions error",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": 800,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:failed-to-destroy-network-for-sandbox-error",
      "type": "concept",
      "title": "Failed to destroy network for sandbox error",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": 1319,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-your-cni-plugins-and-cni-config-files",
      "type": "concept",
      "title": "Updating your CNI plugins and CNI config files",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": 2037,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "type": "page",
      "title": "Changing the Container Runtime on a Node from Docker Engine to containerd",
      "summary": "",
      "body": "This task outlines the steps needed to update your container runtime to containerd from Docker. It\nis applicable for cluster operators running Kubernetes 1.23 or earlier. This also covers an\nexample scenario for migrating from dockershim to containerd. Alternative container runtimes\ncan be picked from this [page](/docs/setup/production-environment/container-runtimes/).\n\n## \n\n\n\nInstall containerd. For more information see\n[containerd's installation documentation](https://containerd.io/docs/getting-started/)\nand for specific prerequisite follow\n[the containerd guide](/docs/setup/production-environment/container-runtimes/#containerd).\n\n## Drain the node \n\n```shell\nkubectl drain <node-to-drain> --ignore-daemonsets\n```\n\nReplace `<node-to-drain>` with the name of your node you are draining.\n\n## Stop the Docker daemon\n\n```shell\nsystemctl stop kubelet\nsystemctl disable docker.service --now\n```\n\n## Install Containerd\n\nFollow the [guide](/docs/setup/production-environment/container-runtimes/#containerd)\nfor detailed steps to install containerd.\n\n\n\n\n1. Install the `containerd.io` package from the official Docker repositories. \n   Instructions for setting up the Docker repository for your respective Linux distribution and\n   installing the `containerd.io` package can be found at \n   [Getting started with containerd](https://github.com/containerd/containerd/blob/main/docs/getting-started.md).\n\n1. Configure containerd:\n\n   ```shell\n   sudo mkdir -p /etc/containerd\n   containerd config default | sudo tee /etc/containerd/config.toml\n   ```\n1. Restart containerd:\n\n   ```shell\n   sudo systemctl restart containerd\n   ```\n\n\n\nStart a Powershell session, set `$Version` to the desired version (ex: `$Version=\"1.4.3\"`), and\nthen run the following commands:\n\n1. Download containerd:\n\n   ```powershell\n   curl.exe -L https://github.com/containerd/containerd/releases/download/v$Version/containerd-$Version-windows-amd64.tar.gz -o containerd-windows-amd64.tar.gz\n   tar.exe xvf .\\containerd-windows-amd64.tar.gz\n   ```\n\n2. Extract and configure:\n\n   ```powershell\n   Copy-Item -Path \".\\bin\\\" -Destination \"$Env:ProgramFiles\\containerd\" -Recurse -Force\n   cd $Env:ProgramFiles\\containerd\\\n   .\\containerd.exe config default | Out-File config.toml -Encoding ascii\n\n   # Review the configuration. Depending on setup you may want to adjust:\n   # - the sandbox_image (Kubernetes pause image)\n   # - cni bin_dir and conf_dir locations\n   Get-Content config.toml\n\n   # (Optional - but highly recommended) Exclude containerd from Windows Defender Scans\n   Add-MpPreference -ExclusionProcess \"$Env:ProgramFiles\\containerd\\containerd.exe\"\n   ```\n\n3. Start containerd:\n\n   ```powershell\n   .\\containerd.exe --register-service\n   Start-Service containerd\n   ```\n\n\n\n\n## Configure the kubelet to use containerd as its container runtime\n\nEdit the file `/var/lib/kubelet/kubeadm-flags.env` and add the containerd runtime to the flags;\n`--container-runtime-endpoint=unix:///run/containerd/containerd.sock`.\n\nUsers using kubeadm should be aware that the kubeadm tool stores the host's CRI socket in the \n\n`/var/lib/kubelet/instance-config.yaml` file on each node. You can create this `/var/lib/kubelet/instance-config.yaml` file on the node.\n\nThe `/var/lib/kubelet/instance-config.yaml` file allows setting the `containerRuntimeEndpoint` parameter. \n\nYou can set this parameter's value to the path of your chosen CRI socket (for example `unix:///run/containerd/containerd.sock`).\n\n## Restart the kubelet\n\n```shell\nsystemctl start kubelet\n```\n\n## Verify that the node is healthy\n\nRun `kubectl get nodes -o wide` and containerd appears as the runtime for the node we just changed.\n\n## Remove Docker Engine\n\n\n\nIf the node appears healthy, remove Docker.\n\n\n\n\n```shell\nsudo yum remove docker-ce docker-ce-cli\n```\n\n\n\n```shell\nsudo apt-get purge docker-ce docker-ce-cli\n```\n\n\n\n```shell\nsudo dnf remove docker-ce docker-ce-cli\n```\n\n\n\n```shell\nsudo apt-get purge docker-ce docker-ce-cli\n```\n\n\n\nThe preceding commands don't re\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": null,
          "line_end": null,
          "quote": "Changing the Container Runtime on a Node from Docker Engine to containerd"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:drain-the-node",
      "type": "concept",
      "title": "Drain the node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 699,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stop-the-docker-daemon",
      "type": "concept",
      "title": "Stop the Docker daemon",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 855,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-containerd",
      "type": "concept",
      "title": "Install Containerd",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 958,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-the-kubelet-to-use-containerd-as-its-container-runtime",
      "type": "concept",
      "title": "Configure the kubelet to use containerd as its container runtime",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 2965,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restart-the-kubelet",
      "type": "concept",
      "title": "Restart the kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 3674,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-that-the-node-is-healthy",
      "type": "concept",
      "title": "Verify that the node is healthy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 3736,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:remove-docker-engine",
      "type": "concept",
      "title": "Remove Docker Engine",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 3873,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uncordon-the-node",
      "type": "concept",
      "title": "Uncordon the node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 4831,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "type": "page",
      "title": "Migrating telemetry and security agents from dockershim",
      "summary": "",
      "body": "\n\n\n\nKubernetes' support for direct integration with Docker Engine is deprecated and\nhas been removed. Most apps do not have a direct dependency on runtime hosting\ncontainers. However, there are still a lot of telemetry and monitoring agents\nthat have a dependency on Docker to collect containers metadata, logs, and\nmetrics. This document aggregates information on how to detect these\ndependencies as well as links on how to migrate these agents to use generic tools or\nalternative runtimes.\n\n## Telemetry and security agents\n\nWithin a Kubernetes cluster there are a few different ways to run telemetry or\nsecurity agents.  Some agents have a direct dependency on Docker Engine when\nthey run as DaemonSets or directly on nodes.\n\n### Why do some telemetry agents communicate with Docker Engine?\n\nHistorically, Kubernetes was written to work specifically with Docker Engine.\nKubernetes took care of networking and scheduling, relying on Docker Engine for\nlaunching and running containers (within Pods) on a node. Some information that\nis relevant to telemetry, such as a pod name, is only available from Kubernetes\ncomponents. Other data, such as container metrics, is not the responsibility of\nthe container runtime. Early telemetry agents needed to query the container\nruntime *and* Kubernetes to report an accurate picture. Over time, Kubernetes\ngained the ability to support multiple runtimes, and now supports any runtime\nthat is compatible with the [container runtime interface](/docs/concepts/architecture/cri/).\n\nSome telemetry agents rely specifically on Docker Engine tooling. For example, an agent\nmight run a command such as\n[`docker ps`](https://docs.docker.com/engine/reference/commandline/ps/)\nor [`docker top`](https://docs.docker.com/engine/reference/commandline/top/) to list\ncontainers and processes or [`docker logs`](https://docs.docker.com/engine/reference/commandline/logs/)\nto receive streamed logs. If nodes in your existing cluster use\nDocker Engine, and you switch to a different container runtime,\nthese commands will not work any longer.\n\n### Identify DaemonSets that depend on Docker Engine {#identify-docker-dependency}\n\nIf a pod wants to make calls to the `dockerd` running on the node, the pod must either:\n\n- mount the filesystem containing the Docker daemon's privileged socket, as a\n  [volume](#gloss:volume); or\n- mount the specific path of the Docker daemon's privileged socket directly, also as a volume.\n\nFor example: on COS images, Docker exposes its Unix domain socket at\n`/var/run/docker.sock` This means that the pod spec will include a\n`hostPath` volume mount of `/var/run/docker.sock`.\n\nHere's a sample shell script to find Pods that have a mount directly mapping the\nDocker socket. This script outputs the namespace and name of the pod. You can\nremove the `grep '/var/run/docker.sock'` to review other mounts.\n\n```bash\nkubectl get pods --all-namespaces \\\n-o=jsonpath='{range .items[*]}{\"\\n\"}{.metadata.namespace}{\":\\t\"}{.metadata.name}{\":\\t\"}{range .spec.volumes[*]}{.hostPath.path}{\", \"}{end}{end}' \\\n| sort \\\n| grep '/var/run/docker.sock'\n```\n\n\n> **Note:** There are alternative ways for a pod to access Docker on the host. For instance, the parent\ndirectory `/var/run` may be mounted instead of the full path (like in [this\nexample](https://gist.github.com/itaysk/7bc3e56d69c4d72a549286d98fd557dd)).\nThe script above only detects the most common uses.\n\n\n### Detecting Docker dependency from node agents\n\nIf your cluster nodes are customized and install additional security and\ntelemetry agents on the node, check with the agent vendor\nto verify whether it has any dependency on Docker.\n\n### Telemetry and security agent vendors\n\nThis section is intended to aggregate information about various telemetry and\nsecurity agents that may have a dependency on container runtimes.\n\nWe keep the work in progress version of migration instructions for various telemetry and security agent vendors\nin [Google doc](https://docs.google.com/document/d/1ZFi4uKit63ga5s\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": null,
          "line_end": null,
          "quote": "Migrating telemetry and security agents from dockershim"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:telemetry-and-security-agents",
      "type": "concept",
      "title": "Telemetry and security agents",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 537,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migration-from-dockershim",
      "type": "concept",
      "title": "Migration from dockershim",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 4216,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-do-some-telemetry-agents-communicate-with-docker-engine",
      "type": "concept",
      "title": "Why do some telemetry agents communicate with Docker Engine?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 773,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:identify-daemonsets-that-depend-on-docker-engine-identify-docker-dependency",
      "type": "concept",
      "title": "Identify DaemonSets that depend on Docker Engine {#identify-docker-dependency}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 2110,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:detecting-docker-dependency-from-node-agents",
      "type": "concept",
      "title": "Detecting Docker dependency from node agents",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 3491,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:telemetry-and-security-agent-vendors",
      "type": "concept",
      "title": "Telemetry and security agent vendors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 3724,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aqua-https-www-aquasec-com",
      "type": "concept",
      "title": "[Aqua](https://www.aquasec.com)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 4246,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:datadog-https-www-datadoghq-com-product",
      "type": "concept",
      "title": "[Datadog](https://www.datadoghq.com/product/)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 4364,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dynatrace-https-www-dynatrace-com",
      "type": "concept",
      "title": "[Dynatrace](https://www.dynatrace.com/)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 4642,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:falco-https-falco-org",
      "type": "concept",
      "title": "[Falco](https://falco.org)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 5443,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prisma-cloud-compute-https-docs-paloaltonetworks-com-prisma-prisma-cloud-html",
      "type": "concept",
      "title": "[Prisma Cloud Compute](https://docs.paloaltonetworks.com/prisma/prisma-cloud.html)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 5805,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:signalfx-splunk-https-www-splunk-com-en-us-investor-relations-acquisitions-signalfx-html",
      "type": "concept",
      "title": "[SignalFx (Splunk)](https://www.splunk.com/en_us/investor-relations/acquisitions/signalfx.html)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 6190,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:yahoo-kubectl-flame",
      "type": "concept",
      "title": "Yahoo Kubectl Flame",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 7468,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you",
      "type": "page",
      "title": "Check whether dockershim removal affects you",
      "summary": "",
      "body": "\n\nThe `dockershim` component of Kubernetes allows the use of Docker as a Kubernetes's\n[container runtime](#gloss:container-runtime).\nKubernetes' built-in `dockershim` component was removed in release v1.24.\n\nThis page explains how your cluster could be using Docker as a container runtime,\nprovides details on the role that `dockershim` plays when in use, and shows steps\nyou can take to check whether any workloads could be affected by `dockershim` removal.\n\n## Finding if your app has a dependencies on Docker {#find-docker-dependencies}\n\nIf you are using Docker for building your application containers, you can still\nrun these containers on any container runtime. This use of Docker does not count\nas a dependency on Docker as a container runtime.\n\nWhen alternative container runtime is used, executing Docker commands may either\nnot work or yield unexpected output. This is how you can find whether you have a\ndependency on Docker:\n\n1. Make sure no privileged Pods execute Docker commands (like `docker ps`),\n   restart the Docker service (commands such as `systemctl restart docker.service`),\n   or modify Docker-specific files such as `/etc/docker/daemon.json`.\n1. Check for any private registries or image mirror settings in the Docker\n   configuration file (like `/etc/docker/daemon.json`). Those typically need to\n   be reconfigured for another container runtime.\n1. Check that scripts and apps running on nodes outside of your Kubernetes\n   infrastructure do not execute Docker commands. It might be:\n   - SSH to nodes to troubleshoot;\n   - Node startup scripts;\n   - Monitoring and security agents installed on nodes directly.\n1. Third-party tools that perform above mentioned privileged operations. See\n   [Migrating telemetry and security agents from dockershim](/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents)\n   for more information.\n1. Make sure there are no indirect dependencies on dockershim behavior.\n   This is an edge case and unlikely to affect your application. Some tooling may be configured\n   to react to Docker-specific behaviors, for example, raise alert on specific metrics or search for\n   a specific log message as part of troubleshooting instructions.\n   If you have such tooling configured, test the behavior on a test\n   cluster before migration.\n\n## Dependency on Docker explained {#role-of-dockershim}\n\nA [container runtime](/docs/concepts/containers/#container-runtimes) is software that can\nexecute the containers that make up a Kubernetes pod. Kubernetes is responsible for orchestration\nand scheduling of Pods; on each node, the [kubelet](#gloss:kubelet)\nuses the container runtime interface as an abstraction so that you can use any compatible\ncontainer runtime.\n\nIn its earliest releases, Kubernetes offered compatibility with one container runtime: Docker.\nLater in the Kubernetes project's history, cluster operators wanted to adopt additional container runtimes.\nThe CRI was designed to allow this kind of flexibility - and the kubelet began supporting CRI. However,\nbecause Docker existed before the CRI specification was invented, the Kubernetes project created an\nadapter component, `dockershim`. The dockershim adapter allows the kubelet to interact with Docker as\nif Docker were a CRI compatible runtime.\n\nYou can read about it in [Kubernetes Containerd integration goes GA](/blog/2018/05/24/kubernetes-containerd-integration-goes-ga/) blog post.\n\n![Dockershim vs. CRI with Containerd](/images/blog/2018-05-24-kubernetes-containerd-integration-goes-ga/cri-containerd.png)\n\nSwitching to Containerd as a container runtime eliminates the middleman. All the\nsame containers can be run by container runtimes like Containerd as before. But\nnow, since containers schedule directly with the container runtime, they are not visible to Docker.\nSo any Docker tooling or fancy UI you might have used\nbefore to check on these containers is no longer available.\n\nYou cannot get container information using `docke\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": null,
          "line_end": null,
          "quote": "Check whether dockershim removal affects you"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:finding-if-your-app-has-a-dependencies-on-docker-find-docker-dependencies",
      "type": "concept",
      "title": "Finding if your app has a dependencies on Docker {#find-docker-dependencies}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": 510,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dependency-on-docker-explained-role-of-dockershim",
      "type": "concept",
      "title": "Dependency on Docker explained {#role-of-dockershim}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": 2384,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:some-filesystem-metrics-are-missing-and-the-metrics-format-is-different",
      "type": "concept",
      "title": "Some filesystem metrics are missing and the metrics format is different",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": 4769,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use",
      "type": "page",
      "title": "Find Out What Container Runtime is Used on a Node",
      "summary": "",
      "body": "\n\nThis page outlines steps to find out what [container runtime](/docs/setup/production-environment/container-runtimes/)\nthe nodes in your cluster use.\n\nDepending on the way you run your cluster, the container runtime for the nodes may\nhave been pre-configured or you need to configure it. If you're using a managed\nKubernetes service, there might be vendor-specific ways to check what container runtime is\nconfigured for the nodes. The method described on this page should work whenever\nthe execution of `kubectl` is allowed.\n\n## \n\nInstall and configure `kubectl`. See [Install Tools](/docs/tasks/tools/#kubectl) section for details.\n\n## Find out the container runtime used on a Node\n\nUse `kubectl` to fetch and show node information:\n\n```shell\nkubectl get nodes -o wide\n```\n\nThe output is similar to the following. The column `CONTAINER-RUNTIME` outputs\nthe runtime and its version.\n\nFor Docker Engine, the output is similar to this:\n\n```none\nNAME         STATUS   VERSION    CONTAINER-RUNTIME\nnode-1       Ready    v1.16.15   docker://19.3.1\nnode-2       Ready    v1.16.15   docker://19.3.1\nnode-3       Ready    v1.16.15   docker://19.3.1\n```\nIf your runtime shows as Docker Engine, you still might not be affected by the\nremoval of dockershim in Kubernetes v1.24.\n[Check the runtime endpoint](#which-endpoint) to see if you use dockershim.\nIf you don't use dockershim, you aren't affected. \n\nFor containerd, the output is similar to this:\n\n```none\nNAME         STATUS   VERSION   CONTAINER-RUNTIME\nnode-1       Ready    v1.19.6   containerd://1.4.1\nnode-2       Ready    v1.19.6   containerd://1.4.1\nnode-3       Ready    v1.19.6   containerd://1.4.1\n```\n\nFind out more information about container runtimes\non [Container Runtimes](/docs/setup/production-environment/container-runtimes/)\npage.\n\n## Find out what container runtime endpoint you use {#which-endpoint}\n\nThe container runtime talks to the kubelet over a Unix socket using the [CRI\nprotocol](/docs/concepts/architecture/cri/), which is based on the gRPC\nframework. The kubelet acts as a client, and the runtime acts as the server.\nIn some cases, you might find it useful to know which socket your nodes use. For\nexample, with the removal of dockershim in Kubernetes v1.24 and later, you might\nwant to know whether you use Docker Engine with dockershim.\n\n\nIf you currently use Docker Engine in your nodes with `cri-dockerd`, you aren't\naffected by the dockershim removal.\n\n\nYou can check which socket you use by checking the kubelet configuration on your\nnodes.\n\n1.  Read the starting commands for the kubelet process:\n\n    ```\n    tr \\\\0 ' ' < /proc/\"$(pgrep kubelet)\"/cmdline\n    ```\n    If you don't have `tr` or `pgrep`, check the command line for the kubelet\n    process manually.\n\n1.  In the output, look for the `--container-runtime` flag and the\n    `--container-runtime-endpoint` flag.\n\n    *   If your nodes use Kubernetes v1.23 and earlier and these flags aren't\n        present or if the `--container-runtime` flag is not `remote`,\n        you use the dockershim socket with Docker Engine. The `--container-runtime` command line\n        argument is not available in Kubernetes v1.27 and later.\n    *   If the `--container-runtime-endpoint` flag is present, check the socket\n        name to find out which runtime you use. For example,\n        `unix:///run/containerd/containerd.sock` is the containerd endpoint.\n\nIf you want to change the Container Runtime on a Node from Docker Engine to containerd,\nyou can find out more information on [migrating from Docker Engine to  containerd](/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/),\nor, if you want to continue using Docker Engine in Kubernetes v1.24 and later, migrate to a\nCRI-compatible adapter like [`cri-dockerd`](https://github.com/Mirantis/cri-dockerd).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use/",
          "line_start": null,
          "line_end": null,
          "quote": "Find Out What Container Runtime is Used on a Node"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:find-out-the-container-runtime-used-on-a-node",
      "type": "concept",
      "title": "Find out the container runtime used on a Node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use/",
          "line_start": 684,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:find-out-what-container-runtime-endpoint-you-use-which-endpoint",
      "type": "concept",
      "title": "Find out what container runtime endpoint you use {#which-endpoint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use/",
          "line_start": 1847,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/migrating-from-dockershim/_index",
      "type": "page",
      "title": "Migrating from dockershim",
      "summary": "",
      "body": "\n\nThis section presents information you need to know when migrating from\ndockershim to other container runtimes.\n\nSince the announcement of [dockershim deprecation](/blog/2020/12/08/kubernetes-1-20-release-announcement/#dockershim-deprecation)\nin Kubernetes 1.20, there were questions on how this will affect various workloads and Kubernetes\ninstallations. Our [Dockershim Removal FAQ](/blog/2022/02/17/dockershim-faq/) is there to help you\nto understand the problem better.\n\nDockershim was removed from Kubernetes with the release of v1.24.\nIf you use Docker Engine via dockershim as your container runtime and wish to upgrade to v1.24,\nit is recommended that you either migrate to another runtime or find an alternative means to obtain Docker Engine support.\nCheck out the [container runtimes](/docs/setup/production-environment/container-runtimes/)\nsection to know your options.\n\nThe version of Kubernetes with dockershim (1.23) is out of support and the v1.24\nwill run out of support [soon](/releases/#release-v1-24). Make sure to\n[report issues](https://github.com/kubernetes/kubernetes/issues) you encountered\nwith the migration so the issues can be fixed in a timely manner and your cluster would be\nready for dockershim removal. After v1.24 running out of support, you will need\nto contact your Kubernetes provider for support or upgrade multiple versions at a time\nif there are critical issues affecting your cluster.\n\nYour cluster might have more than one kind of node, although this is not a common\nconfiguration.\n\nThese tasks will help you to migrate:\n\n* [Check whether Dockershim removal affects you](/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/)\n* [Migrating telemetry and security agents from dockershim](/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/)\n\n\n## \n\n* Check out [container runtimes](/docs/setup/production-environment/container-runtimes/)\n  to understand your options for an alternative.\n* If you find a defect or other technical concern relating to migrating away from dockershim,\n  you can [report an issue](https://github.com/kubernetes/kubernetes/issues/new/choose)\n  to the Kubernetes project.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/administer-cluster/migrating-from-dockershim/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/_index.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Migrating from dockershim"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "type": "page",
      "title": "Configure Minimum and Maximum Memory Constraints for a Namespace",
      "summary": "Define a range of valid memory resource limits for a namespace, so that every new Pod in that namespace falls within the range you configure.",
      "body": "\n\nThis page shows how to set minimum and maximum values for memory used by containers\nrunning in a [namespace](#gloss:namespace). \nYou specify minimum and maximum memory values in a\n[LimitRange](/docs/reference/kubernetes-api/policy-resources/limit-range-v1/)\nobject. If a Pod does not meet the constraints imposed by the LimitRange,\nit cannot be created in the namespace.\n\n\n\n## \n\n\n\n\nYou must have access to create namespaces in your cluster.\n\nEach node in your cluster must have at least 1 GiB of memory available for Pods.\n\n\n\n## Create a namespace\n\nCreate a namespace so that the resources you create in this exercise are\nisolated from the rest of your cluster.\n\n```shell\nkubectl create namespace constraints-mem-example\n```\n\n## Create a LimitRange and a Pod\n\nHere's an example manifest for a LimitRange:\n\n\n\nCreate the LimitRange:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/memory-constraints.yaml --namespace=constraints-mem-example\n```\n\nView detailed information about the LimitRange:\n\n```shell\nkubectl get limitrange mem-min-max-demo-lr --namespace=constraints-mem-example --output=yaml\n```\n\nThe output shows the minimum and maximum memory constraints as expected. But\nnotice that even though you didn't specify default values in the configuration\nfile for the LimitRange, they were created automatically.\n\n```\n  limits:\n  - default:\n      memory: 1Gi\n    defaultRequest:\n      memory: 1Gi\n    max:\n      memory: 1Gi\n    min:\n      memory: 500Mi\n    type: Container\n```\n\nNow whenever you define a Pod within the constraints-mem-example namespace, Kubernetes\nperforms these steps:\n\n* If any container in that Pod does not specify its own memory request and limit, \nthe control plane assigns the default memory request and limit to that container.\n\n* Verify that every container in that Pod requests at least 500 MiB of memory.\n\n* Verify that every container in that Pod requests no more than 1024 MiB (1 GiB)\n  of memory.\n\nHere's a manifest for a Pod that has one container. Within the Pod spec, the sole\ncontainer specifies a memory request of 600 MiB and a memory limit of 800 MiB. These satisfy the\nminimum and maximum memory constraints imposed by the LimitRange.\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/memory-constraints-pod.yaml --namespace=constraints-mem-example\n```\n\nVerify that the Pod is running and that its container is healthy:\n\n```shell\nkubectl get pod constraints-mem-demo --namespace=constraints-mem-example\n```\n\nView detailed information about the Pod:\n\n```shell\nkubectl get pod constraints-mem-demo --output=yaml --namespace=constraints-mem-example\n```\n\nThe output shows that the container within that Pod has a memory request of 600 MiB and\na memory limit of 800 MiB. These satisfy the constraints imposed by the LimitRange for\nthis namespace:\n\n```yaml\nresources:\n  limits:\n     memory: 800Mi\n  requests:\n    memory: 600Mi\n```\n\nDelete your Pod:\n\n```shell\nkubectl delete pod constraints-mem-demo --namespace=constraints-mem-example\n```\n\n## Attempt to create a Pod that exceeds the maximum memory constraint\n\nHere's a manifest for a Pod that has one container. The container specifies a\nmemory request of 800 MiB and a memory limit of 1.5 GiB.\n\n\n\nAttempt to create the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/memory-constraints-pod-2.yaml --namespace=constraints-mem-example\n```\n\nThe output shows that the Pod does not get created, because it defines a container that\nrequests more memory than is allowed:\n\n```\nError from server (Forbidden): error when creating \"examples/admin/resource/memory-constraints-pod-2.yaml\":\npods \"constraints-mem-demo-2\" is forbidden: maximum memory usage per Container is 1Gi, but limit is 1536Mi.\n```\n\n## Attempt to create a Pod that does not meet the minimum memory request\n\nHere's a manifest for a Pod that has one container. That container specifies a\nmemory request of 100 MiB and a memory limit of 800 MiB.\n\n\n\nAttempt to create the Pod:\n\n```sh\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Minimum and Maximum Memory Constraints for a Namespace"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-limitrange-and-a-pod",
      "type": "concept",
      "title": "Create a LimitRange and a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 865,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:attempt-to-create-a-pod-that-exceeds-the-maximum-memory-constraint",
      "type": "concept",
      "title": "Attempt to create a Pod that exceeds the maximum memory constraint",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 3300,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:attempt-to-create-a-pod-that-does-not-meet-the-minimum-memory-request",
      "type": "concept",
      "title": "Attempt to create a Pod that does not meet the minimum memory request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 4096,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-does-not-specify-any-memory-request-or-limit",
      "type": "concept",
      "title": "Create a Pod that does not specify any memory request or limit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 4909,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enforcement-of-minimum-and-maximum-memory-constraints",
      "type": "concept",
      "title": "Enforcement of minimum and maximum memory constraints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 6737,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:motivation-for-minimum-and-maximum-memory-constraints",
      "type": "concept",
      "title": "Motivation for minimum and maximum memory constraints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 7415,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "type": "page",
      "title": "Configure Default CPU Requests and Limits for a Namespace",
      "summary": "Define a default CPU resource limits for a namespace, so that every new Pod in that namespace has a CPU resource limit configured.",
      "body": "\n\nThis page shows how to configure default CPU requests and limits for a\n[namespace](#gloss:namespace).\n\nA Kubernetes cluster can be divided into namespaces. If you create a Pod within a\nnamespace that has a default CPU\n[limit](/docs/concepts/configuration/manage-resources-containers/#requests-and-limits), and any container in that Pod does not specify\nits own CPU limit, then the\n[control plane](#gloss:control-plane) assigns the default\nCPU limit to that container.\n\nKubernetes assigns a default CPU\n[request](/docs/concepts/configuration/manage-resources-containers/#requests-and-limits),\nbut only under certain conditions that are explained later in this page.\n\n## \n\n\n\n\nYou must have access to create namespaces in your cluster.\n\nIf you're not already familiar with what Kubernetes means by 1.0 CPU,\nread [meaning of CPU](/docs/concepts/configuration/manage-resources-containers/#meaning-of-cpu).\n\n\n\n## Create a namespace\n\nCreate a namespace so that the resources you create in this exercise are\nisolated from the rest of your cluster.\n\n```shell\nkubectl create namespace default-cpu-example\n```\n\n## Create a LimitRange and a Pod\n\nHere's a manifest for an example [LimitRange](#gloss:limitrange).\nThe manifest specifies a default CPU request and a default CPU limit.\n\n\n\nCreate the LimitRange in the default-cpu-example namespace:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/cpu-defaults.yaml --namespace=default-cpu-example\n```\n\nNow if you create a Pod in the default-cpu-example namespace, and any container\nin that Pod does not specify its own values for CPU request and CPU limit,\nthen the control plane applies default values: a CPU request of 0.5 and a default\nCPU limit of 1.\n\nHere's a manifest for a Pod that has one container. The container\ndoes not specify a CPU request and limit.\n\n\n\nCreate the Pod.\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/cpu-defaults-pod.yaml --namespace=default-cpu-example\n```\n\nView the Pod's specification:\n\n```shell\nkubectl get pod default-cpu-demo --output=yaml --namespace=default-cpu-example\n```\n\nThe output shows that the Pod's only container has a CPU request of 500m `cpu`\n(which you can read as “500 millicpu”), and a CPU limit of 1 `cpu`.\nThese are the default values specified by the LimitRange.\n\n```shell\ncontainers:\n- image: nginx\n  imagePullPolicy: Always\n  name: default-cpu-demo-ctr\n  resources:\n    limits:\n      cpu: \"1\"\n    requests:\n      cpu: 500m\n```\n\n## What if you specify a container's limit, but not its request?\n\nHere's a manifest for a Pod that has one container. The container\nspecifies a CPU limit, but not a request:\n\n\n\nCreate the Pod:\n\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/cpu-defaults-pod-2.yaml --namespace=default-cpu-example\n```\n\nView the [specification](/docs/concepts/overview/working-with-objects/#object-spec-and-status)\nof the Pod that you created:\n\n```\nkubectl get pod default-cpu-demo-2 --output=yaml --namespace=default-cpu-example\n```\n\nThe output shows that the container's CPU request is set to match its CPU limit.\nNotice that the container was not assigned the default CPU request value of 0.5 `cpu`:\n\n```\nresources:\n  limits:\n    cpu: \"1\"\n  requests:\n    cpu: \"1\"\n```\n\n## What if you specify a container's request, but not its limit?\n\nHere's an example manifest for a Pod that has one container. The container\nspecifies a CPU request, but not a limit:\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/cpu-defaults-pod-3.yaml --namespace=default-cpu-example\n```\n\nView the specification of the Pod that you created:\n\n```\nkubectl get pod default-cpu-demo-3 --output=yaml --namespace=default-cpu-example\n```\n\nThe output shows that the container's CPU request is set to the value you specified at\nthe time you created the Pod (in other words: it matches the manifest).\nHowever, the same container's CPU limit is set to 1 `cpu`, which is the default CPU limit\nfor that namespace.\n\n```\nresources:\n  limits:\n  \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Default CPU Requests and Limits for a Namespace"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-if-you-specify-a-container-s-limit-but-not-its-request",
      "type": "concept",
      "title": "What if you specify a container's limit, but not its request?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 2781,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-if-you-specify-a-container-s-request-but-not-its-limit",
      "type": "concept",
      "title": "What if you specify a container's request, but not its limit?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 3619,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:motivation-for-default-cpu-limits-and-requests",
      "type": "concept",
      "title": "Motivation for default CPU limits and requests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 4495,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "type": "page",
      "title": "Configure Memory and CPU Quotas for a Namespace",
      "summary": "Define overall memory and CPU resource limits for a namespace.",
      "body": "\n\nThis page shows how to set quotas for the total amount memory and CPU that\ncan be used by all Pods running in a [namespace](#gloss:namespace).\nYou specify quotas in a\n[ResourceQuota](/docs/reference/kubernetes-api/policy-resources/resource-quota-v1/)\nobject.\n\n\n\n\n## \n\n\n\nYou must have access to create namespaces in your cluster.\n\nEach node in your cluster must have at least 1 GiB of memory.\n\n\n\n\n## Create a namespace\n\nCreate a namespace so that the resources you create in this exercise are\nisolated from the rest of your cluster.\n\n```shell\nkubectl create namespace quota-mem-cpu-example\n```\n\n## Create a ResourceQuota\n\nHere is a manifest for an example ResourceQuota:\n\n\n\nCreate the ResourceQuota:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/quota-mem-cpu.yaml --namespace=quota-mem-cpu-example\n```\n\nView detailed information about the ResourceQuota:\n\n```shell\nkubectl get resourcequota mem-cpu-demo --namespace=quota-mem-cpu-example --output=yaml\n```\n\nThe ResourceQuota places these requirements on the quota-mem-cpu-example namespace:\n\n* For every Pod in the namespace, each container must have a memory request, memory limit, cpu request, and cpu limit.\n* The memory request total for all Pods in that namespace must not exceed 1 GiB.\n* The memory limit total for all Pods in that namespace must not exceed 2 GiB.\n* The CPU request total for all Pods in that namespace must not exceed 1 cpu.\n* The CPU limit total for all Pods in that namespace must not exceed 2 cpu.\n\nSee [meaning of CPU](/docs/concepts/configuration/manage-resources-containers/#meaning-of-cpu)\nto learn what Kubernetes means by “1 CPU”.\n\n## Create a Pod\n\nHere is a manifest for an example Pod:\n\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/quota-mem-cpu-pod.yaml --namespace=quota-mem-cpu-example\n```\n\nVerify that the Pod is running and that its (only) container is healthy:\n\n```shell\nkubectl get pod quota-mem-cpu-demo --namespace=quota-mem-cpu-example\n```\n\nOnce again, view detailed information about the ResourceQuota:\n\n```shell\nkubectl get resourcequota mem-cpu-demo --namespace=quota-mem-cpu-example --output=yaml\n```\n\nThe output shows the quota along with how much of the quota has been used.\nYou can see that the memory and CPU requests and limits for your Pod do not\nexceed the quota.\n\n```\nstatus:\n  hard:\n    limits.cpu: \"2\"\n    limits.memory: 2Gi\n    requests.cpu: \"1\"\n    requests.memory: 1Gi\n  used:\n    limits.cpu: 800m\n    limits.memory: 800Mi\n    requests.cpu: 400m\n    requests.memory: 600Mi\n```\n\nIf you have the `jq` tool, you can also query (using [JSONPath](/docs/reference/kubectl/jsonpath/))\nfor just the `used` values, **and** pretty-print that that of the output. For example:\n\n```shell\nkubectl get resourcequota mem-cpu-demo --namespace=quota-mem-cpu-example -o jsonpath='{ .status.used }' | jq .\n```\n\n## Attempt to create a second Pod\n\nHere is a manifest for a second Pod:\n\n\n\nIn the manifest, you can see that the Pod has a memory request of 700 MiB.\nNotice that the sum of the used memory request and this new memory\nrequest exceeds the memory request quota: 600 MiB + 700 MiB > 1 GiB.\n\nAttempt to create the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/quota-mem-cpu-pod-2.yaml --namespace=quota-mem-cpu-example\n```\n\nThe second Pod does not get created. The output shows that creating the second Pod\nwould cause the memory request total to exceed the memory request quota.\n\n```\nError from server (Forbidden): error when creating \"examples/admin/resource/quota-mem-cpu-pod-2.yaml\":\npods \"quota-mem-cpu-demo-2\" is forbidden: exceeded quota: mem-cpu-demo,\nrequested: requests.memory=700Mi,used: requests.memory=600Mi, limited: requests.memory=1Gi\n```\n\n## Discussion\n\nAs you have seen in this exercise, you can use a ResourceQuota to restrict\nthe memory request total for all Pods running in a namespace.\nYou can also restrict the totals for memory limit, cpu request, and cpu limit.\n\nInstead of managing total re\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Memory and CPU Quotas for a Namespace"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod",
      "type": "concept",
      "title": "Create a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 1833,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "type": "page",
      "title": "Configure a Pod Quota for a Namespace",
      "summary": "Restrict how many Pods you can create within a namespace.",
      "body": "\n\nThis page shows how to set a quota for the total number of Pods that can run\nin a [Namespace](#gloss:namespace). You specify quotas in a\n[ResourceQuota](/docs/reference/kubernetes-api/policy-resources/resource-quota-v1/)\nobject.\n\n\n\n\n## \n\n\n\n\nYou must have access to create namespaces in your cluster.\n\n\n\n## Create a namespace\n\nCreate a namespace so that the resources you create in this exercise are\nisolated from the rest of your cluster.\n\n```shell\nkubectl create namespace quota-pod-example\n```\n\n## Create a ResourceQuota\n\nHere is an example manifest for a ResourceQuota:\n\n\n\nCreate the ResourceQuota:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/quota-pod.yaml --namespace=quota-pod-example\n```\n\nView detailed information about the ResourceQuota:\n\n```shell\nkubectl get resourcequota pod-demo --namespace=quota-pod-example --output=yaml\n```\n\nThe output shows that the namespace has a quota of two Pods, and that currently there are\nno Pods; that is, none of the quota is used.\n\n```yaml\nspec:\n  hard:\n    pods: \"2\"\nstatus:\n  hard:\n    pods: \"2\"\n  used:\n    pods: \"0\"\n```\n\nHere is an example manifest for a [deployment](#gloss:deployment):\n\n\n\nIn that manifest, `replicas: 3` tells Kubernetes to attempt to create three new Pods, all\nrunning the same application.\n\nCreate the Deployment:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/quota-pod-deployment.yaml --namespace=quota-pod-example\n```\n\nView detailed information about the Deployment:\n\n```shell\nkubectl get deployment pod-quota-demo --namespace=quota-pod-example --output=yaml\n```\n\nThe output shows that even though the Deployment specifies three replicas, only two\nPods were created because of the quota you defined earlier:\n\n```yaml\nspec:\n  ...\n  replicas: 3\n...\nstatus:\n  availableReplicas: 2\n...\nlastUpdateTime: 2021-04-02T20:57:05Z\n    message: 'unable to create pods: pods \"pod-quota-demo-1650323038-\" is forbidden:\n      exceeded quota: pod-demo, requested: pods=1, used: pods=2, limited: pods=2'\n```\n\n### Choice of resource\n\nIn this task you have defined a ResourceQuota that limited the total number of Pods, but\nyou could also limit the total number of other kinds of object. For example, you\nmight decide to limit how many [CronJobs](#gloss:cronjob)\nthat can live in a single namespace.\n\n## Clean up\n\nDelete your namespace:\n\n```shell\nkubectl delete namespace quota-pod-example\n```\n\n\n\n## \n\n\n### For cluster administrators\n\n* [Configure Default Memory Requests and Limits for a Namespace](/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/)\n\n* [Configure Default CPU Requests and Limits for a Namespace](/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/)\n\n* [Configure Minimum and Maximum Memory Constraints for a Namespace](/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/)\n\n* [Configure Minimum and Maximum CPU Constraints for a Namespace](/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/)\n\n* [Configure Memory and CPU Quotas for a Namespace](/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/)\n\n* [Configure Quotas for API Objects](/docs/tasks/administer-cluster/quota-api-object/)\n\n### For app developers\n\n* [Assign Memory Resources to Containers and Pods](/docs/tasks/configure-pod-container/assign-memory-resource/)\n\n* [Assign CPU Resources to Containers and Pods](/docs/tasks/configure-pod-container/assign-cpu-resource/)\n\n* [Assign Pod-level CPU and memory resources](/docs/tasks/configure-pod-container/assign-pod-level-resources/)\n\n* [Configure Quality of Service for Pods](/docs/tasks/configure-pod-container/quality-service-pod/)\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure a Pod Quota for a Namespace"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:choice-of-resource",
      "type": "concept",
      "title": "Choice of resource",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 2281,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "type": "page",
      "title": "Configure Minimum and Maximum CPU Constraints for a Namespace",
      "summary": "Define a range of valid CPU resource limits for a namespace, so that every new Pod in that namespace falls within the range you configure.",
      "body": "\n\nThis page shows how to set minimum and maximum values for the CPU resources used by containers\nand Pods in a [namespace](#gloss:namespace). You specify minimum\nand maximum CPU values in a\n[LimitRange](/docs/reference/kubernetes-api/policy-resources/limit-range-v1/)\nobject. If a Pod does not meet the constraints imposed by the LimitRange, it cannot be created\nin the namespace.\n\n\n\n\n## \n\n\n\n\nYou must have access to create namespaces in your cluster.\n\nEach node in your cluster must have at least 1.0 CPU available for Pods.\nSee [meaning of CPU](/docs/concepts/configuration/manage-resources-containers/#meaning-of-cpu)\nto learn what Kubernetes means by “1 CPU”.\n\n\n\n\n## Create a namespace\n\nCreate a namespace so that the resources you create in this exercise are\nisolated from the rest of your cluster.\n\n```shell\nkubectl create namespace constraints-cpu-example\n```\n\n## Create a LimitRange and a Pod\n\nHere's a manifest for an example [LimitRange](#gloss:limitrange):\n\n\n\nCreate the LimitRange:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/cpu-constraints.yaml --namespace=constraints-cpu-example\n```\n\nView detailed information about the LimitRange:\n\n```shell\nkubectl get limitrange cpu-min-max-demo-lr --output=yaml --namespace=constraints-cpu-example\n```\n\nThe output shows the minimum and maximum CPU constraints as expected. But\nnotice that even though you didn't specify default values in the configuration\nfile for the LimitRange, they were created automatically.\n\n```yaml\nlimits:\n- default:\n    cpu: 800m\n  defaultRequest:\n    cpu: 800m\n  max:\n    cpu: 800m\n  min:\n    cpu: 200m\n  type: Container\n```\n\nNow whenever you create a Pod in the constraints-cpu-example namespace (or some other client\nof the Kubernetes API creates an equivalent Pod), Kubernetes performs these steps:\n\n* If any container in that Pod does not specify its own CPU request and limit, the control plane\n  assigns the default CPU request and limit to that container.\n\n* Verify that every container in that Pod specifies a CPU request that is greater than or equal to 200 millicpu.\n\n* Verify that every container in that Pod specifies a CPU limit that is less than or equal to 800 millicpu.\n\n\n> **Note:** When creating a `LimitRange` object, you can specify limits on huge-pages\nor GPUs as well. However, when both `default` and `defaultRequest` are specified\non these resources, the two values must be the same.\n\n\nHere's a manifest for a Pod that has one container. The container manifest\nspecifies a CPU request of 500 millicpu and a CPU limit of 800 millicpu. These satisfy the\nminimum and maximum CPU constraints imposed by the LimitRange for this namespace.\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/cpu-constraints-pod.yaml --namespace=constraints-cpu-example\n```\n\nVerify that the Pod is running and that its container is healthy:\n\n```shell\nkubectl get pod constraints-cpu-demo --namespace=constraints-cpu-example\n```\n\nView detailed information about the Pod:\n\n```shell\nkubectl get pod constraints-cpu-demo --output=yaml --namespace=constraints-cpu-example\n```\n\nThe output shows that the Pod's only container has a CPU request of 500 millicpu and CPU limit\nof 800 millicpu. These satisfy the constraints imposed by the LimitRange.\n\n```yaml\nresources:\n  limits:\n    cpu: 800m\n  requests:\n    cpu: 500m\n```\n\n## Delete the Pod\n\n```shell\nkubectl delete pod constraints-cpu-demo --namespace=constraints-cpu-example\n```\n\n## Attempt to create a Pod that exceeds the maximum CPU constraint\n\nHere's a manifest for a Pod that has one container. The container specifies a\nCPU request of 500 millicpu and a cpu limit of 1.5 cpu.\n\n\n\nAttempt to create the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/cpu-constraints-pod-2.yaml --namespace=constraints-cpu-example\n```\n\nThe output shows that the Pod does not get created, because it defines an unacceptable container.\nThat container is not acceptable because it specifies a CPU limit that is t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Minimum and Maximum CPU Constraints for a Namespace"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-the-pod",
      "type": "concept",
      "title": "Delete the Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 3662,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:attempt-to-create-a-pod-that-exceeds-the-maximum-cpu-constraint",
      "type": "concept",
      "title": "Attempt to create a Pod that exceeds the maximum CPU constraint",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 3771,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:attempt-to-create-a-pod-that-does-not-meet-the-minimum-cpu-request",
      "type": "concept",
      "title": "Attempt to create a Pod that does not meet the minimum CPU request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 4608,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-does-not-specify-any-cpu-request-or-limit",
      "type": "concept",
      "title": "Create a Pod that does not specify any CPU request or limit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 5478,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enforcement-of-minimum-and-maximum-cpu-constraints",
      "type": "concept",
      "title": "Enforcement of minimum and maximum CPU constraints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 7031,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:motivation-for-minimum-and-maximum-cpu-constraints",
      "type": "concept",
      "title": "Motivation for minimum and maximum CPU constraints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 7697,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "type": "page",
      "title": "Configure Default Memory Requests and Limits for a Namespace",
      "summary": "Define a default memory resource limit for a namespace, so that every new Pod in that namespace has a memory resource limit configured.",
      "body": "\n\nThis page shows how to configure default memory requests and limits for a\n[namespace](#gloss:namespace).\n\nA Kubernetes cluster can be divided into namespaces. Once you have a namespace that\nhas a default memory\n[limit](/docs/concepts/configuration/manage-resources-containers/#requests-and-limits),\nand you then try to create a Pod with a container that does not specify its own memory\nlimit, then the\n[control plane](#gloss:control-plane) assigns the default\nmemory limit to that container.\n\nKubernetes assigns a default memory request under certain conditions that are explained later in this topic.\n\n\n\n\n## \n\n\n\n\nYou must have access to create namespaces in your cluster.\n\nEach node in your cluster must have at least 2 GiB of memory.\n\n\n\n\n\n## Create a namespace\n\nCreate a namespace so that the resources you create in this exercise are\nisolated from the rest of your cluster.\n\n```shell\nkubectl create namespace default-mem-example\n```\n\n## Create a LimitRange and a Pod\n\nHere's a manifest for an example [LimitRange](#gloss:limitrange).\nThe manifest specifies a default memory\nrequest and a default memory limit.\n\n\n\nCreate the LimitRange in the default-mem-example namespace:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/memory-defaults.yaml --namespace=default-mem-example\n```\n\nNow if you create a Pod in the default-mem-example namespace, and any container\nwithin that Pod does not specify its own values for memory request and memory limit,\nthen the [control plane](#gloss:control-plane)\napplies default values: a memory request of 256MiB and a memory limit of 512MiB.\n\n\nHere's an example manifest for a Pod that has one container. The container\ndoes not specify a memory request and limit.\n\n\n\nCreate the Pod.\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/memory-defaults-pod.yaml --namespace=default-mem-example\n```\n\nView detailed information about the Pod:\n\n```shell\nkubectl get pod default-mem-demo --output=yaml --namespace=default-mem-example\n```\n\nThe output shows that the Pod's container has a memory request of 256 MiB and\na memory limit of 512 MiB. These are the default values specified by the LimitRange.\n\n```shell\ncontainers:\n- image: nginx\n  imagePullPolicy: Always\n  name: default-mem-demo-ctr\n  resources:\n    limits:\n      memory: 512Mi\n    requests:\n      memory: 256Mi\n```\n\nDelete your Pod:\n\n```shell\nkubectl delete pod default-mem-demo --namespace=default-mem-example\n```\n\n## What if you specify a container's limit, but not its request?\n\nHere's a manifest for a Pod that has one container. The container\nspecifies a memory limit, but not a request:\n\n\n\nCreate the Pod:\n\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/memory-defaults-pod-2.yaml --namespace=default-mem-example\n```\n\nView detailed information about the Pod:\n\n```shell\nkubectl get pod default-mem-demo-2 --output=yaml --namespace=default-mem-example\n```\n\nThe output shows that the container's memory request is set to match its memory limit.\nNotice that the container was not assigned the default memory request value of 256Mi.\n\n```\nresources:\n  limits:\n    memory: 1Gi\n  requests:\n    memory: 1Gi\n```\n\n## What if you specify a container's request, but not its limit?\n\nHere's a manifest for a Pod that has one container. The container\nspecifies a memory request, but not a limit:\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/admin/resource/memory-defaults-pod-3.yaml --namespace=default-mem-example\n```\n\nView the Pod's specification:\n\n```shell\nkubectl get pod default-mem-demo-3 --output=yaml --namespace=default-mem-example\n```\n\nThe output shows that the container's memory request is set to the value specified in the\ncontainer's manifest. The container is limited to use no more than 512MiB of\nmemory, which matches the default memory limit for the namespace.\n\n```\nresources:\n  limits:\n    memory: 512Mi\n  requests:\n    memory: 128Mi\n```\n\n\n> **Note:** A `LimitRange` does **not** check the consistency of the default values i\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/administer-cluster/manage-resources/memory-default-namespace.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Default Memory Requests and Limits for a Namespace"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:motivation-for-default-memory-limits-and-requests",
      "type": "concept",
      "title": "Motivation for default memory limits and requests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 4925,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/manage-resources/_index",
      "type": "page",
      "title": "Manage Memory, CPU, and API Resources",
      "summary": "Manage Memory, CPU, and API Resources to ensure optimal cluster performance and security.",
      "body": "Manage Memory, CPU, and API Resources to ensure optimal cluster performance and security.\n\n**Why it matters**\nProper resource management is crucial for maintaining high availability, performance, and security.\n\n**Key facts**\n- Cluster administrators manage memory, CPU, and API resources using various tools and methods.\n- Inadequate resource management can lead to issues like performance bottlenecks, downtime, or data loss.\n\n**Common pitfalls**\n- Insufficient resource allocation can cause performance degradation or downtime.\n- Inadequate security measures for resource access can expose sensitive data or allow unauthorized access.\n\n**Related**\nAdminister a Cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/_index/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/administer-cluster/manage-resources/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/_index.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Manage Memory, CPU, and API Resources"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/administer-cluster/network-policy-provider/romana-network-policy",
      "type": "page",
      "title": "Romana for NetworkPolicy",
      "summary": "",
      "body": "\n\nThis page shows how to use Romana for NetworkPolicy.\n\n## \n\nComplete steps 1, 2, and 3 of the [kubeadm getting started guide](/docs/reference/setup-tools/kubeadm/).\n\n\n\n## Installing Romana with kubeadm\n\nFollow the [containerized installation guide](https://github.com/romana/romana/tree/master/containerize) for kubeadm.\n\n## Applying network policies\n\nTo apply network policies use one of the following:\n\n* [Romana network policies](https://github.com/romana/romana/wiki/Romana-policies).\n    * [Example of Romana network policy](https://github.com/romana/core/blob/master/doc/policy.md).\n* The NetworkPolicy API.\n\n## \n\nOnce you have installed Romana, you can follow the\n[Declare Network Policy](/docs/tasks/administer-cluster/declare-network-policy/)\nto try out Kubernetes NetworkPolicy.\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/administer-cluster/network-policy-provider/romana-network-policy.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/romana-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Romana for NetworkPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installing-romana-with-kubeadm",
      "type": "concept",
      "title": "Installing Romana with kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/romana-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/",
          "line_start": 232,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applying-network-policies",
      "type": "concept",
      "title": "Applying network policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/romana-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/",
          "line_start": 386,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/network-policy-provider/calico-network-policy",
      "type": "page",
      "title": "Use Calico for NetworkPolicy",
      "summary": "",
      "body": "\nThis page shows a couple of quick ways to create a Calico cluster on Kubernetes.\n\n\n## \n\nDecide whether you want to deploy a [cloud](#creating-a-calico-cluster-with-google-kubernetes-engine-gke) or [local](#creating-a-local-calico-cluster-with-kubeadm) cluster.\n\n\n\n## Creating a Calico cluster with Google Kubernetes Engine (GKE)\n\n**Prerequisite**: [gcloud](https://cloud.google.com/sdk/docs/quickstarts).\n\n1.  To launch a GKE cluster with Calico, include the `--enable-network-policy` flag.\n\n    **Syntax**\n    ```shell\n    gcloud container clusters create [CLUSTER_NAME] --enable-network-policy\n    ```\n\n    **Example**\n    ```shell\n    gcloud container clusters create my-calico-cluster --enable-network-policy\n    ```\n\n1.  To verify the deployment, use the following command.\n\n    ```shell\n    kubectl get pods --namespace=kube-system\n    ```\n\n    The Calico pods begin with `calico`. Check to make sure each one has a status of `Running`.\n\n## Creating a local Calico cluster with kubeadm\n\nTo get a local single-host Calico cluster in fifteen minutes using kubeadm, refer to the \n[Calico Quickstart](https://projectcalico.docs.tigera.io/getting-started/kubernetes/).\n\n\n\n\n## \n\nOnce your cluster is running, you can follow the [Declare Network Policy](/docs/tasks/administer-cluster/declare-network-policy/) to try out Kubernetes NetworkPolicy.\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/administer-cluster/network-policy-provider/calico-network-policy.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/calico-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Use Calico for NetworkPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-calico-cluster-with-google-kubernetes-engine-gke",
      "type": "concept",
      "title": "Creating a Calico cluster with Google Kubernetes Engine (GKE)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/calico-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/",
          "line_start": 328,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-local-calico-cluster-with-kubeadm",
      "type": "concept",
      "title": "Creating a local Calico cluster with kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/calico-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/",
          "line_start": 1008,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/network-policy-provider/kube-router-network-policy",
      "type": "page",
      "title": "Use Kube-router for NetworkPolicy",
      "summary": "",
      "body": "\nThis page shows how to use [Kube-router](https://github.com/cloudnativelabs/kube-router) for NetworkPolicy.\n\n\n## \n\nYou need to have a Kubernetes cluster running. If you do not already have a cluster, you can create one by using any of the cluster installers like Kops, Bootkube, Kubeadm etc.\n\n\n\n## Installing Kube-router addon\nThe Kube-router Addon comes with a Network Policy Controller that watches Kubernetes API server for any NetworkPolicy and pods updated and configures iptables rules and ipsets to allow or block traffic as directed by the policies. Please follow the [trying Kube-router with cluster installers](https://www.kube-router.io/docs/user-guide/#try-kube-router-with-cluster-installers) guide to install Kube-router addon.\n\n\n## \n\nOnce you have installed the Kube-router addon, you can follow the [Declare Network Policy](/docs/tasks/administer-cluster/declare-network-policy/) to try out Kubernetes NetworkPolicy.\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/kube-router-network-policy/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/administer-cluster/network-policy-provider/kube-router-network-policy.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/kube-router-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/kube-router-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Use Kube-router for NetworkPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installing-kube-router-addon",
      "type": "concept",
      "title": "Installing Kube-router addon",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/kube-router-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/kube-router-network-policy/",
          "line_start": 359,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/network-policy-provider/weave-network-policy",
      "type": "page",
      "title": "Weave Net for NetworkPolicy",
      "summary": "",
      "body": "\n\nThis page shows how to use Weave Net for NetworkPolicy.\n\n## \n\nYou need to have a Kubernetes cluster. Follow the\n[kubeadm getting started guide](/docs/reference/setup-tools/kubeadm/) to bootstrap one.\n\n\n\n## Install the Weave Net addon\n\nFollow the [Integrating Kubernetes via the Addon](https://github.com/weaveworks/weave/blob/master/site/kubernetes/kube-addon.md#-installation) guide.\n\nThe Weave Net addon for Kubernetes comes with a\n[Network Policy Controller](https://github.com/weaveworks/weave/blob/master/site/kubernetes/kube-addon.md#network-policy)\nthat automatically monitors Kubernetes for any NetworkPolicy annotations on all\nnamespaces and configures `iptables` rules to allow or block traffic as directed by the policies.\n\n## Test the installation\n\nVerify that the weave works.\n\nEnter the following command:\n\n```shell\nkubectl get pods -n kube-system -o wide\n```\n\nThe output is similar to this:\n\n```\nNAME                                    READY     STATUS    RESTARTS   AGE       IP              NODE\nweave-net-1t1qg                         2/2       Running   0          9d        192.168.2.10    worknode3\nweave-net-231d7                         2/2       Running   1          7d        10.2.0.17       worknodegpu\nweave-net-7nmwt                         2/2       Running   3          9d        192.168.2.131   masternode\nweave-net-pmw8w                         2/2       Running   0          9d        192.168.2.216   worknode2\n```\n\nEach Node has a weave Pod, and all Pods are `Running` and `2/2 READY`. (`2/2` means that each Pod has `weave` and `weave-npc`.)\n\n## \n\nOnce you have installed the Weave Net addon, you can follow the\n[Declare Network Policy](/docs/tasks/administer-cluster/declare-network-policy/)\nto try out Kubernetes NetworkPolicy. If you have any question, contact us at\n[#weave-community on Slack or Weave User Group](https://github.com/weaveworks/weave#getting-help).\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/administer-cluster/network-policy-provider/weave-network-policy.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/weave-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Weave Net for NetworkPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-the-weave-net-addon",
      "type": "concept",
      "title": "Install the Weave Net addon",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/weave-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/",
          "line_start": 268,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:test-the-installation",
      "type": "concept",
      "title": "Test the installation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/weave-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/",
          "line_start": 800,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/network-policy-provider/cilium-network-policy",
      "type": "page",
      "title": "Use Cilium for NetworkPolicy",
      "summary": "",
      "body": "\n\nThis page shows how to use Cilium for NetworkPolicy.\n\nFor background on Cilium, read the [Introduction to Cilium](https://docs.cilium.io/en/stable/overview/intro).\n\n## \n\n \n\n\n\n## Deploying Cilium on Minikube for Basic Testing\n\nTo get familiar with Cilium easily you can follow the\n[Cilium Kubernetes Getting Started Guide](https://docs.cilium.io/en/stable/gettingstarted/k8s-install-default/)\nto perform a basic DaemonSet installation of Cilium in minikube.\n\nTo start minikube, which requires version v1.5.2 or higher, run it with the\nfollowing arguments:\n\n```shell\nminikube version\n```\n\n```\nminikube version: v1.5.2\n```\n\n```shell\nminikube start --network-plugin=cni\n```\n\nFor minikube you can install Cilium using its CLI tool. To do so, first download the latest\nversion of the CLI with the following command:\n\n```shell\ncurl -LO https://github.com/cilium/cilium-cli/releases/latest/download/cilium-linux-amd64.tar.gz\n```\n\nThen extract the downloaded file to your `/usr/local/bin` directory with the following command:\n\n```shell\nsudo tar xzvfC cilium-linux-amd64.tar.gz /usr/local/bin\nrm cilium-linux-amd64.tar.gz\n```\n\nAfter running the above commands, you can now install Cilium with the following command: \n\n```shell\ncilium install\n```\n\nCilium will then automatically detect the cluster configuration and create and\ninstall the appropriate components for a successful installation.\nThe components are:\n\n- Certificate Authority (CA) in Secret `cilium-ca` and certificates for Hubble (Cilium's observability layer).\n- Service accounts.\n- Cluster roles.\n- ConfigMap.\n- Agent DaemonSet and an Operator Deployment.\n\nAfter the installation, you can view the overall status of the Cilium deployment with the `cilium status` command.\nSee the expected output of the `status` command\n[here](https://docs.cilium.io/en/stable/gettingstarted/k8s-install-default/#validate-the-installation). \n\nThe remainder of the Getting Started Guide explains how to enforce both L3/L4\n(i.e., IP address + port) security policies, as well as L7 (e.g., HTTP) security\npolicies using an example application.\n\n## Deploying Cilium for Production Use\n\nFor detailed instructions around deploying Cilium for production, see:\n[Cilium Kubernetes Installation Guide](https://docs.cilium.io/en/stable/network/kubernetes/concepts/)\nThis documentation includes detailed requirements, instructions and example\nproduction DaemonSet files.\n\n\n\n##  Understanding Cilium components\n\nDeploying a cluster with Cilium adds Pods to the `kube-system` namespace. To see\nthis list of Pods run:\n\n```shell\nkubectl get pods --namespace=kube-system -l k8s-app=cilium\n```\n\nYou'll see a list of Pods similar to this:\n\n```console\nNAME           READY   STATUS    RESTARTS   AGE\ncilium-kkdhz   1/1     Running   0          3m23s\n...\n```\n\nA `cilium` Pod runs on each node in your cluster and enforces network policy\non the traffic to/from Pods on that node using Linux BPF.\n\n## \n\nOnce your cluster is running, you can follow the\n[Declare Network Policy](/docs/tasks/administer-cluster/declare-network-policy/)\nto try out Kubernetes NetworkPolicy with Cilium.\nHave fun, and if you have questions, contact us using the\n[Cilium Slack Channel](https://slack.cilium.io/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Use Cilium for NetworkPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploying-cilium-on-minikube-for-basic-testing",
      "type": "concept",
      "title": "Deploying Cilium on Minikube for Basic Testing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
          "line_start": 303,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploying-cilium-for-production-use",
      "type": "concept",
      "title": "Deploying Cilium for Production Use",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
          "line_start": 2208,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-cilium-components",
      "type": "concept",
      "title": "Understanding Cilium components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
          "line_start": 2547,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/network-policy-provider/antrea-network-policy",
      "type": "page",
      "title": "Use Antrea for NetworkPolicy",
      "summary": "",
      "body": "\nThis page shows how to install and use Antrea CNI plugin on Kubernetes.\nFor background on Project Antrea, read the [Introduction to Antrea](https://antrea.io/docs/).\n\n## \n\nYou need to have a Kubernetes cluster. Follow the\n[kubeadm getting started guide](/docs/reference/setup-tools/kubeadm/) to bootstrap one.\n\n\n\n## Deploying Antrea with kubeadm\n\nFollow [Getting Started](https://github.com/vmware-tanzu/antrea/blob/main/docs/getting-started.md) guide to deploy Antrea for kubeadm.\n\n## \n\nOnce your cluster is running, you can follow the [Declare Network Policy](/docs/tasks/administer-cluster/declare-network-policy/) to try out Kubernetes NetworkPolicy.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/antrea-network-policy/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/administer-cluster/network-policy-provider/antrea-network-policy.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/antrea-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/antrea-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Use Antrea for NetworkPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploying-antrea-with-kubeadm",
      "type": "concept",
      "title": "Deploying Antrea with kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/antrea-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/antrea-network-policy/",
          "line_start": 377,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/network-policy-provider/_index",
      "type": "page",
      "title": "Install a Network Policy Provider",
      "summary": "Install a Network Policy Provider to manage network traffic within your cluster.",
      "body": "Install a Network Policy Provider to manage network traffic within your cluster.\n\n**Why it matters**\nNetwork policy providers enable you to define and enforce network policies, ensuring secure communication between pods.\n\n**Key facts**\n- A network policy provider is responsible for managing network policies in the cluster.\n- You can choose from various network policy providers, such as Calico or Romana.\n\n**Common pitfalls**\n- Failing to install a network policy provider may result in unsecured communication between pods.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/_index/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/administer-cluster/network-policy-provider/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/_index.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Install a Network Policy Provider"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/administer-cluster/kubeadm/change-package-repository",
      "type": "page",
      "title": "Changing The Kubernetes Package Repository",
      "summary": "",
      "body": "\n\nThis page explains how to enable a package repository for the desired\nKubernetes minor release upon upgrading a cluster. This is only needed \nfor users of the community-owned package repositories hosted at `pkgs.k8s.io`.\nUnlike the legacy package repositories, the community-owned package\nrepositories are structured in a way that there's a dedicated package\nrepository for each Kubernetes minor version.\n\n\nThis guide only covers a part of the Kubernetes upgrade process. Please see the\n[upgrade guide](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/) for\nmore information about upgrading Kubernetes clusters.\n\n\n\nThis step is only needed upon upgrading a cluster to another **minor** release.\nIf you're upgrading to another patch release within the same minor release (e.g.\nv.5 to v.7), you don't\nneed to follow this guide. However, if you're still using the legacy package\nrepositories, you'll need to migrate to the new community-owned package\nrepositories before upgrading (see the next section for more details on how to\ndo this).\n\n\n## \n\nThis document assumes that you're already using the community-owned\npackage repositories (`pkgs.k8s.io`). If that's not the case, it's strongly\nrecommended to migrate to the community-owned package repositories as described\nin the [official announcement](/blog/2023/08/15/pkgs-k8s-io-introduction/).\n\n\n\n### Verifying if the Kubernetes package repositories are used\n\nIf you're unsure whether you're using the community-owned package repositories or the\nlegacy package repositories, take the following steps to verify:\n\n\n\n\nPrint the contents of the file that defines the Kubernetes `apt` repository:\n\n```shell\n# On your system, this configuration file could have a different name\npager /etc/apt/sources.list.d/kubernetes.list\n```\n\nIf you see a line similar to:\n\n```\ndeb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v/deb/ /\n```\n\n**You're using the Kubernetes package repositories and this guide applies to you.**\nOtherwise, it's strongly recommended to migrate to the Kubernetes package repositories\nas described in the [official announcement](/blog/2023/08/15/pkgs-k8s-io-introduction/).\n\n\n\n\nPrint the contents of the file that defines the Kubernetes `yum` repository:\n\n```shell\n# On your system, this configuration file could have a different name\ncat /etc/yum.repos.d/kubernetes.repo\n```\n\nIf you see a `baseurl` similar to the `baseurl` in the output below:\n\n```\n[kubernetes]\nname=Kubernetes\nbaseurl=https://pkgs.k8s.io/core:/stable:/v/rpm/\nenabled=1\ngpgcheck=1\ngpgkey=https://pkgs.k8s.io/core:/stable:/v/rpm/repodata/repomd.xml.key\nexclude=kubelet kubeadm kubectl\n```\n\n**You're using the Kubernetes package repositories and this guide applies to you.**\nOtherwise, it's strongly recommended to migrate to the Kubernetes package repositories\nas described in the [official announcement](/blog/2023/08/15/pkgs-k8s-io-introduction/).\n\n\n\n\n\nPrint the contents of the file that defines the Kubernetes `zypper` repository:\n\n```shell\n# On your system, this configuration file could have a different name\ncat /etc/zypp/repos.d/kubernetes.repo\n```\n\nIf you see a `baseurl` similar to the `baseurl` in the output below:\n\n```\n[kubernetes]\nname=Kubernetes\nbaseurl=https://pkgs.k8s.io/core:/stable:/v/rpm/\nenabled=1\ngpgcheck=1\ngpgkey=https://pkgs.k8s.io/core:/stable:/v/rpm/repodata/repomd.xml.key\nexclude=kubelet kubeadm kubectl\n```\n\n**You're using the Kubernetes package repositories and this guide applies to you.**\nOtherwise, it's strongly recommended to migrate to the Kubernetes package repositories\nas described in the [official announcement](/blog/2023/08/15/pkgs-k8s-io-introduction/).\n\n\n\n\n\nThe URL used for the Kubernetes package repositories is not limited to `pkgs.k8s.io`,\nit can also be one of:\n\n- `pkgs.k8s.io`\n- `pkgs.kubernetes.io`\n- `packages.kubernetes.io`\n\n\n\n\n## Switching to another Kubernetes package repository\n\nThis step should be done upon upgrading from one to another Kubernetes minor\nrelea\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/change-package-repository/",
      "meta": {
        "weight": 150,
        "rel_path": "tasks/administer-cluster/kubeadm/change-package-repository.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/change-package-repository.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/change-package-repository/",
          "line_start": null,
          "line_end": null,
          "quote": "Changing The Kubernetes Package Repository"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:switching-to-another-kubernetes-package-repository",
      "type": "concept",
      "title": "Switching to another Kubernetes package repository",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/change-package-repository.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/change-package-repository/",
          "line_start": 4508,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verifying-if-the-kubernetes-package-repositories-are-used",
      "type": "concept",
      "title": "Verifying if the Kubernetes package repositories are used",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/change-package-repository.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/change-package-repository/",
          "line_start": 1540,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "type": "page",
      "title": "Upgrading Linux nodes",
      "summary": "",
      "body": "\n\nThis page explains how to upgrade a Linux Worker Nodes created with kubeadm.\n\n## \n\n \n* Familiarize yourself with [the process for upgrading the rest of your kubeadm\ncluster](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade). You will want to\nupgrade the control plane nodes before upgrading your Linux Worker nodes.\n\n\n\n## Changing the package repository\n\nIf you're using the community-owned package repositories (`pkgs.k8s.io`), you need to \nenable the package repository for the desired Kubernetes minor release. This is explained in\n[Changing the Kubernetes package repository](/docs/tasks/administer-cluster/kubeadm/change-package-repository/)\ndocument.\n\n\n\n## Upgrading worker nodes\n\n### Upgrade kubeadm\n\nUpgrade kubeadm:\n\n\n\n```shell\n# replace x in .x-* with the latest patch version\nsudo apt-mark unhold kubeadm && \\\nsudo apt-get update && sudo apt-get install -y kubeadm='.x-*' && \\\nsudo apt-mark hold kubeadm\n```\n\n\nFor systems with DNF:\n```shell\n# replace x in .x-* with the latest patch version\nsudo yum install -y kubeadm-'.x-*' --disableexcludes=kubernetes\n```\nFor systems with DNF5:\n```shell\n# replace x in .x-* with the latest patch version\nsudo yum install -y kubeadm-'.x-*' --setopt=disable_excludes=kubernetes\n```\n\n\n\n### Call \"kubeadm upgrade\"\n\nFor worker nodes this upgrades the local kubelet configuration:\n\n```shell\nsudo kubeadm upgrade node\n```\n\n### Drain the node\n\nPrepare the node for maintenance by marking it unschedulable and evicting the workloads:\n\n```shell\n# execute this command on a control plane node\n# replace <node-to-drain> with the name of your node you are draining\nkubectl drain <node-to-drain> --ignore-daemonsets\n```\n\n### Upgrade kubelet and kubectl\n\n1. Upgrade the kubelet and kubectl:\n\n   \n   \n   ```shell\n   # replace x in .x-* with the latest patch version\n   sudo apt-mark unhold kubelet kubectl && \\\n   sudo apt-get update && sudo apt-get install -y kubelet='.x-*' kubectl='.x-*' && \\\n   sudo apt-mark hold kubelet kubectl\n   ```\n   \n   \n   For systems with DNF:\n   ```shell\n   # replace x in .x-* with the latest patch version\n   sudo yum install -y kubelet-'.x-*' kubectl-'.x-*' --disableexcludes=kubernetes\n   ```\n   For systems with DNF5:\n   ```shell\n   # replace x in .x-* with the latest patch version\n   sudo yum install -y kubelet-'.x-*' kubectl-'.x-*' --setopt=disable_excludes=kubernetes\n   ```\n   \n   \n\n1. Restart the kubelet:\n\n   ```shell\n   sudo systemctl daemon-reload\n   sudo systemctl restart kubelet\n   ```\n\n### Uncordon the node\n\nBring the node back online by marking it schedulable:\n\n```shell\n# execute this command on a control plane node\n# replace <node-to-uncordon> with the name of your node\nkubectl uncordon <node-to-uncordon>\n```\n\n## \n\n* See how to [Upgrade Windows nodes](/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/).",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": "Upgrading Linux nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:changing-the-package-repository",
      "type": "concept",
      "title": "Changing the package repository",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 466,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrading-worker-nodes",
      "type": "concept",
      "title": "Upgrading worker nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 839,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-kubeadm",
      "type": "concept",
      "title": "Upgrade kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 866,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:call-kubeadm-upgrade",
      "type": "concept",
      "title": "Call \"kubeadm upgrade\"",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 1748,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-kubelet-and-kubectl",
      "type": "concept",
      "title": "Upgrade kubelet and kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 2172,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubeadm/adding-linux-nodes",
      "type": "page",
      "title": "Adding Linux worker nodes",
      "summary": "",
      "body": "\n\nThis page explains how to add Linux worker nodes to a kubeadm cluster.\n\n## \n\n* Each joining worker node has installed the required components from\n[Installing kubeadm](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/), such as,\nkubeadm, the kubelet and a [container runtime](#gloss:container-runtime).\n* A running kubeadm cluster created by `kubeadm init` and following the steps\nin the document [Creating a cluster with kubeadm](/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/).\n* You need superuser access to the node.\n\n\n\n## Adding Linux worker nodes\n\nTo add new Linux worker nodes to your cluster do the following for each machine:\n\n1. Connect to the machine by using SSH or another method.\n1. Run the command that was output by `kubeadm init`. For example:\n\n  ```bash\n  sudo kubeadm join --token <token> <control-plane-host>:<control-plane-port> --discovery-token-ca-cert-hash sha256:<hash>\n  ```\n\n### Additional information for kubeadm join\n\n\n> **Note:** To specify an IPv6 tuple for `<control-plane-host>:<control-plane-port>`, IPv6 address must be enclosed in square brackets, for example: `[2001:db8::101]:2073`.\n\n\nIf you do not have the token, you can get it by running the following command on the control plane node:\n\n```bash\n# Run this on a control plane node\nsudo kubeadm token list\n```\n\nThe output is similar to this:\n\n```console\nTOKEN                    TTL  EXPIRES              USAGES           DESCRIPTION            EXTRA GROUPS\n8ewj1p.9r9hcjoqgajrj4gi  23h  2018-06-12T02:51:28Z authentication,  The default bootstrap  system:\n                                                   signing          token generated by     bootstrappers:\n                                                                    'kubeadm init'.        kubeadm:\n                                                                                           default-node-token\n```\n\nBy default, node join tokens expire after 24 hours. If you are joining a node to the cluster after the\ncurrent token has expired, you can create a new token by running the following command on the\ncontrol plane node:\n\n```bash\n# Run this on a control plane node\nsudo kubeadm token create\n```\n\nThe output is similar to this:\n\n```console\n5didvk.d09sbcov8ph2amjw\n```\n\nTo print a kubeadm join command while also generating a new token you can use:\n\n```bash\nsudo kubeadm token create --print-join-command\n```\n\nIf you don't have the value of `--discovery-token-ca-cert-hash`, you can get it by running the\nfollowing commands on the control plane node:\n\n```bash\n# Run this on a control plane node\nsudo cat /etc/kubernetes/pki/ca.crt | openssl x509 -pubkey  | openssl rsa -pubin -outform der 2>/dev/null | \\\n   openssl dgst -sha256 -hex | sed 's/^.* //'\n```\n\nThe output is similar to:\n\n```console\n8cb2de97839780a412b93877f8507ad6c94f73add17d5d7058e91741c9d5ec78\n```\n\nThe output of the `kubeadm join` command should look something like:\n\n```\n[preflight] Running pre-flight checks\n\n... (log output of join workflow) ...\n\nNode join complete:\n* Certificate signing request sent to control-plane and response\n  received.\n* Kubelet informed of new secure connection details.\n\nRun 'kubectl get nodes' on control-plane to see this machine join.\n```\n\nA few seconds later, you should notice this node in the output from `kubectl get nodes`.\n(for example, run `kubectl` on a  control plane node).\n\n\n> **Note:** As the cluster nodes are usually initialized sequentially, the CoreDNS Pods are likely to all run\non the first control plane node. To provide higher availability, please rebalance the CoreDNS Pods\nwith `kubectl -n kube-system rollout restart deployment coredns` after at least one new node is joined.\n\n\n## \n\n* See how to [add Windows worker nodes](/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-linux-nodes/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/administer-cluster/kubeadm/adding-linux-nodes.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-linux-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": "Adding Linux worker nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adding-linux-worker-nodes",
      "type": "concept",
      "title": "Adding Linux worker nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-linux-nodes/",
          "line_start": 663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:additional-information-for-kubeadm-join",
      "type": "concept",
      "title": "Additional information for kubeadm join",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-linux-nodes/",
          "line_start": 1041,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubeadm/adding-windows-nodes",
      "type": "page",
      "title": "Adding Windows worker nodes",
      "summary": "",
      "body": "\n\n\n\nThis page explains how to add Windows worker nodes to a kubeadm cluster.\n\n## \n\n* A running [Windows Server 2022](https://www.microsoft.com/cloud-platform/windows-server-pricing)\n(or higher) instance with administrative access.\n* A running kubeadm cluster created by `kubeadm init` and following the steps\nin the document [Creating a cluster with kubeadm](/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/).\n\n\n\n## Adding Windows worker nodes\n\n\n> **Note:** To facilitate the addition of Windows worker nodes to a cluster, PowerShell scripts from the repository\nhttps://sigs.k8s.io/sig-windows-tools are used.\n\n\nDo the following for each machine:\n\n1. Open a PowerShell session on the machine.\n1. Make sure you are Administrator or a privileged user.\n\nThen proceed with the steps outlined below.\n\n### Install containerd\n\n\n\nTo install containerd, first run the following command:\n\n  ```PowerShell\n  curl.exe -LO https://raw.githubusercontent.com/kubernetes-sigs/sig-windows-tools/master/hostprocess/Install-Containerd.ps1\n  ```\n\nThen run the following command, but first replace `CONTAINERD_VERSION` with a recent release\nfrom the [containerd repository](https://github.com/containerd/containerd/releases).\nThe version must not have a `v` prefix. For example, use `1.7.22` instead of `v1.7.22`:\n\n  ```PowerShell\n  .\\Install-Containerd.ps1 -ContainerDVersion CONTAINERD_VERSION\n  ```\n\n* Adjust any other parameters for `Install-Containerd.ps1` such as `netAdapterName` as you need them.\n* Set `skipHypervisorSupportCheck` if your machine does not support Hyper-V and cannot host Hyper-V isolated\ncontainers.\n* If you change the `Install-Containerd.ps1` optional parameters `CNIBinPath` and/or `CNIConfigPath` you will\nneed to configure the installed Windows CNI plugin with matching values.\n\n### Install kubeadm and kubelet\n\nRun the following commands to install kubeadm and the kubelet:\n\n  ```PowerShell\n  curl.exe -LO https://raw.githubusercontent.com/kubernetes-sigs/sig-windows-tools/master/hostprocess/PrepareNode.ps1\n  .\\PrepareNode.ps1 -KubernetesVersion v\n  ```\n\n* Adjust the parameter `KubernetesVersion` of `PrepareNode.ps1` if needed.\n\n### Run `kubeadm join`\n\nRun the command that was output by `kubeadm init`. For example:\n\n  ```bash\n  kubeadm join --token <token> <control-plane-host>:<control-plane-port> --discovery-token-ca-cert-hash sha256:<hash>\n  ```\n\n#### Additional information about kubeadm join\n\n\n> **Note:** To specify an IPv6 tuple for `<control-plane-host>:<control-plane-port>`, IPv6 address must be enclosed in square brackets, for example: `[2001:db8::101]:2073`.\n\n\nIf you do not have the token, you can get it by running the following command on the control plane node:\n\n```bash\n# Run this on a control plane node\nsudo kubeadm token list\n```\n\nThe output is similar to this:\n\n```console\nTOKEN                    TTL  EXPIRES              USAGES           DESCRIPTION            EXTRA GROUPS\n8ewj1p.9r9hcjoqgajrj4gi  23h  2018-06-12T02:51:28Z authentication,  The default bootstrap  system:\n                                                   signing          token generated by     bootstrappers:\n                                                                    'kubeadm init'.        kubeadm:\n                                                                                           default-node-token\n```\n\nBy default, node join tokens expire after 24 hours. If you are joining a node to the cluster after the\ncurrent token has expired, you can create a new token by running the following command on the\ncontrol plane node:\n\n```bash\n# Run this on a control plane node\nsudo kubeadm token create\n```\n\nThe output is similar to this:\n\n```console\n5didvk.d09sbcov8ph2amjw\n```\n\nIf you don't have the value of `--discovery-token-ca-cert-hash`, you can get it by running the\nfollowing commands on the control plane node:\n\n```bash\nsudo cat /etc/kubernetes/pki/ca.crt | openssl x509 -pubkey  | openssl rsa -pubin -outform der 2>/dev/null | \\\n   openssl dgst\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
      "meta": {
        "weight": 11,
        "rel_path": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": "Adding Windows worker nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adding-windows-worker-nodes",
      "type": "concept",
      "title": "Adding Windows worker nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 558,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-kubeadm-and-kubelet",
      "type": "concept",
      "title": "Install kubeadm and kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 1973,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:run-kubeadm-join",
      "type": "concept",
      "title": "Run `kubeadm join`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 2360,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:network-configuration",
      "type": "concept",
      "title": "Network configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 4869,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-kubectl-for-windows-optional-install-kubectl",
      "type": "concept",
      "title": "Install kubectl for Windows (optional) {#install-kubectl}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 5394,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "type": "page",
      "title": "Upgrading kubeadm clusters",
      "summary": "",
      "body": "\n\nThis page explains how to upgrade a Kubernetes cluster created with kubeadm from version\n.x to version .x, and from version\n.x to .y (where `y > x`). Skipping MINOR versions\nwhen upgrading is unsupported. For more details, please visit [Version Skew Policy](/releases/version-skew-policy/).\n\nTo see information about upgrading clusters created using older versions of kubeadm,\nplease refer to following pages instead:\n\n- [Upgrading a kubeadm cluster from  to ](https://v.docs.kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/)\n- [Upgrading a kubeadm cluster from  to ](https://v.docs.kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/)\n- [Upgrading a kubeadm cluster from  to ](https://v.docs.kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/)\n- [Upgrading a kubeadm cluster from  to ](https://v.docs.kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/)\n\nThe Kubernetes project recommends upgrading to the latest patch releases promptly, and\nto ensure that you are running a supported minor release of Kubernetes.\nFollowing this recommendation helps you to stay secure.\n\nThe upgrade workflow at high level is the following:\n\n1. Upgrade a primary control plane node.\n1. Upgrade additional control plane nodes.\n1. Upgrade worker nodes.\n\n## \n\n- Make sure you read the [release notes](https://git.k8s.io/kubernetes/CHANGELOG) carefully.\n- The cluster should use a static control plane and etcd pods or external etcd.\n- Make sure to back up any important components, such as app-level state stored in a database.\n  `kubeadm upgrade` does not touch your workloads, only components internal to Kubernetes, but backups are always a best practice.\n- [Swap must be disabled](https://serverfault.com/questions/684771/best-way-to-disable-swap-in-linux).\n\n### Additional information\n\n- The instructions below outline when to drain each node during the upgrade process.\n  If you are performing a **minor** version upgrade for any kubelet, you **must**\n  first drain the node (or nodes) that you are upgrading. In the case of control plane nodes,\n  they could be running CoreDNS Pods or other critical workloads. For more information see\n  [Draining nodes](/docs/tasks/administer-cluster/safely-drain-node/).\n- The Kubernetes project recommends that you match your kubelet and kubeadm versions.\n  You can instead use a version of kubelet that is older than kubeadm, provided it is within the\n  range of supported versions.\n  For more details, please visit [kubeadm's skew against the kubelet](/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/#kubeadm-s-skew-against-the-kubelet).\n- All containers are restarted after upgrade, because the container spec hash value is changed.\n- To verify that the kubelet service has successfully restarted after the kubelet has been upgraded,\n  you can execute `systemctl status kubelet` or view the service logs with `journalctl -xeu kubelet`.\n- `kubeadm upgrade` supports `--config` with a\n[`UpgradeConfiguration` API type](/docs/reference/config-api/kubeadm-config.v1beta4) which can\nbe used to configure the upgrade process.\n- `kubeadm upgrade` does not support reconfiguration of an existing cluster. Follow the steps in\n  [Reconfiguring a kubeadm cluster](/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure) instead.\n\n### Considerations when upgrading etcd\n\nBecause the `kube-apiserver` static pod is running at all times (even if you\nhave drained the node), when you perform a kubeadm upgrade which includes an\netcd upgrade, in-flight requests to the server will stall while the new etcd\nstatic pod is restarting. As a workaround, it is possible to actively stop the\n`kube-apiserver` process a few seconds before starting the `kubeadm upgrade\napply` command. This permits to complete in-flight requests and close existing\nconnections, and minimizes the consequence of the etcd downtime. This can be\ndone as follows on control plane nodes:\n\n```shell\nkillall -s SIGTERM \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": null,
          "line_end": null,
          "quote": "Upgrading kubeadm clusters"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:determine-which-version-to-upgrade-to",
      "type": "concept",
      "title": "Determine which version to upgrade to",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 5218,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrading-control-plane-nodes",
      "type": "concept",
      "title": "Upgrading control plane nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 6506,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-worker-nodes",
      "type": "concept",
      "title": "Upgrade worker nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 12461,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-the-status-of-the-cluster",
      "type": "concept",
      "title": "Verify the status of the cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 12918,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:recovering-from-a-failure-state",
      "type": "concept",
      "title": "Recovering from a failure state",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 13255,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-it-works",
      "type": "concept",
      "title": "How it works",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 14794,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:additional-information",
      "type": "concept",
      "title": "Additional information",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 2458,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:considerations-when-upgrading-etcd",
      "type": "concept",
      "title": "Considerations when upgrading etcd",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 3989,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubeadm/upgrading-windows-nodes",
      "type": "page",
      "title": "Upgrading Windows nodes",
      "summary": "",
      "body": "\n\n\n\nThis page explains how to upgrade a Windows node created with kubeadm.\n\n## \n \n \n* Familiarize yourself with [the process for upgrading the rest of your kubeadm\ncluster](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade). You will want to\nupgrade the control plane nodes before upgrading your Windows nodes.\n\n\n\n## Upgrading worker nodes\n\n### Upgrade kubeadm\n\n1.  From the Windows node, upgrade kubeadm:\n\n    ```powershell\n    # replace  with your desired version\n    curl.exe -Lo <path-to-kubeadm.exe>  \"https://dl.k8s.io/v/bin/windows/amd64/kubeadm.exe\"\n    ```\n\n### Drain the node\n\n1.  From a machine with access to the Kubernetes API,\n    prepare the node for maintenance by marking it unschedulable and evicting the workloads:\n\n    ```shell\n    # replace <node-to-drain> with the name of your node you are draining\n    kubectl drain <node-to-drain> --ignore-daemonsets\n    ```\n\n    You should see output similar to this:\n\n    ```\n    node/ip-172-31-85-18 cordoned\n    node/ip-172-31-85-18 drained\n    ```\n\n### Upgrade the kubelet configuration\n\n1.  From the Windows node, call the following command to sync new kubelet configuration:\n\n    ```powershell\n    kubeadm upgrade node\n    ```\n\n### Upgrade kubelet and kube-proxy\n\n1.  From the Windows node, upgrade and restart the kubelet:\n\n    ```powershell\n    stop-service kubelet\n    curl.exe -Lo <path-to-kubelet.exe> \"https://dl.k8s.io/v/bin/windows/amd64/kubelet.exe\"\n    restart-service kubelet\n    ```\n\n2. From the Windows node, upgrade and restart the kube-proxy.\n\n    ```powershell\n    stop-service kube-proxy\n    curl.exe -Lo <path-to-kube-proxy.exe> \"https://dl.k8s.io/v/bin/windows/amd64/kube-proxy.exe\"\n    restart-service kube-proxy\n    ```\n\n\n> **Note:** If you are running kube-proxy in a HostProcess container within a Pod, and not as a Windows Service,\nyou can upgrade kube-proxy by applying a newer version of your kube-proxy manifests.\n\n\n### Uncordon the node\n\n1.  From a machine with access to the Kubernetes API,\nbring the node back online by marking it schedulable:\n\n    ```shell\n    # replace <node-to-drain> with the name of your node\n    kubectl uncordon <node-to-drain>\n    ```\n ## \n\n* See how to [Upgrade Linux nodes](/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
      "meta": {
        "weight": 41,
        "rel_path": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": "Upgrading Windows nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-the-kubelet-configuration",
      "type": "concept",
      "title": "Upgrade the kubelet configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": 1279,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-kubelet-and-kube-proxy",
      "type": "concept",
      "title": "Upgrade kubelet and kube-proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": 1460,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubeadm/configure-cgroup-driver",
      "type": "page",
      "title": "Configuring a cgroup driver",
      "summary": "",
      "body": "\n\nThis page explains how to configure the kubelet's cgroup driver to match the container\nruntime cgroup driver for kubeadm clusters.\n\n## \n\nYou should be familiar with the Kubernetes\n[container runtime requirements](/docs/setup/production-environment/container-runtimes).\n\n\n\n## Configuring the container runtime cgroup driver\n\nThe [Container runtimes](/docs/setup/production-environment/container-runtimes) page\nexplains that the `systemd` driver is recommended for kubeadm based setups instead\nof the kubelet's [default](/docs/reference/config-api/kubelet-config.v1beta1) `cgroupfs` driver,\nbecause kubeadm manages the kubelet as a\n[systemd service](/docs/setup/production-environment/tools/kubeadm/kubelet-integration).\n\nThe page also provides details on how to set up a number of different container runtimes with the\n`systemd` driver by default.\n\n## Configuring the kubelet cgroup driver\n\nkubeadm allows you to pass a `KubeletConfiguration` structure during `kubeadm init`.\nThis `KubeletConfiguration` can include the `cgroupDriver` field which controls the cgroup\ndriver of the kubelet.\n\n\n> **Note:** In v1.22 and later, if the user does not set the `cgroupDriver` field under `KubeletConfiguration`,\nkubeadm defaults it to `systemd`.\n\nIn Kubernetes v1.28, you can enable automatic detection of the\ncgroup driver as an alpha feature.\nSee [systemd cgroup driver](/docs/setup/production-environment/container-runtimes/#systemd-cgroup-driver)\nfor more details.\n\n\nA minimal example of configuring the field explicitly:\n\n```yaml\n# kubeadm-config.yaml\nkind: ClusterConfiguration\napiVersion: kubeadm.k8s.io/v1beta4\nkubernetesVersion: v1.21.0\n---\nkind: KubeletConfiguration\napiVersion: kubelet.config.k8s.io/v1beta1\ncgroupDriver: systemd\n```\n\nSuch a configuration file can then be passed to the kubeadm command:\n\n```shell\nkubeadm init --config kubeadm-config.yaml\n```\n\n\n> **Note:** Kubeadm uses the same `KubeletConfiguration` for all nodes in the cluster.\nThe `KubeletConfiguration` is stored in a [ConfigMap](/docs/concepts/configuration/configmap)\nobject under the `kube-system` namespace.\n\nExecuting the sub commands `init`, `join` and `upgrade` would result in kubeadm\nwriting the `KubeletConfiguration` as a file under `/var/lib/kubelet/config.yaml`\nand passing it to the local node kubelet.\n\nOn each node, kubeadm detects the CRI socket and stores its details into the `/var/lib/kubelet/instance-config.yaml` file.\nWhen executing the `init`, `join`, or `upgrade` subcommands, \nkubeadm patches the `containerRuntimeEndpoint` value from this instance configuration into `/var/lib/kubelet/config.yaml`.\n\n\n## Using the `cgroupfs` driver\n\nTo use `cgroupfs` and to prevent `kubeadm upgrade` from modifying the\n`KubeletConfiguration` cgroup driver on existing setups, you must be explicit\nabout its value. This applies to a case where you do not wish future versions\nof kubeadm to apply the `systemd` driver by default.\n\nSee the below section on \"[Modify the kubelet ConfigMap](#modify-the-kubelet-configmap)\" for details on\nhow to be explicit about the value.\n\nIf you wish to configure a container runtime to use the `cgroupfs` driver,\nyou must refer to the documentation of the container runtime of your choice.\n\n## Migrating to the `systemd` driver\n\nTo change the cgroup driver of an existing kubeadm cluster from `cgroupfs` to `systemd` in-place,\na similar procedure to a kubelet upgrade is required. This must include both\nsteps outlined below.\n\n\n> **Note:** Alternatively, it is possible to replace the old nodes in the cluster with new ones\nthat use the `systemd` driver. This requires executing only the first step below\nbefore joining the new nodes and ensuring the workloads can safely move to the new\nnodes before deleting the old nodes.\n\n\n### Modify the kubelet ConfigMap\n\n- Call `kubectl edit cm kubelet-config -n kube-system`.\n- Either modify the existing `cgroupDriver` value or add a new field that looks like this:\n\n  ```yaml\n  cgroupDriver: systemd\n  ```\n  This field must be present un\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": null,
          "line_end": null,
          "quote": "Configuring a cgroup driver"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-the-container-runtime-cgroup-driver",
      "type": "concept",
      "title": "Configuring the container runtime cgroup driver",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 337,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-the-kubelet-cgroup-driver",
      "type": "concept",
      "title": "Configuring the kubelet cgroup driver",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 913,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-the-cgroupfs-driver",
      "type": "concept",
      "title": "Using the `cgroupfs` driver",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 2694,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-to-the-systemd-driver",
      "type": "concept",
      "title": "Migrating to the `systemd` driver",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 3300,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:modify-the-kubelet-configmap",
      "type": "concept",
      "title": "Modify the kubelet ConfigMap",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 3849,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-the-cgroup-driver-on-all-nodes",
      "type": "concept",
      "title": "Update the cgroup driver on all nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 4148,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubeadm/kubeadm-reconfigure",
      "type": "page",
      "title": "Reconfiguring a kubeadm cluster",
      "summary": "",
      "body": "\n\nkubeadm does not support automated ways of reconfiguring components that\nwere deployed on managed nodes. One way of automating this would be\nby using a custom [operator](/docs/concepts/extend-kubernetes/operator/).\n\nTo modify the components configuration you must manually edit associated cluster\nobjects and files on disk.\n\nThis guide shows the correct sequence of steps that need to be performed\nto achieve kubeadm cluster reconfiguration.\n\n## \n\n- You need a cluster that was deployed using kubeadm\n- Have administrator credentials (`/etc/kubernetes/admin.conf`) and network connectivity\nto a running kube-apiserver in the cluster from a host that has kubectl installed\n- Have a text editor installed on all hosts\n\n\n\n## Reconfiguring the cluster\n\nkubeadm writes a set of cluster wide component configuration options in\nConfigMaps and other objects. These objects must be manually edited. The command `kubectl edit`\ncan be used for that.\n\nThe `kubectl edit` command will open a text editor where you can edit and save the object directly.\n\nYou can use the environment variables `KUBECONFIG` and `KUBE_EDITOR` to specify the location of\nthe kubectl consumed kubeconfig file and preferred text editor.\n\nFor example:\n```\nKUBECONFIG=/etc/kubernetes/admin.conf KUBE_EDITOR=nano kubectl edit <parameters>\n```\n\n\n> **Note:** Upon saving any changes to these cluster objects, components running on nodes may not be\nautomatically updated. The steps below instruct you on how to perform that manually.\n\n\n\n> **Warning:** Component configuration in ConfigMaps is stored as unstructured data (YAML string).\nThis means that validation will not be performed upon updating the contents of a ConfigMap.\nYou have to be careful to follow the documented API format for a particular\ncomponent configuration and avoid introducing typos and YAML indentation mistakes.\n\n\n### Applying cluster configuration changes\n\n#### Updating the `ClusterConfiguration`\n\nDuring cluster creation and upgrade, kubeadm writes its\n[`ClusterConfiguration`](/docs/reference/config-api/kubeadm-config.v1beta4/)\nin a ConfigMap called `kubeadm-config` in the `kube-system` namespace.\n\nTo change a particular option in the `ClusterConfiguration` you can edit the ConfigMap with this command:\n\n```shell\nkubectl edit cm -n kube-system kubeadm-config\n```\n\nThe configuration is located under the `data.ClusterConfiguration` key.\n\n\n> **Note:** The `ClusterConfiguration` includes a variety of options that affect the configuration of individual\ncomponents such as kube-apiserver, kube-scheduler, kube-controller-manager, CoreDNS, etcd and kube-proxy.\nChanges to the configuration must be reflected on node components manually.\n\n\n#### Reflecting `ClusterConfiguration` changes on control plane nodes\n\nkubeadm manages the control plane components as static Pod manifests located in\nthe directory `/etc/kubernetes/manifests`.\nAny changes to the `ClusterConfiguration` under the `apiServer`, `controllerManager`, `scheduler` or `etcd`\nkeys must be reflected in the associated files in the manifests directory on a control plane node.\n\nSuch changes may include:\n- `extraArgs` - requires updating the list of flags passed to a component container\n- `extraVolumes` - requires updating the volume mounts for a component container\n- `*SANs` - requires writing new certificates with updated Subject Alternative Names\n\nBefore proceeding with these changes, make sure you have backed up the directory `/etc/kubernetes/`.\n\nTo write new certificates you can use:\n```shell\nkubeadm init phase certs <component-name> --config <config-file>\n```\n\nTo write new manifest files in `/etc/kubernetes/manifests` you can use:\n\n```shell\n# For Kubernetes control plane components\nkubeadm init phase control-plane <component-name> --config <config-file>\n# For local etcd\nkubeadm init phase etcd local --config <config-file>\n```\n\nThe `<config-file>` contents must match the updated `ClusterConfiguration`.\nThe `<component-name>` value must be a name of a Kubernetes control plane c\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
      "meta": {
        "weight": 90,
        "rel_path": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": null,
          "line_end": null,
          "quote": "Reconfiguring a kubeadm cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reconfiguring-the-cluster",
      "type": "concept",
      "title": "Reconfiguring the cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 784,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persisting-the-reconfiguration",
      "type": "concept",
      "title": "Persisting the reconfiguration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 7714,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applying-cluster-configuration-changes",
      "type": "concept",
      "title": "Applying cluster configuration changes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 1941,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applying-kubelet-configuration-changes",
      "type": "concept",
      "title": "Applying kubelet configuration changes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 4405,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applying-kube-proxy-configuration-changes",
      "type": "concept",
      "title": "Applying kube-proxy configuration changes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 5865,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applying-coredns-configuration-changes",
      "type": "concept",
      "title": "Applying CoreDNS configuration changes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 6874,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persisting-node-object-reconfiguration",
      "type": "concept",
      "title": "Persisting Node object reconfiguration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 7915,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "type": "page",
      "title": "Certificate Management with kubeadm",
      "summary": "",
      "body": "\n\n\n\nClient certificates generated by [kubeadm](/docs/reference/setup-tools/kubeadm/) expire after 1 year.\nThis page explains how to manage certificate renewals with kubeadm. It also covers other tasks related\nto kubeadm certificate management.\n\nThe Kubernetes project recommends upgrading to the latest patch releases promptly, and\nto ensure that you are running a supported minor release of Kubernetes.\nFollowing this recommendation helps you to stay secure.\n\n\n## \n\n\nYou should be familiar with [PKI certificates and requirements in Kubernetes](/docs/setup/best-practices/certificates/).\n\nYou should be familiar with how to pass a [configuration](/docs/reference/config-api/kubeadm-config.v1beta4/) file to the kubeadm commands.\n\nThis guide covers the usage of the `openssl` command (used for manual certificate signing,\nif you choose that approach), but you can use your preferred tools.\n\nSome of the steps here use `sudo` for administrator access. You can use any equivalent tool.\n\n\n\n## Using custom certificates {#custom-certificates}\n\nBy default, kubeadm generates all the certificates needed for a cluster to run.\nYou can override this behavior by providing your own certificates.\n\nTo do so, you must place them in whatever directory is specified by the\n`--cert-dir` flag or the `certificatesDir` field of kubeadm's `ClusterConfiguration`.\nBy default this is `/etc/kubernetes/pki`.\n\nIf a given certificate and private key pair exists before running `kubeadm init`,\nkubeadm does not overwrite them. This means you can, for example, copy an existing\nCA into `/etc/kubernetes/pki/ca.crt` and `/etc/kubernetes/pki/ca.key`,\nand kubeadm will use this CA for signing the rest of the certificates.\n\n## Choosing an encryption algorithm {#choosing-encryption-algorithm}\n\nkubeadm allows you to choose an encryption algorithm that is used for creating\npublic and private keys. That can be done by using the `encryptionAlgorithm` field of the\nkubeadm configuration:\n\n```yaml\napiVersion: kubeadm.k8s.io/v1beta4\nkind: ClusterConfiguration\nencryptionAlgorithm: <ALGORITHM>\n```\n\n`<ALGORITHM>` can be one of `RSA-2048` (default), `RSA-3072`, `RSA-4096` or `ECDSA-P256`.\n\n## Choosing certificate validity period {#choosing-cert-validity-period}\n\nkubeadm allows you to choose the validity period of CA and leaf certificates.\nThat can be done by using the `certificateValidityPeriod` and `caCertificateValidityPeriod`\nfields of the kubeadm configuration:\n\n```yaml\napiVersion: kubeadm.k8s.io/v1beta4\nkind: ClusterConfiguration\ncertificateValidityPeriod: 8760h # Default: 365 days × 24 hours = 1 year\ncaCertificateValidityPeriod: 87600h # Default: 365 days × 24 hours * 10 = 10 years\n```\n\nThe values of the fields follow the accepted format for\n[Go's `time.Duration` values](https://pkg.go.dev/time#ParseDuration), with the longest supported\nunit being `h` (hours).\n\n## External CA mode {#external-ca-mode}\n\nIt is also possible to provide only the `ca.crt` file and not the\n`ca.key` file (this is only available for the root CA file, not other cert pairs).\nIf all other certificates and kubeconfig files are in place, kubeadm recognizes\nthis condition and activates the \"External CA\" mode. kubeadm will proceed without the\nCA key on disk.\n\nInstead, run the controller-manager standalone with `--controllers=csrsigner` and\npoint to the CA certificate and key.\n\nThere are various ways to prepare the component credentials when using external CA mode.\n\n### Manual preparation of component credentials\n\n[PKI certificates and requirements](/docs/setup/best-practices/certificates/) includes information\non how to prepare all the required by kubeadm component credentials manually.\n\nThis guide covers the usage of the `openssl` command (used for manual certificate signing,\nif you choose that approach), but you can use your preferred tools.\n\n### Preparation of credentials by signing CSRs generated by kubeadm\n\nkubeadm can [generate CSR files](#signing-csr) that you can sign manually with tools like\n`openssl` and your ex\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
      "meta": {
        "weight": 80,
        "rel_path": "tasks/administer-cluster/kubeadm/kubeadm-certs.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": null,
          "line_end": null,
          "quote": "Certificate Management with kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-custom-certificates-custom-certificates",
      "type": "concept",
      "title": "Using custom certificates {#custom-certificates}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 1110,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:choosing-an-encryption-algorithm-choosing-encryption-algorithm",
      "type": "concept",
      "title": "Choosing an encryption algorithm {#choosing-encryption-algorithm}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 1820,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:choosing-certificate-validity-period-choosing-cert-validity-period",
      "type": "concept",
      "title": "Choosing certificate validity period {#choosing-cert-validity-period}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 2282,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-ca-mode-external-ca-mode",
      "type": "concept",
      "title": "External CA mode {#external-ca-mode}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 2973,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificate-expiry-and-management-check-certificate-expiration",
      "type": "concept",
      "title": "Certificate expiry and management {#check-certificate-expiration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 6424,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:automatic-certificate-renewal",
      "type": "concept",
      "title": "Automatic certificate renewal",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 9546,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manual-certificate-renewal",
      "type": "concept",
      "title": "Manual certificate renewal",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 10213,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:renew-certificates-with-the-kubernetes-certificates-api",
      "type": "concept",
      "title": "Renew certificates with the Kubernetes certificates API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 12698,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:renew-certificates-with-external-ca",
      "type": "concept",
      "title": "Renew certificates with external CA",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 14273,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificate-authority-ca-rotation-certificate-authority-rotation",
      "type": "concept",
      "title": "Certificate authority (CA) rotation {#certificate-authority-rotation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 15068,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-signed-kubelet-serving-certificates-kubelet-serving-certs",
      "type": "concept",
      "title": "Enabling signed kubelet serving certificates {#kubelet-serving-certs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 15388,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generating-kubeconfig-files-for-additional-users-kubeconfig-additional-users",
      "type": "concept",
      "title": "Generating kubeconfig files for additional users {#kubeconfig-additional-users}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 18657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:signing-certificate-signing-requests-csr-generated-by-kubeadm-signing-csr",
      "type": "concept",
      "title": "Signing certificate signing requests (CSR) generated by kubeadm {#signing-csr}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 21431,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manual-preparation-of-component-credentials",
      "type": "concept",
      "title": "Manual preparation of component credentials",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 3556,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preparation-of-credentials-by-signing-csrs-generated-by-kubeadm",
      "type": "concept",
      "title": "Preparation of credentials by signing CSRs generated by kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 3943,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:automated-preparation-of-component-credentials-by-using-kubeadm-phases",
      "type": "concept",
      "title": "Automated preparation of component credentials by using kubeadm phases",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 4247,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:copying-the-administrator-certificate-optional-admin-certificate-copy",
      "type": "concept",
      "title": "Copying the administrator certificate (optional) {#admin-certificate-copy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 12141,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-up-a-signer",
      "type": "concept",
      "title": "Set up a signer",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 13162,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-certificate-signing-requests-csr",
      "type": "concept",
      "title": "Create certificate signing requests (CSR)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 14043,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:renewal-by-using-certificate-signing-requests-csr",
      "type": "concept",
      "title": "Renewal by using certificate signing requests (CSR)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 14753,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preparing-ca-and-service-account-files",
      "type": "concept",
      "title": "Preparing CA and service account files",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 23163,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generate-csrs",
      "type": "concept",
      "title": "Generate CSRs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 24418,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:signing-csrs-for-all-certificates",
      "type": "concept",
      "title": "Signing CSRs for all certificates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 27095,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:embedding-certificates-in-kubeconfig-files",
      "type": "concept",
      "title": "Embedding certificates in kubeconfig files",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 29412,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:performing-cleanup-post-csr-cleanup",
      "type": "concept",
      "title": "Performing cleanup {#post-csr-cleanup}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 30228,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-node-initialization",
      "type": "concept",
      "title": "kubeadm node initialization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 30844,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/administer-cluster/kubeadm/_index",
      "type": "page",
      "title": "Administration with kubeadm",
      "summary": "Administer your cluster using kubeadm, a tool for bootstrapping and managing Kubernetes clusters.",
      "body": "Administer your cluster using kubeadm, a tool for bootstrapping and managing Kubernetes clusters.\n\n**Why it matters**\nkubeadm simplifies cluster administration by providing a standardized way to configure and manage your cluster.\n\n**Key facts**\n- kubeadm automates the installation of Kubernetes components.\n- You can use kubeadm to upgrade or downgrade your cluster.\n\n**Common pitfalls**\n- Misconfiguring kubeadm may lead to cluster instability or failure.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/_index/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/administer-cluster/kubeadm/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/_index.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Administration with kubeadm"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "type": "page",
      "title": "Create an External Load Balancer",
      "summary": "",
      "body": "\n\nThis page shows how to create an external load balancer.\n\nWhen creating a [Service](#gloss:service), you have\nthe option of automatically creating a cloud load balancer. This provides an\nexternally-accessible IP address that sends traffic to the correct port on your cluster\nnodes,\n_provided your cluster runs in a supported environment and is configured with\nthe correct cloud load balancer provider package_.\n\nYou can also use an [ingress](#gloss:ingress) in place of Service.\nFor more information, check the [Ingress](/docs/concepts/services-networking/ingress/)\ndocumentation.\n\n## \n\n\n\n\nYour cluster must be running in a cloud or other environment that already has support\nfor configuring external load balancers.\n\n\n\n\n## Create a Service\n\n### Create a Service from a manifest\n\nTo create an external load balancer, add the following line to your\nService manifest:\n\n```yaml\n    type: LoadBalancer\n```\n\nYour manifest might then look like:\n\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  name: example-service\nspec:\n  selector:\n    app: example\n  ports:\n    - port: 8765\n      targetPort: 9376\n  type: LoadBalancer\n```\n\n### Create a Service using kubectl\n\nYou can alternatively create the service with the `kubectl expose` command and\nits `--type=LoadBalancer` flag:\n\n```bash\nkubectl expose deployment example --port=8765 --target-port=9376 \\\n        --name=example-service --type=LoadBalancer\n```\n\nThis command creates a new Service using the same selectors as the referenced\nresource (in the case of the example above, a\n[Deployment](#gloss:deployment) named `example`).\n\nFor more information, including optional flags, refer to the\n[`kubectl expose` reference](/docs/reference/generated/kubectl/kubectl-commands/#expose).\n\n## Finding your IP address\n\nYou can find the IP address created for your service by getting the service\ninformation through `kubectl`:\n\n```bash\nkubectl describe services example-service\n```\n\nwhich should produce output similar to:\n\n```\nName:                     example-service\nNamespace:                default\nLabels:                   app=example\nAnnotations:              <none>\nSelector:                 app=example\nType:                     LoadBalancer\nIP Families:              <none>\nIP:                       10.3.22.96\nIPs:                      10.3.22.96\nLoadBalancer Ingress:     192.0.2.89\nPort:                     <unset>  8765/TCP\nTargetPort:               9376/TCP\nNodePort:                 <unset>  30593/TCP\nEndpoints:                172.17.0.3:9376\nSession Affinity:         None\nExternal Traffic Policy:  Cluster\nEvents:                   <none>\n```\n\nThe load balancer's IP address is listed next to `LoadBalancer Ingress`.\n\n\n> **Note:** If you are running your service on Minikube, you can find the assigned IP address and port with:\n\n```bash\nminikube service example-service --url\n```\n\n\n## Preserving the client source IP\n\nBy default, the source IP seen in the target container is *not the original\nsource IP* of the client. To enable preservation of the client IP, the following\nfields can be configured in the `.spec` of the Service:\n\n* `.spec.externalTrafficPolicy` - denotes if this Service desires to route\n  external traffic to node-local or cluster-wide endpoints. There are two available\n  options: `Cluster` (default) and `Local`. `Cluster` obscures the client source\n  IP and may cause a second hop to another node, but should have good overall\n  load-spreading. `Local` preserves the client source IP and avoids a second hop\n  for LoadBalancer and NodePort type Services, but risks potentially imbalanced\n  traffic spreading.\n* `.spec.healthCheckNodePort` - specifies the health check node port\n  (numeric port number) for the service. If you don't specify\n  `healthCheckNodePort`, the service controller allocates a port from your\n  cluster's NodePort range.  \n  You can configure that range by setting an API server command line option,\n  `--service-node-port-range`. The Service will use the user-specified\n  `healthCheckNodePort` va\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
      "meta": {
        "weight": 80,
        "rel_path": "tasks/access-application-cluster/create-external-load-balancer.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": null,
          "line_end": null,
          "quote": "Create an External Load Balancer"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-service",
      "type": "concept",
      "title": "Create a Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 877,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:finding-your-ip-address",
      "type": "concept",
      "title": "Finding your IP address",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 1915,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preserving-the-client-source-ip",
      "type": "concept",
      "title": "Preserving the client source IP",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 3039,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:garbage-collecting-load-balancers",
      "type": "concept",
      "title": "Garbage collecting load balancers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 5311,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-load-balancer-providers",
      "type": "concept",
      "title": "External load balancer providers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 6250,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-service-from-a-manifest",
      "type": "concept",
      "title": "Create a Service from a manifest",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 898,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-service-using-kubectl",
      "type": "concept",
      "title": "Create a Service using kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 1277,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:caveats-and-limitations-when-preserving-source-ips",
      "type": "concept",
      "title": "Caveats and limitations when preserving source IPs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 4645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/access-application-cluster/port-forward-access-application-cluster",
      "type": "page",
      "title": "Use Port Forwarding to Access Applications in a Cluster",
      "summary": "",
      "body": "\n\nThis page shows how to use `kubectl port-forward` to connect to a MongoDB\nserver running in a Kubernetes cluster. This type of connection can be useful\nfor database debugging.\n\n## \n\n*  \n* Install [MongoDB Shell](https://www.mongodb.com/try/download/shell).\n\n\n\n## Creating MongoDB deployment and service\n\n1. Create a Deployment that runs MongoDB:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/mongodb/mongo-deployment.yaml\n   ```\n\n   The output of a successful command verifies that the deployment was created:\n\n   ```\n   deployment.apps/mongo created\n   ```\n\n   View the pod status to check that it is ready:\n\n   ```shell\n   kubectl get pods\n   ```\n\n   The output displays the pod created:\n\n   ```\n   NAME                     READY   STATUS    RESTARTS   AGE\n   mongo-75f59d57f4-4nd6q   1/1     Running   0          2m4s\n   ```\n\n   View the Deployment's status:\n\n   ```shell\n   kubectl get deployment\n   ```\n\n   The output displays that the Deployment was created:\n\n   ```\n   NAME    READY   UP-TO-DATE   AVAILABLE   AGE\n   mongo   1/1     1            1           2m21s\n   ```\n\n   The Deployment automatically manages a ReplicaSet.\n   View the ReplicaSet status using:\n\n   ```shell\n   kubectl get replicaset\n   ```\n\n   The output displays that the ReplicaSet was created:\n\n   ```\n   NAME               DESIRED   CURRENT   READY   AGE\n   mongo-75f59d57f4   1         1         1       3m12s\n   ```\n\n2. Create a Service to expose MongoDB on the network:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/mongodb/mongo-service.yaml\n   ```\n\n   The output of a successful command verifies that the Service was created:\n\n   ```\n   service/mongo created\n   ```\n\n   Check the Service created:\n\n   ```shell\n   kubectl get service mongo\n   ```\n\n   The output displays the service created:\n\n   ```\n   NAME    TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)     AGE\n   mongo   ClusterIP   10.96.41.183   <none>        27017/TCP   11s\n   ```\n\n3. Verify that the MongoDB server is running in the Pod, and listening on port 27017:\n\n   ```shell\n   # Change mongo-75f59d57f4-4nd6q to the name of the Pod\n   kubectl get pod mongo-75f59d57f4-4nd6q --template='{{(index (index .spec.containers 0).ports 0).containerPort}}{{\"\\n\"}}'\n   ```\n\n   The output displays the port for MongoDB in that Pod:\n\n   ```\n   27017\n   ```\n\n   27017 is the official TCP port for MongoDB.\n\n## Forward a local port to a port on the Pod\n\n1. `kubectl port-forward` allows using resource name, such as a pod name, to select a matching pod to port forward to.\n\n\n   ```shell\n   # Change mongo-75f59d57f4-4nd6q to the name of the Pod\n   kubectl port-forward mongo-75f59d57f4-4nd6q 28015:27017\n   ```\n\n   which is the same as\n\n   ```shell\n   kubectl port-forward pods/mongo-75f59d57f4-4nd6q 28015:27017\n   ```\n\n   or\n\n   ```shell\n   kubectl port-forward deployment/mongo 28015:27017\n   ```\n\n   or\n\n   ```shell\n   kubectl port-forward replicaset/mongo-75f59d57f4 28015:27017\n   ```\n\n   or\n\n   ```shell\n   kubectl port-forward service/mongo 28015:27017\n   ```\n\n   Any of the above commands works. The output is similar to this:\n\n   ```\n   Forwarding from 127.0.0.1:28015 -> 27017\n   Forwarding from [::1]:28015 -> 27017\n   ```\n\n   \n> **Note:** `kubectl port-forward` does not return. To continue with the exercises, you will need to open another terminal.\n\n\n2. Start the MongoDB command line interface:\n\n   ```shell\n   mongosh --port 28015\n   ```\n\n3. At the MongoDB command line prompt, enter the `ping` command:\n\n   ```\n   db.runCommand( { ping: 1 } )\n   ```\n\n   A successful ping request returns:\n\n   ```\n   { ok: 1 }\n   ```\n\n### Optionally let _kubectl_ choose the local port {#let-kubectl-choose-local-port}\n\nIf you don't need a specific local port, you can let `kubectl` choose and allocate \nthe local port and thus relieve you from having to manage local port conflicts, with \nthe slightly simpler syntax:\n\n```shell\nkubectl port-forward deployment/mongo :27017\n```\n\nThe `kubectl` tool finds a local \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/access-application-cluster/port-forward-access-application-cluster.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "Use Port Forwarding to Access Applications in a Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-mongodb-deployment-and-service",
      "type": "concept",
      "title": "Creating MongoDB deployment and service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 388,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:forward-a-local-port-to-a-port-on-the-pod",
      "type": "concept",
      "title": "Forward a local port to a port on the Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 2521,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorization-and-security-considerations",
      "type": "concept",
      "title": "Authorization and security considerations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 4835,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:optionally-let-kubectl-choose-the-local-port-let-kubectl-choose-local-port",
      "type": "concept",
      "title": "Optionally let _kubectl_ choose the local port {#let-kubectl-choose-local-port}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 3768,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "type": "page",
      "title": "Use a Service to Access an Application in a Cluster",
      "summary": "",
      "body": "\n\nThis page shows how to create a Kubernetes Service object that external\nclients can use to access an application running in a cluster. The Service\nprovides load balancing for an application that has two running instances.\n\n## \n\n\n\n## \n\n- Run two instances of a Hello World application.\n- Create a Service object that exposes a node port.\n- Use the Service object to access the running application.\n\n\n\n## Creating a service for an application running in two pods\n\nHere is the configuration file for the application Deployment:\n\n\n\n1. Run a Hello World application in your cluster:\n   Create the application Deployment using the file above:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/service/access/hello-application.yaml\n   ```\n\n   The preceding command creates a\n   [Deployment](#gloss:deployment)\n   and an associated\n   [ReplicaSet](#gloss:replica-set).\n   The ReplicaSet has two\n   [Pods](#gloss:pod)\n   each of which runs the Hello World application.\n\n1. Display information about the Deployment:\n\n   ```shell\n   kubectl get deployments hello-world\n   kubectl describe deployments hello-world\n   ```\n\n1. Display information about your ReplicaSet objects:\n\n   ```shell\n   kubectl get replicasets\n   kubectl describe replicasets\n   ```\n\n1. Create a Service object that exposes the deployment:\n\n   ```shell\n   kubectl expose deployment hello-world --type=NodePort --name=example-service\n   ```\n\n1. Display information about the Service:\n\n   ```shell\n   kubectl describe services example-service\n   ```\n\n   The output is similar to this:\n\n   ```none\n   Name:                   example-service\n   Namespace:              default\n   Labels:                 run=load-balancer-example\n   Annotations:            <none>\n   Selector:               run=load-balancer-example\n   Type:                   NodePort\n   IP:                     10.32.0.16\n   Port:                   <unset> 8080/TCP\n   TargetPort:             8080/TCP\n   NodePort:               <unset> 31496/TCP\n   Endpoints:              10.200.1.4:8080,10.200.2.5:8080\n   Session Affinity:       None\n   Events:                 <none>\n   ```\n\n   Make a note of the NodePort value for the Service. For example,\n   in the preceding output, the NodePort value is 31496.\n\n1. List the pods that are running the Hello World application:\n\n   ```shell\n   kubectl get pods --selector=\"run=load-balancer-example\" --output=wide\n   ```\n\n   The output is similar to this:\n\n   ```none\n   NAME                           READY   STATUS    ...  IP           NODE\n   hello-world-2895499144-bsbk5   1/1     Running   ...  10.200.1.4   worker1\n   hello-world-2895499144-m1pwt   1/1     Running   ...  10.200.2.5   worker2\n   ```\n\n1. Get the public IP address of one of your nodes that is running\n   a Hello World pod. How you get this address depends on how you set\n   up your cluster. For example, if you are using Minikube, you can\n   see the node address by running `kubectl cluster-info`. If you are\n   using Google Compute Engine instances, you can use the\n   `gcloud compute instances list` command to see the public addresses of your\n   nodes.\n\n1. On your chosen node, create a firewall rule that allows TCP traffic\n   on your node port. For example, if your Service has a NodePort value of\n   31568, create a firewall rule that allows TCP traffic on port 31568. Different\n   cloud providers offer different ways of configuring firewall rules.\n\n1. Use the node address and node port to access the Hello World application:\n\n   ```shell\n   curl http://<public-node-ip>:<node-port>\n   ```\n\n   where `<public-node-ip>` is the public IP address of your node,\n   and `<node-port>` is the NodePort value for your service. The\n   response to a successful request is a hello message:\n\n   ```none\n   Hello, world!\n   Version: 2.0.0\n   Hostname: hello-world-cdd4458f4-m47c8\n   ```\n\n## Using a service configuration file\n\nAs an alternative to using `kubectl expose`, you can use a\n[service configuration file](/docs/concepts/services-networking/service/)\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/access-application-cluster/service-access-application-cluster.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "Use a Service to Access an Application in a Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-service-for-an-application-running-in-two-pods",
      "type": "concept",
      "title": "Creating a service for an application running in two pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 543,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-a-service-configuration-file",
      "type": "concept",
      "title": "Using a service configuration file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 4130,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "type": "page",
      "title": "Deploy and Access the Kubernetes Dashboard",
      "summary": "Deploy the web UI (Kubernetes Dashboard) and access it.",
      "body": "\n**Kubernetes Dashboard is deprecated and unmaintained.**\n\nThe Kubernetes Dashboard project has been archived and is no longer actively maintained.\nFor new installations, consider using [Headlamp](https://headlamp.dev/).\n\n\n\n> **Note:** For in-cluster deployments similar to Kubernetes Dashboard, see the\n[Headlamp in-cluster installation guide](https://headlamp.dev/docs/latest/installation/in-cluster/).\n\n\n\n\nDashboard is a web-based Kubernetes user interface.\nYou can use Dashboard to deploy containerized applications to a Kubernetes cluster,\ntroubleshoot your containerized application, and manage the cluster resources.\nYou can use Dashboard to get an overview of applications running on your cluster,\nas well as for creating or modifying individual Kubernetes resources\n(such as Deployments, Jobs, DaemonSets, etc).\nFor example, you can scale a Deployment, initiate a rolling update, restart a pod\nor deploy new applications using a deploy wizard.\n\nDashboard also provides information on the state of Kubernetes resources in your cluster and on any errors that may have occurred.\n\n![Kubernetes Dashboard UI](/images/docs/ui-dashboard.png)\n\n\n\n## Deploying the Dashboard UI\n\n\n> **Note:** Kubernetes Dashboard supports only Helm-based installation currently as it is faster\nand gives us better control over all dependencies required by Dashboard to run.\n\n\nThe Dashboard UI is not deployed by default. To deploy it, run the following command:\n\n```shell\n# Add kubernetes-dashboard repository\nhelm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/\n# Deploy a Helm Release named \"kubernetes-dashboard\" using the kubernetes-dashboard chart\nhelm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard --create-namespace --namespace kubernetes-dashboard\n```\n\n## Accessing the Dashboard UI\n\nTo protect your cluster data, Dashboard deploys with a minimal RBAC configuration by default.\nCurrently, Dashboard only supports logging in with a Bearer Token.\nTo create a token for this demo, you can follow our guide on\n[creating a sample user](https://github.com/kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md).\n\n\n> **Warning:** The sample user created in the tutorial will have administrative privileges and is for educational purposes only.\n\n\n### Command line proxy\n\nYou can enable access to the Dashboard using the `kubectl` command-line tool,\nby running the following command:\n\n```\nkubectl -n kubernetes-dashboard port-forward svc/kubernetes-dashboard-kong-proxy 8443:443\n```\n\nKubectl will make Dashboard available at [https://localhost:8443](https://localhost:8443).\n\nThe UI can _only_ be accessed from the machine where the command is executed. See `kubectl port-forward --help` for more options.\n\n\n> **Note:** The kubeconfig authentication method does **not** support external identity providers\nor X.509 certificate-based authentication.\n\n\n## Welcome view\n\nWhen you access Dashboard on an empty cluster, you'll see the welcome page.\nThis page contains a link to this document as well as a button to deploy your first application.\nIn addition, you can view which system applications are running by default in the `kube-system`\n[namespace](/docs/tasks/administer-cluster/namespaces/) of your cluster, for example the Dashboard itself.\n\n![Kubernetes Dashboard welcome page](/images/docs/ui-dashboard-zerostate.png)\n\n## Deploying containerized applications\n\nDashboard lets you create and deploy a containerized application as a Deployment and optional Service with a simple wizard.\nYou can either manually specify application details, or upload a YAML or JSON _manifest_ file containing application configuration.\n\nClick the **CREATE** button in the upper right corner of any page to begin.\n\n### Specifying application details\n\nThe deploy wizard expects that you provide the following information:\n\n- **App name** (mandatory): Name for your application.\n  A [label](/docs/concepts/overview/working-with-objects/labels/) with th\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/access-application-cluster/web-ui-dashboard.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": null,
          "line_end": null,
          "quote": "Deploy and Access the Kubernetes Dashboard"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploying-the-dashboard-ui",
      "type": "concept",
      "title": "Deploying the Dashboard UI",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 1240,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-the-dashboard-ui",
      "type": "concept",
      "title": "Accessing the Dashboard UI",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 1906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:welcome-view",
      "type": "concept",
      "title": "Welcome view",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 3052,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploying-containerized-applications",
      "type": "concept",
      "title": "Deploying containerized applications",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 3525,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-dashboard",
      "type": "concept",
      "title": "Using Dashboard",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 9999,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:command-line-proxy",
      "type": "concept",
      "title": "Command line proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 2436,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specifying-application-details",
      "type": "concept",
      "title": "Specifying application details",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 3900,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uploading-a-yaml-or-json-file",
      "type": "concept",
      "title": "Uploading a YAML or JSON file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 9559,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:navigation",
      "type": "concept",
      "title": "Navigation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 10130,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/access-application-cluster/list-all-running-container-images",
      "type": "page",
      "title": "List All Container Images Running in a Cluster",
      "summary": "",
      "body": "\n\nThis page shows how to use kubectl to list all of the Container images\nfor Pods running in a cluster.\n\n## \n\n \n\n\n\nIn this exercise you will use kubectl to fetch all of the Pods\nrunning in a cluster, and format the output to pull out the list\nof Containers for each.\n\n## List all Container images in all namespaces\n\n- Fetch all Pods in all namespaces using `kubectl get pods --all-namespaces`\n- Format the output to include only the list of Container image names\n  using `-o jsonpath={.items[*].spec['initContainers', 'containers'][*].image}`.  This will recursively parse out the\n  `image` field from the returned json.\n  - See the [jsonpath reference](/docs/reference/kubectl/jsonpath/)\n    for further information on how to use jsonpath.\n- Format the output using standard tools: `tr`, `sort`, `uniq`\n  - Use `tr` to replace spaces with newlines\n  - Use `sort` to sort the results\n  - Use `uniq` to aggregate image counts\n\n```shell\nkubectl get pods --all-namespaces -o jsonpath=\"{.items[*].spec['initContainers', 'containers'][*].image}\" |\\\ntr -s '[[:space:]]' '\\n' |\\\nsort |\\\nuniq -c\n```\nThe jsonpath is interpreted as follows:\n\n- `.items[*]`: for each returned value\n- `.spec`: get the spec\n- `['initContainers', 'containers'][*]`: for each container\n- `.image`: get the image\n\n\n> **Note:** When fetching a single Pod by name, for example `kubectl get pod nginx`,\nthe `.items[*]` portion of the path should be omitted because a single\nPod is returned instead of a list of items.\n\n\n## List Container images by Pod\n\nThe formatting can be controlled further by using the `range` operation to\niterate over elements individually.\n\n```shell\nkubectl get pods --all-namespaces -o jsonpath='{range .items[*]}{\"\\n\"}{.metadata.name}{\":\\t\"}{range .spec.containers[*]}{.image}{\", \"}{end}{end}' |\\\nsort\n```\n\n## List Container images filtering by Pod label\n\nTo target only Pods matching a specific label, use the -l flag.  The\nfollowing matches only Pods with labels matching `app=nginx`.\n\n```shell\nkubectl get pods --all-namespaces -o jsonpath=\"{.items[*].spec.containers[*].image}\" -l app=nginx\n```\n\n## List Container images filtering by Pod namespace\n\nTo target only pods in a specific namespace, use the namespace flag. The\nfollowing matches only Pods in the `kube-system` namespace.\n\n```shell\nkubectl get pods --namespace kube-system -o jsonpath=\"{.items[*].spec.containers[*].image}\"\n```\n\n## List Container images using a go-template instead of jsonpath\n\nAs an alternative to jsonpath, Kubectl supports using [go-templates](https://pkg.go.dev/text/template)\nfor formatting the output:\n\n```shell\nkubectl get pods --all-namespaces -o go-template --template=\"{{range .items}}{{range .spec.containers}}{{.image}} {{end}}{{end}}\"\n```\n\n## \n\n### Reference\n\n* [Jsonpath](/docs/reference/kubectl/jsonpath/) reference guide\n* [Go template](https://pkg.go.dev/text/template) reference guide\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
      "meta": {
        "weight": 100,
        "rel_path": "tasks/access-application-cluster/list-all-running-container-images.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": null,
          "line_end": null,
          "quote": "List All Container Images Running in a Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-all-container-images-in-all-namespaces",
      "type": "concept",
      "title": "List all Container images in all namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 394,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-container-images-by-pod",
      "type": "concept",
      "title": "List Container images by Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 1625,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-container-images-filtering-by-pod-label",
      "type": "concept",
      "title": "List Container images filtering by Pod label",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 1938,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-container-images-filtering-by-pod-namespace",
      "type": "concept",
      "title": "List Container images filtering by Pod namespace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 2231,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-container-images-using-a-go-template-instead-of-jsonpath",
      "type": "concept",
      "title": "List Container images using a go-template instead of jsonpath",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 2524,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "type": "page",
      "title": "Connect a Frontend to a Backend Using Services",
      "summary": "",
      "body": "\n\nThis task shows how to create a _frontend_ and a _backend_ microservice. The backend \nmicroservice is a hello greeter. The frontend exposes the backend using nginx and a \nKubernetes [service](#gloss:service) object.\n\n## \n\n* Create and run a sample `hello` backend microservice using a \n  [deployment](#gloss:deployment) object.\n* Use a Service object to send traffic to the backend microservice's multiple replicas.\n* Create and run a `nginx` frontend microservice, also using a Deployment object.\n* Configure the frontend microservice to send traffic to the backend microservice. \n* Use a Service object of `type=LoadBalancer` to expose the frontend microservice \n  outside the cluster.\n\n## \n\n \n\nThis task uses\n[Services with external load balancers](/docs/tasks/access-application-cluster/create-external-load-balancer/), which\nrequire a supported environment. If your environment does not support this, you can use a Service of type\n[NodePort](/docs/concepts/services-networking/service/#type-nodeport) instead.\n\n\n\n## Creating the backend using a Deployment\n\nThe backend is a simple hello greeter microservice. Here is the configuration\nfile for the backend Deployment:\n\n\n\nCreate the backend Deployment:\n\n```shell\nkubectl apply -f https://k8s.io/examples/service/access/backend-deployment.yaml\n```\n\nView information about the backend Deployment:\n\n```shell\nkubectl describe deployment backend\n```\n\nThe output is similar to this:\n\n```\nName:                           backend\nNamespace:                      default\nCreationTimestamp:              Mon, 24 Oct 2016 14:21:02 -0700\nLabels:                         app=hello\n                                tier=backend\n                                track=stable\nAnnotations:                    deployment.kubernetes.io/revision=1\nSelector:                       app=hello,tier=backend,track=stable\nReplicas:                       3 desired | 3 updated | 3 total | 3 available | 0 unavailable\nStrategyType:                   RollingUpdate\nMinReadySeconds:                0\nRollingUpdateStrategy:          1 max unavailable, 1 max surge\nPod Template:\n  Labels:       app=hello\n                tier=backend\n                track=stable\n  Containers:\n   hello:\n    Image:              \"gcr.io/google-samples/hello-go-gke:1.0\"\n    Port:               80/TCP\n    Environment:        <none>\n    Mounts:             <none>\n  Volumes:              <none>\nConditions:\n  Type          Status  Reason\n  ----          ------  ------\n  Available     True    MinimumReplicasAvailable\n  Progressing   True    NewReplicaSetAvailable\nOldReplicaSets:                 <none>\nNewReplicaSet:                  hello-3621623197 (3/3 replicas created)\nEvents:\n...\n```\n\n## Creating the `hello` Service object\n\nThe key to sending requests from a frontend to a backend is the backend\nService. A Service creates a persistent IP address and DNS name entry\nso that the backend microservice can always be reached. A Service uses\n[selectors](#gloss:selector) to find\nthe Pods that it routes traffic to.\n\nFirst, explore the Service configuration file:\n\n\n\nIn the configuration file, you can see that the Service, named `hello` routes \ntraffic to Pods that have the labels `app: hello` and `tier: backend`.\n\nCreate the backend Service:\n\n```shell\nkubectl apply -f https://k8s.io/examples/service/access/backend-service.yaml\n```\n\nAt this point, you have a `backend` Deployment running three replicas of your `hello`\napplication, and you have a Service that can route traffic to them. However, this \nservice is neither available nor resolvable outside the cluster.\n\n## Creating the frontend\n\nNow that you have your backend running, you can create a frontend that is accessible \noutside the cluster, and connects to the backend by proxying requests to it.\n\nThe frontend sends requests to the backend worker Pods by using the DNS name\ngiven to the backend Service. The DNS name is `hello`, which is the value\nof the `name` field in the `examples/service/access/backend-service.yaml` \nconfi\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
      "meta": {
        "weight": 70,
        "rel_path": "tasks/access-application-cluster/connecting-frontend-backend.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": null,
          "line_end": null,
          "quote": "Connect a Frontend to a Backend Using Services"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-the-backend-using-a-deployment",
      "type": "concept",
      "title": "Creating the backend using a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 1213,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-the-hello-service-object",
      "type": "concept",
      "title": "Creating the `hello` Service object",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 2954,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-the-frontend",
      "type": "concept",
      "title": "Creating the frontend",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 3931,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:interact-with-the-frontend-service",
      "type": "concept",
      "title": "Interact with the frontend Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 5721,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:send-traffic-through-the-frontend",
      "type": "concept",
      "title": "Send traffic through the frontend",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 6579,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/access-application-cluster/access-cluster-services",
      "type": "page",
      "title": "Access Services Running on Clusters",
      "summary": "",
      "body": "\nThis page shows how to connect to services running on the Kubernetes cluster.\n\n## \n\n \n\n\n\n## Accessing services running on the cluster\n\nIn Kubernetes, [nodes](/docs/concepts/architecture/nodes/),\n[pods](/docs/concepts/workloads/pods/) and [services](/docs/concepts/services-networking/service/) all have\ntheir own IPs.  In many cases, the node IPs, pod IPs, and some service IPs on a cluster will not be\nroutable, so they will not be reachable from a machine outside the cluster,\nsuch as your desktop machine.\n\n### Ways to connect\n\nYou have several options for connecting to nodes, pods and services from outside the cluster:\n\n- Access services through public IPs.\n  - Use a service with type `NodePort` or `LoadBalancer` to make the service reachable outside\n    the cluster.  See the [services](/docs/concepts/services-networking/service/) and\n    [kubectl expose](/docs/reference/generated/kubectl/kubectl-commands/#expose) documentation.\n  - Depending on your cluster environment, this may only expose the service to your corporate network,\n    or it may expose it to the internet.  Think about whether the service being exposed is secure.\n    Does it do its own authentication?\n  - Place pods behind services.  To access one specific pod from a set of replicas, such as for debugging,\n    place a unique label on the pod and create a new service which selects this label.\n  - In most cases, it should not be necessary for application developer to directly access\n    nodes via their nodeIPs.\n- Access services, nodes, or pods using the Proxy Verb.\n  - Does apiserver authentication and authorization prior to accessing the remote service.\n    Use this if the services are not secure enough to expose to the internet, or to gain\n    access to ports on the node IP, or for debugging.\n  - Proxies may cause problems for some web applications.\n  - Only works for HTTP/HTTPS.\n  - Described [here](#manually-constructing-apiserver-proxy-urls).\n- Access from a node or pod in the cluster.\n  - Run a pod, and then connect to a shell in it using [kubectl exec](/docs/reference/generated/kubectl/kubectl-commands/#exec).\n    Connect to other nodes, pods, and services from that shell.\n  - Some clusters may allow you to ssh to a node in the cluster. From there you may be able to\n    access cluster services. This is a non-standard method, and will work on some clusters but\n    not others. Browsers and other tools may or may not be installed. Cluster DNS may not work.\n\n### Discovering builtin services\n\nTypically, there are several services which are started on a cluster by kube-system. Get a list of these\nwith the `kubectl cluster-info` command:\n\n```shell\nkubectl cluster-info\n```\n\nThe output is similar to this:\n\n```\nKubernetes master is running at https://192.0.2.1\nelasticsearch-logging is running at https://192.0.2.1/api/v1/namespaces/kube-system/services/elasticsearch-logging/proxy\nkibana-logging is running at https://192.0.2.1/api/v1/namespaces/kube-system/services/kibana-logging/proxy\nkube-dns is running at https://192.0.2.1/api/v1/namespaces/kube-system/services/kube-dns/proxy\ngrafana is running at https://192.0.2.1/api/v1/namespaces/kube-system/services/monitoring-grafana/proxy\nheapster is running at https://192.0.2.1/api/v1/namespaces/kube-system/services/monitoring-heapster/proxy\n```\n\nThis shows the proxy-verb URL for accessing each service.\nFor example, this cluster has cluster-level logging enabled (using Elasticsearch), which can be reached\nat `https://192.0.2.1/api/v1/namespaces/kube-system/services/elasticsearch-logging/proxy/`\nif suitable credentials are passed, or through a kubectl proxy at, for example:\n`http://localhost:8080/api/v1/namespaces/kube-system/services/elasticsearch-logging/proxy/`.\n\n\n> **Note:** See [Access Clusters Using the Kubernetes API](/docs/tasks/administer-cluster/access-cluster-api/#accessing-the-kubernetes-api)\nfor how to pass credentials or use kubectl proxy.\n\n\n#### Manually constructing apiserver proxy URLs\n\nAs mentioned above, you \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster-services/",
      "meta": {
        "weight": 140,
        "rel_path": "tasks/access-application-cluster/access-cluster-services.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster-services.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster-services/",
          "line_start": null,
          "line_end": null,
          "quote": "Access Services Running on Clusters"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-services-running-on-the-cluster",
      "type": "concept",
      "title": "Accessing services running on the cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster-services.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster-services/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ways-to-connect",
      "type": "concept",
      "title": "Ways to connect",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster-services.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster-services/",
          "line_start": 637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:discovering-builtin-services",
      "type": "concept",
      "title": "Discovering builtin services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster-services.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster-services/",
          "line_start": 2593,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/access-application-cluster/access-cluster",
      "type": "page",
      "title": "Accessing Clusters",
      "summary": "",
      "body": "\n\nThis topic discusses multiple ways to interact with clusters.\n\n\n\n## Accessing for the first time with kubectl\n\nWhen accessing the Kubernetes API for the first time, we suggest using the\nKubernetes CLI, `kubectl`.\n\nTo access a cluster, you need to know the location of the cluster and have credentials\nto access it. Typically, this is automatically set-up when you work through\na [Getting started guide](/docs/setup/),\nor someone else set up the cluster and provided you with credentials and a location.\n\nCheck the location and credentials that kubectl knows about with this command:\n\n```shell\nkubectl config view\n```\n\nMany of the [examples](/docs/reference/kubectl/quick-reference/) provide an introduction to using\n`kubectl`, and complete documentation is found in the\n[kubectl reference](/docs/reference/kubectl/).\n\n## Directly accessing the REST API\n\nKubectl handles locating and authenticating to the apiserver.\nIf you want to directly access the REST API with an http client like\ncurl or wget, or a browser, there are several ways to locate and authenticate:\n\n- Run kubectl in proxy mode.\n  - Recommended approach.\n  - Uses stored apiserver location.\n  - Verifies identity of apiserver using self-signed cert. No MITM possible.\n  - Authenticates to apiserver.\n  - In future, may do intelligent client-side load-balancing and failover.\n- Provide the location and credentials directly to the http client.\n  - Alternate approach.\n  - Works with some types of client code that are confused by using a proxy.\n  - Need to import a root cert into your browser to protect against MITM.\n\n### Using kubectl proxy\n\nThe following command runs kubectl in a mode where it acts as a reverse proxy. It handles\nlocating the apiserver and authenticating.\nRun it like this:\n\n```shell\nkubectl proxy --port=8080\n```\n\nSee [kubectl proxy](/docs/reference/generated/kubectl/kubectl-commands/#proxy) for more details.\n\nThen you can explore the API with curl, wget, or a browser, replacing localhost\nwith [::1] for IPv6, like so:\n\n```shell\ncurl http://localhost:8080/api/\n```\n\nThe output is similar to this:\n\n```json\n{\n  \"kind\": \"APIVersions\",\n  \"versions\": [\n    \"v1\"\n  ],\n  \"serverAddressByClientCIDRs\": [\n    {\n      \"clientCIDR\": \"0.0.0.0/0\",\n      \"serverAddress\": \"10.0.1.149:443\"\n    }\n  ]\n}\n```\n\n### Without kubectl proxy\n\nUse `kubectl apply` and `kubectl describe secret...` to create a token for the default service account with grep/cut:\n\nFirst, create the Secret, requesting a token for the default ServiceAccount:\n\n```shell\nkubectl apply -f - <<EOF\napiVersion: v1\nkind: Secret\nmetadata:\n  name: default-token\n  annotations:\n    kubernetes.io/service-account.name: default\ntype: kubernetes.io/service-account-token\nEOF\n```\n\nNext, wait for the token controller to populate the Secret with a token:\n\n```shell\nwhile ! kubectl describe secret default-token | grep -E '^token' >/dev/null; do\n  echo \"waiting for token...\" >&2\n  sleep 1\ndone\n```\n\nCapture and use the generated token:\n\n```shell\nAPISERVER=$(kubectl config view --minify | grep server | cut -f 2- -d \":\" | tr -d \" \")\nTOKEN=$(kubectl describe secret default-token | grep -E '^token' | cut -f2 -d':' | tr -d \" \")\n\ncurl $APISERVER/api --header \"Authorization: Bearer $TOKEN\" --insecure\n```\n\nThe output is similar to this:\n\n```json\n{\n  \"kind\": \"APIVersions\",\n  \"versions\": [\n    \"v1\"\n  ],\n  \"serverAddressByClientCIDRs\": [\n    {\n      \"clientCIDR\": \"0.0.0.0/0\",\n      \"serverAddress\": \"10.0.1.149:443\"\n    }\n  ]\n}\n```\n\nUsing `jsonpath`:\n\n```shell\nAPISERVER=$(kubectl config view --minify -o jsonpath='{.clusters[0].cluster.server}')\nTOKEN=$(kubectl get secret default-token -o jsonpath='{.data.token}' | base64 --decode)\n\ncurl $APISERVER/api --header \"Authorization: Bearer $TOKEN\" --insecure\n```\n\nThe output is similar to this:\n\n```json\n{\n  \"kind\": \"APIVersions\",\n  \"versions\": [\n    \"v1\"\n  ],\n  \"serverAddressByClientCIDRs\": [\n    {\n      \"clientCIDR\": \"0.0.0.0/0\",\n      \"serverAddress\": \"10.0.1.149:443\"\n    }\n  ]\n}\n```\n\nThe above examples use the `\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/access-application-cluster/access-cluster.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "Accessing Clusters"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-the-api-from-a-pod",
      "type": "concept",
      "title": "Accessing the API from a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 6635,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:requesting-redirects",
      "type": "concept",
      "title": "Requesting redirects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 7197,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:so-many-proxies",
      "type": "concept",
      "title": "So many proxies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 7323,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:without-kubectl-proxy",
      "type": "concept",
      "title": "Without kubectl proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 2316,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:go-client",
      "type": "concept",
      "title": "Go client",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 4806,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:python-client",
      "type": "concept",
      "title": "Python client",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 5904,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:other-languages",
      "type": "concept",
      "title": "Other languages",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 6430,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "type": "page",
      "title": "Configure Access to Multiple Clusters",
      "summary": "",
      "body": "\n\nThis page shows how to configure access to multiple clusters by using\nconfiguration files. After your clusters, users, and contexts are defined in\none or more configuration files, you can quickly switch between clusters by using the\n`kubectl config use-context` command.\n\n\n> **Note:** A file that is used to configure access to a cluster is sometimes called\na *kubeconfig file*. This is a generic way of referring to configuration files.\nIt does not mean that there is a file named `kubeconfig`.\n\n\n\n\nOnly use kubeconfig files from trusted sources. Using a specially-crafted kubeconfig\nfile could result in malicious code execution or file exposure.\nIf you must use an untrusted kubeconfig file, inspect it carefully first, much as you would a shell script.\n\n\n\n## \n\n\n\nTo check that [kubectl](#gloss:kubectl) is installed,\nrun `kubectl version --client`. The kubectl version should be\n[within one minor version](/releases/version-skew-policy/#kubectl) of your\ncluster's API server.\n\n\n\n## Define clusters, users, and contexts\n\nSuppose you have two clusters, one for development work and one for test work.\nIn the `development` cluster, your frontend developers work in a namespace called `frontend`,\nand your storage developers work in a namespace called `storage`. In your `test` cluster,\ndevelopers work in the default namespace, or they create auxiliary namespaces as they\nsee fit. Access to the development cluster requires authentication by certificate. Access\nto the test cluster requires authentication by username and password.\n\nCreate a directory named `config-exercise`. In your\n`config-exercise` directory, create a file named `config-demo` with this content:\n\n```yaml\napiVersion: v1\nkind: Config\npreferences: {}\n\nclusters:\n- cluster:\n  name: development\n- cluster:\n  name: test\n\nusers:\n- name: developer\n- name: experimenter\n\ncontexts:\n- context:\n  name: dev-frontend\n- context:\n  name: dev-storage\n- context:\n  name: exp-test\n```\n\nA configuration file describes clusters, users, and contexts. Your `config-demo` file\nhas the framework to describe two clusters, two users, and three contexts.\n\nGo to your `config-exercise` directory. Enter these commands to add cluster details to\nyour configuration file:\n\n```shell\nkubectl config --kubeconfig=config-demo set-cluster development --server=https://1.2.3.4 --certificate-authority=fake-ca-file\nkubectl config --kubeconfig=config-demo set-cluster test --server=https://5.6.7.8 --insecure-skip-tls-verify\n```\n\nAdd user details to your configuration file:\n\n\n> **Caution:** Storing passwords in Kubernetes client config is risky. A better alternative would be to use a credential plugin and store them separately. See: [client-go credential plugins](/docs/reference/access-authn-authz/authentication/#client-go-credential-plugins)\n\n\n```shell\nkubectl config --kubeconfig=config-demo set-credentials developer --client-certificate=fake-cert-file --client-key=fake-key-seefile\nkubectl config --kubeconfig=config-demo set-credentials experimenter --username=exp --password=some-password\n```\n\n\n> **Note:** - To delete a user you can run `kubectl --kubeconfig=config-demo config unset users.<name>`\n- To remove a cluster, you can run `kubectl --kubeconfig=config-demo config unset clusters.<name>`\n- To remove a context, you can run `kubectl --kubeconfig=config-demo config unset contexts.<name>`\n\n\nAdd context details to your configuration file:\n\n```shell\nkubectl config --kubeconfig=config-demo set-context dev-frontend --cluster=development --namespace=frontend --user=developer\nkubectl config --kubeconfig=config-demo set-context dev-storage --cluster=development --namespace=storage --user=developer\nkubectl config --kubeconfig=config-demo set-context exp-test --cluster=test --namespace=default --user=experimenter\n```\n\nOpen your `config-demo` file to see the added details. As an alternative to opening the\n`config-demo` file, you can use the `config view` command.\n\n```shell\nkubectl config --kubeconfig=config-demo view\n```\n\nThe output shows t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/access-application-cluster/configure-access-multiple-clusters.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Access to Multiple Clusters"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-clusters-users-and-contexts",
      "type": "concept",
      "title": "Define clusters, users, and contexts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 1165,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-second-configuration-file",
      "type": "concept",
      "title": "Create a second configuration file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 7927,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-the-kubeconfig-environment-variable",
      "type": "concept",
      "title": "Set the KUBECONFIG environment variable",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 8300,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:explore-the-home-kube-directory",
      "type": "concept",
      "title": "Explore the $HOME/.kube directory",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 10161,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:append-home-kube-config-to-your-kubeconfig-environment-variable",
      "type": "concept",
      "title": "Append $HOME/.kube/config to your KUBECONFIG environment variable",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 10587,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-the-subject-represented-by-the-kubeconfig",
      "type": "concept",
      "title": "Check the subject represented by the kubeconfig",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 11457,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:linux",
      "type": "concept",
      "title": "Linux",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 8525,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:windows-powershell",
      "type": "concept",
      "title": "Windows PowerShell",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 8588,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/access-application-cluster/communicate-containers-same-pod-shared-volume",
      "type": "page",
      "title": "Communicate Between Containers in the Same Pod Using a Shared Volume",
      "summary": "",
      "body": "\n\nThis page shows how to use a Volume to communicate between two Containers running\nin the same Pod. See also how to allow processes to communicate by\n[sharing process namespace](/docs/tasks/configure-pod-container/share-process-namespace/)\nbetween containers.\n\n## \n\n \n\n\n\n##  Creating a Pod that runs two Containers\n\nIn this exercise, you create a Pod that runs two Containers. The two containers\nshare a Volume that they can use to communicate. Here is the configuration file\nfor the Pod:\n\n\n\nIn the configuration file, you can see that the Pod has a Volume named\n`shared-data`.\n\nThe first container listed in the configuration file runs an nginx server. The\nmount path for the shared Volume is `/usr/share/nginx/html`.\nThe second container is based on the debian image, and has a mount path of\n`/pod-data`. The second container runs the following command and then terminates.\n\n    echo Hello from the debian container > /pod-data/index.html\n\nNotice that the second container writes the `index.html` file in the root\ndirectory of the nginx server.\n\nCreate the Pod and the two Containers:\n\n    kubectl apply -f https://k8s.io/examples/pods/two-container-pod.yaml\n\nView information about the Pod and the Containers:\n\n    kubectl get pod two-containers --output=yaml\n\nHere is a portion of the output:\n\n    apiVersion: v1\n    kind: Pod\n    metadata:\n      ...\n      name: two-containers\n      namespace: default\n      ...\n    spec:\n      ...\n      containerStatuses:\n\n      - containerID: docker://c1d8abd1 ...\n        image: debian\n        ...\n        lastState:\n          terminated:\n            ...\n        name: debian-container\n        ...\n\n      - containerID: docker://96c1ff2c5bb ...\n        image: nginx\n        ...\n        name: nginx-container\n        ...\n        state:\n          running:\n        ...\n\nYou can see that the debian Container has terminated, and the nginx Container\nis still running.\n\nGet a shell to nginx Container:\n\n    kubectl exec -it two-containers -c nginx-container -- /bin/bash\n\nIn your shell, verify that nginx is running:\n\n    root@two-containers:/# apt-get update\n    root@two-containers:/# apt-get install curl procps\n    root@two-containers:/# ps aux\n\nThe output is similar to this:\n\n    USER       PID  ...  STAT START   TIME COMMAND\n    root         1  ...  Ss   21:12   0:00 nginx: master process nginx -g daemon off;\n\nRecall that the debian Container created the `index.html` file in the nginx root\ndirectory. Use `curl` to send a GET request to the nginx server:\n\n```\nroot@two-containers:/# curl localhost\n```\n\nThe output shows that nginx serves a web page written by the debian container:\n\n```\nHello from the debian container\n```\n\n\n\n## Discussion\n\nThe primary reason that Pods can have multiple containers is to support\nhelper applications that assist a primary application. Typical examples of\nhelper applications are data pullers, data pushers, and proxies.\nHelper and primary applications often need to communicate with each other.\nTypically this is done through a shared filesystem, as shown in this exercise,\nor through the loopback network interface, localhost. An example of this pattern is a\nweb server along with a helper program that polls a Git repository for new updates.\n\nThe Volume in this exercise provides a way for Containers to communicate during\nthe life of the Pod. If the Pod is deleted and recreated, any data stored in\nthe shared Volume is lost.\n\n## \n\n\n* Learn more about [patterns for composite containers](/blog/2015/06/the-distributed-system-toolkit-patterns/).\n\n* Learn about [composite containers for modular architecture](https://www.slideshare.net/Docker/slideshare-burns).\n\n* See [Configuring a Pod to Use a Volume for Storage](/docs/tasks/configure-pod-container/configure-volume-storage/).\n\n* See [Configure a Pod to share process namespace between containers in a Pod](/docs/tasks/configure-pod-container/share-process-namespace/)\n\n* See [Volume](/docs/reference/generated/kubernetes-api//#volume-v1-core).\n\n* See [Pod](/docs\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/",
      "meta": {
        "weight": 120,
        "rel_path": "tasks/access-application-cluster/communicate-containers-same-pod-shared-volume.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/communicate-containers-same-pod-shared-volume.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/",
          "line_start": null,
          "line_end": null,
          "quote": "Communicate Between Containers in the Same Pod Using a Shared Volume"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-pod-that-runs-two-containers",
      "type": "concept",
      "title": "Creating a Pod that runs two Containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/access-application-cluster/communicate-containers-same-pod-shared-volume.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/",
          "line_start": 398,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/access-application-cluster/configure-dns-cluster",
      "type": "page",
      "title": "Configure DNS for a Cluster",
      "summary": "Configure DNS for a Cluster to enable name resolution and communication between pods.",
      "body": "Configure DNS for a Cluster to enable name resolution and communication between pods.\n\n**Why it matters**\nDNS is essential for pod-to-pod communication, allowing them to resolve each other's names.\n\n**Key facts**\n- You can use CoreDNS or another DNS solution as the cluster's DNS provider.\n\n**Common pitfalls**\n- Failing to configure DNS may prevent pods from communicating with each other.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-dns-cluster/",
      "meta": {
        "weight": 130,
        "rel_path": "tasks/access-application-cluster/configure-dns-cluster.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-dns-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-dns-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure DNS for a Cluster"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/access-application-cluster/_index",
      "type": "page",
      "title": "Access Applications in a Cluster",
      "summary": "Configure load balancing, port forwarding, or setup firewall or DNS configurations to access applications in a cluster.",
      "body": "Access Applications in a Cluster by exposing them through services and load balancers.\n\n**Why it matters**\nExposing applications enables users to access your cluster's resources from outside the cluster.\n\n**Key facts**\n- You can expose applications using services, ingress controllers, or load balancers.\n\n**Common pitfalls**\n- Incorrectly exposing applications may compromise security or lead to resource exhaustion.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/access-application-cluster/_index/",
      "meta": {
        "weight": 100,
        "rel_path": "tasks/access-application-cluster/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/access-application-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Access Applications in a Cluster"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/tls/certificate-rotation",
      "type": "page",
      "title": "Configure Certificate Rotation for the Kubelet",
      "summary": "",
      "body": "\nThis page shows how to enable and configure certificate rotation for the kubelet.\n\n\n\n\n## \n\n\n* Kubernetes version 1.8.0 or later is required\n\n\n\n\n\n## Overview\n\nThe kubelet uses certificates to authenticate with the Kubernetes API.  By\ndefault, these certificates are issued with a one-year expiration so that they do\nnot need to be renewed too frequently.\n\nKubernetes contains the [kubelet certificate\nrotation](/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/),\nthat will automatically generate a new key and request a new certificate from\nthe Kubernetes API as the current certificate approaches expiration. Once the\nnew certificate is available, it will be used for authenticating connections to\nthe Kubernetes API.\n\n## Enabling client certificate rotation\n\nThe `kubelet` process accepts an argument `--rotate-certificates` that controls\nif the kubelet will automatically request a new certificate as the expiration of\nthe certificate currently in use approaches.\n\n\nThe `kube-controller-manager` process accepts an argument\n`--cluster-signing-duration`  (`--experimental-cluster-signing-duration` prior to 1.19)\nthat controls how long certificates will be issued for.\n\n## Understanding the certificate rotation configuration\n\nWhen a kubelet starts up, if it is configured to bootstrap (using the\n`--bootstrap-kubeconfig` flag), it will use its initial certificate to connect\nto the Kubernetes API and issue a certificate signing request. You can view the\nstatus of certificate signing requests using:\n\n```sh\nkubectl get csr\n```\n\nInitially, a certificate signing request from the kubelet on a node will have a\nstatus of `Pending`. If the certificate signing request meets specific\ncriteria, it will be auto-approved by the controller manager, and then it will have\na status of `Approved`. Next, the controller manager will sign a certificate,\nissued for the duration specified by the \n`--cluster-signing-duration` parameter, and the signed certificate\nwill be attached to the certificate signing request.\n\nThe kubelet will retrieve the signed certificate from the Kubernetes API and\nwrite that to disk, in the location specified by `--cert-dir`. Then the kubelet\nwill use the new certificate to connect to the Kubernetes API.\n\nAs the expiration of the signed certificate approaches, the kubelet will\nautomatically issue a new certificate signing request, using the Kubernetes API. \nThis can happen at any point between 30% and 10% of the time remaining on the \ncertificate. Again, the controller manager will automatically approve the certificate\nrequest and attach a signed certificate to the certificate signing request. The\nkubelet will retrieve the new signed certificate from the Kubernetes API and\nwrite that to disk. Then it will update the connections it has to the\nKubernetes API to reconnect using the new certificate.\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tls/certificate-rotation/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tls/certificate-rotation.md"
      },
      "provenance": [
        {
          "source": "tasks/tls/certificate-rotation.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-rotation/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Certificate Rotation for the Kubelet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-client-certificate-rotation",
      "type": "concept",
      "title": "Enabling client certificate rotation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/certificate-rotation.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-rotation/",
          "line_start": 855,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-the-certificate-rotation-configuration",
      "type": "concept",
      "title": "Understanding the certificate rotation configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/certificate-rotation.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-rotation/",
          "line_start": 1307,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tls/manual-rotation-of-ca-certificates",
      "type": "page",
      "title": "Manual Rotation of CA Certificates",
      "summary": "",
      "body": "\n\nThis page shows how to manually rotate the certificate authority (CA) certificates.\n\n## \n\n\n\n\n- For more information about authentication in Kubernetes, see\n  [Authenticating](/docs/reference/access-authn-authz/authentication).\n- For more information about best practices for CA certificates, see\n  [Single root CA](/docs/setup/best-practices/certificates/#single-root-ca).\n\n\n\n## Rotate the CA certificates manually\n\n\n> **Caution:** Make sure to back up your certificate directory along with configuration files and any other necessary files.\n\nThis approach assumes operation of the Kubernetes control plane in an HA configuration with multiple API servers.\nGraceful termination of the API server is also assumed, so clients can cleanly disconnect from one API server and\nreconnect to another.\n\nConfigurations with a single API server will experience unavailability while the API server is being restarted.\n\n\n1. Distribute the new CA certificates and private keys (for example: `ca.crt`, `ca.key`, `front-proxy-ca.crt`,\n   and `front-proxy-ca.key`) to all your control plane nodes in the Kubernetes certificates directory.\n\n1. Update the `--root-ca-file` flag for the [kube-controller-manager](#gloss:kube-controller-manager) to include\n   both old and new CA, then restart the kube-controller-manager.\n\n   Any [ServiceAccount](#gloss:service-account) created after this point will get\n   Secrets that include both old and new CAs.\n\n   \n> **Note:** The files specified by the kube-controller-manager flags `--client-ca-file` and `--cluster-signing-cert-file`\n   cannot be CA bundles. If these flags and `--root-ca-file` point to the same `ca.crt` file, which is now a\n   bundle (includes both old and new CA), you will face an error. To workaround this problem, you can copy the new CA\n   to a separate file and make the flags `--client-ca-file` and `--cluster-signing-cert-file` point to the copy.\n   Once `ca.crt` is no longer a bundle, you can restore the problem flags to point to `ca.crt` and delete the copy.\n\n   [Issue 1350](https://github.com/kubernetes/kubeadm/issues/1350) for kubeadm tracks an bug with the\n   kube-controller-manager being unable to accept a CA bundle.\n\n\n1. Wait for the controller manager to update `ca.crt` in the service account Secrets to include both old and new CA certificates.\n\n    If any Pods are started before the new CA is used by API servers, the new Pods get this update and will trust both\n    old and new CAs.\n\n1. Restart all pods using in-cluster configurations (for example: kube-proxy, CoreDNS, etc) so they can use the\n   updated certificate authority data from Secrets that link to ServiceAccounts.\n\n   * Make sure CoreDNS, kube-proxy, and other Pods using in-cluster configurations are working as expected.\n\n1. Append both old and new CA to the file against `--client-ca-file` and `--kubelet-certificate-authority`\n   flag in the `kube-apiserver` configuration.\n\n1. Append both old and new CA to the file against the `--client-ca-file` flag in the `kube-scheduler` configuration.\n\n1. Update certificates for user accounts by replacing the content of `client-certificate-data` and `client-key-data`\n   respectively.\n\n   For information about creating certificates for individual user accounts, see\n   [Configure certificates for user accounts](/docs/setup/best-practices/certificates/#configure-certificates-for-user-accounts).\n\n   Additionally, update the `certificate-authority-data` section in the kubeconfig files,\n   respectively with Base64-encoded old and new certificate authority data\n\n1. Update the `--root-ca-file` flag for the [cloud-controller-manager](#gloss:cloud-controller-manager) to include\n   both old and new CA, then restart the cloud-controller-manager.\n\n   \n> **Note:** If your cluster does not have a cloud-controller-manager, you can skip this step.\n\n\n1. Follow the steps below in a rolling fashion.\n\n   1. Restart any other\n      [aggregated API servers](/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tls/manual-rotation-of-ca-certificates/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tls/manual-rotation-of-ca-certificates.md"
      },
      "provenance": [
        {
          "source": "tasks/tls/manual-rotation-of-ca-certificates.md",
          "url": "https://kubernetes.io/docs/tasks/tls/manual-rotation-of-ca-certificates/",
          "line_start": null,
          "line_end": null,
          "quote": "Manual Rotation of CA Certificates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rotate-the-ca-certificates-manually",
      "type": "concept",
      "title": "Rotate the CA certificates manually",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/manual-rotation-of-ca-certificates.md",
          "url": "https://kubernetes.io/docs/tasks/tls/manual-rotation-of-ca-certificates/",
          "line_start": 483,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tls/_index",
      "type": "page",
      "title": "TLS",
      "summary": "Understand how to protect traffic within your cluster using Transport Layer Security (TLS).",
      "body": "TLS stands for Transport Layer Security, which is a cryptographic protocol used to secure communication between applications and servers.\n\n**Why it matters**\nTLS ensures the confidentiality and integrity of data exchanged between clients and servers.\n\n**Key facts**\n- TLS uses encryption to protect data in transit\n- TLS provides authentication and verification of identities\n\n**Common pitfalls**\n- Insecure configurations can lead to TLS vulnerabilities",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tls/_index/",
      "meta": {
        "weight": 120,
        "rel_path": "tasks/tls/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/tls/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tls/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "TLS"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/tls/managing-tls-in-a-cluster",
      "type": "page",
      "title": "Manage TLS Certificates in a Cluster",
      "summary": "",
      "body": "\n\nKubernetes provides a `certificates.k8s.io` API, which lets you provision TLS\ncertificates signed by a Certificate Authority (CA) that you control. These CAs\nand certificates can be used by your workloads to establish trust.\n\nThe `certificates.k8s.io` API uses a protocol that is similar to the [ACME\ndraft](https://github.com/ietf-wg-acme/acme/).\n\n\n> **Note:** Certificates created using the `certificates.k8s.io` API are signed by a\n[dedicated CA](#configuring-your-cluster-to-provide-signing). It is possible to configure your cluster to use the cluster root\nCA for this purpose, but you should never rely on this. Do not assume that\nthese certificates will validate against the cluster root CA.\n\n\n\n\n\n## \n\n\n\n\nYou need the `cfssl` tool. You can download `cfssl` from\n[https://github.com/cloudflare/cfssl/releases](https://github.com/cloudflare/cfssl/releases).\n\nSome steps in this page use the `jq` tool. If you don't have `jq`, you can\ninstall it via your operating system's software sources, or fetch it from\n[https://jqlang.github.io/jq/](https://jqlang.github.io/jq/).\n\n\n\n## Trusting TLS in a cluster\n\nTrusting the [custom CA](#configuring-your-cluster-to-provide-signing) from an application running as a pod usually requires\nsome extra application configuration. You will need to add the CA certificate\nbundle to the list of CA certificates that the TLS client or server trusts. For\nexample, you would do this with a Golang TLS config by parsing the certificate\nchain and adding the parsed certificates to the `RootCAs` field in the\n[`tls.Config`](https://pkg.go.dev/crypto/tls#Config) struct.\n\n\n> **Note:** Even though the custom CA certificate may be included in the filesystem (in the\nConfigMap `kube-root-ca.crt`),\nyou should not use that certificate authority for any purpose other than to verify internal\nKubernetes endpoints. An example of an internal Kubernetes endpoint is the\nService named `kubernetes` in the default namespace.\n\nIf you want to use a custom certificate authority for your workloads, you should generate\nthat CA separately, and distribute its CA certificate using a \n[ConfigMap](/docs/tasks/configure-pod-container/configure-pod-configmap) that your pods \nhave access to read.\n\n\n## Requesting a certificate\n\nThe following section demonstrates how to create a TLS certificate for a\nKubernetes service accessed through DNS.\n\n\n> **Note:** This tutorial uses CFSSL: Cloudflare's PKI and TLS toolkit See the Cloudflare blog\narticle [Introducing CFSSL - CloudFlare's PKI toolkit](https://blog.cloudflare.com/introducing-cfssl/) for more information.\n\n\n## Create a certificate signing request\n\nGenerate a private key and certificate signing request (or CSR) by running\nthe following command:\n\n```shell\ncat <<EOF | cfssl genkey - | cfssljson -bare server\n{\n  \"hosts\": [\n    \"my-svc.my-namespace.svc.cluster.local\",\n    \"my-pod.my-namespace.pod.cluster.local\",\n    \"192.0.2.24\",\n    \"10.0.34.2\"\n  ],\n  \"CN\": \"my-pod.my-namespace.pod.cluster.local\",\n  \"key\": {\n    \"algo\": \"ecdsa\",\n    \"size\": 256\n  }\n}\nEOF\n```\n\nWhere `192.0.2.24` is the service's cluster IP,\n`my-svc.my-namespace.svc.cluster.local` is the service's DNS name,\n`10.0.34.2` is the pod's IP and `my-pod.my-namespace.pod.cluster.local`\nis the pod's DNS name. You should see output similar to:\n\n```\n2022/02/01 11:45:32 [INFO] generate received request\n2022/02/01 11:45:32 [INFO] received CSR\n2022/02/01 11:45:32 [INFO] generating key: ecdsa-256\n2022/02/01 11:45:32 [INFO] encoded CSR\n```\n\nThis command generates two files; it generates `server.csr` containing the PEM\nencoded [PKCS#10](https://tools.ietf.org/html/rfc2986) certification request,\nand `server-key.pem` containing the PEM encoded key to the certificate that\nis still to be created.\n\n## Create a CertificateSigningRequest object to send to the Kubernetes API\n\nGenerate a CSR manifest (in YAML) and send it to the API server. You can do that by\nrunning the following command:\n\n```shell\ncat <<EOF | kubectl apply -f -\napiVersion: certificates.k8s.io/\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/tls/managing-tls-in-a-cluster.md"
      },
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "Manage TLS Certificates in a Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:trusting-tls-in-a-cluster",
      "type": "concept",
      "title": "Trusting TLS in a cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 1198,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:requesting-a-certificate",
      "type": "concept",
      "title": "Requesting a certificate",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 2346,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-certificate-signing-request",
      "type": "concept",
      "title": "Create a certificate signing request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 2726,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-certificatesigningrequest-object-to-send-to-the-kubernetes-api",
      "type": "concept",
      "title": "Create a CertificateSigningRequest object to send to the Kubernetes API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 3880,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-the-certificatesigningrequest-approved-get-the-certificate-signing-request-approved",
      "type": "concept",
      "title": "Get the CertificateSigningRequest approved {#get-the-certificate-signing-request-approved}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 5624,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sign-the-certificatesigningrequest-sign-the-certificate-signing-request",
      "type": "concept",
      "title": "Sign the CertificateSigningRequest {#sign-the-certificate-signing-request}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 6577,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:download-the-certificate-and-use-it",
      "type": "concept",
      "title": "Download the certificate and use it",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 9553,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:approving-certificatesigningrequests-approving-certificate-signing-requests",
      "type": "concept",
      "title": "Approving CertificateSigningRequests {#approving-certificate-signing-requests}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 10479,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-your-cluster-to-provide-signing",
      "type": "concept",
      "title": "Configuring your cluster to provide signing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 12289,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-certificate-authority",
      "type": "concept",
      "title": "Create a Certificate Authority",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 6995,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:issue-a-certificate",
      "type": "concept",
      "title": "Issue a certificate",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 7846,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upload-the-signed-certificate",
      "type": "concept",
      "title": "Upload the signed certificate",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 8538,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/tls/certificate-issue-client-csr",
      "type": "page",
      "title": "Issue a Certificate for a Kubernetes API Client Using a CertificateSigningRequest",
      "summary": "",
      "body": "\n\nKubernetes lets you use a public key infrastructure (PKI) to authenticate to your cluster\nas a client.\n\nA few steps are required in order to get a normal user to be able to\nauthenticate and invoke an API. First, this user must have an [X.509](https://www.itu.int/rec/T-REC-X.509) certificate\nissued by an authority that your Kubernetes cluster trusts. The client must then present that certificate to the Kubernetes API.\n\nYou use a [CertificateSigningRequest](/docs/reference/access-authn-authz/certificate-signing-requests/)\nas part of this process, either you or some other principal must approve the request.\n\n\nYou will create a private key, and then get a certificate issued, and finally configure\nthat private key for a client.\n\n## \n\n* \n\n* You need the `kubectl`, `openssl` and `base64` utilities.\n\nThis page assumes you are using Kubernetes [role based access control](#gloss:rbac) (RBAC).\nIf you have alternative or additional security mechanisms around authorization, you need to account for those as well.\n\n\n\n## Create private key\n\nIn this step, you create a private key. You need to keep this private key secret; anyone who has it can impersonate the user.\n\n```shell\n# Create a private key\nopenssl genrsa -out myuser.key 3072\n```\n\n## Create an X.509 certificate signing request {#create-x.509-certificatessigningrequest}\n\n\n> **Note:** This is not the same as the similarly-named CertificateSigningRequest API; the file you generate here goes into the\nCertificateSigningRequest.\n\n\nIt is important to set the CN and O attributes of the CSR. CN is the name of the user, and O is the group that this user will belong to.\nYou can refer to [RBAC](/docs/reference/access-authn-authz/rbac/) for standard groups.\n\n```shell\n# Change the common name \"myuser\" to the actual username that you want to use\nopenssl req -new -key myuser.key -out myuser.csr -subj \"/CN=myuser\"\n```\n\n## Create a Kubernetes CertificateSigningRequest {#create-k8s-certificatessigningrequest}\n\nEncode the CSR document using this command:\n\n```shell\ncat myuser.csr | base64 | tr -d \"\\n\"\n```\n\nCreate a [CertificateSigningRequest](/docs/reference/kubernetes-api/authentication-resources/certificate-signing-request-v1/)\nand submit it to a Kubernetes cluster via kubectl. Below is a snippet of shell that you can use to generate the\nCertificateSigningRequest.\n\n```shell\ncat <<EOF | kubectl apply -f -\napiVersion: certificates.k8s.io/v1\nkind: CertificateSigningRequest\nmetadata:\n  name: myuser # example\nspec:\n  # This is an encoded CSR. Change this to the base64-encoded contents of myuser.csr\n  request: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0KTUlJQ1ZqQ0NBVDRDQVFBd0VURVBNQTBHQTFVRUF3d0dZVzVuWld4aE1JSUJJakFOQmdrcWhraUc5dzBCQVFFRgpBQU9DQVE4QU1JSUJDZ0tDQVFFQTByczhJTHRHdTYxakx2dHhWTTJSVlRWMDNHWlJTWWw0dWluVWo4RElaWjBOCnR2MUZtRVFSd3VoaUZsOFEzcWl0Qm0wMUFSMkNJVXBGd2ZzSjZ4MXF3ckJzVkhZbGlBNVhwRVpZM3ExcGswSDQKM3Z3aGJlK1o2MVNrVHF5SVBYUUwrTWM5T1Nsbm0xb0R2N0NtSkZNMUlMRVI3QTVGZnZKOEdFRjJ6dHBoaUlFMwpub1dtdHNZb3JuT2wzc2lHQ2ZGZzR4Zmd4eW8ybmlneFNVekl1bXNnVm9PM2ttT0x1RVF6cXpkakJ3TFJXbWlECklmMXBMWnoyalVnald4UkhCM1gyWnVVV1d1T09PZnpXM01LaE8ybHEvZi9DdS8wYk83c0x0MCt3U2ZMSU91TFcKcW90blZtRmxMMytqTy82WDNDKzBERHk5aUtwbXJjVDBnWGZLemE1dHJRSURBUUFCb0FBd0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBR05WdmVIOGR4ZzNvK21VeVRkbmFjVmQ1N24zSkExdnZEU1JWREkyQTZ1eXN3ZFp1L1BVCkkwZXpZWFV0RVNnSk1IRmQycVVNMjNuNVJsSXJ3R0xuUXFISUh5VStWWHhsdnZsRnpNOVpEWllSTmU3QlJvYXgKQVlEdUI5STZXT3FYbkFvczFqRmxNUG5NbFpqdU5kSGxpT1BjTU1oNndLaTZzZFhpVStHYTJ2RUVLY01jSVUyRgpvU2djUWdMYTk0aEpacGk3ZnNMdm1OQUxoT045UHdNMGM1dVJVejV4T0dGMUtCbWRSeEgvbUNOS2JKYjFRQm1HCkkwYitEUEdaTktXTU0xMzhIQXdoV0tkNjVoVHdYOWl4V3ZHMkh4TG1WQzg0L1BHT0tWQW9FNkpsYWFHdTlQVmkKdjlOSjVaZlZrcXdCd0hKbzZXdk9xVlA3SVFjZmg3d0drWm89Ci0tLS0tRU5EIENFUlRJRklDQVRFIFJFUVVFU1QtLS0tLQo=\n  signerName: kubernetes.io/kube-apiserver-client\n  expirationSeconds: 86400  # one day\n  usages:\n  - client auth\nEOF\n```\n\nYou can alternatively, create a YAML manifest file and apply it with `kubectl`:\n\n\n\nApply the manifest:\n\n```bash\nkubect\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
      "meta": {
        "weight": 80,
        "rel_path": "tasks/tls/certificate-issue-client-csr.md"
      },
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": null,
          "line_end": null,
          "quote": "Issue a Certificate for a Kubernetes API Client Using a CertificateSigningRequest"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-private-key",
      "type": "concept",
      "title": "Create private key",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 1157,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-an-x-509-certificate-signing-request-create-x-509-certificatessigningrequest",
      "type": "concept",
      "title": "Create an X.509 certificate signing request {#create-x.509-certificatessigningrequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 1380,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-kubernetes-certificatesigningrequest-create-k8s-certificatessigningrequest",
      "type": "concept",
      "title": "Create a Kubernetes CertificateSigningRequest {#create-k8s-certificatessigningrequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 2027,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:approve-the-certificatesigningrequest-approve-certificate-signing-request",
      "type": "concept",
      "title": "Approve the CertificateSigningRequest {#approve-certificate-signing-request}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 4535,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-the-certificate",
      "type": "concept",
      "title": "Get the certificate",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 4800,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-the-certificate-into-kubeconfig",
      "type": "concept",
      "title": "Configure the certificate into kubeconfig",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 5179,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-role-and-rolebinding",
      "type": "concept",
      "title": "Create Role and RoleBinding",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 5693,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-gpus/scheduling-gpus",
      "type": "page",
      "title": "Schedule GPUs",
      "summary": "Configure and schedule GPUs for use as a resource by nodes in a cluster.",
      "body": "\n\n\n\nKubernetes includes **stable** support for managing AMD and NVIDIA GPUs\n(graphical processing units) across different nodes in your cluster, using\n[device plugins](#gloss:device-plugin).\n\nThis page describes how users can consume GPUs, and outlines\nsome of the limitations in the implementation.\n\n\n\n## Using device plugins\n\nKubernetes implements device plugins to let Pods access specialized hardware features such as GPUs.\n\n\n\nAs an administrator, you have to install GPU drivers from the corresponding\nhardware vendor on the nodes and run the corresponding device plugin from the\nGPU vendor. Here are some links to vendors' instructions:\n\n* [AMD](https://github.com/ROCm/k8s-device-plugin#deployment)\n* [Intel](https://intel.github.io/intel-device-plugins-for-kubernetes/cmd/gpu_plugin/README.html)\n* [NVIDIA](https://github.com/NVIDIA/k8s-device-plugin#quick-start)\n\nOnce you have installed the plugin, your cluster exposes a custom schedulable resource such as `amd.com/gpu` or `nvidia.com/gpu`.\n\nYou can consume these GPUs from your containers by requesting\nthe custom GPU resource, the same way you request `cpu` or `memory`.\nHowever, there are some limitations in how you specify the resource\nrequirements for custom devices.\n\nGPUs are only supposed to be specified in the `limits` section, which means:\n* You can specify GPU `limits` without specifying `requests`, because\n  Kubernetes will use the limit as the request value by default.\n* You can specify GPU in both `limits` and `requests` but these two values\n  must be equal.\n* You cannot specify GPU `requests` without specifying `limits`.\n\nHere's an example manifest for a Pod that requests a GPU:\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: example-vector-add\nspec:\n  restartPolicy: OnFailure\n  containers:\n    - name: example-vector-add\n      image: \"registry.example/example-vector-add:v42\"\n      resources:\n        limits:\n          gpu-vendor.example/example-gpu: 1 # requesting 1 GPU\n```\n\n## Manage clusters with different types of GPUs\n\nIf different nodes in your cluster have different types of GPUs, then you\ncan use [Node Labels and Node Selectors](/docs/tasks/configure-pod-container/assign-pods-nodes/)\nto schedule pods to appropriate nodes.\n\nFor example:\n\n```shell\n# Label your nodes with the accelerator type they have.\nkubectl label nodes node1 accelerator=example-gpu-x100\nkubectl label nodes node2 accelerator=other-gpu-k915\n```\n\nThat label key `accelerator` is just an example; you can use\na different label key if you prefer.\n\n## Automatic node labelling {#node-labeller}\n\nAs an administrator, you can automatically discover and label all your GPU enabled nodes\nby deploying Kubernetes [Node Feature Discovery](https://github.com/kubernetes-sigs/node-feature-discovery) (NFD).\nNFD detects the hardware features that are available on each node in a Kubernetes cluster.\nTypically, NFD is configured to advertise those features as node labels, but NFD can also add extended resources, annotations, and node taints.\nNFD is compatible with all [supported versions](/releases/version-skew-policy/#supported-versions) of Kubernetes.\nBy default NFD create the [feature labels](https://kubernetes-sigs.github.io/node-feature-discovery/master/usage/features.html) for the detected features.\nAdministrators can leverage NFD to also taint nodes with specific features, so that only pods that request those features can be scheduled on those nodes.\n\nYou also need a plugin for NFD that adds appropriate labels to your nodes; these might be generic\nlabels or they could be vendor specific. Your GPU vendor may provide a third party\nplugin for NFD; check their documentation for more details.\n\n\napiVersion: v1\nkind: Pod\nmetadata:\n  name: example-vector-add\nspec:\n  restartPolicy: OnFailure\n  # You can use Kubernetes node affinity to schedule this Pod onto a node\n  # that provides the kind of GPU that its container needs in order to work\n  affinity:\n    nodeAffinity:\n      requiredDuringSchedulingIgnoredDuringExecutio\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/manage-gpus/scheduling-gpus.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-gpus/scheduling-gpus.md",
          "url": "https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/",
          "line_start": null,
          "line_end": null,
          "quote": "Schedule GPUs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-device-plugins",
      "type": "concept",
      "title": "Using device plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-gpus/scheduling-gpus.md",
          "url": "https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/",
          "line_start": 426,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manage-clusters-with-different-types-of-gpus",
      "type": "concept",
      "title": "Manage clusters with different types of GPUs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-gpus/scheduling-gpus.md",
          "url": "https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/",
          "line_start": 2119,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:automatic-node-labelling-node-labeller",
      "type": "concept",
      "title": "Automatic node labelling {#node-labeller}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-gpus/scheduling-gpus.md",
          "url": "https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/",
          "line_start": 2670,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/extend-kubernetes/setup-extension-api-server",
      "type": "page",
      "title": "Set up an Extension API Server",
      "summary": "",
      "body": "\n\nSetting up an extension API server to work with the aggregation layer allows the Kubernetes apiserver to be extended with additional APIs, which are not part of the core Kubernetes APIs.\n\n\n\n## \n\n\n \n\n* You must [configure the aggregation layer](/docs/tasks/extend-kubernetes/configure-aggregation-layer/) and enable the apiserver flags.\n\n\n\n\n\n## Set up an extension api-server to work with the aggregation layer\n\nThe following steps describe how to set up an extension-apiserver *at a high level*. These steps apply regardless if you're using YAML configs or using APIs. An attempt is made to specifically identify any differences between the two. For a concrete example of how they can be implemented using YAML configs, you can look at the [sample-apiserver](https://github.com/kubernetes/sample-apiserver/blob/master/README.md) in the Kubernetes repo.\n\nAlternatively, you can use an existing 3rd party solution, such as [apiserver-builder](https://github.com/kubernetes-sigs/apiserver-builder-alpha/blob/master/README.md), which should generate a skeleton and automate all of the following steps for you.\n\n1. Make sure the APIService API is enabled (check `--runtime-config`). It should be on by default, unless it's been deliberately turned off in your cluster.\n1. You may need to make an RBAC rule allowing you to add APIService objects, or get your cluster administrator to make one. (Since API extensions affect the entire cluster, it is not recommended to do testing/development/debug of an API extension in a live cluster.)\n1. Create the Kubernetes namespace you want to run your extension api-service in.\n1. Create/get a CA cert to be used to sign the server cert the extension api-server uses for HTTPS.\n1. Create a server cert/key for the api-server to use for HTTPS. This cert should be signed by the above CA. It should also have a CN of the Kube DNS name. This is derived from the Kubernetes service and be of the form `<service name>.<service name namespace>.svc`\n1. Create a Kubernetes secret with the server cert/key in your namespace.\n1. Create a Kubernetes deployment for the extension api-server and make sure you are loading the secret as a volume. It should contain a reference to a working image of your extension api-server. The deployment should also be in your namespace.\n1. Make sure that your extension-apiserver loads those certs from that volume and that they are used in the HTTPS handshake.\n1. Create a Kubernetes service account in your namespace.\n1. Create a Kubernetes cluster role for the operations you want to allow on your resources.\n1. Create a Kubernetes cluster role binding from the service account in your namespace to the cluster role you created.\n1. Create a Kubernetes cluster role binding from the service account in your namespace to the `system:auth-delegator` cluster role to delegate auth decisions to the Kubernetes core API server.\n1. Create a Kubernetes role binding from the service account in your namespace to the `extension-apiserver-authentication-reader` role. This allows your extension api-server to access the `extension-apiserver-authentication` configmap.\n1. Create a Kubernetes apiservice. The CA cert above should be base64 encoded, stripped of new lines and used as the spec.caBundle in the apiservice. This should not be namespaced. If using the [kube-aggregator API](https://github.com/kubernetes/kube-aggregator/), only pass in the PEM encoded CA bundle because the base 64 encoding is done for you.\n1. Use kubectl to get your resource. When run, kubectl should return \"No resources found.\". This message\nindicates that everything worked but you currently have no objects of that resource type created.\n\n\n## \n\n\n* Walk through the steps to [configure the API aggregation layer](/docs/tasks/extend-kubernetes/configure-aggregation-layer/) and enable the apiserver flags.\n* For a high level overview, see [Extending the Kubernetes API with the aggregation layer](/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregatio\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-extension-api-server/",
      "meta": {
        "weight": 15,
        "rel_path": "tasks/extend-kubernetes/setup-extension-api-server.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-extension-api-server.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-extension-api-server/",
          "line_start": null,
          "line_end": null,
          "quote": "Set up an Extension API Server"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-up-an-extension-api-server-to-work-with-the-aggregation-layer",
      "type": "concept",
      "title": "Set up an extension api-server to work with the aggregation layer",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-extension-api-server.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-extension-api-server/",
          "line_start": 469,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/extend-kubernetes/configure-multiple-schedulers",
      "type": "page",
      "title": "Configure Multiple Schedulers",
      "summary": "",
      "body": "\n\nKubernetes ships with a default scheduler that is described\n[here](/docs/reference/command-line-tools-reference/kube-scheduler/).\nIf the default scheduler does not suit your needs you can implement your own scheduler.\nMoreover, you can even run multiple schedulers simultaneously alongside the default\nscheduler and instruct Kubernetes what scheduler to use for each of your pods. Let's\nlearn how to run multiple schedulers in Kubernetes with an example.\n\nA detailed description of how to implement a scheduler is outside the scope of this\ndocument. Please refer to the kube-scheduler implementation in\n[pkg/scheduler](https://github.com/kubernetes/kubernetes/tree/master/pkg/scheduler)\nin the Kubernetes source directory for a canonical example.\n\n## \n\n \n\n\n\n## Package the scheduler\n\nPackage your scheduler binary into a container image. For the purposes of this example,\nyou can use the default scheduler (kube-scheduler) as your second scheduler.\nClone the [Kubernetes source code from GitHub](https://github.com/kubernetes/kubernetes)\nand build the source.\n\n```shell\ngit clone https://github.com/kubernetes/kubernetes.git\ncd kubernetes\nmake\n```\n\nCreate a container image containing the kube-scheduler binary. Here is the `Dockerfile`\nto build the image:\n\n```docker\nFROM busybox\nADD ./_output/local/bin/linux/amd64/kube-scheduler /usr/local/bin/kube-scheduler\n```\n\nSave the file as `Dockerfile`, build the image and push it to a registry. This example\npushes the image to\n[Google Container Registry (GCR)](https://cloud.google.com/container-registry/).\nFor more details, please read the GCR\n[documentation](https://cloud.google.com/container-registry/docs/). Alternatively\nyou can also use the [docker hub](https://hub.docker.com/search?q=). For more details\nrefer to the docker hub [documentation](https://docs.docker.com/docker-hub/repos/create/#create-a-repository).\n\n```shell\ndocker build -t gcr.io/my-gcp-project/my-kube-scheduler:1.0 .     # The image name and the repository\ngcloud docker -- push gcr.io/my-gcp-project/my-kube-scheduler:1.0 # used in here is just an example\n```\n\n## Define a Kubernetes Deployment for the scheduler\n\nNow that you have your scheduler in a container image, create a pod\nconfiguration for it and run it in your Kubernetes cluster. But instead of creating a pod\ndirectly in the cluster, you can use a [Deployment](/docs/concepts/workloads/controllers/deployment/)\nfor this example. A [Deployment](/docs/concepts/workloads/controllers/deployment/) manages a\n[Replica Set](/docs/concepts/workloads/controllers/replicaset/) which in turn manages the pods,\nthereby making the scheduler resilient to failures. Here is the deployment\nconfig. Save it as `my-scheduler.yaml`:\n\n\n\nIn the above manifest, you use a [KubeSchedulerConfiguration](/docs/reference/scheduling/config/)\nto customize the behavior of your scheduler implementation. This configuration has been passed to\nthe `kube-scheduler` during initialization with the `--config` option. The `my-scheduler-config` ConfigMap stores the configuration file. The Pod of the`my-scheduler` Deployment mounts the `my-scheduler-config` ConfigMap as a volume.\n\nIn the aforementioned Scheduler Configuration, your scheduler implementation is represented via\na [KubeSchedulerProfile](/docs/reference/config-api/kube-scheduler-config.v1/#kubescheduler-config-k8s-io-v1-KubeSchedulerProfile).\n\n> **Note:** To determine if a scheduler is responsible for scheduling a specific Pod, the `spec.schedulerName` field in a \nPodTemplate or Pod manifest must match the `schedulerName` field of the `KubeSchedulerProfile`.\nAll schedulers running in the cluster must have unique names.\n\n\nAlso, note that you create a dedicated service account `my-scheduler` and bind the ClusterRole\n`system:kube-scheduler` to it so that it can acquire the same privileges as `kube-scheduler`.\n\nPlease see the\n[kube-scheduler documentation](/docs/reference/command-line-tools-reference/kube-scheduler/) for\ndetailed description of other command line a\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/extend-kubernetes/configure-multiple-schedulers.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure Multiple Schedulers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:package-the-scheduler",
      "type": "concept",
      "title": "Package the scheduler",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 886,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-a-kubernetes-deployment-for-the-scheduler",
      "type": "concept",
      "title": "Define a Kubernetes Deployment for the scheduler",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 2217,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:run-the-second-scheduler-in-the-cluster",
      "type": "concept",
      "title": "Run the second scheduler in the cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 4379,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specify-schedulers-for-pods",
      "type": "concept",
      "title": "Specify schedulers for pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 5896,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-leader-election",
      "type": "concept",
      "title": "Enable leader election",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 4992,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verifying-that-the-pods-were-scheduled-using-the-desired-schedulers",
      "type": "concept",
      "title": "Verifying that the pods were scheduled using the desired schedulers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 7526,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/extend-kubernetes/http-proxy-access-api",
      "type": "page",
      "title": "Use an HTTP Proxy to Access the Kubernetes API",
      "summary": "",
      "body": "\nThis page shows how to use an HTTP proxy to access the Kubernetes API.\n\n\n## \n\n\n \n\nIf you do not already have an application running in your cluster, start\na Hello world application by entering this command:\n\n```shell\nkubectl create deployment hello-app --image=gcr.io/google-samples/hello-app:2.0 --port=8080\n```\n\n\n\n## Using kubectl to start a proxy server\n\nThis command starts a proxy to the Kubernetes API server:\n\n    kubectl proxy --port=8080\n\n## Exploring the Kubernetes API\n\nWhen the proxy server is running, you can explore the API using `curl`, `wget`,\nor a browser.\n\nGet the API versions:\n\n    curl http://localhost:8080/api/\n\nThe output should look similar to this:\n\n    {\n      \"kind\": \"APIVersions\",\n      \"versions\": [\n        \"v1\"\n      ],\n      \"serverAddressByClientCIDRs\": [\n        {\n          \"clientCIDR\": \"0.0.0.0/0\",\n          \"serverAddress\": \"10.0.2.15:8443\"\n        }\n      ]\n    }\n\nGet a list of pods:\n\n    curl http://localhost:8080/api/v1/namespaces/default/pods\n\nThe output should look similar to this:\n\n    {\n      \"kind\": \"PodList\",\n      \"apiVersion\": \"v1\",\n      \"metadata\": {\n        \"resourceVersion\": \"33074\"\n      },\n      \"items\": [\n        {\n          \"metadata\": {\n            \"name\": \"kubernetes-bootcamp-2321272333-ix8pt\",\n            \"generateName\": \"kubernetes-bootcamp-2321272333-\",\n            \"namespace\": \"default\",\n            \"uid\": \"ba21457c-6b1d-11e6-85f7-1ef9f1dab92b\",\n            \"resourceVersion\": \"33003\",\n            \"creationTimestamp\": \"2016-08-25T23:43:30Z\",\n            \"labels\": {\n              \"pod-template-hash\": \"2321272333\",\n              \"run\": \"kubernetes-bootcamp\"\n            },\n            ...\n    }\n\n## \n\nLearn more about [kubectl proxy](/docs/reference/generated/kubectl/kubectl-commands#proxy).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/http-proxy-access-api/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/extend-kubernetes/http-proxy-access-api.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/http-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/http-proxy-access-api/",
          "line_start": null,
          "line_end": null,
          "quote": "Use an HTTP Proxy to Access the Kubernetes API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-kubectl-to-start-a-proxy-server",
      "type": "concept",
      "title": "Using kubectl to start a proxy server",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/http-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/http-proxy-access-api/",
          "line_start": 443,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exploring-the-kubernetes-api",
      "type": "concept",
      "title": "Exploring the Kubernetes API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/http-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/http-proxy-access-api/",
          "line_start": 575,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/extend-kubernetes/setup-konnectivity",
      "type": "page",
      "title": "Set up Konnectivity service",
      "summary": "",
      "body": "\n\nThe Konnectivity service provides a TCP level proxy for the control plane to cluster\ncommunication.\n\n## \n\nYou need to have a Kubernetes cluster, and the kubectl command-line tool must\nbe configured to communicate with your cluster. It is recommended to run this\ntutorial on a cluster with at least two nodes that are not acting as control\nplane hosts. If you do not already have a cluster, you can create one by using\n[minikube](https://minikube.sigs.k8s.io/docs/tutorials/multi_node/).\n\n\n\n## Configure the Konnectivity service\n\nThe following steps require an egress configuration, for example:\n\n\n\nYou need to configure the API Server to use the Konnectivity service\nand direct the network traffic to the cluster nodes:\n\n1. Make sure that\n[Service Account Token Volume Projection](/docs/tasks/configure-pod-container/configure-service-account/#serviceaccount-token-volume-projection)\nfeature enabled in your cluster. It is enabled by default since Kubernetes v1.20.\n1. Create an egress configuration file such as `admin/konnectivity/egress-selector-configuration.yaml`.\n1. Set the `--egress-selector-config-file` flag of the API Server to the path of\nyour API Server egress configuration file.\n1. If you use UDS connection, add volumes config to the kube-apiserver:\n   ```yaml\n   spec:\n     containers:\n       volumeMounts:\n       - name: konnectivity-uds\n         mountPath: /etc/kubernetes/konnectivity-server\n         readOnly: false\n     volumes:\n     - name: konnectivity-uds\n       hostPath:\n         path: /etc/kubernetes/konnectivity-server\n         type: DirectoryOrCreate\n   ```\n\nGenerate or obtain a certificate and kubeconfig for konnectivity-server.\nFor example, you can use the OpenSSL command line tool to issue a X.509 certificate,\nusing the cluster CA certificate `/etc/kubernetes/pki/ca.crt` from a control-plane host.\n\n```bash\nopenssl req -subj \"/CN=system:konnectivity-server\" -new -newkey rsa:2048 -noenc -out konnectivity.csr -keyout konnectivity.key\nopenssl x509 -req -in konnectivity.csr -CA /etc/kubernetes/pki/ca.crt -CAkey /etc/kubernetes/pki/ca.key -CAcreateserial -out konnectivity.crt -days 375 -sha256\nSERVER=$(kubectl config view -o jsonpath='{.clusters..server}')\nkubectl --kubeconfig /etc/kubernetes/konnectivity-server.conf config set-credentials system:konnectivity-server --client-certificate konnectivity.crt --client-key konnectivity.key --embed-certs=true\nkubectl --kubeconfig /etc/kubernetes/konnectivity-server.conf config set-cluster kubernetes --server \"$SERVER\" --certificate-authority /etc/kubernetes/pki/ca.crt --embed-certs=true\nkubectl --kubeconfig /etc/kubernetes/konnectivity-server.conf config set-context system:konnectivity-server@kubernetes --cluster kubernetes --user system:konnectivity-server\nkubectl --kubeconfig /etc/kubernetes/konnectivity-server.conf config use-context system:konnectivity-server@kubernetes\nrm -f konnectivity.crt konnectivity.key konnectivity.csr\n```\n\nNext, you need to deploy the Konnectivity server and agents.\n[kubernetes-sigs/apiserver-network-proxy](https://github.com/kubernetes-sigs/apiserver-network-proxy)\nis a reference implementation.\n\nDeploy the Konnectivity server on your control plane node. The provided\n`konnectivity-server.yaml` manifest assumes\nthat the Kubernetes components are deployed as a [static Pod](#gloss:static-pod) in your cluster. If not, you can deploy the Konnectivity\nserver as a DaemonSet.\n\n\n\nThen deploy the Konnectivity agents in your cluster:\n\n\n\nLast, if RBAC is enabled in your cluster, create the relevant RBAC rules:\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-konnectivity/",
      "meta": {
        "weight": 70,
        "rel_path": "tasks/extend-kubernetes/setup-konnectivity.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-konnectivity.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-konnectivity/",
          "line_start": null,
          "line_end": null,
          "quote": "Set up Konnectivity service"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-the-konnectivity-service",
      "type": "concept",
      "title": "Configure the Konnectivity service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-konnectivity.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-konnectivity/",
          "line_start": 555,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/extend-kubernetes/socks5-proxy-access-api",
      "type": "page",
      "title": "Use a SOCKS5 Proxy to Access the Kubernetes API",
      "summary": "",
      "body": "\n\n\n\nThis page shows how to use a SOCKS5 proxy to access the API of a remote Kubernetes cluster.\nThis is useful when the cluster you want to access does not expose its API directly on the public internet.\n\n## \n\n \n\nYou need SSH client software (the `ssh` tool), and an SSH service running on the remote server.\nYou must be able to log in to the SSH service on the remote server.\n\n\n\n## Task context\n\n\nThis example tunnels traffic using SSH, with the SSH client and server acting as a SOCKS proxy.\nYou can instead use any other kind of [SOCKS5](https://en.wikipedia.org/wiki/SOCKS#SOCKS5) proxies.\n\n\nFigure 1 represents what you're going to achieve in this task.\n\n* You have a client computer, referred to as local in the steps ahead, from where you're going to create requests to talk to the Kubernetes API.\n* The Kubernetes server/API is hosted on a remote server.\n* You will use SSH client and server software to create a secure SOCKS5 tunnel between the local and\n  the remote server. The HTTPS traffic between the client and the Kubernetes API will flow over the SOCKS5\n  tunnel, which is itself tunnelled over SSH.\n\n\ngraph LR;\n\n  subgraph local[Local client machine]\n  client([client])-. local <br> traffic .->  local_ssh[Local SSH <br> SOCKS5 proxy];\n  end\n  local_ssh[SSH <br>SOCKS5 <br> proxy]-- SSH Tunnel -->sshd\n  \n  subgraph remote[Remote server]\n  sshd[SSH <br> server]-- local traffic -->service1;\n  end\n  client([client])-. proxied HTTPs traffic <br> going through the proxy .->service1[Kubernetes API];\n\n  classDef plain fill:#ddd,stroke:#fff,stroke-width:4px,color:#000;\n  classDef k8s fill:#326ce5,stroke:#fff,stroke-width:4px,color:#fff;\n  classDef cluster fill:#fff,stroke:#bbb,stroke-width:2px,color:#326ce5;\n  class ingress,service1,service2,pod1,pod2,pod3,pod4 k8s;\n  class client plain;\n  class cluster cluster;\n\nFigure 1. SOCKS5 tutorial components\n\n## Using ssh to create a SOCKS5 proxy\n\nThe following command starts a SOCKS5 proxy between your client machine and the remote SOCKS server:\n\n```shell\n# The SSH tunnel continues running in the foreground after you run this\nssh -D 1080 -q -N username@kubernetes-remote-server.example\n```\n\nThe SOCKS5 proxy lets you connect to your cluster's API server based on the following configuration: \n* `-D 1080`: opens a SOCKS proxy on local port :1080.\n* `-q`: quiet mode. Causes most warning and diagnostic messages to be suppressed.\n* `-N`: Do not execute a remote command. Useful for just forwarding ports.\n* `username@kubernetes-remote-server.example`: the remote SSH server behind which the Kubernetes cluster \n  is running (eg: a bastion host).\n\n## Client configuration\n\nTo access the Kubernetes API server through the proxy you must instruct `kubectl` to send queries through\nthe `SOCKS` proxy we created earlier. Do this by either setting the appropriate environment variable, \nor via the `proxy-url` attribute in the kubeconfig file. Using an environment variable: \n\n```shell\nexport HTTPS_PROXY=socks5://localhost:1080\n```\n\nTo always use this setting on a specific `kubectl` context, specify the `proxy-url` attribute in the relevant \n`cluster` entry within the `~/.kube/config` file. For example:\n\n```yaml\napiVersion: v1\nclusters:\n- cluster:\n    certificate-authority-data: LRMEMMW2 # shortened for readability \n    server: https://<API_SERVER_IP_ADDRESS>:6443  # the \"Kubernetes API\" server, in other words the IP address of kubernetes-remote-server.example\n    proxy-url: socks5://localhost:1080   # the \"SSH SOCKS5 proxy\" in the diagram above\n  name: default\ncontexts:\n- context:\n    cluster: default\n    user: default\n  name: default\ncurrent-context: default\nkind: Config\npreferences: {}\nusers:\n- name: default\n  user:\n    client-certificate-data: LS0tLS1CR== # shortened for readability\n    client-key-data: LS0tLS1CRUdJT=      # shortened for readability\n```\n\nOnce you have created the tunnel via the ssh command mentioned earlier, and defined either the environment variable or \nthe `proxy-url` attribute, you can interac\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
      "meta": {
        "weight": 42,
        "rel_path": "tasks/extend-kubernetes/socks5-proxy-access-api.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/socks5-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
          "line_start": null,
          "line_end": null,
          "quote": "Use a SOCKS5 Proxy to Access the Kubernetes API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:task-context",
      "type": "concept",
      "title": "Task context",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/socks5-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
          "line_start": 566,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-ssh-to-create-a-socks5-proxy",
      "type": "concept",
      "title": "Using ssh to create a SOCKS5 proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/socks5-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
          "line_start": 2114,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:client-configuration",
      "type": "concept",
      "title": "Client configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/socks5-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
          "line_start": 2856,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/extend-kubernetes/_index",
      "type": "page",
      "title": "Extend Kubernetes",
      "summary": "Understand advanced ways to adapt your Kubernetes cluster to the needs of your work environment.",
      "body": "Extending Kubernetes allows developers to customize and tailor the platform to meet specific needs.\n\n**Why it matters**\nExtension enables users to add new features, functionality, and capabilities to the core Kubernetes system.\n\n**Key facts**\n- Extensions can be achieved through plugins, APIs, or custom code\n\n**Common pitfalls**\n- Inadequate testing and validation can lead to extension instability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/_index/",
      "meta": {
        "weight": 110,
        "rel_path": "tasks/extend-kubernetes/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Extend Kubernetes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "type": "page",
      "title": "Configure the Aggregation Layer",
      "summary": "",
      "body": "\n\nConfiguring the [aggregation layer](/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/)\nallows the Kubernetes apiserver to be extended with additional APIs, which are not\npart of the core Kubernetes APIs.\n\n## \n\n \n\n\n> **Note:** There are a few setup requirements for getting the aggregation layer working in\nyour environment to support mutual TLS auth between the proxy and extension apiservers.\nKubernetes and the kube-apiserver have multiple CAs, so make sure that the proxy is\nsigned by the aggregation layer CA and not by something else, like the Kubernetes general CA.\n\n\n\n> **Caution:** Reusing the same CA for different client types can negatively impact the cluster's\nability to function. For more information, see [CA Reusage and Conflicts](#ca-reusage-and-conflicts).\n\n\n\n\n## Authentication Flow\n\nUnlike Custom Resource Definitions (CRDs), the Aggregation API involves\nanother server - your Extension apiserver - in addition to the standard Kubernetes apiserver.\nThe Kubernetes apiserver will need to communicate with your extension apiserver,\nand your extension apiserver will need to communicate with the Kubernetes apiserver.\nIn order for this communication to be secured, the Kubernetes apiserver uses x509\ncertificates to authenticate itself to the extension apiserver.\n\nThis section describes how the authentication and authorization flows work,\nand how to configure them.\n\nThe high-level flow is as follows:\n\n1. Kubernetes apiserver: authenticate the requesting user and authorize their\n   rights to the requested API path.\n2. Kubernetes apiserver: proxy the request to the extension apiserver\n3. Extension apiserver: authenticate the request from the Kubernetes apiserver\n4. Extension apiserver: authorize the request from the original user\n5. Extension apiserver: execute\n\nThe rest of this section describes these steps in detail.\n\nThe flow can be seen in the following diagram.\n\n![aggregation auth flows](/images/docs/aggregation-api-auth-flow.png)\n\nThe source for the above swimlanes can be found in the source of this document.\n\n\n\n### Kubernetes Apiserver Authentication and Authorization\n\nA request to an API path that is served by an extension apiserver begins\nthe same way as all API requests: communication to the Kubernetes apiserver.\nThis path already has been registered with the Kubernetes apiserver by the extension apiserver.\n\nThe user communicates with the Kubernetes apiserver, requesting access to the path.\nThe Kubernetes apiserver uses standard authentication and authorization configured\nwith the Kubernetes apiserver to authenticate the user and authorize access to the specific path.\n\nFor an overview of authenticating to a Kubernetes cluster, see\n[\"Authenticating to a Cluster\"](/docs/reference/access-authn-authz/authentication/).\nFor an overview of authorization of access to Kubernetes cluster resources, see\n[\"Authorization Overview\"](/docs/reference/access-authn-authz/authorization/).\n\nEverything to this point has been standard Kubernetes API requests, authentication and authorization.\n\nThe Kubernetes apiserver now is prepared to send the request to the extension apiserver.\n\n### Kubernetes Apiserver Proxies the Request\n\nThe Kubernetes apiserver now will send, or proxy, the request to the extension\napiserver that registered to handle the request. In order to do so,\nit needs to know several things:\n\n1. How should the Kubernetes apiserver authenticate to the extension apiserver,\n   informing the extension apiserver that the request, which comes over the network,\n   is coming from a valid Kubernetes apiserver?\n2. How should the Kubernetes apiserver inform the extension apiserver of the\n   username and group for which the original request was authenticated?\n\nIn order to provide for these two, you must configure the Kubernetes apiserver using several flags.\n\n#### Kubernetes Apiserver Client Authentication\n\nThe Kubernetes apiserver connects to the extension apiserver over TLS,\nauthenticating itself using a client certific\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/extend-kubernetes/configure-aggregation-layer.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure the Aggregation Layer"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authentication-flow",
      "type": "concept",
      "title": "Authentication Flow",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 956,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-kubernetes-apiserver-flags",
      "type": "concept",
      "title": "Enable Kubernetes Apiserver flags",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 11327,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-apiserver-authentication-and-authorization",
      "type": "concept",
      "title": "Kubernetes Apiserver Authentication and Authorization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 4545,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-apiserver-proxies-the-request",
      "type": "concept",
      "title": "Kubernetes Apiserver Proxies the Request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 5618,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extension-apiserver-authenticates-the-request",
      "type": "concept",
      "title": "Extension Apiserver Authenticates the Request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 9061,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extension-apiserver-authorizes-the-request",
      "type": "concept",
      "title": "Extension Apiserver Authorizes the Request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 10537,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extension-apiserver-executes",
      "type": "concept",
      "title": "Extension Apiserver Executes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 11208,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ca-reusage-and-conflicts",
      "type": "concept",
      "title": "CA Reusage and Conflicts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 11891,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:register-apiservice-objects",
      "type": "concept",
      "title": "Register APIService objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 14707,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "type": "page",
      "title": "Versions in CustomResourceDefinitions",
      "summary": "",
      "body": "\nThis page explains how to add versioning information to\n[CustomResourceDefinitions](/docs/reference/kubernetes-api/extend-resources/custom-resource-definition-v1/), to indicate the stability\nlevel of your CustomResourceDefinitions or advance your API to a new version with conversion between API representations. It also describes how to upgrade an object from one version to another.\n\n## \n\n\n\nYou should have an initial understanding of [custom resources](/docs/concepts/extend-kubernetes/api-extension/custom-resources/).\n\n\n\n\n\n## Overview\n\nThe CustomResourceDefinition API provides a workflow for introducing and upgrading\nto new versions of a CustomResourceDefinition.\n\nWhen a CustomResourceDefinition is created, the first version is set in the\nCustomResourceDefinition `spec.versions` list to an appropriate stability level\nand a version number. For example `v1beta1` would indicate that the first\nversion is not yet stable. All custom resource objects will initially be stored\nat this version.\n\nOnce the CustomResourceDefinition is created, clients may begin using the\n`v1beta1` API.\n\nLater it might be necessary to add new version such as `v1`.\n\nAdding a new version:\n\n1. Pick a conversion strategy. Since custom resource objects need the ability to\n   be served at both versions, that means they will sometimes be served in a\n   different version than the one stored. To make this possible, the custom resource objects must sometimes be converted between the\n   version they are stored at and the version they are served at. If the\n   conversion involves schema changes and requires custom logic, a conversion\n   webhook should be used. If there are no schema changes, the default `None`\n   conversion strategy may be used and only the `apiVersion` field will be\n   modified when serving different versions.\n1. If using conversion webhooks, create and deploy the conversion webhook. See\n   the [Webhook conversion](#webhook-conversion) for more details.\n1. Update the CustomResourceDefinition to include the new version in the\n   `spec.versions` list with `served:true`.  Also, set `spec.conversion` field\n   to the selected conversion strategy. If using a conversion webhook, configure\n   `spec.conversion.webhookClientConfig` field to call the webhook.\n\nOnce the new version is added, clients may incrementally migrate to the new\nversion. It is perfectly safe for some clients to use the old version while\nothers use the new version.\n\nMigrate stored objects to the new version:\n\n1. See the [upgrade existing objects to a new stored version](#upgrade-existing-objects-to-a-new-stored-version) section.\n\nIt is safe for clients to use both the old and new version before, during and\nafter upgrading the objects to a new stored version.\n\nRemoving an old version:\n\n1. Ensure all clients are fully migrated to the new version. The kube-apiserver\n   logs can be reviewed to help identify any clients that are still accessing via\n   the old version.\n1. Set `served` to `false` for the old version in the `spec.versions` list. If\n   any clients are still unexpectedly using the old version they may begin reporting\n   errors attempting to access the custom resource objects at the old version.\n   If this occurs, switch back to using `served:true` on the old version, migrate the \n   remaining clients to the new version and repeat this step.\n1. Ensure the [upgrade of existing objects to the new stored version](#upgrade-existing-objects-to-a-new-stored-version) step has been completed.\n   1. Verify that the `storage` is set to `true` for the new version in the `spec.versions` list in the CustomResourceDefinition.\n   1. Verify that the old version is no longer listed in the CustomResourceDefinition `status.storedVersions`.\n1. Remove the old version from the CustomResourceDefinition `spec.versions` list.\n1. Drop conversion support for the old version in conversion webhooks.\n\n## Specify multiple versions\n\nThe CustomResourceDefinition API `versions` field can be used to support multiple ver\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": null,
          "line_end": null,
          "quote": "Versions in CustomResourceDefinitions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specify-multiple-versions",
      "type": "concept",
      "title": "Specify multiple versions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 4011,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhook-conversion",
      "type": "concept",
      "title": "Webhook conversion",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 15053,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhook-request-and-response",
      "type": "concept",
      "title": "Webhook request and response",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 27832,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-reading-and-updating-versioned-customresourcedefinition-objects",
      "type": "concept",
      "title": "Writing, reading, and updating versioned CustomResourceDefinition objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 37535,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-existing-objects-to-a-new-stored-version",
      "type": "concept",
      "title": "Upgrade existing objects to a new stored version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 40470,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:version-priority",
      "type": "concept",
      "title": "Version priority",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 8969,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:version-deprecation",
      "type": "concept",
      "title": "Version deprecation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 11019,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:version-removal",
      "type": "concept",
      "title": "Version removal",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 14113,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:write-a-conversion-webhook-server",
      "type": "concept",
      "title": "Write a conversion webhook server",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 16275,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploy-the-conversion-webhook-service",
      "type": "concept",
      "title": "Deploy the conversion webhook service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 18174,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-customresourcedefinition-to-use-conversion-webhooks",
      "type": "concept",
      "title": "Configure CustomResourceDefinition to use conversion webhooks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 19009,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:contacting-the-webhook",
      "type": "concept",
      "title": "Contacting the webhook",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 24017,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:url",
      "type": "concept",
      "title": "URL",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 24419,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-reference",
      "type": "concept",
      "title": "Service Reference",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 26253,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:request",
      "type": "concept",
      "title": "Request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 27865,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:response",
      "type": "concept",
      "title": "Response",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 32453,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:previous-storage-versions",
      "type": "concept",
      "title": "Previous storage versions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 40134,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "type": "page",
      "title": "Extend the Kubernetes API with CustomResourceDefinitions",
      "summary": "",
      "body": "\nThis page shows how to install a\n[custom resource](/docs/concepts/extend-kubernetes/api-extension/custom-resources/)\ninto the Kubernetes API by creating a\n[CustomResourceDefinition](/docs/reference/generated/kubernetes-api//#customresourcedefinition-v1-apiextensions-k8s-io).\n\n## \n\n \nIf you are using an older version of Kubernetes that is still supported, switch to\nthe documentation for that version to see advice that is relevant for your cluster.\n\n\n\n## Create a CustomResourceDefinition\n\nWhen you create a new CustomResourceDefinition (CRD), the Kubernetes API Server\ncreates a new RESTful resource path for each version you specify. The custom\nresource created from a CRD object can be either namespaced or cluster-scoped,\nas specified in the CRD's `spec.scope` field. As with existing built-in\nobjects, deleting a namespace deletes all custom objects in that namespace.\nCustomResourceDefinitions themselves are non-namespaced and are available to\nall namespaces.\n\nFor example, if you save the following CustomResourceDefinition to `resourcedefinition.yaml`:\n\n```yaml\napiVersion: apiextensions.k8s.io/v1\nkind: CustomResourceDefinition\nmetadata:\n  # name must match the spec fields below, and be in the form: <plural>.<group>\n  name: crontabs.stable.example.com\nspec:\n  # group name to use for REST API: /apis/<group>/<version>\n  group: stable.example.com\n  # list of versions supported by this CustomResourceDefinition\n  versions:\n    - name: v1\n      # Each version can be enabled/disabled by Served flag.\n      served: true\n      # One and only one version must be marked as the storage version.\n      storage: true\n      schema:\n        openAPIV3Schema:\n          type: object\n          properties:\n            spec:\n              type: object\n              properties:\n                cronSpec:\n                  type: string\n                image:\n                  type: string\n                replicas:\n                  type: integer\n  # either Namespaced or Cluster\n  scope: Namespaced\n  names:\n    # plural name to be used in the URL: /apis/<group>/<version>/<plural>\n    plural: crontabs\n    # singular name to be used as an alias on the CLI and for display\n    singular: crontab\n    # kind is normally the CamelCased singular type. Your resource manifests use this.\n    kind: CronTab\n    # shortNames allow shorter string to match your resource on the CLI\n    shortNames:\n    - ct\n```\n\nand create it:\n\n```shell\nkubectl apply -f resourcedefinition.yaml\n```\n\nThen a new namespaced RESTful API endpoint is created at:\n\n```\n/apis/stable.example.com/v1/namespaces/*/crontabs/...\n```\n\nThis endpoint URL can then be used to create and manage custom objects.\nThe `kind` of these objects will be `CronTab` from the spec of the\nCustomResourceDefinition object you created above.\n\nIt might take a few seconds for the endpoint to be created.\nYou can watch the `Established` condition of your CustomResourceDefinition\nto be true or watch the discovery information of the API server for your\nresource to show up.\n\n## Create custom objects\n\nAfter the CustomResourceDefinition object has been created, you can create\ncustom objects. Custom objects can contain custom fields. These fields can\ncontain arbitrary JSON.\nIn the following example, the `cronSpec` and `image` custom fields are set in a\ncustom object of kind `CronTab`.  The kind `CronTab` comes from the spec of the\nCustomResourceDefinition object you created above.\n\nIf you save the following YAML to `my-crontab.yaml`:\n\n```yaml\napiVersion: \"stable.example.com/v1\"\nkind: CronTab\nmetadata:\n  name: my-new-cron-object\nspec:\n  cronSpec: \"* * * * */5\"\n  image: my-awesome-cron-image\n```\n\nand create it:\n\n```shell\nkubectl apply -f my-crontab.yaml\n```\n\nYou can then manage your CronTab objects using kubectl. For example:\n\n```shell\nkubectl get crontab\n```\n\nShould print a list like this:\n\n```none\nNAME                 AGE\nmy-new-cron-object   6s\n```\n\nResource names are not case-sensitive when using kubectl, and you can use either\nthe singula\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": null,
          "line_end": null,
          "quote": "Extend the Kubernetes API with CustomResourceDefinitions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-customresourcedefinition",
      "type": "concept",
      "title": "Create a CustomResourceDefinition",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 604,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-custom-objects",
      "type": "concept",
      "title": "Create custom objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 3167,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-a-customresourcedefinition",
      "type": "concept",
      "title": "Delete a CustomResourceDefinition",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 5103,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specifying-a-structural-schema",
      "type": "concept",
      "title": "Specifying a structural schema",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 5622,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serving-multiple-versions-of-a-crd",
      "type": "concept",
      "title": "Serving multiple versions of a CRD",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 14293,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:advanced-topics",
      "type": "concept",
      "title": "Advanced topics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 14626,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:field-pruning",
      "type": "concept",
      "title": "Field pruning",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 8969,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:intorstring",
      "type": "concept",
      "title": "IntOrString",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 12470,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rawextension",
      "type": "concept",
      "title": "RawExtension",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 13336,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:finalizers",
      "type": "concept",
      "title": "Finalizers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 14646,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validation",
      "type": "concept",
      "title": "Validation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 15936,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validation-ratcheting",
      "type": "concept",
      "title": "Validation ratcheting",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 20360,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validation-rules",
      "type": "concept",
      "title": "Validation rules",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 23483,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defaulting",
      "type": "concept",
      "title": "Defaulting",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 53330,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:publish-validation-schema-in-openapi",
      "type": "concept",
      "title": "Publish Validation Schema in OpenAPI",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 56891,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:additional-printer-columns",
      "type": "concept",
      "title": "Additional printer columns",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 58815,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:field-selectors",
      "type": "concept",
      "title": "Field selectors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 61866,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:subresources",
      "type": "concept",
      "title": "Subresources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 64360,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:categories",
      "type": "concept",
      "title": "Categories",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 70186,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/extend-kubernetes/custom-resources/_index",
      "type": "page",
      "title": "Use Custom Resources",
      "summary": "Custom Resources allow developers to define and manage custom objects within the Kubernetes cluster.",
      "body": "Custom Resources allow developers to define and manage custom objects within the Kubernetes cluster.\n\n**Why it matters**\nCRs provide a flexible way to extend the Kubernetes API and support new use cases.\n\n**Key facts**\n- CRs are defined using YAML or JSON files\n\n**Common pitfalls**\n- Incorrect CR definitions can lead to API server errors",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/_index/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/extend-kubernetes/custom-resources/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/_index.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Use Custom Resources"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/job/automated-tasks-with-cron-jobs",
      "type": "page",
      "title": "Running Automated Tasks with a CronJob",
      "summary": "",
      "body": "\n\nThis page shows how to run automated tasks using Kubernetes [CronJob](#gloss:cronjob) object.\n\n## \n\n* \n\n\n\n## Creating a CronJob {#creating-a-cron-job}\n\nCron jobs require a config file.\nHere is a manifest for a CronJob that runs a simple demonstration task every minute:\n\n\n\nRun the example CronJob by using this command:\n\n```shell\nkubectl create -f https://k8s.io/examples/application/job/cronjob.yaml\n```\nThe output is similar to this:\n\n```\ncronjob.batch/hello created\n```\n\nAfter creating the cron job, get its status using this command:\n\n```shell\nkubectl get cronjob hello\n```\n\nThe output is similar to this:\n\n```\nNAME    SCHEDULE      SUSPEND   ACTIVE   LAST SCHEDULE   AGE\nhello   */1 * * * *   False     0        <none>          10s\n```\n\nAs you can see from the results of the command, the cron job has not scheduled or run any jobs yet.\n[Watch](#gloss:watch) for the job to be created in around one minute:\n\n```shell\nkubectl get jobs --watch\n```\nThe output is similar to this:\n\n```\nNAME               COMPLETIONS   DURATION   AGE\nhello-4111706356   0/1                      0s\nhello-4111706356   0/1           0s         0s\nhello-4111706356   1/1           5s         5s\n```\n\nNow you've seen one running job scheduled by the \"hello\" cron job.\nYou can stop watching the job and view the cron job again to see that it scheduled the job:\n\n```shell\nkubectl get cronjob hello\n```\n\nThe output is similar to this:\n\n```\nNAME    SCHEDULE      SUSPEND   ACTIVE   LAST SCHEDULE   AGE\nhello   */1 * * * *   False     0        50s             75s\n```\n\nYou should see that the cron job `hello` successfully scheduled a job at the time specified in\n`LAST SCHEDULE`. There are currently 0 active jobs, meaning that the job has completed or failed.\n\nNow, find the pods that the last scheduled job created and view the standard output of one of the pods.\n\n\n> **Note:** The job name is different from the pod name.\n\n\n```shell\n# Replace \"hello-4111706356\" with the job name in your system\npods=$(kubectl get pods --selector=job-name=hello-4111706356 --output=jsonpath={.items[*].metadata.name})\n```\nShow the pod log:\n\n```shell\nkubectl logs $pods\n```\nThe output is similar to this:\n\n```\nFri Feb 22 11:02:09 UTC 2019\nHello from the Kubernetes cluster\n```\n\n## Deleting a CronJob {#deleting-a-cron-job}\n\nWhen you don't need a cron job any more, delete it with `kubectl delete cronjob <cronjob name>`:\n\n```shell\nkubectl delete cronjob hello\n```\n\nDeleting the cron job removes all the jobs and pods it created and stops it from creating additional jobs.\nYou can read more about removing jobs in [garbage collection](/docs/concepts/architecture/garbage-collection/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/job/automated-tasks-with-cron-jobs.md"
      },
      "provenance": [
        {
          "source": "tasks/job/automated-tasks-with-cron-jobs.md",
          "url": "https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/",
          "line_start": null,
          "line_end": null,
          "quote": "Running Automated Tasks with a CronJob"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-cronjob-creating-a-cron-job",
      "type": "concept",
      "title": "Creating a CronJob {#creating-a-cron-job}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/automated-tasks-with-cron-jobs.md",
          "url": "https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/",
          "line_start": 245,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-a-cronjob-deleting-a-cron-job",
      "type": "concept",
      "title": "Deleting a CronJob {#deleting-a-cron-job}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/automated-tasks-with-cron-jobs.md",
          "url": "https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/",
          "line_start": 2478,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/job/pod-failure-policy",
      "type": "page",
      "title": "Handling retriable and non-retriable pod failures with Pod failure policy",
      "summary": "",
      "body": "\n\n\n\nThis document shows you how to use the\n[Pod failure policy](/docs/concepts/workloads/controllers/job#pod-failure-policy),\nin combination with the default\n[Pod backoff failure policy](/docs/concepts/workloads/controllers/job#pod-backoff-failure-policy),\nto improve the control over the handling of container- or Pod-level failure\nwithin a [Job](#gloss:job).\n\nThe definition of Pod failure policy may help you to:\n* better utilize the computational resources by avoiding unnecessary Pod retries.\n* avoid Job failures due to Pod disruptions (such [preemption](#gloss:preemption),\n[API-initiated eviction](#gloss:api-eviction)\nor [taint](#gloss:taint)-based eviction).\n\n## \n\nYou should already be familiar with the basic use of [Job](/docs/concepts/workloads/controllers/job/).\n\n \n\n## Usage scenarios\n\nConsider the following usage scenarios for Jobs that define a Pod failure policy :\n- [Avoiding unnecessary Pod retries](#pod-failure-policy-failjob)\n- [Ignoring Pod disruptions](#pod-failure-policy-ignore)\n- [Avoiding unnecessary Pod retries based on custom Pod Conditions](#pod-failure-policy-config-issue)\n- [Avoiding unnecessary Pod retries per index](#backoff-limit-per-index-failindex)\n\n### Using Pod failure policy to avoid unnecessary Pod retries {#pod-failure-policy-failjob}\n\nWith the following example, you can learn how to use Pod failure policy to\navoid unnecessary Pod restarts when a Pod failure indicates a non-retriable\nsoftware bug.\n\n1. Examine the following manifest:\n\n   \n\n1. Apply the manifest:\n\n   ```sh\n   kubectl create -f https://k8s.io/examples/controllers/job-pod-failure-policy-failjob.yaml\n   ```\n\n1. After around 30 seconds the entire Job should be terminated. Inspect the status of the Job by running:\n\n   ```sh\n   kubectl get jobs -l job-name=job-pod-failure-policy-failjob -o yaml\n   ```\n\n   In the Job status, the following conditions display:\n   - `FailureTarget` condition: has a `reason` field set to `PodFailurePolicy` and\n     a `message` field with more information about the termination, like\n     `Container main for pod default/job-pod-failure-policy-failjob-8ckj8 failed with exit code 42 matching FailJob rule at index 0`.\n     The Job controller adds this condition as soon as the Job is considered a failure.\n     For details, see [Termination of Job Pods](/docs/concepts/workloads/controllers/job/#termination-of-job-pods).\n   - `Failed` condition: same `reason` and `message` as the `FailureTarget`\n     condition. The Job controller adds this condition after all of the Job's Pods\n     are terminated.\n\n   For comparison, if the Pod failure policy were disabled, the Job would\n   retry until reaching the `backoffLimit` (6 failures). Because retries\n   use exponential backoff and, with `parallelism: 2`, failures occur in\n   pairs, the delay between attempts increases with each retry. As a result,\n   this example would take at least 9 minutes before the Job fails.\n\n#### Clean up\n\nDelete the Job you created:\n\n```sh\nkubectl delete jobs/job-pod-failure-policy-failjob\n```\n\nThe cluster automatically cleans up the Pods.\n\n### Using Pod failure policy to ignore Pod disruptions {#pod-failure-policy-ignore}\n\nWith the following example, you can learn how to use Pod failure policy to\nignore Pod disruptions from incrementing the Pod retry counter towards the\n`.spec.backoffLimit` limit.\n\n\n> **Caution:** Timing is important for this example, so you may want to read the steps before\nexecution. In order to trigger a Pod disruption it is important to drain the\nnode while the Pod is running on it (within 90s since the Pod is scheduled).\n\n\n1. Examine the following manifest:\n\n   \n\n1. Apply the manifest:\n\n   ```sh\n   kubectl create -f https://k8s.io/examples/controllers/job-pod-failure-policy-ignore.yaml\n   ```\n\n1. Run this command to check the `nodeName` the Pod is scheduled to:\n\n   ```sh\n   nodeName=$(kubectl get pods -l job-name=job-pod-failure-policy-ignore -o jsonpath='{.items[0].spec.nodeName}')\n   ```\n\n1. Drain the node to evict the Pod be\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/job/pod-failure-policy.md"
      },
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Handling retriable and non-retriable pod failures with Pod failure policy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:usage-scenarios",
      "type": "concept",
      "title": "Usage scenarios",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 1078,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alternatives",
      "type": "concept",
      "title": "Alternatives",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 10587,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-pod-failure-policy-to-avoid-unnecessary-pod-retries-pod-failure-policy-failjob",
      "type": "concept",
      "title": "Using Pod failure policy to avoid unnecessary Pod retries {#pod-failure-policy-failjob}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 1490,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-pod-failure-policy-to-ignore-pod-disruptions-pod-failure-policy-ignore",
      "type": "concept",
      "title": "Using Pod failure policy to ignore Pod disruptions {#pod-failure-policy-ignore}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 3444,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-pod-failure-policy-to-avoid-unnecessary-pod-retries-based-on-custom-pod-conditions-pod-failure-policy-config-issue",
      "type": "concept",
      "title": "Using Pod failure policy to avoid unnecessary Pod retries based on custom Pod Conditions {#pod-failure-policy-config-issue}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 5177,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-pod-failure-policy-to-avoid-unnecessary-pod-retries-per-index-backoff-limit-per-index-failindex",
      "type": "concept",
      "title": "Using Pod Failure Policy to avoid unnecessary Pod retries per index {#backoff-limit-per-index-failindex}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 8451,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/job/coarse-parallel-processing-work-queue",
      "type": "page",
      "title": "Coarse Parallel Processing Using a Work Queue",
      "summary": "",
      "body": "\n\nIn this example, you will run a Kubernetes Job with multiple parallel\nworker processes.\n\nIn this example, as each pod is created, it picks up one unit of work\nfrom a task queue, completes it, deletes it from the queue, and exits.\n\nHere is an overview of the steps in this example:\n\n1. **Start a message queue service.**  In this example, you use RabbitMQ, but you could use another\n   one.  In practice you would set up a message queue service once and reuse it for many jobs.\n1. **Create a queue, and fill it with messages.**  Each message represents one task to be done.  In\n   this example, a message is an integer that we will do a lengthy computation on.\n1. **Start a Job that works on tasks from the queue**.  The Job starts several pods.  Each pod takes\n   one task from the message queue, processes it, and exits.\n\n## \n\n\nYou should already be familiar with the basic,\nnon-parallel, use of [Job](/docs/concepts/workloads/controllers/job/).\n\n\n\nYou will need a container image registry where you can upload images to run in your cluster.\n\nThis task example also assumes that you have Docker installed locally.\n\n\n\n\n## Starting a message queue service\n\nThis example uses RabbitMQ, however, you can adapt the example to use another AMQP-type message service.\n\nIn practice you could set up a message queue service once in a\ncluster and reuse it for many jobs, as well as for long-running services.\n\nStart RabbitMQ as follows:\n\n```shell\n# make a Service for the StatefulSet to use\nkubectl create -f https://kubernetes.io/examples/application/job/rabbitmq/rabbitmq-service.yaml\n```\n```\nservice \"rabbitmq-service\" created\n```\n\n```shell\nkubectl create -f https://kubernetes.io/examples/application/job/rabbitmq/rabbitmq-statefulset.yaml\n```\n```\nstatefulset \"rabbitmq\" created\n```\n\n## Testing the message queue service\n\nNow, we can experiment with accessing the message queue.  We will\ncreate a temporary interactive pod, install some tools on it,\nand experiment with queues.\n\nFirst create a temporary interactive Pod.\n\n```shell\n# Create a temporary interactive container\nkubectl run -i --tty temp --image ubuntu:22.04\n```\n```\nWaiting for pod default/temp-loe07 to be running, status is Pending, pod ready: false\n... [ previous line repeats several times .. hit return when it stops ] ...\n```\n\nNote that your pod name and command prompt will be different.\n\nNext install the `amqp-tools` so you can work with message queues.\nThe next commands show what you need to run inside the interactive shell in that Pod:\n\n```shell\napt-get update && apt-get install -y curl ca-certificates amqp-tools python3 dnsutils\n```\n\nLater, you will make a container image that includes these packages.\n\nNext, you will check that you can discover the Service for RabbitMQ:\n\n```\n# Run these commands inside the Pod\n# Note the rabbitmq-service has a DNS name, provided by Kubernetes:\nnslookup rabbitmq-service\n```\n```\nServer:        10.0.0.10\nAddress:    10.0.0.10#53\n\nName:    rabbitmq-service.default.svc.cluster.local\nAddress: 10.0.147.152\n```\n(the IP addresses will vary)\n\nIf the kube-dns addon is not set up correctly, the previous step may not work for you.\nYou can also find the IP address for that Service in an environment variable:\n\n```shell\n# run this check inside the Pod\nenv | grep RABBITMQ_SERVICE | grep HOST\n```\n```\nRABBITMQ_SERVICE_SERVICE_HOST=10.0.147.152\n```\n(the IP address will vary)\n\nNext you will verify that you can create a queue, and publish and consume messages.\n\n```shell\n# Run these commands inside the Pod\n# In the next line, rabbitmq-service is the hostname where the rabbitmq-service\n# can be reached.  5672 is the standard port for rabbitmq.\nexport BROKER_URL=amqp://guest:guest@rabbitmq-service:5672\n# If you could not resolve \"rabbitmq-service\" in the previous step,\n# then use this command instead:\nBROKER_URL=amqp://guest:guest@$RABBITMQ_SERVICE_SERVICE_HOST:5672\n\n# Now create a queue:\n\n/usr/bin/amqp-declare-queue --url=$BROKER_URL -q foo -d\n```\n```\nfoo\n```\n\nPublish one message to the q\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/job/coarse-parallel-processing-work-queue.md"
      },
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": null,
          "line_end": null,
          "quote": "Coarse Parallel Processing Using a Work Queue"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:starting-a-message-queue-service",
      "type": "concept",
      "title": "Starting a message queue service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 1226,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:testing-the-message-queue-service",
      "type": "concept",
      "title": "Testing the message queue service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 1885,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fill-the-queue-with-tasks",
      "type": "concept",
      "title": "Fill the queue with tasks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 4595,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-container-image",
      "type": "concept",
      "title": "Create a container image",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 5778,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defining-a-job",
      "type": "concept",
      "title": "Defining a Job",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 6827,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-the-job",
      "type": "concept",
      "title": "Running the Job",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 7307,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/job/fine-parallel-processing-work-queue",
      "type": "page",
      "title": "Fine Parallel Processing Using a Work Queue",
      "summary": "",
      "body": "\n\nIn this example, you will run a Kubernetes Job that runs multiple parallel\ntasks as worker processes, each running as a separate Pod.\n\nIn this example, as each pod is created, it picks up one unit of work\nfrom a task queue, processes it, and repeats until the end of the queue is reached.\n\nHere is an overview of the steps in this example:\n\n1. **Start a storage service to hold the work queue.**  In this example, you will use Redis to store\n   work items.  In the [previous example](/docs/tasks/job/coarse-parallel-processing-work-queue),\n   you used RabbitMQ.  In this example, you will use Redis and a custom work-queue client library;\n   this is because AMQP does not provide a good way for clients to\n   detect when a finite-length work queue is empty.  In practice you would set up a store such\n   as Redis once and reuse it for the work queues of many jobs, and other things.\n1. **Create a queue, and fill it with messages.**  Each message represents one task to be done.  In\n   this example, a message is an integer that we will do a lengthy computation on.\n1. **Start a Job that works on tasks from the queue**.  The Job starts several pods.  Each pod takes\n   one task from the message queue, processes it, and repeats until the end of the queue is reached.\n\n## \n\n\n\n\nYou will need a container image registry where you can upload images to run in your cluster.\nThe example uses [Docker Hub](https://hub.docker.com/), but you could adapt it to a different\ncontainer image registry.\n\nThis task example also assumes that you have Docker installed locally. You use Docker to\nbuild container images.\n\n\n\nBe familiar with the basic,\nnon-parallel, use of [Job](/docs/concepts/workloads/controllers/job/).\n\n\n\n## Starting Redis\n\nFor this example, for simplicity, you will start a single instance of Redis.\nSee the [Redis Example](https://github.com/kubernetes/examples/tree/master/web/guestbook/) for an example\nof deploying Redis scalably and redundantly.\n\nYou could also download the following files directly:\n\n- [`redis-pod.yaml`](/examples/application/job/redis/redis-pod.yaml)\n- [`redis-service.yaml`](/examples/application/job/redis/redis-service.yaml)\n- [`Dockerfile`](/examples/application/job/redis/Dockerfile)\n- [`job.yaml`](/examples/application/job/redis/job.yaml)\n- [`rediswq.py`](/examples/application/job/redis/rediswq.py)\n- [`worker.py`](/examples/application/job/redis/worker.py)\n\nTo start a single instance of Redis, you need to create the redis pod and redis service:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/job/redis/redis-pod.yaml\nkubectl apply -f https://k8s.io/examples/application/job/redis/redis-service.yaml\n```\n\n## Filling the queue with tasks\n\nNow let's fill the queue with some \"tasks\".  In this example, the tasks are strings to be\nprinted.\n\nStart a temporary interactive pod for running the Redis CLI.\n\n```shell\nkubectl run -i --tty temp --image redis --command \"/bin/sh\"\n```\n```\nWaiting for pod default/redis2-c7h78 to be running, status is Pending, pod ready: false\nHit enter for command prompt\n```\n\nNow hit enter, start the Redis CLI, and create a list with some work items in it.\n\n```shell\nredis-cli -h redis\n```\n```console\nredis:6379> rpush job2 \"apple\"\n(integer) 1\nredis:6379> rpush job2 \"banana\"\n(integer) 2\nredis:6379> rpush job2 \"cherry\"\n(integer) 3\nredis:6379> rpush job2 \"date\"\n(integer) 4\nredis:6379> rpush job2 \"fig\"\n(integer) 5\nredis:6379> rpush job2 \"grape\"\n(integer) 6\nredis:6379> rpush job2 \"lemon\"\n(integer) 7\nredis:6379> rpush job2 \"melon\"\n(integer) 8\nredis:6379> rpush job2 \"orange\"\n(integer) 9\nredis:6379> lrange job2 0 -1\n1) \"apple\"\n2) \"banana\"\n3) \"cherry\"\n4) \"date\"\n5) \"fig\"\n6) \"grape\"\n7) \"lemon\"\n8) \"melon\"\n9) \"orange\"\n```\n\nSo, the list with key `job2` will be the work queue.\n\nNote: if you do not have Kube DNS setup correctly, you may need to change\nthe first step of the above block to `redis-cli -h $REDIS_SERVICE_HOST`.\n\n\n## Create a container image {#create-an-image}\n\nNow you are ready to create an image that will\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/job/fine-parallel-processing-work-queue.md"
      },
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": null,
          "line_end": null,
          "quote": "Fine Parallel Processing Using a Work Queue"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:starting-redis",
      "type": "concept",
      "title": "Starting Redis",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 1830,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:filling-the-queue-with-tasks",
      "type": "concept",
      "title": "Filling the queue with tasks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 2782,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-container-image-create-an-image",
      "type": "concept",
      "title": "Create a container image {#create-an-image}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 4025,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:push-the-image",
      "type": "concept",
      "title": "Push the image",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 4920,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/job/indexed-parallel-processing-static",
      "type": "page",
      "title": "Indexed Job for Parallel Processing with Static Work Assignment",
      "summary": "",
      "body": "\n\n\n\n\nIn this example, you will run a Kubernetes Job that uses multiple parallel\nworker processes.\nEach worker is a different container running in its own Pod. The Pods have an\n_index number_ that the control plane sets automatically, which allows each Pod\nto identify which part of the overall task to work on.\n\nThe pod index is available in the [annotation](#gloss:annotation)\n`batch.kubernetes.io/job-completion-index` as a string representing its\ndecimal value. In order for the containerized task process to obtain this index,\nyou can publish the value of the annotation using the [downward API](/docs/concepts/workloads/pods/downward-api/)\nmechanism.\nFor convenience, the control plane automatically sets the downward API to\nexpose the index in the `JOB_COMPLETION_INDEX` environment variable.\n\nHere is an overview of the steps in this example:\n\n1. **Define a Job manifest using indexed completion**.\n   The downward API allows you to pass the pod index annotation as an\n   environment variable or file to the container.\n2. **Start an `Indexed` Job based on that manifest**.\n\n## \n\nYou should already be familiar with the basic,\nnon-parallel, use of [Job](/docs/concepts/workloads/controllers/job/).\n\n \n\n\n\n## Choose an approach\n\nTo access the work item from the worker program, you have a few options:\n\n1. Read the `JOB_COMPLETION_INDEX` environment variable. The Job\n   [controller](#gloss:controller)\n   automatically links this variable to the annotation containing the completion\n   index.\n1. Read a file that contains the completion index.\n1. Assuming that you can't modify the program, you can wrap it with a script\n   that reads the index using any of the methods above and converts it into\n   something that the program can use as input.\n\nFor this example, imagine that you chose option 3 and you want to run the\n[rev](https://man7.org/linux/man-pages/man1/rev.1.html) utility. This\nprogram accepts a file as an argument and prints its content reversed.\n\n```shell\nrev data.txt\n```\n\nYou'll use the `rev` tool from the\n[`busybox`](https://hub.docker.com/_/busybox) container image.\n\nAs this is only an example, each Pod only does a tiny piece of work (reversing a short\nstring). In a real workload you might, for example, create a Job that represents\n the\ntask of producing 60 seconds of video based on scene data.\nEach work item in the video rendering Job would be to render a particular\nframe of that video clip. Indexed completion would mean that each Pod in\nthe Job knows which frame to render and publish, by counting frames from\nthe start of the clip.\n\n## Define an Indexed Job\n\nHere is a sample Job manifest that uses `Indexed` completion mode:\n\n\n\nIn the example above, you use the builtin `JOB_COMPLETION_INDEX` environment\nvariable set by the Job controller for all containers. An [init container](/docs/concepts/workloads/pods/init-containers/)\nmaps the index to a static value and writes it to a file that is shared with the\ncontainer running the worker through an [emptyDir volume](/docs/concepts/storage/volumes/#emptydir).\nOptionally, you can [define your own environment variable through the downward\nAPI](/docs/tasks/inject-data-application/environment-variable-expose-pod-information/)\nto publish the index to containers. You can also choose to load a list of values\nfrom a [ConfigMap as an environment variable or file](/docs/tasks/configure-pod-container/configure-pod-configmap/).\n\nAlternatively, you can directly [use the downward API to pass the annotation\nvalue as a volume file](/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/#store-pod-fields),\nlike shown in the following example:\n\n\n\n## Running the Job\n\nNow run the Job:\n\n```shell\n# This uses the first approach (relying on $JOB_COMPLETION_INDEX)\nkubectl apply -f https://kubernetes.io/examples/application/job/indexed-job.yaml\n```\n\nWhen you create this Job, the control plane creates a series of Pods, one for each index you specified. The value of `.spec.parallelism` determines h\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/job/indexed-parallel-processing-static.md"
      },
      "provenance": [
        {
          "source": "tasks/job/indexed-parallel-processing-static.md",
          "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
          "line_start": null,
          "line_end": null,
          "quote": "Indexed Job for Parallel Processing with Static Work Assignment"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:choose-an-approach",
      "type": "concept",
      "title": "Choose an approach",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/indexed-parallel-processing-static.md",
          "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
          "line_start": 1428,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-an-indexed-job",
      "type": "concept",
      "title": "Define an Indexed Job",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/indexed-parallel-processing-static.md",
          "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
          "line_start": 2819,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/job/job-with-pod-to-pod-communication",
      "type": "page",
      "title": "Job with Pod-to-Pod Communication",
      "summary": "",
      "body": "\n\nIn this example, you will run a Job in [Indexed completion mode](/blog/2021/04/19/introducing-indexed-jobs/)\nconfigured such that the pods created by the Job can communicate with each other using pod hostnames rather\nthan pod IP addresses.\n\nPods within a Job might need to communicate among themselves. The user workload running in each pod\ncould query the Kubernetes API server to learn the IPs of the other Pods, but it's much simpler to\nrely on Kubernetes' built-in DNS resolution.\n\nJobs in Indexed completion mode automatically set the pods' hostname to be in the format of\n`${jobName}-${completionIndex}`. You can use this format to deterministically build\npod hostnames and enable pod communication *without* needing to create a client connection to\nthe Kubernetes control plane to obtain pod hostnames/IPs via API requests.\n\nThis configuration is useful for use cases where pod networking is required but you don't want\nto depend on a network connection with the Kubernetes API server.\n\n## \n\nYou should already be familiar with the basic use of [Job](/docs/concepts/workloads/controllers/job/).\n\n \n\n\n> **Note:** If you are using minikube or a similar tool, you may need to take\n[extra steps](https://minikube.sigs.k8s.io/docs/handbook/addons/ingress-dns/)\nto ensure you have DNS.\n\n\n\n\n## Starting a Job with pod-to-pod communication\n\nTo enable pod-to-pod communication using pod hostnames in a Job, you must do the following:\n\n1. Set up a [headless Service](/docs/concepts/services-networking/service/#headless-services)\n   with a valid label selector for the pods created by your Job. The headless service must be\n   in the same namespace as the Job. One easy way to do this is to use the\n   `job-name: <your-job-name>` selector, since the `job-name` label will be automatically added\n   by Kubernetes. This configuration will trigger the DNS system to create records of the hostnames\n   of the pods running your Job.\n\n1. Configure the headless service as subdomain service for the Job pods by including the following\n   value in your Job template spec:\n\n   ```yaml\n   subdomain: <headless-svc-name>\n   ```\n\n### Example\n\nBelow is a working example of a Job with pod-to-pod communication via pod hostnames enabled.\nThe Job is completed only after all pods successfully ping each other using hostnames.\n\n\n> **Note:** In the Bash script executed on each pod in the example below, the pod hostnames can be prefixed\nby the namespace as well if the pod needs to be reached from outside the namespace.\n\n\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  name: headless-svc\nspec:\n  clusterIP: None # clusterIP must be None to create a headless service\n  selector:\n    job-name: example-job # must match Job name\n---\napiVersion: batch/v1\nkind: Job\nmetadata:\n  name: example-job\nspec:\n  completions: 3\n  parallelism: 3\n  completionMode: Indexed\n  template:\n    spec:\n      subdomain: headless-svc # has to match Service name\n      restartPolicy: Never\n      containers:\n      - name: example-workload\n        image: bash:latest\n        command:\n        - bash\n        - -c\n        - |\n          for i in 0 1 2\n          do\n            gotStatus=\"-1\"\n            wantStatus=\"0\"             \n            while [ $gotStatus -ne $wantStatus ]\n            do                                       \n              ping -c 1 example-job-${i}.headless-svc > /dev/null 2>&1\n              gotStatus=$?                \n              if [ $gotStatus -ne $wantStatus ]; then\n                echo \"Failed to ping pod example-job-${i}.headless-svc, retrying in 1 second...\"\n                sleep 1\n              fi\n            done                                                         \n            echo \"Successfully pinged pod: example-job-${i}.headless-svc\"\n          done\n```\n\nAfter applying the example above, reach each other over the network\nusing: `<pod-hostname>.<headless-service-name>`. You should see output similar to the following:\n\n```shell\nkubectl logs example-job-0-qws42\n```\n\n```\nFailed to ping pod\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/job/job-with-pod-to-pod-communication/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/job/job-with-pod-to-pod-communication.md"
      },
      "provenance": [
        {
          "source": "tasks/job/job-with-pod-to-pod-communication.md",
          "url": "https://kubernetes.io/docs/tasks/job/job-with-pod-to-pod-communication/",
          "line_start": null,
          "line_end": null,
          "quote": "Job with Pod-to-Pod Communication"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:starting-a-job-with-pod-to-pod-communication",
      "type": "concept",
      "title": "Starting a Job with pod-to-pod communication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/job-with-pod-to-pod-communication.md",
          "url": "https://kubernetes.io/docs/tasks/job/job-with-pod-to-pod-communication/",
          "line_start": 1432,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example",
      "type": "concept",
      "title": "Example",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/job-with-pod-to-pod-communication.md",
          "url": "https://kubernetes.io/docs/tasks/job/job-with-pod-to-pod-communication/",
          "line_start": 2256,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/job/parallel-processing-expansion",
      "type": "page",
      "title": "Parallel Processing using Expansions",
      "summary": "",
      "body": "\n\nThis task demonstrates running multiple [Jobs](#gloss:job)\nbased on a common template. You can use this approach to process batches of work in\nparallel.\n\nFor this example there are only three items: _apple_, _banana_, and _cherry_.\nThe sample Jobs process each item by printing a string then pausing.\n\nSee [using Jobs in real workloads](#using-jobs-in-real-workloads) to learn about how\nthis pattern fits more realistic use cases.\n\n## \n\nYou should be familiar with the basic,\nnon-parallel, use of [Job](/docs/concepts/workloads/controllers/job/).\n\n\n\nFor basic templating you need the command-line utility `sed`.\n\nTo follow the advanced templating example, you need a working installation of\n[Python](https://www.python.org/), and the Jinja2 template\nlibrary for Python.\n\nOnce you have Python set up, you can install Jinja2 by running:\n\n```shell\npip install --user jinja2\n```\n\n\n\n## Create Jobs based on a template\n\nFirst, download the following template of a Job to a file called `job-tmpl.yaml`.\nHere's what you'll download:\n\n\n\n```shell\n# Use curl to download job-tmpl.yaml\ncurl -L -s -O https://k8s.io/examples/application/job/job-tmpl.yaml\n```\n\nThe file you downloaded is not yet a valid Kubernetes\n[manifest](#gloss:manifest).\nInstead that template is a YAML representation of a Job object with some placeholders\nthat need to be filled in before it can be used.  The `$ITEM` syntax is not meaningful to Kubernetes.\n\n\n### Create manifests from the template\n\nThe following shell snippet uses `sed` to replace the string `$ITEM` with the loop\nvariable, writing into a temporary directory named `jobs`. Run this now:\n\n```shell\n# Expand the template into multiple files, one for each item to be processed.\nmkdir ./jobs\nfor i in apple banana cherry\ndo\n  cat job-tmpl.yaml | sed \"s/\\$ITEM/$i/\" > ./jobs/job-$i.yaml\ndone\n```\n\nCheck if it worked:\n\n```shell\nls jobs/\n```\n\nThe output is similar to this:\n\n```\njob-apple.yaml\njob-banana.yaml\njob-cherry.yaml\n```\n\nYou could use any type of template language (for example: Jinja2; ERB), or\nwrite a program to generate the Job manifests.\n\n### Create Jobs from the manifests\n\nNext, create all the Jobs with one kubectl command:\n\n```shell\nkubectl create -f ./jobs\n```\n\nThe output is similar to this:\n\n```\njob.batch/process-item-apple created\njob.batch/process-item-banana created\njob.batch/process-item-cherry created\n```\n\nNow, check on the jobs:\n\n```shell\nkubectl get jobs -l jobgroup=jobexample\n```\n\nThe output is similar to this:\n\n```\nNAME                  COMPLETIONS   DURATION   AGE\nprocess-item-apple    1/1           14s        22s\nprocess-item-banana   1/1           12s        21s\nprocess-item-cherry   1/1           12s        20s\n```\n\nUsing the `-l` option to kubectl selects only the Jobs that are part\nof this group of jobs (there might be other unrelated jobs in the system).\n\nYou can check on the Pods as well using the same\n[label selector](#gloss:selector):\n\n\n```shell\nkubectl get pods -l jobgroup=jobexample\n```\n\nThe output is similar to:\n\n```\nNAME                        READY     STATUS      RESTARTS   AGE\nprocess-item-apple-kixwv    0/1       Completed   0          4m\nprocess-item-banana-wrsf7   0/1       Completed   0          4m\nprocess-item-cherry-dnfu9   0/1       Completed   0          4m\n```\n\nWe can use this single command to check on the output of all jobs at once:\n\n```shell\nkubectl logs -f -l jobgroup=jobexample\n```\n\nThe output should be:\n\n```\nProcessing item apple\nProcessing item banana\nProcessing item cherry\n```\n\n### Clean up {#cleanup-1}\n\n```shell\n# Remove the Jobs you created\n# Your cluster automatically cleans up their Pods\nkubectl delete job -l jobgroup=jobexample\n```\n\n## Use advanced template parameters\n\nIn the [first example](#create-jobs-based-on-a-template), each instance of the template had one\nparameter, and that parameter was also used in the Job's name. However,\n[names](/docs/concepts/overview/working-with-objects/names/#names) are restricted\nto contain only certain characters.\n\nThis slightly more com\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/job/parallel-processing-expansion.md"
      },
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": null,
          "line_end": null,
          "quote": "Parallel Processing using Expansions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-jobs-based-on-a-template",
      "type": "concept",
      "title": "Create Jobs based on a template",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 1017,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-advanced-template-parameters",
      "type": "concept",
      "title": "Use advanced template parameters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 3911,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-jobs-in-real-workloads",
      "type": "concept",
      "title": "Using Jobs in real workloads",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 6763,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:labels-on-jobs-and-pods",
      "type": "concept",
      "title": "Labels on Jobs and Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 7550,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-manifests-from-the-template",
      "type": "concept",
      "title": "Create manifests from the template",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 1647,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-jobs-from-the-manifests",
      "type": "concept",
      "title": "Create Jobs from the manifests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 2303,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clean-up-cleanup-1",
      "type": "concept",
      "title": "Clean up {#cleanup-1}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 3748,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clean-up-cleanup-2",
      "type": "concept",
      "title": "Clean up {#cleanup-2}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 6578,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/job/_index",
      "type": "page",
      "title": "Run Jobs",
      "summary": "Jobs in Kubernetes provide a way to run batch processing tasks, such as data imports or backups.",
      "body": "Jobs in Kubernetes provide a way to run batch processing tasks, such as data imports or backups.\n\n**Why it matters**\nJobs enable users to automate and schedule batch workloads within the cluster.\n\n**Key facts**\n- Jobs can be executed manually or automatically\n\n**Common pitfalls**\n- Insufficient resource allocation can lead to job failures",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/job/_index/",
      "meta": {
        "weight": 90,
        "rel_path": "tasks/job/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/job/_index.md",
          "url": "https://kubernetes.io/docs/tasks/job/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Run Jobs"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/extend-kubectl/kubectl-plugins",
      "type": "page",
      "title": "Extend kubectl with plugins",
      "summary": "Extend kubectl by creating and installing kubectl plugins.",
      "body": "\n\nThis guide demonstrates how to install and write extensions for [kubectl](/docs/reference/kubectl/kubectl/).\nBy thinking of core `kubectl` commands as essential building blocks for interacting with a Kubernetes cluster,\na cluster administrator can think of plugins as a means of utilizing these building blocks to create more complex behavior.\nPlugins extend `kubectl` with new sub-commands, allowing for new and custom features not included in the main distribution of `kubectl`.\n\n## \n\nYou need to have a working `kubectl` binary installed.\n\n\n\n## Installing kubectl plugins\n\nA plugin is a standalone executable file, whose name begins with `kubectl-`. To install a plugin, move its executable file to anywhere on your `PATH`.\n\nYou can also discover and install kubectl plugins available in the open source\nusing [Krew](https://krew.dev/). Krew is a plugin manager maintained by\nthe Kubernetes SIG CLI community.\n\n\n> **Caution:** Kubectl plugins available via the Krew [plugin index](https://krew.sigs.k8s.io/plugins/)\nare not audited for security. You should install and run third-party plugins at your\nown risk, since they are arbitrary programs running on your machine.\n\n\n### Discovering plugins\n\n`kubectl` provides a command `kubectl plugin list` that searches your `PATH` for valid plugin executables.\nExecuting this command causes a traversal of all files in your `PATH`. Any files that are executable, and\nbegin with `kubectl-` will show up *in the order in which they are present in your `PATH`* in this command's output.\nA warning will be included for any files beginning with `kubectl-` that are *not* executable.\nA warning will also be included for any valid plugin files that overlap each other's name.\n\nYou can use [Krew](https://krew.dev/) to discover and install `kubectl`\nplugins from a community-curated\n[plugin index](https://krew.sigs.k8s.io/plugins/).\n\n#### Create plugins\n\n`kubectl` allows plugins to add custom create commands of the shape `kubectl create something` by providing a `kubectl-create-something` binary in the `PATH`.\n\n#### Limitations\n\nIt is currently not possible to create plugins that overwrite existing `kubectl` commands or extend commands other than `create`.\nFor example, creating a plugin `kubectl-version` will cause that plugin to never be executed, as the existing `kubectl version`\ncommand will always take precedence over it.\nDue to this limitation, it is also *not* possible to use plugins to add new subcommands to existing `kubectl` commands.\nFor example, adding a subcommand `kubectl attach vm` by naming your plugin `kubectl-attach-vm` will cause that plugin to be ignored.\n\n`kubectl plugin list` shows warnings for any valid plugins that attempt to do this.\n\n## Writing kubectl plugins\n\nYou can write a plugin in any programming language or script that allows you to write command-line commands.\n\nThere is no plugin installation or pre-loading required. Plugin executables receive\nthe inherited environment from the `kubectl` binary.\nA plugin determines which command path it wishes to implement based on its name.\nFor example, a plugin named `kubectl-foo` provides a command `kubectl foo`. You must\ninstall the plugin executable somewhere in your `PATH`.\n\n### Example plugin\n\n```bash\n#!/bin/bash\n\n# optional argument handling\nif [[ \"$1\" == \"version\" ]]\nthen\n    echo \"1.0.0\"\n    exit 0\nfi\n\n# optional argument handling\nif [[ \"$1\" == \"config\" ]]\nthen\n    echo \"$KUBECONFIG\"\n    exit 0\nfi\n\necho \"I am a plugin named kubectl-foo\"\n```\n\n### Using a plugin\n\nTo use a plugin, make the plugin executable:\n\n```shell\nsudo chmod +x ./kubectl-foo\n```\n\nand place it anywhere in your `PATH`:\n\n```shell\nsudo mv ./kubectl-foo /usr/local/bin\n```\n\nYou may now invoke your plugin as a `kubectl` command:\n\n```shell\nkubectl foo\n```\n\n```\nI am a plugin named kubectl-foo\n```\n\nAll args and flags are passed as-is to the executable:\n\n```shell\nkubectl foo version\n```\n\n```\n1.0.0\n```\n\nAll environment variables are also passed as-is to the executable:\n\n```bash\nexport K\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/extend-kubectl/kubectl-plugins.md"
      },
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": null,
          "line_end": null,
          "quote": "Extend kubectl with plugins"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installing-kubectl-plugins",
      "type": "concept",
      "title": "Installing kubectl plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 610,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-kubectl-plugins",
      "type": "concept",
      "title": "Writing kubectl plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 2795,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:distributing-kubectl-plugins",
      "type": "concept",
      "title": "Distributing kubectl plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 12222,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:discovering-plugins",
      "type": "concept",
      "title": "Discovering plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 1256,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-plugin",
      "type": "concept",
      "title": "Example plugin",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 3293,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-a-plugin",
      "type": "concept",
      "title": "Using a plugin",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 3569,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:naming-a-plugin",
      "type": "concept",
      "title": "Naming a plugin",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 4447,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:checking-for-plugin-warnings",
      "type": "concept",
      "title": "Checking for plugin warnings",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 10909,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-the-command-line-runtime-package",
      "type": "concept",
      "title": "Using the command line runtime package",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 11609,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:krew-distributing-krew",
      "type": "concept",
      "title": "Krew {#distributing-krew}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 12395,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:native-platform-specific-package-management-distributing-native",
      "type": "concept",
      "title": "Native / platform specific package management {#distributing-native}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 12788,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:source-code-distributing-source-code",
      "type": "concept",
      "title": "Source code {#distributing-source-code}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 13280,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configmap-secret/managing-secret-using-kustomize",
      "type": "page",
      "title": "Managing Secrets using Kustomize",
      "summary": "Creating Secret objects using kustomization.yaml file.",
      "body": "\n\n`kubectl` supports using the [Kustomize object management tool](/docs/tasks/manage-kubernetes-objects/kustomization/) to manage Secrets\nand ConfigMaps. You create a *resource generator* using Kustomize, which\ngenerates a Secret that you can apply to the API server using `kubectl`.\n\n## \n\n\n\n\n\n## Create a Secret\n\nYou can generate a Secret by defining a `secretGenerator` in a\n`kustomization.yaml` file that references other existing files, `.env` files, or\nliteral values. For example, the following instructions create a kustomization\nfile for the username `admin` and the password `1f2d1e2e67df`.\n\n\n> **Note:** The `stringData` field for a Secret does not work well with server-side apply.\n\n\n### Create the kustomization file\n\n\n\nsecretGenerator:\n- name: database-creds\n  literals:\n  - username=admin\n  - password=1f2d1e2e67df\n\n\n1.  Store the credentials in files. The filenames are the keys of the secret:\n\n    ```shell\n    echo -n 'admin' > ./username.txt\n    echo -n '1f2d1e2e67df' > ./password.txt\n    ```\n    The `-n` flag ensures that there's no newline character at the end of your\n    files.\n\n1.  Create the `kustomization.yaml` file:\n\n    ```yaml\n    secretGenerator:\n    - name: database-creds\n      files:\n      - username.txt\n      - password.txt\n    ```\n\n\nYou can also define the secretGenerator in the `kustomization.yaml` file by\nproviding `.env` files. For example, the following `kustomization.yaml` file\npulls in data from an `.env.secret` file:\n\n```yaml\nsecretGenerator:\n- name: db-user-pass\n  envs:\n  - .env.secret\n```\n\n\n\nIn all cases, you don't need to encode the values in base64. The name of the YAML\nfile **must** be `kustomization.yaml` or `kustomization.yml`.\n\n### Apply the kustomization file\n\nTo create the Secret, apply the directory that contains the kustomization file:\n\n```shell\nkubectl apply -k <directory-path>\n```\n\nThe output is similar to:\n\n```\nsecret/database-creds-5hdh7hhgfk created\n```\n\nWhen a Secret is generated, the Secret name is created by hashing\nthe Secret data and appending the hash value to the name. This ensures that\na new Secret is generated each time the data is modified.\n\nTo verify that the Secret was created and to decode the Secret data,\n\n```shell\nkubectl get -k <directory-path> -o jsonpath='{.data}' \n```\n\nThe output is similar to:\n\n```\n{ \"password\": \"MWYyZDFlMmU2N2Rm\", \"username\": \"YWRtaW4=\" }\n```\n\n```\necho 'MWYyZDFlMmU2N2Rm' | base64 --decode\n```\n\nThe output is similar to:\n\n```\n1f2d1e2e67df\n```\n\nFor more information, refer to\n[Managing Secrets using kubectl](/docs/tasks/configmap-secret/managing-secret-using-kubectl/#verify-the-secret) and\n[Declarative Management of Kubernetes Objects Using Kustomize](/docs/tasks/manage-kubernetes-objects/kustomization/).\n\n## Edit a Secret {#edit-secret}\n\n1.  In your `kustomization.yaml` file, modify the data, such as the `password`.\n1.  Apply the directory that contains the kustomization file:\n\n    ```shell\n    kubectl apply -k <directory-path>\n    ```\n\n    The output is similar to:\n\n    ```\n    secret/db-user-pass-6f24b56cc8 created\n    ```\n\nThe edited Secret is created as a new `Secret` object, instead of updating the\nexisting `Secret` object. You might need to update references to the Secret in\nyour Pods.\n\n## Clean up\n\nTo delete a Secret, use `kubectl`:\n\n```shell\nkubectl delete secret db-user-pass\n```\n\n## \n\n- Read more about the [Secret concept](/docs/concepts/configuration/secret/)\n- Learn how to [manage Secrets using kubectl](/docs/tasks/configmap-secret/managing-secret-using-kubectl/)\n- Learn how to [manage Secrets using config file](/docs/tasks/configmap-secret/managing-secret-using-config-file/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/configmap-secret/managing-secret-using-kustomize.md"
      },
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": null,
          "line_end": null,
          "quote": "Managing Secrets using Kustomize"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-secret",
      "type": "concept",
      "title": "Create a Secret",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 399,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:edit-a-secret-edit-secret",
      "type": "concept",
      "title": "Edit a Secret {#edit-secret}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 3024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-the-kustomization-file",
      "type": "concept",
      "title": "Create the kustomization file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 813,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apply-the-kustomization-file",
      "type": "concept",
      "title": "Apply the kustomization file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 1983,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configmap-secret/managing-secret-using-config-file",
      "type": "page",
      "title": "Managing Secrets using Configuration File",
      "summary": "Creating Secret objects using resource configuration file.",
      "body": "\n\n## \n\n\n\n\n\n## Create the Secret {#create-the-config-file}\n\nYou can define the `Secret` object in a manifest first, in JSON or YAML format,\nand then create that object. The\n[Secret](/docs/reference/generated/kubernetes-api//#secret-v1-core)\nresource contains two maps: `data` and `stringData`.\nThe `data` field is used to store arbitrary data, encoded using base64. The\n`stringData` field is provided for convenience, and it allows you to provide\nthe same data as unencoded strings.\nThe keys of `data` and `stringData` must consist of alphanumeric characters,\n`-`, `_` or `.`.\n\nThe following example stores two strings in a Secret using the `data` field.\n\n1. Convert the strings to base64:\n\n   ```shell\n   echo -n 'admin' | base64\n   echo -n '1f2d1e2e67df' | base64\n   ```\n\n   \n> **Note:** The serialized JSON and YAML values of Secret data are encoded as base64 strings. Newlines are not valid within these strings and must be omitted. When using the `base64` utility on Darwin/macOS, users should avoid using the `-b` option to split long lines. Conversely, Linux users *should* add the option `-w 0` to `base64` commands or the pipeline `base64 | tr -d '\\n'` if the `-w` option is not available.\n\n\n   The output is similar to:\n\n   ```\n   YWRtaW4=\n   MWYyZDFlMmU2N2Rm\n   ```\n\n1. Create the manifest:\n\n   ```yaml\n   apiVersion: v1\n   kind: Secret\n   metadata:\n     name: mysecret\n   type: Opaque\n   data:\n     username: YWRtaW4=\n     password: MWYyZDFlMmU2N2Rm\n   ```\n\n   Note that the name of a Secret object must be a valid\n   [DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\n1. Create the Secret using [`kubectl apply`](/docs/reference/generated/kubectl/kubectl-commands#apply):\n\n   ```shell\n   kubectl apply -f ./secret.yaml\n   ```\n\n   The output is similar to:\n\n   ```\n   secret/mysecret created\n   ```\n\nTo verify that the Secret was created and to decode the Secret data, refer to\n[Managing Secrets using kubectl](/docs/tasks/configmap-secret/managing-secret-using-kubectl/#verify-the-secret).\n\n### Specify unencoded data when creating a Secret\n\nFor certain scenarios, you may wish to use the `stringData` field instead. This\nfield allows you to put a non-base64 encoded string directly into the Secret,\nand the string will be encoded for you when the Secret is created or updated.\n\nA practical example of this might be where you are deploying an application\nthat uses a Secret to store a configuration file, and you want to populate\nparts of that configuration file during your deployment process.\n\nFor example, if your application uses the following configuration file:\n\n```yaml\napiUrl: \"https://my.api.com/api/v1\"\nusername: \"<user>\"\npassword: \"<password>\"\n```\n\nYou could store this in a Secret using the following definition:\n\n```yaml\napiVersion: v1\nkind: Secret\nmetadata:\n  name: mysecret\ntype: Opaque\nstringData:\n  config.yaml: |\n    apiUrl: \"https://my.api.com/api/v1\"\n    username: <user>\n    password: <password>\n```\n\n\n> **Note:** The `stringData` field for a Secret does not work well with server-side apply.\n\n\nWhen you retrieve the Secret data, the command returns the encoded values,\nand not the plaintext values you provided in `stringData`.\n\nFor example, if you run the following command:\n\n```shell\nkubectl get secret mysecret -o yaml\n```\n\nThe output is similar to:\n\n```yaml\napiVersion: v1\ndata:\n  config.yaml: YXBpVXJsOiAiaHR0cHM6Ly9teS5hcGkuY29tL2FwaS92MSIKdXNlcm5hbWU6IHt7dXNlcm5hbWV9fQpwYXNzd29yZDoge3twYXNzd29yZH19\nkind: Secret\nmetadata:\n  creationTimestamp: 2018-11-15T20:40:59Z\n  name: mysecret\n  namespace: default\n  resourceVersion: \"7225\"\n  uid: c280ad2e-e916-11e8-98f2-025000000001\ntype: Opaque\n```\n\n### Specify both `data` and `stringData`\n\nIf you specify a field in both `data` and `stringData`, the value from `stringData` is used.\n\nFor example, if you define the following Secret:\n\n```yaml\napiVersion: v1\nkind: Secret\nmetadata:\n  name: mysecret\ntype: Opaque\ndata:\n  username: YWRtaW4=\nstringData:\n  username: administrat\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/configmap-secret/managing-secret-using-config-file.md"
      },
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": null,
          "line_end": null,
          "quote": "Managing Secrets using Configuration File"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-the-secret-create-the-config-file",
      "type": "concept",
      "title": "Create the Secret {#create-the-config-file}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specify-unencoded-data-when-creating-a-secret",
      "type": "concept",
      "title": "Specify unencoded data when creating a Secret",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": 2194,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specify-both-data-and-stringdata",
      "type": "concept",
      "title": "Specify both `data` and `stringData`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": 3836,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "type": "page",
      "title": "Managing Secrets using kubectl",
      "summary": "Creating Secret objects using kubectl command line.",
      "body": "\n\nThis page shows you how to create, edit, manage, and delete Kubernetes\n[Secrets](#gloss:secret) using the `kubectl`\ncommand-line tool.\n\n## \n\n\n\n\n\n## Create a Secret\n\nA `Secret` object stores sensitive data such as credentials\nused by Pods to access services. For example, you might need a Secret to store\nthe username and password needed to access a database.\n\nYou can create the Secret by passing the raw data in the command, or by storing\nthe credentials in files that you pass in the command. The following commands\ncreate a Secret that stores the username `admin` and the password `S!B\\*d$zDsb=`.\n\n### Use raw data\n\nRun the following command:\n\n```shell\nkubectl create secret generic db-user-pass \\\n    --from-literal=username=admin \\\n    --from-literal=password='S!B\\*d$zDsb='\n```\nYou must use single quotes `''` to escape special characters such as `$`, `\\`,\n`*`, `=`, and `!` in your strings. If you don't, your shell will interpret these\ncharacters.\n\n\n> **Note:** The `stringData` field for a Secret does not work well with server-side apply.\n\n\n### Use source files\n\n1. Store the credentials in files:\n\n   ```shell\n   echo -n 'admin' > ./username.txt\n   echo -n 'S!B\\*d$zDsb=' > ./password.txt\n   ```\n\n   The `-n` flag ensures that the generated files do not have an extra newline\n   character at the end of the text. This is important because when `kubectl`\n   reads a file and encodes the content into a base64 string, the extra\n   newline character gets encoded too. You do not need to escape special\n   characters in strings that you include in a file.\n\n1. Pass the file paths in the `kubectl` command:\n\n   ```shell\n   kubectl create secret generic db-user-pass \\\n       --from-file=./username.txt \\\n       --from-file=./password.txt\n   ```\n\n   The default key name is the file name. You can optionally set the key name\n   using `--from-file=[key=]source`. For example:\n\n   ```shell\n   kubectl create secret generic db-user-pass \\\n       --from-file=username=./username.txt \\\n       --from-file=password=./password.txt\n   ```\n\nWith either method, the output is similar to:\n\n```\nsecret/db-user-pass created\n```\n\n### Verify the Secret {#verify-the-secret}\n\nCheck that the Secret was created:\n\n```shell\nkubectl get secrets\n```\n\nThe output is similar to:\n\n```\nNAME              TYPE       DATA      AGE\ndb-user-pass      Opaque     2         51s\n```\n\nView the details of the Secret:\n\n```shell\nkubectl describe secret db-user-pass\n```\n\nThe output is similar to:\n\n```\nName:            db-user-pass\nNamespace:       default\nLabels:          <none>\nAnnotations:     <none>\n\nType:            Opaque\n\nData\n====\npassword:    12 bytes\nusername:    5 bytes\n```\n\nThe commands `kubectl get` and `kubectl describe` avoid showing the contents\nof a `Secret` by default. This is to protect the `Secret` from being exposed\naccidentally, or from being stored in a terminal log.\n\n### Decode the Secret  {#decoding-secret}\n\n1. View the contents of the Secret you created:\n\n   ```shell\n   kubectl get secret db-user-pass -o jsonpath='{.data}'\n   ```\n\n   The output is similar to:\n\n   ```json\n   { \"password\": \"UyFCXCpkJHpEc2I9\", \"username\": \"YWRtaW4=\" }\n   ```\n\n1. Decode the `password` data:\n\n   ```shell\n   echo 'UyFCXCpkJHpEc2I9' | base64 --decode\n   ```\n\n   The output is similar to:\n\n   ```\n   S!B\\*d$zDsb=\n   ```\n\n   \n> **Caution:** This is an example for documentation purposes. In practice,\n   this method could cause the command with the encoded data to be stored in\n   your shell history. Anyone with access to your computer could find the\n   command and decode the secret. A better approach is to combine the view and\n   decode commands.\n\n\n   ```shell\n   kubectl get secret db-user-pass -o jsonpath='{.data.password}' | base64 --decode\n   ```\n\n## Edit a Secret {#edit-secret}\n\nYou can edit an existing `Secret` object unless it is\n[immutable](/docs/concepts/configuration/secret/#secret-immutable). To edit a\nSecret, run the following command:\n\n```shell\nkubectl edit secrets <secret-name>\n```\n\nThis op\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/configmap-secret/managing-secret-using-kubectl.md"
      },
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": "Managing Secrets using kubectl"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-raw-data",
      "type": "concept",
      "title": "Use raw data",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 738,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-source-files",
      "type": "concept",
      "title": "Use source files",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 1201,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-the-secret-verify-the-secret",
      "type": "concept",
      "title": "Verify the Secret {#verify-the-secret}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 2271,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:decode-the-secret-decoding-secret",
      "type": "concept",
      "title": "Decode the Secret  {#decoding-secret}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 3018,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/configmap-secret/_index",
      "type": "page",
      "title": "Managing Secrets",
      "summary": "Managing confidential settings data using Secrets.",
      "body": "ConfigMaps and Secrets are used to store sensitive information, such as database credentials or API keys.\n\n**Why it matters**\nManaging secrets is crucial for securing applications and preventing unauthorized access.\n\n**Key facts**\n- ConfigMaps and Secrets can be mounted as volumes in Pods\n- They can also be injected into Containers using environment variables\n\n**Common pitfalls**\n- Insecurely storing sensitive information can lead to security breaches\n- Incorrect configuration can result in application failures\n\n**Related**\nConfigMaps, Secrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/configmap-secret/_index/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/configmap-secret/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/configmap-secret/_index.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Managing Secrets"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/inject-data-application/define-command-argument-container",
      "type": "page",
      "title": "Define a Command and Arguments for a Container",
      "summary": "",
      "body": "\n\nThis page shows how to define commands and arguments when you run a container\nin a [pod](#gloss:pod).\n\n\n\n\n## \n\n\n \n\n\n\n\n\n\n## Define a command and arguments when you create a Pod\n\nWhen you create a Pod, you can define a command and arguments for the\ncontainers that run in the Pod. To define a command, include the `command`\nfield in the configuration file. To define arguments for the command, include\nthe `args` field in the configuration file. The command and arguments that\nyou define cannot be changed after the Pod is created.\n\nThe command and arguments that you define in the configuration file\noverride the default command and arguments provided by the container image.\nIf you define args, but do not define a command, the default command is used\nwith your new arguments.\n\n\n> **Note:** The `command` field corresponds to `ENTRYPOINT`, and the `args` field corresponds to `CMD` in some container runtimes.\n\n\nIn this exercise, you create a Pod that runs one container. The configuration\nfile for the Pod defines a command and two arguments:\n\n\n\n1. Create a Pod based on the YAML configuration file:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/pods/commands.yaml\n   ```\n\n1. List the running Pods:\n\n   ```shell\n   kubectl get pods\n   ```\n\n   The output shows that the container that ran in the command-demo Pod has\n   completed.\n\n1. To see the output of the command that ran in the container, view the logs\nfrom the Pod:\n\n   ```shell\n   kubectl logs command-demo\n   ```\n\n   The output shows the values of the HOSTNAME and KUBERNETES_PORT environment\n   variables:\n\n   ```\n   command-demo\n   tcp://10.3.240.1:443\n   ```\n\n## Use environment variables to define arguments\n\nIn the preceding example, you defined the arguments directly by\nproviding strings. As an alternative to providing strings directly,\nyou can define arguments by using environment variables:\n\n```yaml\nenv:\n- name: MESSAGE\n  value: \"hello world\"\ncommand: [\"/bin/echo\"]\nargs: [\"$(MESSAGE)\"]\n```\n\nThis means you can define an argument for a Pod using any of\nthe techniques available for defining environment variables, including\n[ConfigMaps](/docs/tasks/configure-pod-container/configure-pod-configmap/)\nand\n[Secrets](/docs/concepts/configuration/secret/).\n\n\n> **Note:** The environment variable appears in parentheses, `\"$(VAR)\"`. This is\nrequired for the variable to be expanded in the `command` or `args` field.\n\n\n## Run a command in a shell\n\nIn some cases, you need your command to run in a shell. For example, your\ncommand might consist of several commands piped together, or it might be a shell\nscript. To run your command in a shell, wrap it like this:\n\n```shell\ncommand: [\"/bin/sh\"]\nargs: [\"-c\", \"while true; do echo hello; sleep 10;done\"]\n```\n\n## \n\n\n* Learn more about [configuring pods and containers](/docs/tasks/).\n* Learn more about [running commands in a container](/docs/tasks/debug/debug-application/get-shell-running-container/).\n* See [Container](/docs/reference/generated/kubernetes-api//#container-v1-core).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/inject-data-application/define-command-argument-container.md"
      },
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": null,
          "line_end": null,
          "quote": "Define a Command and Arguments for a Container"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-a-command-and-arguments-when-you-create-a-pod",
      "type": "concept",
      "title": "Define a command and arguments when you create a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-environment-variables-to-define-arguments",
      "type": "concept",
      "title": "Use environment variables to define arguments",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": 1840,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:run-a-command-in-a-shell",
      "type": "concept",
      "title": "Run a command in a shell",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": 2614,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "type": "page",
      "title": "Distribute Credentials Securely Using Secrets",
      "summary": "",
      "body": "\n\nThis page shows how to securely inject sensitive data, such as passwords and\nencryption keys, into Pods.\n\n## \n\n\n\n### Convert your secret data to a base-64 representation\n\nSuppose you want to have two pieces of secret data: a username `my-app` and a password\n`39528$vdg7Jb`. First, use a base64 encoding tool to convert your username and password to a base64 representation. Here's an example using the commonly available base64 program:\n\n```shell\necho -n 'my-app' | base64\necho -n '39528$vdg7Jb' | base64\n```\n\nThe output shows that the base-64 representation of your username is `bXktYXBw`,\nand the base-64 representation of your password is `Mzk1MjgkdmRnN0pi`.\n\n\n> **Caution:** Use a local tool trusted by your OS to decrease the security risks of external tools.\n\n\n\n\n## Create a Secret\n\nHere is a configuration file you can use to create a Secret that holds your\nusername and password:\n\n\n\n1. Create the Secret\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/pods/inject/secret.yaml\n   ```\n\n1. View information about the Secret:\n\n   ```shell\n   kubectl get secret test-secret\n   ```\n\n   Output:\n\n   ```\n   NAME          TYPE      DATA      AGE\n   test-secret   Opaque    2         1m\n   ```\n\n1. View more detailed information about the Secret:\n\n   ```shell\n   kubectl describe secret test-secret\n   ```\n\n   Output:\n\n   ```\n   Name:       test-secret\n   Namespace:  default\n   Labels:     <none>\n   Annotations:    <none>\n\n   Type:   Opaque\n\n   Data\n   ====\n   password:   13 bytes\n   username:   7 bytes\n   ```\n\n### Create a Secret directly with kubectl\n\nIf you want to skip the Base64 encoding step, you can create the\nsame Secret using the `kubectl create secret` command. For example:\n\n```shell\nkubectl create secret generic test-secret --from-literal='username=my-app' --from-literal='password=39528$vdg7Jb'\n```\n\nThis is more convenient. The detailed approach shown earlier runs\nthrough each step explicitly to demonstrate what is happening.\n\n## Create a Pod that has access to the secret data through a Volume\n\nHere is a configuration file you can use to create a Pod:\n\n\n\n1. Create the Pod:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/pods/inject/secret-pod.yaml\n   ```\n\n1. Verify that your Pod is running:\n\n   ```shell\n   kubectl get pod secret-test-pod\n   ```\n\n   Output:\n\n   ```\n   NAME              READY     STATUS    RESTARTS   AGE\n   secret-test-pod   1/1       Running   0          42m\n   ```\n\n1. Get a shell into the Container that is running in your Pod:\n\n   ```shell\n   kubectl exec -i -t secret-test-pod -- /bin/bash\n   ```\n\n1. The secret data is exposed to the Container through a Volume mounted under\n   `/etc/secret-volume`.\n\n   In your shell, list the files in the `/etc/secret-volume` directory:\n\n   ```shell\n   # Run this in the shell inside the container\n   ls /etc/secret-volume\n   ```\n\n   The output shows two files, one for each piece of secret data:\n\n   ```\n   password username\n   ```\n\n1. In your shell, display the contents of the `username` and `password` files:\n\n   ```shell\n   # Run this in the shell inside the container\n   echo \"$( cat /etc/secret-volume/username )\"\n   echo \"$( cat /etc/secret-volume/password )\"\n   ```\n\n   The output is your username and password:\n\n   ```\n   my-app\n   39528$vdg7Jb\n   ```\n\nModify your image or command line so that the program looks for files in the\n`mountPath` directory. Each key in the Secret `data` map becomes a file name\nin this directory.\n\n### Project Secret keys to specific file paths\n\nYou can also control the paths within the volume where Secret keys are projected. Use the\n`.spec.volumes[].secret.items` field to change the target path of each key:\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: mypod\nspec:\n  containers:\n  - name: mypod\n    image: redis\n    volumeMounts:\n    - name: foo\n      mountPath: \"/etc/foo\"\n      readOnly: true\n  volumes:\n  - name: foo\n    secret:\n      secretName: mysecret\n      items:\n      - key: username\n        path: my-group/my-username\n```\n\nWhen you d\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
      "meta": {
        "weight": 50,
        "rel_path": "tasks/inject-data-application/distribute-credentials-secure.md"
      },
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": null,
          "line_end": null,
          "quote": "Distribute Credentials Securely Using Secrets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-has-access-to-the-secret-data-through-a-volume",
      "type": "concept",
      "title": "Create a Pod that has access to the secret data through a Volume",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 2130,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-container-environment-variables-using-secret-data",
      "type": "concept",
      "title": "Define container environment variables using Secret data",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 5883,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-all-key-value-pairs-in-a-secret-as-container-environment-variables",
      "type": "concept",
      "title": "Configure all key-value pairs in a Secret as container environment variables",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 7944,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-provide-prod-test-credentials-to-pods-using-secrets-provide-prod-test-creds",
      "type": "concept",
      "title": "Example: Provide prod/test credentials to Pods using Secrets {#provide-prod-test-creds}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 8940,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:convert-your-secret-data-to-a-base-64-representation",
      "type": "concept",
      "title": "Convert your secret data to a base-64 representation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-secret-directly-with-kubectl",
      "type": "concept",
      "title": "Create a Secret directly with kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 1695,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:project-secret-keys-to-specific-file-paths",
      "type": "concept",
      "title": "Project Secret keys to specific file paths",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 3668,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-posix-permissions-for-secret-keys",
      "type": "concept",
      "title": "Set POSIX permissions for Secret keys",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 4805,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-a-container-environment-variable-with-data-from-a-single-secret",
      "type": "concept",
      "title": "Define a container environment variable with data from a single Secret",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 6247,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-container-environment-variables-with-data-from-multiple-secrets",
      "type": "concept",
      "title": "Define container environment variables with data from multiple Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 7085,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:references",
      "type": "concept",
      "title": "References",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 12293,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/inject-data-application/define-environment-variable-container",
      "type": "page",
      "title": "Define Environment Variables for a Container",
      "summary": "",
      "body": "\n\nThis page shows how to define environment variables for a container\nin a Kubernetes Pod.\n\n## \n\n\n\n\n\n## Define an environment variable for a container\n\nWhen you create a Pod, you can set environment variables for the containers\nthat run in the Pod. To set environment variables, include the `env` or\n`envFrom` field in the configuration file.\n\nThe `env` and `envFrom` fields have different effects.\n\n`env`\n: allows you to set environment variables for a container, specifying a value directly for each variable that you name.\n\n`envFrom`\n: allows you to set environment variables for a container by referencing either a ConfigMap or a Secret.\n When you use `envFrom`, all the key-value pairs in the referenced ConfigMap or Secret\n are set as environment variables for the container.\n You can also specify a common prefix string.\n\nYou can read more about [ConfigMap](/docs/tasks/configure-pod-container/configure-pod-configmap/#configure-all-key-value-pairs-in-a-configmap-as-container-environment-variables)\nand [Secret](/docs/tasks/inject-data-application/distribute-credentials-secure/#configure-all-key-value-pairs-in-a-secret-as-container-environment-variables).\n\nThis page explains how to use `env`.\n\nIn this exercise, you create a Pod that runs one container. The configuration\nfile for the Pod defines an environment variable with name `DEMO_GREETING` and\nvalue `\"Hello from the environment\"`. Here is the configuration manifest for the\nPod:\n\n\n\n1. Create a Pod based on that manifest:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/pods/inject/envars.yaml\n   ```\n\n1. List the running Pods:\n\n   ```shell\n   kubectl get pods -l purpose=demonstrate-envars\n   ```\n\n   The output is similar to:\n\n   ```\n   NAME            READY     STATUS    RESTARTS   AGE\n   envar-demo      1/1       Running   0          9s\n   ```\n\n1. List the Pod's container environment variables:\n\n   ```shell\n   kubectl exec envar-demo -- printenv\n   ```\n\n   The output is similar to this:\n\n   ```\n   NODE_VERSION=4.4.2\n   EXAMPLE_SERVICE_PORT_8080_TCP_ADDR=10.3.245.237\n   HOSTNAME=envar-demo\n   ...\n   DEMO_GREETING=Hello from the environment\n   DEMO_FAREWELL=Such a sweet sorrow\n   ```\n\n\n> **Note:** The environment variables set using the `env` or `envFrom` field\noverride any environment variables specified in the container image.\n\n\n\n> **Note:** Environment variables may reference each other, however ordering is important.\nVariables making use of others defined in the same context must come later in\nthe list. Similarly, avoid circular references.\n\n\n## Using environment variables inside of your config\n\nEnvironment variables that you define in a Pod's configuration under \n`.spec.containers[*].env[*]` can be used elsewhere in the configuration, for \nexample in commands and arguments that you set for the Pod's containers.\nIn the example configuration below, the `GREETING`, `HONORIFIC`, and\n`NAME` environment variables are set to `Warm greetings to`, `The Most\nHonorable`, and `Kubernetes`, respectively. The environment variable \n`MESSAGE` combines the set of all these environment variables and then uses it \nas a CLI argument passed to the `env-print-demo` container.\n\nEnvironment variable names may consist of any [printable ASCII characters](https://www.ascii-code.com/characters/printable-characters) except '='.\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: print-greeting\nspec:\n  containers:\n  - name: env-print-demo\n    image: bash\n    env:\n    - name: GREETING\n      value: \"Warm greetings to\"\n    - name: HONORIFIC\n      value: \"The Most Honorable\"\n    - name: NAME\n      value: \"Kubernetes\"\n    - name: MESSAGE\n      value: \"$(GREETING) $(HONORIFIC) $(NAME)\"\n    command: [\"echo\"]\n    args: [\"$(MESSAGE)\"]\n```\n\nUpon creation, the command `echo Warm greetings to The Most Honorable Kubernetes` is run on the container.\n\n## \n\n* Learn more about [environment variables](/docs/tasks/inject-data-application/environment-variable-expose-pod-information/).\n* Learn about [using secrets as env\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/inject-data-application/define-environment-variable-container.md"
      },
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/",
          "line_start": null,
          "line_end": null,
          "quote": "Define Environment Variables for a Container"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-an-environment-variable-for-a-container",
      "type": "concept",
      "title": "Define an environment variable for a container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-environment-variables-inside-of-your-config",
      "type": "concept",
      "title": "Using environment variables inside of your config",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/",
          "line_start": 2724,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/inject-data-application/downward-api-volume-expose-pod-information",
      "type": "page",
      "title": "Expose Pod Information to Containers Through Files",
      "summary": "",
      "body": "\n\nThis page shows how a Pod can use a\n[`downwardAPI` volume](/docs/concepts/storage/volumes/#downwardapi),\nto expose information about itself to containers running in the Pod.\nA `downwardAPI` volume can expose Pod fields and container fields.\n\nIn Kubernetes, there are two ways to expose Pod and container fields to a running container:\n\n* [Environment variables](/docs/tasks/inject-data-application/environment-variable-expose-pod-information/)\n* Volume files, as explained in this task\n\nTogether, these two ways of exposing Pod and container fields are called the\n_downward API_.\n\n## \n\n\n\n\n\n\n## Store Pod fields\n\nIn this part of exercise, you create a Pod that has one container, and you\nproject Pod-level fields into the running container as files.\nHere is the manifest for the Pod:\n\n\n\nIn the manifest, you can see that the Pod has a `downwardAPI` Volume,\nand the container mounts the volume at `/etc/podinfo`.\n\nLook at the `items` array under `downwardAPI`. Each element of the array\ndefines a `downwardAPI` volume.\nThe first element specifies that the value of the Pod's\n`metadata.labels` field should be stored in a file named `labels`.\nThe second element specifies that the value of the Pod's `annotations`\nfield should be stored in a file named `annotations`.\n\n\n> **Note:** The fields in this example are Pod fields. They are not\nfields of the container in the Pod.\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/inject/dapi-volume.yaml\n```\n\nVerify that the container in the Pod is running:\n\n```shell\nkubectl get pods\n```\n\nView the container's logs:\n\n```shell\nkubectl logs kubernetes-downwardapi-volume-example\n```\n\nThe output shows the contents of the `labels` file and the `annotations` file:\n\n```\ncluster=\"test-cluster1\"\nrack=\"rack-22\"\nzone=\"us-est-coast\"\n\nbuild=\"two\"\nbuilder=\"john-doe\"\n```\n\nGet a shell into the container that is running in your Pod:\n\n```shell\nkubectl exec -it kubernetes-downwardapi-volume-example -- sh\n```\n\nIn your shell, view the `labels` file:\n\n```shell\n/# cat /etc/podinfo/labels\n```\n\nThe output shows that all of the Pod's labels have been written\nto the `labels` file:\n\n```shell\ncluster=\"test-cluster1\"\nrack=\"rack-22\"\nzone=\"us-est-coast\"\n```\n\nSimilarly, view the `annotations` file:\n\n```shell\n/# cat /etc/podinfo/annotations\n```\n\nView the files in the `/etc/podinfo` directory:\n\n```shell\n/# ls -laR /etc/podinfo\n```\n\nIn the output, you can see that the `labels` and `annotations` files\nare in a temporary subdirectory: in this example,\n`..2982_06_02_21_47_53.299460680`. In the `/etc/podinfo` directory, `..data` is\na symbolic link to the temporary subdirectory. Also in the `/etc/podinfo` directory,\n`labels` and `annotations` are symbolic links.\n\n```\ndrwxr-xr-x  ... Feb 6 21:47 ..2982_06_02_21_47_53.299460680\nlrwxrwxrwx  ... Feb 6 21:47 ..data -> ..2982_06_02_21_47_53.299460680\nlrwxrwxrwx  ... Feb 6 21:47 annotations -> ..data/annotations\nlrwxrwxrwx  ... Feb 6 21:47 labels -> ..data/labels\n\n/etc/..2982_06_02_21_47_53.299460680:\ntotal 8\n-rw-r--r--  ... Feb  6 21:47 annotations\n-rw-r--r--  ... Feb  6 21:47 labels\n```\n\nUsing symbolic links enables dynamic atomic refresh of the metadata; updates are\nwritten to a new temporary directory, and the `..data` symlink is updated\natomically using [rename(2)](http://man7.org/linux/man-pages/man2/rename.2.html).\n\n\n> **Note:** A container using Downward API as a\n[subPath](/docs/concepts/storage/volumes/#using-subpath) volume mount will not\nreceive Downward API updates.\n\n\nExit the shell:\n\n```shell\n/# exit\n```\n\n## Store container fields\n\nThe preceding exercise, you made Pod-level fields accessible using the\ndownward API.\nIn this next exercise, you are going to pass fields that are part of the Pod\ndefinition, but taken from the specific\n[container](/docs/reference/kubernetes-api/workload-resources/pod-v1/#Container)\nrather than from the Pod overall. Here is a manifest for a Pod that again has\njust one container:\n\n\n\nIn the manifest, you can see that the Pod has a\n[`downwardAPI`\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/inject-data-application/downward-api-volume-expose-pod-information.md"
      },
      "provenance": [
        {
          "source": "tasks/inject-data-application/downward-api-volume-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/",
          "line_start": null,
          "line_end": null,
          "quote": "Expose Pod Information to Containers Through Files"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:store-pod-fields",
      "type": "concept",
      "title": "Store Pod fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/downward-api-volume-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/",
          "line_start": 698,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:store-container-fields",
      "type": "concept",
      "title": "Store container fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/downward-api-volume-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/",
          "line_start": 3713,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/inject-data-application/define-interdependent-environment-variables",
      "type": "page",
      "title": "Define Dependent Environment Variables",
      "summary": "",
      "body": "\n\nThis page shows how to define dependent environment variables for a container\nin a Kubernetes Pod.\n\n\n## \n\n\n\n\n\n\n\n## Define an environment dependent variable for a container\n\nWhen you create a Pod, you can set dependent environment variables for the containers that run in the Pod. To set dependent environment variables, you can use $(VAR_NAME) in the `value` of `env` in the configuration file.\n\nIn this exercise, you create a Pod that runs one container. The configuration\nfile for the Pod defines a dependent environment variable with common usage defined. Here is the configuration manifest for the\nPod:\n\n\n\n1. Create a Pod based on that manifest:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/pods/inject/dependent-envars.yaml\n   ```\n   ```\n   pod/dependent-envars-demo created\n   ```\n\n2. List the running Pods:\n\n   ```shell\n   kubectl get pods dependent-envars-demo\n   ```\n   ```\n   NAME                      READY     STATUS    RESTARTS   AGE\n   dependent-envars-demo     1/1       Running   0          9s\n   ```\n\n3. Check the logs for the container running in your Pod:\n\n   ```shell\n   kubectl logs pod/dependent-envars-demo\n   ```\n   ```\n\n   UNCHANGED_REFERENCE=$(PROTOCOL)://172.17.0.1:80\n   SERVICE_ADDRESS=https://172.17.0.1:80\n   ESCAPED_REFERENCE=$(PROTOCOL)://172.17.0.1:80\n   ```\n\nAs shown above, you have defined the correct dependency reference of `SERVICE_ADDRESS`, bad dependency reference of `UNCHANGED_REFERENCE` and skip dependent references of `ESCAPED_REFERENCE`.\n\nWhen an environment variable is already defined when being referenced,\nthe reference can be correctly resolved, such as in the `SERVICE_ADDRESS` case.\n\nNote that order matters in the `env` list. An environment variable is not considered\n\"defined\" if it is specified further down the list. That is why `UNCHANGED_REFERENCE`\nfails to resolve `$(PROTOCOL)` in the example above.\n\nWhen the environment variable is undefined or only includes some variables, the undefined environment variable is treated as a normal string, such as `UNCHANGED_REFERENCE`. Note that incorrectly parsed environment variables, in general, will not block the container from starting.\n\nThe `$(VAR_NAME)` syntax can be escaped with a double `$`, ie: `$$(VAR_NAME)`.\nEscaped references are never expanded, regardless of whether the referenced variable\nis defined or not. This can be seen from the `ESCAPED_REFERENCE` case above.\n\n## \n\n\n* Learn more about [environment variables](/docs/tasks/inject-data-application/environment-variable-expose-pod-information/).\n* See [EnvVarSource](/docs/reference/generated/kubernetes-api//#envvarsource-v1-core).\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-interdependent-environment-variables/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/inject-data-application/define-interdependent-environment-variables.md"
      },
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-interdependent-environment-variables.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-interdependent-environment-variables/",
          "line_start": null,
          "line_end": null,
          "quote": "Define Dependent Environment Variables"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-an-environment-dependent-variable-for-a-container",
      "type": "concept",
      "title": "Define an environment dependent variable for a container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-interdependent-environment-variables.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-interdependent-environment-variables/",
          "line_start": 219,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/inject-data-application/define-environment-variable-via-file",
      "type": "page",
      "title": "Define Environment Variable Values Using An Init Container",
      "summary": "",
      "body": "\n\n\n\nThis page show how to configure environment variables for containers in a Pod via file.\n\n## \n\n\n\n\n\n\n\n## How the design works\n\nIn this exercise, you will create a Pod that sources environment variables from files, \nprojecting these values into the running container.\n\n\n\nIn this manifest, you can see the `initContainer` mounts an `emptyDir` volume and writes environment variables to a file within it,\nand the regular containers reference both the file and the environment variable key \nthrough the `fileKeyRef` field without needing to mount the volume. \nWhen `optional` field is set to false, the specified `key` in `fileKeyRef` must exist in the environment variables file.\n\nThe volume will only be mounted to the container that writes to the file\n(`initContainer`), while the consumer container that consumes the environment variable will not have the volume mounted.\n\nThe env file format adheres to the [kubernetes env file standard](/docs/tasks/inject-data-application/define-environment-variable-via-file/#env-file-syntax).\n\nDuring container initialization, the kubelet retrieves environment variables \nfrom specified files in the `emptyDir` volume and exposes them to the container.\n\n\n> **Note:** All container types (initContainers, regular containers, sidecars containers,\nand ephemeral containers) support environment variable loading from files.\n\nWhile these environment variables can store sensitive information, \n`emptyDir` volumes don't provide the same protection mechanisms as\ndedicated Secret objects. Therefore, exposing confidential environment variables \nto containers through this feature is not considered a security best practice.\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/inject/envars-file-container.yaml\n```\n\nVerify that the container in the Pod is running:\n\n```shell\n# If the new Pod isn't yet healthy, rerun this command a few times.\nkubectl get pods\n```\n\nCheck container logs for environment variables:\n\n```shell\nkubectl logs envfile-test-pod -c use-envfile | grep DB_ADDRESS\n```\n\nThe output shows the values of selected environment variables:\n\n```\nDB_ADDRESS=address\n```\n\n## Env file syntax {#env-file-syntax}\n\nThe env file format used by Kubernetes is a well-defined subset of the environment variable semantics for POSIX-compliant bash. Any env file supported by Kubernetes will produce the same environment variables as when interpreted by a POSIX-compliant bash. However, POSIX-compliant bash supports some additional formats that Kubernetes does not accept.\n\nExample:\n\n```\nMY_VAR='my-literal-value'\n```\n\n### Rules\n\n* Variable declaration: Use the form `VAR='value'`. Spaces surrounding `=` are ignored; leading spaces on a line are ignored; blank lines are ignored.\n* Quoted values: Values must be enclosed in single quotes (`'`).\n  * The content inside single quotes is preserved literally. No escape-sequence processing, whitespace folding, or character interpretation is applied.\n  * Newlines inside single quotes are preserved (multi-line values are supported).\n* Comments: Lines that begin with `#` are treated as comments and ignored. A `#` character inside a single-quoted value is not a comment.\n\nExamples:\n\n```\n# comment\nDB_ADDRESS='address'\n\nMULTI='line1\nline2'\n```\n\n### Unsupported forms\n\n* Unquoted values are **prohibited**:\n  * `VAR=value` — not supported.\n* Double-quoted values are **prohibited**:\n  * `VAR=\"value\"` — not supported.\n* Multiple adjacent quoted strings are **not** supported:\n  * `VAR='val1''val2'` — not supported.\n* Any form of interpolation, expansion, or concatenation is **not** supported:\n  * `VAR='a'$OTHER` or `VAR=${OTHER}` — not supported.\n\nThe strict single-quote requirement ensures the value is taken literally by the kubelet when loading environment variables from files.\n\n\n## \n\n* Learn more about [environment variables](/docs/tasks/inject-data-application/environment-variable-expose-pod-information/).\n* Read [Defining Environment Variables for a Container](/docs/tasks/inject-data\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/inject-data-application/define-environment-variable-via-file.md"
      },
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": null,
          "line_end": null,
          "quote": "Define Environment Variable Values Using An Init Container"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-the-design-works",
      "type": "concept",
      "title": "How the design works",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": 280,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:env-file-syntax-env-file-syntax",
      "type": "concept",
      "title": "Env file syntax {#env-file-syntax}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": 2392,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rules",
      "type": "concept",
      "title": "Rules",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": 2829,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:unsupported-forms",
      "type": "concept",
      "title": "Unsupported forms",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": 3502,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/inject-data-application/environment-variable-expose-pod-information",
      "type": "page",
      "title": "Expose Pod Information to Containers Through Environment Variables",
      "summary": "",
      "body": "\n\nThis page shows how a Pod can use environment variables to expose information\nabout itself to containers running in the Pod, using the _downward API_.\nYou can use environment variables to expose Pod fields, container fields, or both.\n\nIn Kubernetes, there are two ways to expose Pod and container fields to a running container:\n\n* _Environment variables_, as explained in this task\n* [Volume files](/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/)\n\nTogether, these two ways of exposing Pod and container fields are called the\ndownward API.\n\nAs Services are the primary mode of communication between containerized applications managed by Kubernetes, \nit is helpful to be able to discover them at runtime. \n\nRead more about accessing Services [here](/docs/tutorials/services/connect-applications-service/#accessing-the-service).\n\n## \n\n\n\n\n\n## Use Pod fields as values for environment variables\n\nIn this part of exercise, you create a Pod that has one container, and you\nproject Pod-level fields into the running container as environment variables.\n\n\n\nIn that manifest, you can see five environment variables. The `env`\nfield is an array of\nenvironment variable definitions.\nThe first element in the array specifies that the `MY_NODE_NAME` environment\nvariable gets its value from the Pod's `spec.nodeName` field. Similarly, the\nother environment variables get their names from Pod fields.\n\n\n> **Note:** The fields in this example are Pod fields. They are not fields of the\ncontainer in the Pod.\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/inject/dapi-envars-pod.yaml\n```\n\nVerify that the container in the Pod is running:\n\n```shell\n# If the new Pod isn't yet healthy, rerun this command a few times.\nkubectl get pods\n```\n\nView the container's logs:\n\n```shell\nkubectl logs dapi-envars-fieldref\n```\n\nThe output shows the values of selected environment variables:\n\n```\nminikube\ndapi-envars-fieldref\ndefault\n172.17.0.4\ndefault\n```\n\nTo see why these values are in the log, look at the `command` and `args` fields\nin the configuration file. When the container starts, it writes the values of\nfive environment variables to stdout. It repeats this every ten seconds.\n\nNext, get a shell into the container that is running in your Pod:\n\n```shell\nkubectl exec -it dapi-envars-fieldref -- sh\n```\n\nIn your shell, view the environment variables:\n\n```shell\n# Run this in a shell inside the container\nprintenv\n```\n\nThe output shows that certain environment variables have been assigned the\nvalues of Pod fields:\n\n```\nMY_POD_SERVICE_ACCOUNT=default\n...\nMY_POD_NAMESPACE=default\nMY_POD_IP=172.17.0.4\n...\nMY_NODE_NAME=minikube\n...\nMY_POD_NAME=dapi-envars-fieldref\n```\n\n## Use container fields as values for environment variables\n\nIn the preceding exercise, you used information from Pod-level fields as the values\nfor environment variables.\nIn this next exercise, you are going to pass fields that are part of the Pod\ndefinition, but taken from the specific\n[container](/docs/reference/kubernetes-api/workload-resources/pod-v1/#Container)\nrather than from the Pod overall.\n\nHere is a manifest for another Pod that again has just one container:\n\n\n\nIn this manifest, you can see four environment variables. The `env`\nfield is an array of\nenvironment variable definitions.\nThe first element in the array specifies that the `MY_CPU_REQUEST` environment\nvariable gets its value from the `requests.cpu` field of a container named\n`test-container`. Similarly, the other environment variables get their values\nfrom fields that are specific to this container.\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/inject/dapi-envars-container.yaml\n```\n\nVerify that the container in the Pod is running:\n\n```shell\n# If the new Pod isn't yet healthy, rerun this command a few times.\nkubectl get pods\n```\n\nView the container's logs:\n\n```shell\nkubectl logs dapi-envars-resourcefieldref\n```\n\nThe output shows the values of selected environment variables:\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/inject-data-application/environment-variable-expose-pod-information.md"
      },
      "provenance": [
        {
          "source": "tasks/inject-data-application/environment-variable-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/",
          "line_start": null,
          "line_end": null,
          "quote": "Expose Pod Information to Containers Through Environment Variables"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-pod-fields-as-values-for-environment-variables",
      "type": "concept",
      "title": "Use Pod fields as values for environment variables",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/environment-variable-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/",
          "line_start": 976,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-container-fields-as-values-for-environment-variables",
      "type": "concept",
      "title": "Use container fields as values for environment variables",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/inject-data-application/environment-variable-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/",
          "line_start": 2887,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/inject-data-application/_index",
      "type": "page",
      "title": "Inject Data Into Applications",
      "summary": "Specify configuration and other data for the Pods that run your workload.",
      "body": "Data can be injected into applications using environment variables, ConfigMaps, and Secrets.\n\n**Why it matters**\nInjecting data allows for dynamic configuration and customization of applications.\n\n**Key facts**\n- Environment variables can be used to inject simple key-value pairs\n- ConfigMaps and Secrets provide a more secure way to store sensitive information\n\n**Common pitfalls**\n- Incorrectly injecting data can lead to application failures or security breaches\n\n**Related**\nEnvironment Variables, ConfigMaps, Secrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/inject-data-application/_index/",
      "meta": {
        "weight": 70,
        "rel_path": "tasks/inject-data-application/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/inject-data-application/_index.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Inject Data Into Applications"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/manage-daemon/create-daemon-set",
      "type": "page",
      "title": "Building a Basic DaemonSet",
      "summary": "",
      "body": "\n\nThis page demonstrates how to build a basic [DaemonSet](#gloss:daemonset)\nthat runs a Pod on every node in a Kubernetes cluster.\nIt covers a simple use case of mounting a file from the host, logging its contents using\nan [init container](/docs/concepts/workloads/pods/init-containers/), and utilizing a pause container.\n\n## \n\n\n\nA Kubernetes cluster with at least two nodes (one control plane node and one worker node)\nto demonstrate the behavior of DaemonSets.\n\n## Define the DaemonSet\n\nIn this task, a basic DaemonSet is created which ensures that the copy of a Pod is scheduled on every node.\nThe Pod will use an init container to read and log the contents of `/etc/machine-id` from the host,\nwhile the main container will be a `pause` container, which keeps the Pod running.\n\n\n\n1. Create a DaemonSet based on the (YAML) manifest:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/basic-daemonset.yaml\n   ```\n\n1. Once applied, you can verify that the DaemonSet is running a Pod on every node in the cluster:\n\n   ```shell\n   kubectl get pods -o wide\n   ```\n\n   The output will list one Pod per node, similar to:\n\n   ```\n   NAME                                READY   STATUS    RESTARTS   AGE    IP       NODE\n   example-daemonset-xxxxx             1/1     Running   0          5m     x.x.x.x  node-1\n   example-daemonset-yyyyy             1/1     Running   0          5m     x.x.x.x  node-2\n   ```\n\n1. You can inspect the contents of the logged `/etc/machine-id` file by checking\n   the log directory mounted from the host:\n\n   ```shell\n   kubectl exec <pod-name> -- cat /var/log/machine-id.log\n   ```\n\n   Where `<pod-name>` is the name of one of your Pods.\n\n## \n\nTo delete the DaemonSet, run this command:\n\n```shell\nkubectl delete --cascade=foreground --ignore-not-found --now daemonsets/example-daemonset\n```\n\nThis simple DaemonSet example introduces key components like init containers and host path volumes,\nwhich can be expanded upon for more advanced use cases. For more details refer to\n[DaemonSet](/docs/concepts/workloads/controllers/daemonset/).\n\n## \n\n* See [Performing a rolling update on a DaemonSet](/docs/tasks/manage-daemon/update-daemon-set/)\n* See [Creating a DaemonSet to adopt existing DaemonSet pods](/docs/concepts/workloads/controllers/daemonset/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-daemon/create-daemon-set/",
      "meta": {
        "weight": 5,
        "rel_path": "tasks/manage-daemon/create-daemon-set.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-daemon/create-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/create-daemon-set/",
          "line_start": null,
          "line_end": null,
          "quote": "Building a Basic DaemonSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:define-the-daemonset",
      "type": "concept",
      "title": "Define the DaemonSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/create-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/create-daemon-set/",
          "line_start": 587,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-daemon/pods-some-nodes",
      "type": "page",
      "title": "Running Pods on Only Some Nodes",
      "summary": "",
      "body": "\n\nThis page demonstrates how can you run [Pods](#gloss:pod) on only some [Nodes](#gloss:node) as part of a [DaemonSet](#gloss:daemonset)\n\n## \n\n\n\n## Running Pods on only some Nodes\n\nImagine that you want to run a [DaemonSet](#gloss:daemonset), but you only need to run those daemon pods\non nodes that have local solid state (SSD) storage. For example, the Pod might provide cache service to the\nnode, and the cache is only useful when low-latency local storage is available.\n\n### Step 1: Add labels to your nodes\n\nAdd the label `ssd=true` to the nodes which have SSDs.\n\n```shell\nkubectl label nodes example-node-1 example-node-2 ssd=true\n```\n\n### Step 2: Create the manifest\n\nLet's create a [DaemonSet](#gloss:daemonset) which will provision the daemon pods on the SSD labeled [nodes](#gloss:node) only.\n\n\nNext, use a `nodeSelector` to ensure that the DaemonSet only runs Pods on nodes\nwith the `ssd` label set to `\"true\"`.\n\n\n\n### Step 3: Create the DaemonSet\n\nCreate the DaemonSet from the manifest by using `kubectl create` or `kubectl apply`\n\nLet's label another node as `ssd=true`.\n\n```shell\nkubectl label nodes example-node-3 ssd=true\n```\n\nLabelling the node automatically triggers the control plane (specifically, the DaemonSet controller)\nto run a new daemon pod on that node.\n\n```shell\nkubectl get pods -o wide\n```\nThe output is similar to:\n\n```\nNAME                              READY     STATUS    RESTARTS   AGE    IP      NODE\n<daemonset-name><some-hash-01>    1/1       Running   0          13s    .....   example-node-1\n<daemonset-name><some-hash-02>    1/1       Running   0          13s    .....   example-node-2\n<daemonset-name><some-hash-03>    1/1       Running   0          5s     .....   example-node-3\n```",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/manage-daemon/pods-some-nodes.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": "Running Pods on Only Some Nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-pods-on-only-some-nodes",
      "type": "concept",
      "title": "Running Pods on only some Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 326,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-1-add-labels-to-your-nodes",
      "type": "concept",
      "title": "Step 1: Add labels to your nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 686,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-2-create-the-manifest",
      "type": "concept",
      "title": "Step 2: Create the manifest",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 853,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-3-create-the-daemonset",
      "type": "concept",
      "title": "Step 3: Create the DaemonSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 1265,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-daemon/update-daemon-set",
      "type": "page",
      "title": "Perform a Rolling Update on a DaemonSet",
      "summary": "",
      "body": "\nThis page shows how to perform a rolling update on a DaemonSet.\n\n## \n\n\n\n\n\n## DaemonSet Update Strategy\n\nDaemonSet has two update strategy types:\n\n* `OnDelete`: With `OnDelete` update strategy, after you update a DaemonSet template, new\n  DaemonSet pods will *only* be created when you manually delete old DaemonSet\n  pods. This is the same behavior of DaemonSet in Kubernetes version 1.5 or\n  before.\n* `RollingUpdate`: This is the default update strategy.  \n  With `RollingUpdate` update strategy, after you update a\n  DaemonSet template, old DaemonSet pods will be killed, and new DaemonSet pods\n  will be created automatically, in a controlled fashion. At most one pod of\n  the DaemonSet will be running on each node during the whole update process.\n\n## Performing a Rolling Update\n\nTo enable the rolling update feature of a DaemonSet, you must set its\n`.spec.updateStrategy.type` to `RollingUpdate`.\n\nYou may want to set\n[`.spec.updateStrategy.rollingUpdate.maxUnavailable`](/docs/reference/kubernetes-api/workload-resources/daemon-set-v1/#DaemonSetSpec) \n(default to 1),\n[`.spec.minReadySeconds`](/docs/reference/kubernetes-api/workload-resources/daemon-set-v1/#DaemonSetSpec)\n(default to 0) and\n[`.spec.updateStrategy.rollingUpdate.maxSurge`](/docs/reference/kubernetes-api/workload-resources/daemon-set-v1/#DaemonSetSpec)\n(defaults to 0) as well.\n\n### Creating a DaemonSet with `RollingUpdate` update strategy\n\nThis YAML file specifies a DaemonSet with an update strategy as 'RollingUpdate'\n\n\n\nAfter verifying the update strategy of the DaemonSet manifest, create the DaemonSet:\n\n```shell\nkubectl create -f https://k8s.io/examples/controllers/fluentd-daemonset.yaml\n```\n\nAlternatively, use `kubectl apply` to create the same DaemonSet if you plan to\nupdate the DaemonSet with `kubectl apply`.\n\n```shell\nkubectl apply -f https://k8s.io/examples/controllers/fluentd-daemonset.yaml\n```\n\n### Checking DaemonSet `RollingUpdate` update strategy\n\nCheck the update strategy of your DaemonSet, and make sure it's set to\n`RollingUpdate`:\n\n```shell\nkubectl get ds/fluentd-elasticsearch -o go-template='{{.spec.updateStrategy.type}}{{\"\\n\"}}' -n kube-system\n```\n\nIf you haven't created the DaemonSet in the system, check your DaemonSet\nmanifest with the following command instead:\n\n```shell\nkubectl apply -f https://k8s.io/examples/controllers/fluentd-daemonset.yaml --dry-run=client -o go-template='{{.spec.updateStrategy.type}}{{\"\\n\"}}'\n```\n\nThe output from both commands should be:\n\n```\nRollingUpdate\n```\n\nIf the output isn't `RollingUpdate`, go back and modify the DaemonSet object or\nmanifest accordingly.\n\n\n### Updating a DaemonSet template\n\nAny updates to a `RollingUpdate` DaemonSet `.spec.template` will trigger a rolling\nupdate. Let's update the DaemonSet by applying a new YAML file. This can be done with several different `kubectl` commands.\n\n\n\n#### Declarative commands\n\nIf you update DaemonSets using\n[configuration files](/docs/tasks/manage-kubernetes-objects/declarative-config/),\nuse `kubectl apply`:\n\n```shell\nkubectl apply -f https://k8s.io/examples/controllers/fluentd-daemonset-update.yaml\n```\n\n#### Imperative commands\n\nIf you update DaemonSets using\n[imperative commands](/docs/tasks/manage-kubernetes-objects/imperative-command/),\nuse `kubectl edit` :\n\n```shell\nkubectl edit ds/fluentd-elasticsearch -n kube-system\n```\n\n##### Updating only the container image\n\nIf you only need to update the container image in the DaemonSet template, i.e.\n`.spec.template.spec.containers[*].image`, use `kubectl set image`:\n\n```shell\nkubectl set image ds/fluentd-elasticsearch fluentd-elasticsearch=quay.io/fluentd_elasticsearch/fluentd:v2.6.0 -n kube-system\n```\n\n### Watching the rolling update status\n\nFinally, watch the rollout status of the latest DaemonSet rolling update:\n\n```shell\nkubectl rollout status ds/fluentd-elasticsearch -n kube-system\n```\n\nWhen the rollout is complete, the output is similar to this:\n\n```shell\ndaemonset \"fluentd-elasticsearch\" successfully rolled out\n```\n\n## Tro\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/manage-daemon/update-daemon-set.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": null,
          "line_end": null,
          "quote": "Perform a Rolling Update on a DaemonSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonset-update-strategy",
      "type": "concept",
      "title": "DaemonSet Update Strategy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-daemonset-with-rollingupdate-update-strategy",
      "type": "concept",
      "title": "Creating a DaemonSet with `RollingUpdate` update strategy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 1461,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:checking-daemonset-rollingupdate-update-strategy",
      "type": "concept",
      "title": "Checking DaemonSet `RollingUpdate` update strategy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 2058,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-a-daemonset-template",
      "type": "concept",
      "title": "Updating a DaemonSet template",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 2774,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:watching-the-rolling-update-status",
      "type": "concept",
      "title": "Watching the rolling update status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 3902,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonset-rolling-update-is-stuck",
      "type": "concept",
      "title": "DaemonSet rolling update is stuck",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 4248,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-daemon/rollback-daemon-set",
      "type": "page",
      "title": "Perform a Rollback on a DaemonSet",
      "summary": "",
      "body": "\n\nThis page shows how to perform a rollback on a [daemonset](#gloss:daemonset).\n\n\n## \n\n \n\nYou should already know how to [perform a rolling update on a\n DaemonSet](/docs/tasks/manage-daemon/update-daemon-set/).\n\n\n\n## Performing a rollback on a DaemonSet\n\n### Step 1: Find the DaemonSet revision you want to roll back to\n\nYou can skip this step if you only want to roll back to the last revision.\n\nList all revisions of a DaemonSet:\n\n```shell\nkubectl rollout history daemonset <daemonset-name>\n```\n\nThis returns a list of DaemonSet revisions:\n\n```\ndaemonsets \"<daemonset-name>\"\nREVISION        CHANGE-CAUSE\n1               ...\n2               ...\n...\n```\n\n* Change cause is copied from DaemonSet annotation `kubernetes.io/change-cause`\n  to its revisions upon creation. You may specify `--record=true` in `kubectl`\n  to record the command executed in the change cause annotation.\n\nTo see the details of a specific revision:\n\n```shell\nkubectl rollout history daemonset <daemonset-name> --revision=1\n```\n\nThis returns the details of that revision:\n\n```\ndaemonsets \"<daemonset-name>\" with revision #1\nPod Template:\nLabels:       foo=bar\nContainers:\napp:\n Image:        ...\n Port:         ...\n Environment:  ...\n Mounts:       ...\nVolumes:      ...\n```\n\n### Step 2: Roll back to a specific revision\n\n```shell\n# Specify the revision number you get from Step 1 in --to-revision\nkubectl rollout undo daemonset <daemonset-name> --to-revision=<revision>\n```\n\nIf it succeeds, the command returns:\n\n```\ndaemonset \"<daemonset-name>\" rolled back\n```\n\n\n> **Note:** If `--to-revision` flag is not specified, kubectl picks the most recent revision.\n\n\n### Step 3: Watch the progress of the DaemonSet rollback\n\n`kubectl rollout undo daemonset` tells the server to start rolling back the\nDaemonSet. The real rollback is done asynchronously inside the cluster\n[control plane](#gloss:control-plane).\n\nTo watch the progress of the rollback:\n\n```shell\nkubectl rollout status ds/<daemonset-name>\n```\n\nWhen the rollback is complete, the output is similar to:\n\n```\ndaemonset \"<daemonset-name>\" successfully rolled out\n```\n\n\n\n\n## Understanding DaemonSet revisions\n\nIn the previous `kubectl rollout history` step, you got a list of DaemonSet\nrevisions. Each revision is stored in a resource named ControllerRevision.\n\nTo see what is stored in each revision, find the DaemonSet revision raw\nresources:\n\n```shell\nkubectl get controllerrevision -l <daemonset-selector-key>=<daemonset-selector-value>\n```\n\nThis returns a list of ControllerRevisions:\n\n```\nNAME                               CONTROLLER                     REVISION   AGE\n<daemonset-name>-<revision-hash>   DaemonSet/<daemonset-name>     1          1h\n<daemonset-name>-<revision-hash>   DaemonSet/<daemonset-name>     2          1h\n```\n\nEach ControllerRevision stores the annotations and template of a DaemonSet\nrevision.\n\n`kubectl rollout undo` takes a specific ControllerRevision and replaces\nDaemonSet template with the template stored in the ControllerRevision.\n`kubectl rollout undo` is equivalent to updating DaemonSet template to a\nprevious revision through other commands, such as `kubectl edit` or `kubectl\napply`.\n\n\n> **Note:** DaemonSet revisions only roll forward. That is to say, after a\nrollback completes, the revision number (`.revision` field) of the\nControllerRevision being rolled back to will advance. For example, if you\nhave revision 1 and 2 in the system, and roll back from revision 2 to revision\n1, the ControllerRevision with `.revision: 1` will become `.revision: 3`.\n\n\n## Troubleshooting\n\n* See [troubleshooting DaemonSet rolling\n  update](/docs/tasks/manage-daemon/update-daemon-set/#troubleshooting).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/manage-daemon/rollback-daemon-set.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": null,
          "line_end": null,
          "quote": "Perform a Rollback on a DaemonSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:performing-a-rollback-on-a-daemonset",
      "type": "concept",
      "title": "Performing a rollback on a DaemonSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 355,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-daemonset-revisions",
      "type": "concept",
      "title": "Understanding DaemonSet revisions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 2304,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-1-find-the-daemonset-revision-you-want-to-roll-back-to",
      "type": "concept",
      "title": "Step 1: Find the DaemonSet revision you want to roll back to",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 396,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-2-roll-back-to-a-specific-revision",
      "type": "concept",
      "title": "Step 2: Roll back to a specific revision",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 1390,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-3-watch-the-progress-of-the-daemonset-rollback",
      "type": "concept",
      "title": "Step 3: Watch the progress of the DaemonSet rollback",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 1788,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/manage-daemon/_index",
      "type": "page",
      "title": "Manage Cluster Daemons",
      "summary": "Perform common tasks for managing a DaemonSet, such as performing a rolling update.",
      "body": "Cluster daemons are used to manage and maintain cluster resources.\n\n**Why it matters**\nManaging cluster daemons ensures the health and stability of the cluster.\n\n**Key facts**\n- DaemonSets can be used to ensure a specified number of replicas are running at any given time\n- Deployment of daemonsets is typically done through YAML or JSON files\n\n**Common pitfalls**\n- Incorrect configuration can lead to resource waste or application failures\n\n**Related**\nDaemonSets, Deployments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/manage-daemon/_index/",
      "meta": {
        "weight": 130,
        "rel_path": "tasks/manage-daemon/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/manage-daemon/_index.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Manage Cluster Daemons"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/debug/_index",
      "type": "page",
      "title": "Monitoring, Logging, and Debugging",
      "summary": "Set up monitoring and logging to troubleshoot a cluster, or debug a containerized application.",
      "body": "\n\nSometimes things go wrong. This guide helps you gather the relevant information and resolve issues. It has four sections:\n\n* [Debugging your application](/docs/tasks/debug/debug-application/) - Useful\n  for users who are deploying code into Kubernetes and wondering why it is not working.\n* [Debugging your cluster](/docs/tasks/debug/debug-cluster/) - Useful\n  for cluster administrators and operators troubleshooting issues with the Kubernetes cluster itself.\n* [Logging in Kubernetes](/docs/tasks/debug/logging/) - Useful\n  for cluster administrators who want to set up and manage logging in Kubernetes.\n* [Monitoring in Kubernetes](/docs/tasks/debug/monitoring/) - Useful\n  for cluster administrators who want to enable monitoring in a Kubernetes cluster.\n\nYou should also check the known issues for the [release](https://github.com/kubernetes/kubernetes/releases)\nyou're using.\n\n\n\n## Getting help\n\nIf your problem isn't answered by any of the guides above, there are variety of\nways for you to get help from the Kubernetes community.\n\n### Questions\n\nThe documentation on this site has been structured to provide answers to a wide\nrange of questions. [Concepts](/docs/concepts/) explain the Kubernetes\narchitecture and how each component works, while [Setup](/docs/setup/) provides\npractical instructions for getting started. [Tasks](/docs/tasks/) show how to\naccomplish commonly used tasks, and [Tutorials](/docs/tutorials/) are more\ncomprehensive walkthroughs of real-world, industry-specific, or end-to-end\ndevelopment scenarios. The [Reference](/docs/reference/) section provides\ndetailed documentation on the [Kubernetes API](/docs/reference/generated/kubernetes-api//)\nand command-line interfaces (CLIs), such as [`kubectl`](/docs/reference/kubectl/).\n\n## Help! My question isn't covered!  I need help now!\n\n### Stack Exchange, Stack Overflow, or Server Fault {#stack-exchange}\n\nIf you have questions related to *software development* for your containerized app,\nyou can ask those on [Stack Overflow](https://stackoverflow.com/questions/tagged/kubernetes).\n\nIf you have Kubernetes questions related to *cluster management* or *configuration*,\nyou can ask those on\n[Server Fault](https://serverfault.com/questions/tagged/kubernetes).\n\nThere are also several more specific Stack Exchange network sites which might\nbe the right place to ask Kubernetes questions in areas such as\n[DevOps](https://devops.stackexchange.com/questions/tagged/kubernetes), \n[Software Engineering](https://softwareengineering.stackexchange.com/questions/tagged/kubernetes),\nor [InfoSec](https://security.stackexchange.com/questions/tagged/kubernetes).\n\nSomeone else from the community may have already asked a similar question or \nmay be able to help with your problem.\n\nThe Kubernetes team will also monitor\n[posts tagged Kubernetes](https://stackoverflow.com/questions/tagged/kubernetes).\nIf there aren't any existing questions that help, **please ensure that your question \nis [on-topic on Stack Overflow](https://stackoverflow.com/help/on-topic),\n[Server Fault](https://serverfault.com/help/on-topic), or the Stack Exchange \nNetwork site you're asking on**, and read through the guidance on \n[how to ask a new question](https://stackoverflow.com/help/how-to-ask),\nbefore asking a new one!\n\n### Slack\n\nMany people from the Kubernetes community hang out on Kubernetes Slack in the `#kubernetes-users` channel.\nSlack requires registration; you can [request an invitation](https://slack.kubernetes.io),\nand registration is open to everyone). Feel free to come and ask any and all questions.\nOnce registered, access the [Kubernetes organisation in Slack](https://kubernetes.slack.com)\nvia your web browser or via Slack's own dedicated app.\n\nOnce you are registered, browse the growing list of channels for various subjects of\ninterest. For example, people new to Kubernetes may also want to join the\n[`#kubernetes-novice`](https://kubernetes.slack.com/messages/kubernetes-novice) channel. As another example, develop\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/_index/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/debug/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Monitoring, Logging, and Debugging"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:getting-help",
      "type": "concept",
      "title": "Getting help",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 918,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:help-my-question-isn-t-covered-i-need-help-now",
      "type": "concept",
      "title": "Help! My question isn't covered!  I need help now!",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 1818,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:questions",
      "type": "concept",
      "title": "Questions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 1072,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stack-exchange-stack-overflow-or-server-fault-stack-exchange",
      "type": "concept",
      "title": "Stack Exchange, Stack Overflow, or Server Fault {#stack-exchange}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 1873,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:slack",
      "type": "concept",
      "title": "Slack",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 3333,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:forum",
      "type": "concept",
      "title": "Forum",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 5958,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bugs-and-feature-requests",
      "type": "concept",
      "title": "Bugs and feature requests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 6080,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-application/debug-running-pod",
      "type": "page",
      "title": "Debug Running Pods",
      "summary": "",
      "body": "\n\nThis page explains how to debug Pods running (or crashing) on a Node.\n\n\n## \n\n\n* Your [Pod](#gloss:pod) should already be\n  scheduled and running. If your Pod is not yet running, start with [Debugging\n  Pods](/docs/tasks/debug/debug-application/).\n* For some of the advanced debugging steps you need to know on which Node the\n  Pod is running and have shell access to run commands on that Node. You don't\n  need that access to run the standard debug steps that use `kubectl`.\n\n## Using `kubectl describe pod` to fetch details about pods\n\nFor this example we'll use a Deployment to create two pods, similar to the earlier example.\n\n\n\nCreate deployment by running following command:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/nginx-with-request.yaml\n```\n\n```none\ndeployment.apps/nginx-deployment created\n```\n\nCheck pod status by following command:\n\n```shell\nkubectl get pods\n```\n\n```none\nNAME                                READY   STATUS    RESTARTS   AGE\nnginx-deployment-67d4bdd6f5-cx2nz   1/1     Running   0          13s\nnginx-deployment-67d4bdd6f5-w6kd7   1/1     Running   0          13s\n```\n\nWe can retrieve a lot more information about each of these pods using `kubectl describe pod`. For example:\n\n```shell\nkubectl describe pod nginx-deployment-67d4bdd6f5-w6kd7\n```\n\n```none\nName:         nginx-deployment-67d4bdd6f5-w6kd7\nNamespace:    default\nPriority:     0\nNode:         kube-worker-1/192.168.0.113\nStart Time:   Thu, 17 Feb 2022 16:51:01 -0500\nLabels:       app=nginx\n              pod-template-hash=67d4bdd6f5\nAnnotations:  <none>\nStatus:       Running\nIP:           10.88.0.3\nIPs:\n  IP:           10.88.0.3\n  IP:           2001:db8::1\nControlled By:  ReplicaSet/nginx-deployment-67d4bdd6f5\nContainers:\n  nginx:\n    Container ID:   containerd://5403af59a2b46ee5a23fb0ae4b1e077f7ca5c5fb7af16e1ab21c00e0e616462a\n    Image:          nginx\n    Image ID:       docker.io/library/nginx@sha256:2834dc507516af02784808c5f48b7cbe38b8ed5d0f4837f16e78d00deb7e7767\n    Port:           80/TCP\n    Host Port:      0/TCP\n    State:          Running\n      Started:      Thu, 17 Feb 2022 16:51:05 -0500\n    Ready:          True\n    Restart Count:  0\n    Limits:\n      cpu:     500m\n      memory:  128Mi\n    Requests:\n      cpu:        500m\n      memory:     128Mi\n    Environment:  <none>\n    Mounts:\n      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-bgsgp (ro)\nConditions:\n  Type              Status\n  Initialized       True \n  Ready             True \n  ContainersReady   True \n  PodScheduled      True \nVolumes:\n  kube-api-access-bgsgp:\n    Type:                    Projected (a volume that contains injected data from multiple sources)\n    TokenExpirationSeconds:  3607\n    ConfigMapName:           kube-root-ca.crt\n    ConfigMapOptional:       <nil>\n    DownwardAPI:             true\nQoS Class:                   Guaranteed\nNode-Selectors:              <none>\nTolerations:                 node.kubernetes.io/not-ready:NoExecute op=Exists for 300s\n                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s\nEvents:\n  Type    Reason     Age   From               Message\n  ----    ------     ----  ----               -------\n  Normal  Scheduled  34s   default-scheduler  Successfully assigned default/nginx-deployment-67d4bdd6f5-w6kd7 to kube-worker-1\n  Normal  Pulling    31s   kubelet            Pulling image \"nginx\"\n  Normal  Pulled     30s   kubelet            Successfully pulled image \"nginx\" in 1.146417389s\n  Normal  Created    30s   kubelet            Created container nginx\n  Normal  Started    30s   kubelet            Started container nginx\n```\n\nHere you can see configuration information about the container(s) and Pod (labels, resource requirements, etc.), as well as status information about the container(s) and Pod (state, readiness, restart count, events, etc.).\n\nThe container state is one of Waiting, Running, or Terminated. Depending on the state, additional information will be provided - here you can se\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/debug/debug-application/debug-running-pod.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": null,
          "line_end": null,
          "quote": "Debug Running Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-kubectl-describe-pod-to-fetch-details-about-pods",
      "type": "concept",
      "title": "Using `kubectl describe pod` to fetch details about pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 559,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-debugging-pending-pods",
      "type": "concept",
      "title": "Example: debugging Pending Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 5035,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:examining-pod-logs-examine-pod-logs",
      "type": "concept",
      "title": "Examining pod logs {#examine-pod-logs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 12354,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-with-container-exec-container-exec",
      "type": "concept",
      "title": "Debugging with container exec {#container-exec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 12679,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-with-an-ephemeral-debug-container-ephemeral-container",
      "type": "concept",
      "title": "Debugging with an ephemeral debug container {#ephemeral-container}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 13650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-using-a-copy-of-the-pod",
      "type": "concept",
      "title": "Debugging using a copy of the Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 16764,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-via-a-shell-on-the-node-node-shell-session",
      "type": "concept",
      "title": "Debugging via a shell on the node {#node-shell-session}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 21192,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-a-pod-or-node-while-applying-a-profile-debugging-profiles",
      "type": "concept",
      "title": "Debugging a Pod or Node while applying a profile {#debugging-profiles}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 23444,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-debugging-using-ephemeral-containers-ephemeral-container-example",
      "type": "concept",
      "title": "Example debugging using ephemeral containers {#ephemeral-container-example}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 14123,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:copying-a-pod-while-adding-a-new-container",
      "type": "concept",
      "title": "Copying a Pod while adding a new container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 17189,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:copying-a-pod-while-changing-its-command",
      "type": "concept",
      "title": "Copying a Pod while changing its command",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 18796,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:copying-a-pod-while-changing-container-images",
      "type": "concept",
      "title": "Copying a Pod while changing container images",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 20401,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:capturing-and-analyzing-node-pod-traffic",
      "type": "concept",
      "title": "Capturing and analyzing Node/Pod traffic",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 22301,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applying-a-static-profile-static-profile",
      "type": "concept",
      "title": "Applying a Static Profile {#static-profile}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 23916,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applying-custom-profile-custom-profile",
      "type": "concept",
      "title": "Applying Custom Profile {#custom-profile}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 26584,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-application/get-shell-running-container",
      "type": "page",
      "title": "Get a Shell to a Running Container",
      "summary": "",
      "body": "\n\nThis page shows how to use `kubectl exec` to get a shell to a\nrunning container.\n\n\n\n\n## \n\n\n\n\n\n\n\n\n\n## Getting a shell to a container\n\nIn this exercise, you create a Pod that has one container. The container\nruns the nginx image. Here is the configuration file for the Pod:\n\n\n\nCreate the Pod:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/shell-demo.yaml\n```\n\nVerify that the container is running:\n\n```shell\nkubectl get pod shell-demo\n```\n\nGet a shell to the running container:\n\n```shell\nkubectl exec --stdin --tty shell-demo -- /bin/bash\n```\n\n\n> **Note:** The double dash (`--`) separates the arguments you want to pass to the command from the kubectl arguments.\n\n\nIn your shell, list the root directory:\n\n```shell\n# Run this inside the container\nls /\n```\n\nIn your shell, experiment with other commands. Here are\nsome examples:\n\n```shell\n# You can run these example commands inside the container\nls /\ncat /proc/mounts\ncat /proc/1/maps\napt-get update\napt-get install -y tcpdump\ntcpdump\napt-get install -y lsof\nlsof\napt-get install -y procps\nps aux\nps aux | grep nginx\n```\n\n## Writing the root page for nginx\n\nLook again at the configuration file for your Pod. The Pod\nhas an `emptyDir` volume, and the container mounts the volume\nat `/usr/share/nginx/html`.\n\nIn your shell, create an `index.html` file in the `/usr/share/nginx/html`\ndirectory:\n\n```shell\n# Run this inside the container\necho 'Hello shell demo' > /usr/share/nginx/html/index.html\n```\n\nIn your shell, send a GET request to the nginx server:\n\n```shell\n# Run this in the shell inside your container\napt-get update\napt-get install curl\ncurl http://localhost/\n```\n\nThe output shows the text that you wrote to the `index.html` file:\n\n```\nHello shell demo\n```\n\nWhen you are finished with your shell, enter `exit`.\n\n```shell\nexit # To quit the shell in the container\n```\n\n## Running individual commands in a container\n\nIn an ordinary command window, not your shell, list the environment\nvariables in the running container:\n\n```shell\nkubectl exec shell-demo -- env\n```\n\nExperiment with running other commands. Here are some examples:\n\n```shell\nkubectl exec shell-demo -- ps aux\nkubectl exec shell-demo -- ls /\nkubectl exec shell-demo -- cat /proc/1/mounts\n```\n\n\n\n\n\n## Opening a shell when a Pod has more than one container\n\nIf a Pod has more than one container, use `--container` or `-c` to\nspecify a container in the `kubectl exec` command. For example,\nsuppose you have a Pod named my-pod, and the Pod has two containers\nnamed _main-app_ and _helper-app_. The following command would open a\nshell to the _main-app_ container.\n\n```shell\nkubectl exec -i -t my-pod --container main-app -- /bin/bash\n```\n\n\n> **Note:** The short options `-i` and `-t` are the same as the long options `--stdin` and `--tty`\n\n\n\n## \n\n\n* Read about [kubectl exec](/docs/reference/generated/kubectl/kubectl-commands/#exec)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/debug/debug-application/get-shell-running-container.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": null,
          "line_end": null,
          "quote": "Get a Shell to a Running Container"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:getting-a-shell-to-a-container",
      "type": "concept",
      "title": "Getting a shell to a container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": 205,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-the-root-page-for-nginx",
      "type": "concept",
      "title": "Writing the root page for nginx",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": 1262,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-individual-commands-in-a-container",
      "type": "concept",
      "title": "Running individual commands in a container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": 2018,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:opening-a-shell-when-a-pod-has-more-than-one-container",
      "type": "concept",
      "title": "Opening a shell when a Pod has more than one container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": 2429,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-application/debug-pods",
      "type": "page",
      "title": "Debug Pods",
      "summary": "",
      "body": "\n\nThis guide is to help users debug applications that are deployed into Kubernetes\nand not behaving correctly. This is *not* a guide for people who want to debug their cluster.\nFor that you should check out [this guide](/docs/tasks/debug/debug-cluster).\n\n\n\n## Diagnosing the problem\n\nThe first step in troubleshooting is triage. What is the problem?\nIs it your Pods, your Replication Controller or your Service?\n\n   * [Debugging Pods](#debugging-pods)\n   * [Debugging Replication Controllers](#debugging-replication-controllers)\n   * [Debugging Services](#debugging-services)\n\n### Debugging Pods\n\nThe first step in debugging a Pod is taking a look at it. Check the current\nstate of the Pod and recent events with the following command:\n\n```shell\nkubectl describe pods ${POD_NAME}\n```\n\nLook at the state of the containers in the pod. Are they all `Running`?\nHave there been recent restarts?\n\nContinue debugging depending on the state of the pods.\n\n#### My pod stays pending\n\nIf a Pod is stuck in `Pending` it means that it can not be scheduled onto a node.\nGenerally this is because there are insufficient resources of one type or another\nthat prevent scheduling. Look at the output of the `kubectl describe ...` command above.\nThere should be messages from the scheduler about why it can not schedule your pod.\nReasons include:\n\n* **You don't have enough resources**: You may have exhausted the supply of CPU\n  or Memory in your cluster, in this case you need to delete Pods, adjust resource\n  requests, or add new nodes to your cluster. See [Compute Resources document](/docs/concepts/configuration/manage-resources-containers/)\n  for more information.\n\n* **You are using `hostPort`**: When you bind a Pod to a `hostPort` there are a\n  limited number of places that pod can be scheduled. In most cases, `hostPort`\n  is unnecessary, try using a Service object to expose your Pod.  If you do require\n  `hostPort` then you can only schedule as many Pods as there are nodes in your Kubernetes cluster.\n\n\n#### My pod stays waiting\n\nIf a Pod is stuck in the `Waiting` state, then it has been scheduled to a worker node, \nbut it can't run on that machine. Again, the information from `kubectl describe ...`\nshould be informative. The most common cause of `Waiting` pods is a failure to pull the image.\nThere are three things to check:\n\n* Make sure that you have the name of the image correct.\n* Have you pushed the image to the registry?\n* Try to manually pull the image to see if the image can be pulled. For example,\n  if you use Docker on your PC, run `docker pull <image>`.\n\n\n#### My pod stays terminating\n\nIf a Pod is stuck in the `Terminating` state, it means that a deletion has been\nissued for the Pod, but the control plane is unable to delete the Pod object.\n\nThis typically happens if the Pod has a [finalizer](/docs/concepts/overview/working-with-objects/finalizers/)\nand there is an [admission webhook](/docs/reference/access-authn-authz/extensible-admission-controllers/)\ninstalled in the cluster that prevents the control plane from removing the\nfinalizer.\n\nTo identify this scenario, check if your cluster has any\nValidatingWebhookConfiguration or MutatingWebhookConfiguration that target\n`UPDATE` operations for `pods` resources.\n\nIf the webhook is provided by a third-party:\n- Make sure you are using the latest version.\n- Disable the webhook for `UPDATE` operations.\n- Report an issue with the corresponding provider.\n\nIf you are the author of the webhook:\n- For a mutating webhook, make sure it never changes immutable fields on\n  `UPDATE` operations. For example, changes to containers are usually not allowed.\n- For a validating webhook, make sure that your validation policies only apply\n  to new changes. In other words, you should allow Pods with existing violations\n  to pass validation. This allows Pods that were created before the validating\n  webhook was installed to continue running.\n\n#### My pod is crashing or otherwise unhealthy\n\nOnce your pod has been scheduled, the met\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/debug/debug-application/debug-pods.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": null,
          "line_end": null,
          "quote": "Debug Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:diagnosing-the-problem",
      "type": "concept",
      "title": "Diagnosing the problem",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": 288,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-pods",
      "type": "concept",
      "title": "Debugging Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": 608,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-replication-controllers",
      "type": "concept",
      "title": "Debugging Replication Controllers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": 5843,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-services",
      "type": "concept",
      "title": "Debugging Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": 6207,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-application/debug-statefulset",
      "type": "page",
      "title": "Debug a StatefulSet",
      "summary": "",
      "body": "\nThis task shows you how to debug a StatefulSet.\n\n## \n\n* You need to have a Kubernetes cluster, and the kubectl command-line tool must be configured to communicate with your cluster.\n* You should have a StatefulSet running that you want to investigate.\n\n\n\n## Debugging a StatefulSet\n\nIn order to list all the pods which belong to a StatefulSet, which have a label `app.kubernetes.io/name=MyApp` set on them,\nyou can use the following:\n\n```shell\nkubectl get pods -l app.kubernetes.io/name=MyApp\n```\n\nIf you find that any Pods listed are in `Unknown` or `Terminating` state for an extended period of time,\nrefer to the [Deleting StatefulSet Pods](/docs/tasks/run-application/delete-stateful-set/) task for\ninstructions on how to deal with them.\nYou can debug individual Pods in a StatefulSet using the\n[Debugging Pods](/docs/tasks/debug/debug-application/debug-pods/) guide.\n\n## \n\nLearn more about [debugging an init-container](/docs/tasks/debug/debug-application/debug-init-containers/).\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-statefulset/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/debug/debug-application/debug-statefulset.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-statefulset.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-statefulset/",
          "line_start": null,
          "line_end": null,
          "quote": "Debug a StatefulSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-a-statefulset",
      "type": "concept",
      "title": "Debugging a StatefulSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-statefulset.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-statefulset/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-application/debug-init-containers",
      "type": "page",
      "title": "Debug Init Containers",
      "summary": "",
      "body": "\n\nThis page shows how to investigate problems related to the execution of\nInit Containers. The example command lines below refer to the Pod as\n`<pod-name>` and the Init Containers as `<init-container-1>` and\n`<init-container-2>`.\n\n## \n\n\n \n\n* You should be familiar with the basics of\n  [Init Containers](/docs/concepts/workloads/pods/init-containers/).\n* You should have [Configured an Init Container](/docs/tasks/configure-pod-container/configure-pod-initialization/#create-a-pod-that-has-an-init-container).\n\n\n\n## Checking the status of Init Containers\n\nDisplay the status of your pod:\n\n```shell\nkubectl get pod <pod-name>\n```\n\nFor example, a status of `Init:1/2` indicates that one of two Init Containers\nhas completed successfully:\n\n```\nNAME         READY     STATUS     RESTARTS   AGE\n<pod-name>   0/1       Init:1/2   0          7s\n```\n\nSee [Understanding Pod status](#understanding-pod-status) for more examples of\nstatus values and their meanings.\n\n## Getting details about Init Containers\n\nView more detailed information about Init Container execution:\n\n```shell\nkubectl describe pod <pod-name>\n```\n\nFor example, a Pod with two Init Containers might show the following:\n\n```\nInit Containers:\n  <init-container-1>:\n    Container ID:    ...\n    ...\n    State:           Terminated\n      Reason:        Completed\n      Exit Code:     0\n      Started:       ...\n      Finished:      ...\n    Ready:           True\n    Restart Count:   0\n    ...\n  <init-container-2>:\n    Container ID:    ...\n    ...\n    State:           Waiting\n      Reason:        CrashLoopBackOff\n    Last State:      Terminated\n      Reason:        Error\n      Exit Code:     1\n      Started:       ...\n      Finished:      ...\n    Ready:           False\n    Restart Count:   3\n    ...\n```\n\nYou can also access the Init Container statuses programmatically by reading the\n`status.initContainerStatuses` field on the Pod Spec:\n\n\n```shell\nkubectl get pod <pod-name> --template '{{.status.initContainerStatuses}}'\n```\n\n\nThis command will return the same information as above, formatted using a [Go template](https://pkg.go.dev/text/template).\n\n## Accessing logs from Init Containers\n\nPass the Init Container name along with the Pod name\nto access its logs.\n\n```shell\nkubectl logs <pod-name> -c <init-container-2>\n```\n\nInit Containers that run a shell script print\ncommands as they're executed. For example, you can do this in Bash by running\n`set -x` at the beginning of the script.\n\n\n\n\n\n## Understanding Pod status\n\nA Pod status beginning with `Init:` summarizes the status of Init Container\nexecution. The table below describes some example status values that you might\nsee while debugging Init Containers.\n\nStatus | Meaning\n------ | -------\n`Init:N/M` | The Pod has `M` Init Containers, and `N` have completed so far.\n`Init:Error` | An Init Container has failed to execute.\n`Init:CrashLoopBackOff` | An Init Container has failed repeatedly.\n`Pending` | The Pod has not yet begun executing Init Containers.\n`PodInitializing` or `Running` | The Pod has already finished executing Init Containers.\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
      "meta": {
        "weight": 40,
        "rel_path": "tasks/debug/debug-application/debug-init-containers.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": null,
          "line_end": null,
          "quote": "Debug Init Containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:checking-the-status-of-init-containers",
      "type": "concept",
      "title": "Checking the status of Init Containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": 639,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:getting-details-about-init-containers",
      "type": "concept",
      "title": "Getting details about Init Containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": 1083,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-logs-from-init-containers",
      "type": "concept",
      "title": "Accessing logs from Init Containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": 2241,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-pod-status",
      "type": "concept",
      "title": "Understanding Pod status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": 2604,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-application/determine-reason-pod-failure",
      "type": "page",
      "title": "Determine the Reason for Pod Failure",
      "summary": "",
      "body": "\n\nThis page shows how to write and read a Container termination message.\n\nTermination messages provide a way for containers to write\ninformation about fatal events to a location where it can\nbe easily retrieved and surfaced by tools like dashboards\nand monitoring software. In most cases, information that you\nput in a termination message should also be written to\nthe general\n[Kubernetes logs](/docs/concepts/cluster-administration/logging/).\n\n## \n\n\n\n\n\n## Writing and reading a termination message\n\nIn this exercise, you create a Pod that runs one container.\nThe manifest for that Pod specifies a command that runs when the container starts:\n\n\n\n1. Create a Pod based on the YAML configuration file:\n\n    ```shell\n    kubectl apply -f https://k8s.io/examples/debug/termination.yaml\n    ```\n    \n    In the YAML file, in the `command` and `args` fields, you can see that the\n    container sleeps for 10 seconds and then writes \"Sleep expired\" to\n    the `/dev/termination-log` file. After the container writes\n    the \"Sleep expired\" message, it terminates.\n\n1. Display information about the Pod:\n\n    ```shell\n    kubectl get pod termination-demo\n    ```\n\n    Repeat the preceding command until the Pod is no longer running.\n\n1. Display detailed information about the Pod:\n\n    ```shell\n    kubectl get pod termination-demo --output=yaml\n    ```\n\n    The output includes the \"Sleep expired\" message:\n\n    ```yaml\n    apiVersion: v1\n    kind: Pod\n    ...\n        lastState:\n          terminated:\n            containerID: ...\n            exitCode: 0\n            finishedAt: ...\n            message: |\n              Sleep expired\n            ...\n    ```\n\n1. Use a Go template to filter the output so that it includes only the termination message:\n\n    ```shell\n    kubectl get pod termination-demo -o go-template=\"{{range .status.containerStatuses}}{{.lastState.terminated.message}}{{end}}\"\n    ```\n\nIf you are running a multi-container Pod, you can use a Go template to include the container's name.\nBy doing so, you can discover which of the containers is failing:\n\n```shell\nkubectl get pod multi-container-pod -o go-template='{{range .status.containerStatuses}}{{printf \"%s:\\n%s\\n\\n\" .name .lastState.terminated.message}}{{end}}'\n```\n\n## Customizing the termination message\n\nKubernetes retrieves termination messages from the termination message file\nspecified in the `terminationMessagePath` field of a Container, which has a default\nvalue of `/dev/termination-log`. By customizing this field, you can tell Kubernetes\nto use a different file. Kubernetes use the contents from the specified file to\npopulate the Container's status message on both success and failure.\n\nThe termination message is intended to be brief final status, such as an assertion failure message.\nThe kubelet truncates messages that are longer than 4096 bytes.\n\nThe total message length across all containers is limited to 12KiB, divided equally among each container.\nFor example, if there are 12 containers (`initContainers` or `containers`), each has 1024 bytes of available termination message space.\n\nThe default termination message path is `/dev/termination-log`.\nYou cannot set the termination message path after a Pod is launched.\n\nIn the following example, the container writes termination messages to\n`/tmp/my-log` for Kubernetes to retrieve:\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: msg-path-demo\nspec:\n  containers:\n  - name: msg-path-demo-container\n    image: debian\n    terminationMessagePath: \"/tmp/my-log\"\n```\n\nMoreover, users can set the `terminationMessagePolicy` field of a Container for\nfurther customization. This field defaults to \"`File`\" which means the termination\nmessages are retrieved only from the termination message file. By setting the\n`terminationMessagePolicy` to \"`FallbackToLogsOnError`\", you can tell Kubernetes\nto use the last chunk of container log output if the termination message file\nis empty and the container exited with an error. The log output is limited to\n2048 bytes or\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-application/determine-reason-pod-failure/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/debug/debug-application/determine-reason-pod-failure.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-application/determine-reason-pod-failure.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/determine-reason-pod-failure/",
          "line_start": null,
          "line_end": null,
          "quote": "Determine the Reason for Pod Failure"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-and-reading-a-termination-message",
      "type": "concept",
      "title": "Writing and reading a termination message",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/determine-reason-pod-failure.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/determine-reason-pod-failure/",
          "line_start": 559,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customizing-the-termination-message",
      "type": "concept",
      "title": "Customizing the termination message",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/determine-reason-pod-failure.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/determine-reason-pod-failure/",
          "line_start": 2389,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-application/debug-service",
      "type": "page",
      "title": "Debug Services",
      "summary": "",
      "body": "\nAn issue that comes up rather frequently for new installations of Kubernetes is\nthat a Service is not working properly.  You've run your Pods through a\nDeployment (or other workload controller) and created a Service, but you\nget no response when you try to access it.  This document will hopefully help\nyou to figure out what's going wrong.\n\n\n\n## Running commands in a Pod\n\nFor many steps here you will want to see what a Pod running in the cluster\nsees.  The simplest way to do this is to run an interactive busybox Pod:\n\n```none\nkubectl run -it --rm --restart=Never busybox --image=registry.k8s.io/busybox:1.27.2 sh\n```\n\n\n> **Note:** If you don't see a command prompt, try pressing enter.\n\n\nIf you already have a running Pod that you prefer to use, you can run a\ncommand in it using:\n\n```shell\nkubectl exec <POD-NAME> -c <CONTAINER-NAME> -- <COMMAND>\n```\n\n## Setup\n\nFor the purposes of this walk-through, let's run some Pods.  Since you're\nprobably debugging your own Service you can substitute your own details, or you\ncan follow along and get a second data point.\n\n```shell\nkubectl create deployment hostnames --image=registry.k8s.io/serve_hostname\n```\n```none\ndeployment.apps/hostnames created\n```\n\n`kubectl` commands will print the type and name of the resource created or mutated, which can then be used in subsequent commands.\n\nLet's scale the deployment to 3 replicas.\n```shell\nkubectl scale deployment hostnames --replicas=3\n```\n```none\ndeployment.apps/hostnames scaled\n```\n\nNote that this is the same as if you had started the Deployment with the following\nYAML:\n\n```yaml\napiVersion: apps/v1\nkind: Deployment\nmetadata:\n  labels:\n    app: hostnames\n  name: hostnames\nspec:\n  selector:\n    matchLabels:\n      app: hostnames\n  replicas: 3\n  template:\n    metadata:\n      labels:\n        app: hostnames\n    spec:\n      containers:\n      - name: hostnames\n        image: registry.k8s.io/serve_hostname\n```\n\nThe label \"app\" is automatically set by `kubectl create deployment` to the name of the\nDeployment.\n\nYou can confirm your Pods are running:\n\n```shell\nkubectl get pods -l app=hostnames\n```\n```none\nNAME                        READY     STATUS    RESTARTS   AGE\nhostnames-632524106-bbpiw   1/1       Running   0          2m\nhostnames-632524106-ly40y   1/1       Running   0          2m\nhostnames-632524106-tlaok   1/1       Running   0          2m\n```\n\nYou can also confirm that your Pods are serving.  You can get the list of\nPod IP addresses and test them directly.\n\n```shell\nkubectl get pods -l app=hostnames \\\n    -o go-template='{{range .items}}{{.status.podIP}}{{\"\\n\"}}{{end}}'\n```\n```none\n10.244.0.5\n10.244.0.6\n10.244.0.7\n```\n\nThe example container used for this walk-through serves its own hostname\nvia HTTP on port 9376, but if you are debugging your own app, you'll want to\nuse whatever port number your Pods are listening on.\n\nFrom within a pod:\n\n```shell\nfor ep in 10.244.0.5:9376 10.244.0.6:9376 10.244.0.7:9376; do\n    wget -qO- $ep\ndone\n```\n\nThis should produce something like:\n\n```\nhostnames-632524106-bbpiw\nhostnames-632524106-ly40y\nhostnames-632524106-tlaok\n```\n\nIf you are not getting the responses you expect at this point, your Pods\nmight not be healthy or might not be listening on the port you think they are.\nYou might find `kubectl logs` to be useful for seeing what is happening, or\nperhaps you need to `kubectl exec` directly into your Pods and debug from\nthere.\n\nAssuming everything has gone to plan so far, you can start to investigate why\nyour Service doesn't work.\n\n## Does the Service exist?\n\nThe astute reader will have noticed that you did not actually create a Service\nyet - that is intentional.  This is a step that sometimes gets forgotten, and\nis the first thing to check.\n\nWhat would happen if you tried to access a non-existent Service?  If\nyou have another Pod that consumes this Service by name you would get\nsomething like:\n\n```shell\nwget -O- hostnames\n```\n```none\nResolving hostnames (hostnames)... failed: Name or service not known.\nwget: unable\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/debug/debug-application/debug-service.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": null,
          "line_end": null,
          "quote": "Debug Services"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-commands-in-a-pod",
      "type": "concept",
      "title": "Running commands in a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 376,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setup",
      "type": "concept",
      "title": "Setup",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 903,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:does-the-service-exist",
      "type": "concept",
      "title": "Does the Service exist?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 3551,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:any-network-policy-ingress-rules-affecting-the-target-pods",
      "type": "concept",
      "title": "Any Network Policy Ingress rules affecting the target Pods?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 5238,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:does-the-service-work-by-dns-name",
      "type": "concept",
      "title": "Does the Service work by DNS name?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 5549,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:does-the-service-work-by-ip",
      "type": "concept",
      "title": "Does the Service work by IP?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 9316,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:is-the-service-defined-correctly",
      "type": "concept",
      "title": "Is the Service defined correctly?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 9881,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:does-the-service-have-any-endpointslices",
      "type": "concept",
      "title": "Does the Service have any EndpointSlices?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 11328,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:are-the-pods-working",
      "type": "concept",
      "title": "Are the Pods working?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 13298,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:is-the-kube-proxy-working",
      "type": "concept",
      "title": "Is the kube-proxy working?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 14180,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:seek-help",
      "type": "concept",
      "title": "Seek help",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 22657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:does-any-service-work-by-dns-name-does-any-service-exist-in-dns",
      "type": "concept",
      "title": "Does any Service work by DNS name? {#does-any-service-exist-in-dns}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 8592,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:is-kube-proxy-running",
      "type": "concept",
      "title": "Is kube-proxy running?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 14793,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:is-kube-proxy-proxying",
      "type": "concept",
      "title": "Is kube-proxy proxying?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 19424,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:edge-case-a-pod-fails-to-reach-itself-via-the-service-ip-a-pod-fails-to-reach-itself-via-the-service-ip",
      "type": "concept",
      "title": "Edge case: A Pod fails to reach itself via the Service IP {#a-pod-fails-to-reach-itself-via-the-service-ip}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 19935,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-application/_index",
      "type": "page",
      "title": "Troubleshooting Applications",
      "summary": "Debugging common containerized application issues.",
      "body": "Troubleshooting applications involves identifying and resolving issues that prevent them from functioning correctly.\n\n**Why it matters**\nEffective troubleshooting ensures the smooth operation of applications and minimizes downtime.\n\n**Key facts**\n- Logging and monitoring tools can be used to identify application issues\n\n**Common pitfalls**\n- Inadequate logging and monitoring can lead to delayed issue resolution\n\n**Related**\nLogging, Monitoring",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-application/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/debug/debug-application/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-application/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Troubleshooting Applications"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/debug/debug-cluster/crictl",
      "type": "page",
      "title": "Debugging Kubernetes nodes with crictl",
      "summary": "",
      "body": "\n\n\n\n`crictl` is a command-line interface for CRI-compatible container runtimes.\nYou can use it to inspect and debug container runtimes and applications on a\nKubernetes node. `crictl` and its source are hosted in the\n[cri-tools](https://github.com/kubernetes-sigs/cri-tools) repository.\n\n## \n\n`crictl` requires a Linux operating system with a CRI runtime.\n\n\n\n## Installing crictl\n\nYou can download a compressed archive `crictl` from the cri-tools\n[release page](https://github.com/kubernetes-sigs/cri-tools/releases), for several\ndifferent architectures. Download the version that corresponds to your version\nof Kubernetes. Extract it and move it to a location on your system path, such as\n`/usr/local/bin/`.\n\n## General usage\n\nThe `crictl` command has several subcommands and runtime flags. Use\n`crictl help` or `crictl <subcommand> help` for more details.\n\nYou can set the endpoint for `crictl` by doing one of the following:\n\n* Set the `--runtime-endpoint` and `--image-endpoint` flags.\n* Set the `CONTAINER_RUNTIME_ENDPOINT` and `IMAGE_SERVICE_ENDPOINT` environment\n  variables.\n* Set the endpoint in the configuration file `/etc/crictl.yaml`. To specify a\n  different file, use the `--config=PATH_TO_FILE` flag when you run `crictl`.\n\n\nIf you don't set an endpoint, `crictl` attempts to connect to a list of known\nendpoints, which might result in an impact to performance.\n\n\nYou can also specify timeout values when connecting to the server and enable or\ndisable debugging, by specifying `timeout` or `debug` values in the configuration\nfile or using the `--timeout` and `--debug` command-line flags.\n\nTo view or edit the current configuration, view or edit the contents of\n`/etc/crictl.yaml`. For example, the configuration when using the `containerd`\ncontainer runtime would be similar to this:\n\n```\nruntime-endpoint: unix:///var/run/containerd/containerd.sock\nimage-endpoint: unix:///var/run/containerd/containerd.sock\ntimeout: 10\ndebug: true\n```\n\nTo learn more about `crictl`, refer to the [`crictl`\ndocumentation](https://github.com/kubernetes-sigs/cri-tools/blob/master/docs/crictl.md).\n\n## Example crictl commands\n\nThe following examples show some `crictl` commands and example output.\n\n### List pods\n\nList all pods:\n\n```shell\ncrictl pods\n```\n\nThe output is similar to this:\n\n```\nPOD ID              CREATED              STATE               NAME                         NAMESPACE           ATTEMPT\n926f1b5a1d33a       About a minute ago   Ready               sh-84d7dcf559-4r2gq          default             0\n4dccb216c4adb       About a minute ago   Ready               nginx-65899c769f-wv2gp       default             0\na86316e96fa89       17 hours ago         Ready               kube-proxy-gblk4             kube-system         0\n919630b8f81f1       17 hours ago         Ready               nvidia-device-plugin-zgbbv   kube-system         0\n```\n\nList pods by name:\n\n```shell\ncrictl pods --name nginx-65899c769f-wv2gp\n```\n\nThe output is similar to this:\n\n```\nPOD ID              CREATED             STATE               NAME                     NAMESPACE           ATTEMPT\n4dccb216c4adb       2 minutes ago       Ready               nginx-65899c769f-wv2gp   default             0\n```\n\nList pods by label:\n\n```shell\ncrictl pods --label run=nginx\n```\n\nThe output is similar to this:\n\n```\nPOD ID              CREATED             STATE               NAME                     NAMESPACE           ATTEMPT\n4dccb216c4adb       2 minutes ago       Ready               nginx-65899c769f-wv2gp   default             0\n```\n\n### List images\n\nList all images:\n\n```shell\ncrictl images\n```\n\nThe output is similar to this:\n\n```\nIMAGE                                     TAG                 IMAGE ID            SIZE\nbusybox                                   latest              8c811b4aec35f       1.15MB\nk8s-gcrio.azureedge.net/hyperkube-amd64   v1.10.3             e179bbfe5d238       665MB\nk8s-gcrio.azureedge.net/pause-amd64       3.1                 da86e6ba6ca19       742kB\nnginx                   \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
      "meta": {
        "weight": 30,
        "rel_path": "tasks/debug/debug-cluster/crictl.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": null,
          "line_end": null,
          "quote": "Debugging Kubernetes nodes with crictl"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installing-crictl",
      "type": "concept",
      "title": "Installing crictl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 481,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:general-usage",
      "type": "concept",
      "title": "General usage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 832,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-crictl-commands",
      "type": "concept",
      "title": "Example crictl commands",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 2242,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-pods",
      "type": "concept",
      "title": "List pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 2342,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-images",
      "type": "concept",
      "title": "List images",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 3669,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-containers",
      "type": "concept",
      "title": "List containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 4829,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execute-a-command-in-a-running-container",
      "type": "concept",
      "title": "Execute a command in a running container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 6870,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-a-container-s-logs",
      "type": "concept",
      "title": "Get a container's logs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 7064,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-cluster/topology",
      "type": "page",
      "title": "Troubleshooting Topology Management",
      "summary": "",
      "body": "\n\nKubernetes keeps many aspects of how pods execute on nodes abstracted\nfrom the user. This is by design. However, some workloads require\nstronger guarantees in terms of latency and/or performance in order to operate\nacceptably. The `kubelet` provides methods to enable more complex workload\nplacement policies while keeping the abstraction free from explicit placement\ndirectives.\n\nYou can manage topology within nodes. This means helping the kubelet to configure the host operating system so that\nPods and containers are placed on the correct side of inner boundaries, such as _NUMA domains_. (NUMA is an abbreviation\nof _non-uniform memory access_, and refers to an idea that CPUs might be topologically closer to specific regions of\nmemory, due to the physical layout of the hardware components and the way that these are connected).\n\n## Sources of troubleshooting information\n\nYou can use the following means to troubleshoot the reason why a pod could not be deployed or\nbecame rejected at a node, in the context of topology management:\n\n- _Pod status_ - indicates topology affinity errors\n- _system logs_ - include valuable information for debugging; for example, about generated hints\n- _kubelet state file_ - the dump of internal state of the Memory Manager\n  (including the _node map_ and _memory maps_)\n- You can use the [device plugin resource API](#device-plugin-resource-api)\n  to retrieve information about the memory reserved for containers\n\n## Troubleshoot `TopologyAffinityError` {#TopologyAffinityError}\n\nThis error typically occurs in the following situations:\n\n* a node has not enough resources available to satisfy the pod's request\n* the pod's request is rejected due to particular Topology Manager policy constraints\n\nThe error appears in the status of a pod:\n\n```shell\nkubectl get pods\n```\n\n```none\nNAME         READY   STATUS                  RESTARTS   AGE\nguaranteed   0/1     TopologyAffinityError   0          113s\n```\n\nUse `kubectl describe pod <id>` or `kubectl events` to obtain a detailed error message:\n\n```none\nWarning  TopologyAffinityError  10m   kubelet, dell8  Resources cannot be allocated with Topology locality\n```\n\n## Examine system logs\n\nSearch system logs with respect to a particular pod.\n\nThe set of hints generated by CPU Manager should be present in the logs.\nAlso, the set of hints that Memory Manager generated for the pod can be found in the logs.\n\nTopology Manager merges these hints to calculate a single best hint.\nThe best hint should also be present in the logs.\n\nThe best hint indicates where to allocate all the resources.\nTopology Manager tests this hint against its current policy, and based on the verdict,\nit either admits the pod to the node or rejects it.\n\nAlso, search the logs for occurrences associated with the Memory Manager;\nfor example to find out information about `cgroups` and `cpuset.mems` updates.\n\n## Examples\n\n### Examine the memory manager state on a node\n\nLet us first deploy a sample `Guaranteed` pod whose specification is as follows:\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: guaranteed\nspec:\n  containers:\n  - name: guaranteed\n    image: consumer\n    imagePullPolicy: Never\n    resources:\n      limits:\n        cpu: \"2\"\n        memory: 150Gi\n      requests:\n        cpu: \"2\"\n        memory: 150Gi\n    command: [\"sleep\",\"infinity\"]\n```\n\nNext, log into the node where it was deployed and examine the state file in\n`/var/lib/kubelet/memory_manager_state`:\n\n```json\n{\n   \"policyName\":\"Static\",\n   \"machineState\":{\n      \"0\":{\n         \"numberOfAssignments\":1,\n         \"memoryMap\":{\n            \"hugepages-1Gi\":{\n               \"total\":0,\n               \"systemReserved\":0,\n               \"allocatable\":0,\n               \"reserved\":0,\n               \"free\":0\n            },\n            \"memory\":{\n               \"total\":134987354112,\n               \"systemReserved\":3221225472,\n               \"allocatable\":131766128640,\n               \"reserved\":131766128640,\n               \"free\":0\n            }\n         }\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
      "meta": {
        "weight": 60,
        "rel_path": "tasks/debug/debug-cluster/topology.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": null,
          "line_end": null,
          "quote": "Troubleshooting Topology Management"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sources-of-troubleshooting-information",
      "type": "concept",
      "title": "Sources of troubleshooting information",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 857,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:troubleshoot-topologyaffinityerror-topologyaffinityerror",
      "type": "concept",
      "title": "Troubleshoot `TopologyAffinityError` {#TopologyAffinityError}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 1475,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:examine-system-logs",
      "type": "concept",
      "title": "Examine system logs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 2176,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-the-device-plugin-resource-api-device-plugin-resource-api",
      "type": "concept",
      "title": "Check the device plugin resource API {#device-plugin-resource-api}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 6126,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:examine-the-memory-manager-state-on-a-node",
      "type": "concept",
      "title": "Examine the memory manager state on a node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 2907,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-cluster/windows",
      "type": "page",
      "title": "Windows debugging tips",
      "summary": "",
      "body": "\n\n\n\n## Node-level troubleshooting {#troubleshooting-node}\n\n1. My Pods are stuck at \"Container Creating\" or restarting over and over\n\n   Ensure that your pause image is compatible with your Windows OS version.\n   See [Pause container](/docs/concepts/windows/intro/#pause-container)\n   to see the latest / recommended pause image and/or get more information.\n\n   \n> **Note:** If using containerd as your container runtime the pause image is specified in the\n   `plugins.plugins.cri.sandbox_image` field of the of config.toml configuration file.\n\n\n1. My pods show status as `ErrImgPull` or `ImagePullBackOff`\n\n   Ensure that your Pod is getting scheduled to a\n   [compatible](https://docs.microsoft.com/virtualization/windowscontainers/deploy-containers/version-compatibility)\n   Windows Node.\n\n   More information on how to specify a compatible node for your Pod can be found in\n   [this guide](/docs/concepts/windows/user-guide/#ensuring-os-specific-workloads-land-on-the-appropriate-container-host).\n\n## Network troubleshooting {#troubleshooting-network}\n\n1. My Windows Pods do not have network connectivity\n\n   If you are using virtual machines, ensure that MAC spoofing is **enabled** on all\n   the VM network adapter(s).\n\n1. My Windows Pods cannot ping external resources\n\n   Windows Pods do not have outbound rules programmed for the ICMP protocol. However,\n   TCP/UDP is supported. When trying to demonstrate connectivity to resources\n   outside of the cluster, substitute `ping <IP>` with corresponding\n   `curl <IP>` commands.\n\n   If you are still facing problems, most likely your network configuration in\n   [cni.conf](https://github.com/Microsoft/SDN/blob/master/Kubernetes/flannel/l2bridge/cni/config/cni.conf)\n   deserves some extra attention. You can always edit this static file. The\n   configuration update will apply to any new Kubernetes resources.\n\n   One of the Kubernetes networking requirements\n   (see [Kubernetes model](/docs/concepts/cluster-administration/networking/)) is\n   for cluster communication to occur without\n   NAT internally. To honor this requirement, there is an\n   [ExceptionList](https://github.com/Microsoft/SDN/blob/master/Kubernetes/flannel/l2bridge/cni/config/cni.conf#L20)\n   for all the communication where you do not want outbound NAT to occur. However,\n   this also means that you need to exclude the external IP you are trying to query\n   from the `ExceptionList`. Only then will the traffic originating from your Windows\n   pods be SNAT'ed correctly to receive a response from the outside world. In this\n   regard, your `ExceptionList` in `cni.conf` should look as follows:\n\n   ```conf\n   \"ExceptionList\": [\n                   \"10.244.0.0/16\",  # Cluster subnet\n                   \"10.96.0.0/12\",   # Service subnet\n                   \"10.127.130.0/24\" # Management (host) subnet\n               ]\n   ```\n\n1. My Windows node cannot access `NodePort` type Services\n\n   Local NodePort access from the node itself fails. This is a known\n   limitation. NodePort access works from other nodes or external clients.\n\n1. vNICs and HNS endpoints of containers are being deleted\n\n   This issue can be caused when the `hostname-override` parameter is not passed to\n   [kube-proxy](/docs/reference/command-line-tools-reference/kube-proxy/). To resolve\n   it, users need to pass the hostname to kube-proxy as follows:\n\n   ```powershell\n   C:\\k\\kube-proxy.exe --hostname-override=$(hostname)\n   ```\n\n1. My Windows node cannot access my services using the service IP\n\n   This is a known limitation of the networking stack on Windows. However, Windows Pods can access the Service IP.\n\n1. No network adapter is found when starting the kubelet\n\n   The Windows networking stack needs a virtual adapter for Kubernetes networking to work.\n   If the following commands return no results (in an admin shell),\n   virtual network creation — a necessary prerequisite for the kubelet to work — has failed:\n\n   ```powershell\n   Get-HnsNetwork | ? Name -ieq \"cbr0\"\n   Get-NetAdap\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/windows/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/debug/debug-cluster/windows.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/windows.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/windows/",
          "line_start": null,
          "line_end": null,
          "quote": "Windows debugging tips"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-level-troubleshooting-troubleshooting-node",
      "type": "concept",
      "title": "Node-level troubleshooting {#troubleshooting-node}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/windows.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/windows/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:network-troubleshooting-troubleshooting-network",
      "type": "concept",
      "title": "Network troubleshooting {#troubleshooting-network}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/windows.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/windows/",
          "line_start": 1051,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flannel-troubleshooting",
      "type": "concept",
      "title": "Flannel troubleshooting",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/windows.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/windows/",
          "line_start": 5574,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:further-investigation",
      "type": "concept",
      "title": "Further investigation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/windows.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/windows/",
          "line_start": 7143,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "type": "page",
      "title": "Troubleshooting kubectl",
      "summary": "",
      "body": "\n\nThis documentation is about investigating and diagnosing\n[kubectl](#gloss:kubectl) related issues.\nIf you encounter issues accessing `kubectl` or connecting to your cluster, this\ndocument outlines various common scenarios and potential solutions to help\nidentify and address the likely cause.\n\n\n\n## \n\n* You need to have a Kubernetes cluster.\n* You also need to have `kubectl` installed - see [install tools](/docs/tasks/tools/#kubectl)\n\n## Verify kubectl setup\n\nMake sure you have installed and configured `kubectl` correctly on your local machine.\nCheck the `kubectl` version to ensure it is up-to-date and compatible with your cluster.\n\nCheck kubectl version:\n\n```shell\nkubectl version\n```\n\nYou'll see a similar output:\n\n```console\nClient Version: version.Info{Major:\"1\", Minor:\"27\", GitVersion:\"v1.27.4\",GitCommit:\"fa3d7990104d7c1f16943a67f11b154b71f6a132\", GitTreeState:\"clean\",BuildDate:\"2023-07-19T12:20:54Z\", GoVersion:\"go1.20.6\", Compiler:\"gc\", Platform:\"linux/amd64\"}\nKustomize Version: v5.0.1\nServer Version: version.Info{Major:\"1\", Minor:\"27\", GitVersion:\"v1.27.3\",GitCommit:\"25b4e43193bcda6c7328a6d147b1fb73a33f1598\", GitTreeState:\"clean\",BuildDate:\"2023-06-14T09:47:40Z\", GoVersion:\"go1.20.5\", Compiler:\"gc\", Platform:\"linux/amd64\"}\n\n```\n\nIf you see `Unable to connect to the server: dial tcp <server-ip>:8443: i/o timeout`,\ninstead of `Server Version`, you need to troubleshoot kubectl connectivity with your cluster.\n\nMake sure you have installed the kubectl by following the\n[official documentation for installing kubectl](/docs/tasks/tools/#kubectl), and you have\nproperly configured the `$PATH` environment variable.\n\n## Check kubeconfig\n\nThe `kubectl` requires a `kubeconfig` file to connect to a Kubernetes cluster. The\n`kubeconfig` file is usually located under the `~/.kube/config` directory. Make sure\nthat you have a valid `kubeconfig` file. If you don't have a `kubeconfig` file, you can\nobtain it from your Kubernetes administrator, or you can copy it from your Kubernetes\ncontrol plane's `/etc/kubernetes/admin.conf` directory. If you have deployed your\nKubernetes cluster on a cloud platform and lost your `kubeconfig` file, you can\nre-generate it using your cloud provider's tools. Refer the cloud provider's\ndocumentation for re-generating a `kubeconfig` file.\n\nCheck if the `$KUBECONFIG` environment variable is configured correctly. You can set\n`$KUBECONFIG`environment variable or use the `--kubeconfig` parameter with the kubectl\nto specify the directory of a `kubeconfig` file.\n\n## Check VPN connectivity\n\nIf you are using a Virtual Private Network (VPN) to access your Kubernetes cluster,\nmake sure that your VPN connection is active and stable. Sometimes, VPN disconnections\ncan lead to connection issues with the cluster. Reconnect to the VPN and try accessing\nthe cluster again.\n\n## Authentication and authorization\n\nIf you are using the token based authentication and the kubectl is returning an error\nregarding the authentication token or authentication server address, validate the\nKubernetes authentication token and the authentication server address are configured\nproperly.\n\nIf kubectl is returning an error regarding the authorization, make sure that you are\nusing the valid user credentials. And you have the permission to access the resource\nthat you have requested.\n\n## Verify contexts\n\nKubernetes supports [multiple clusters and contexts](/docs/tasks/access-application-cluster/configure-access-multiple-clusters/).\nEnsure that you are using the correct context to interact with your cluster.\n\nList available contexts:\n\n```shell\nkubectl config get-contexts\n```\n\nSwitch to the appropriate context:\n\n```shell\nkubectl config use-context <context-name>\n```\n\n## API server and load balancer\n\nThe [kube-apiserver](#gloss:kube-apiserver) server is the\ncentral component of a Kubernetes cluster. If the API server or the load balancer that\nruns in front of your API servers is not reachable or not responding, you won't be able\nto interact with the cluster\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
      "meta": {
        "weight": 10,
        "rel_path": "tasks/debug/debug-cluster/troubleshoot-kubectl.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": "Troubleshooting kubectl"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-kubectl-setup",
      "type": "concept",
      "title": "Verify kubectl setup",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 531,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-kubeconfig",
      "type": "concept",
      "title": "Check kubeconfig",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 1730,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-vpn-connectivity",
      "type": "concept",
      "title": "Check VPN connectivity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 2608,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authentication-and-authorization",
      "type": "concept",
      "title": "Authentication and authorization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 2913,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-contexts",
      "type": "concept",
      "title": "Verify contexts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 3410,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-server-and-load-balancer",
      "type": "concept",
      "title": "API server and load balancer",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 3798,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tls-problems",
      "type": "concept",
      "title": "TLS problems",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 4506,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-kubectl-helpers",
      "type": "concept",
      "title": "Verify kubectl helpers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 5546,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-cluster/audit",
      "type": "page",
      "title": "Auditing",
      "summary": "",
      "body": "\n\nKubernetes _auditing_ provides a security-relevant, chronological set of records documenting\nthe sequence of actions in a cluster. The cluster audits the activities generated by users,\nby applications that use the Kubernetes API, and by the control plane itself.\n\nAuditing allows cluster administrators to answer the following questions:\n\n - what happened?\n - when did it happen?\n - who initiated it?\n - on what did it happen?\n - where was it observed?\n - from where was it initiated?\n - to where was it going?\n\n\n\nAudit records begin their lifecycle inside the\n[kube-apiserver](/docs/reference/command-line-tools-reference/kube-apiserver/)\ncomponent. Each request on each stage\nof its execution generates an audit event, which is then pre-processed according to\na certain policy and written to a backend. The policy determines what's recorded\nand the backends persist the records. The current backend implementations\ninclude logs files and webhooks.\n\nEach request can be recorded with an associated _stage_. The defined stages are:\n\n- `RequestReceived` - The stage for events generated as soon as the audit\n  handler receives the request, and before it is delegated down the handler\n  chain.\n- `ResponseStarted` - Once the response headers are sent, but before the\n  response body is sent. This stage is only generated for long-running requests\n  (e.g. watch).\n- `ResponseComplete` - The response body has been completed and no more bytes\n  will be sent.\n- `Panic` - Events generated when a panic occurred.\n\n\n> **Note:** The configuration of an\n[Audit Event configuration](/docs/reference/config-api/apiserver-audit.v1/#audit-k8s-io-v1-Event)\nis different from the\n[Event](/docs/reference/generated/kubernetes-api//#event-v1-core)\nAPI object.\n\n\nThe audit logging feature increases the memory consumption of the API server\nbecause some context required for auditing is stored for each request.\nMemory consumption depends on the audit logging configuration.\n\n## Audit policy\n\nAudit policy defines rules about what events should be recorded and what data\nthey should include. The audit policy object structure is defined in the\n[`audit.k8s.io` API group](/docs/reference/config-api/apiserver-audit.v1/#audit-k8s-io-v1-Policy).\nWhen an event is processed, it's\ncompared against the list of rules in order. The first matching rule sets the\n_audit level_ of the event. The defined audit levels are:\n\n- `None` - don't log events that match this rule.\n- `Metadata` - log events with metadata (requesting user, timestamp, resource,\n  verb, etc.) but not request or response body.\n- `Request` - log events with request metadata and body but not response body.\n  This does not apply for non-resource requests.\n- `RequestResponse` - log events with request metadata, request body and response body.\n  This does not apply for non-resource requests.\n\nYou can pass a file with the policy to `kube-apiserver`\nusing the `--audit-policy-file` flag. If the flag is omitted, no events are logged.\nNote that the `rules` field __must__ be provided in the audit policy file.\nA policy with no (0) rules is treated as illegal.\n\nBelow is an example audit policy file:\n\n\n\nYou can use a minimal audit policy file to log all requests at the `Metadata` level:\n\n```yaml\n# Log all requests at the Metadata level.\napiVersion: audit.k8s.io/v1\nkind: Policy\nrules:\n- level: Metadata\n```\n\nIf you're crafting your own audit profile, you can use the audit profile for Google Container-Optimized OS as a starting point. You can check the\n[configure-helper.sh](https://github.com/kubernetes/kubernetes/blob/master/cluster/gce/gci/configure-helper.sh)\nscript, which generates an audit policy file. You can see most of the audit policy file by looking directly at the script.\n\nYou can also refer to the [`Policy` configuration reference](/docs/reference/config-api/apiserver-audit.v1/#audit-k8s-io-v1-Policy)\nfor details about the fields defined.\n\n## Audit backends\n\nAudit backends persist audit events to an external storage.\nOut of the box\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/debug/debug-cluster/audit.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": null,
          "line_end": null,
          "quote": "Auditing"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:audit-policy",
      "type": "concept",
      "title": "Audit policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 2026,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:audit-backends",
      "type": "concept",
      "title": "Audit backends",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 4024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:event-batching-batching",
      "type": "concept",
      "title": "Event batching {#batching}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 7200,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:parameter-tuning",
      "type": "concept",
      "title": "Parameter tuning",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 10426,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:log-backend",
      "type": "concept",
      "title": "Log backend",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 4950,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhook-backend",
      "type": "concept",
      "title": "Webhook backend",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 6383,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:log-entry-truncation-truncate",
      "type": "concept",
      "title": "Log entry truncation {#truncate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 11500,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-cluster/resource-usage-monitoring",
      "type": "page",
      "title": "Tools for Monitoring Resources",
      "summary": "",
      "body": "\n\nTo scale an application and provide a reliable service, you need to\nunderstand how the application behaves when it is deployed. You can examine\napplication performance in a Kubernetes cluster by examining the containers,\n[pods](/docs/concepts/workloads/pods/),\n[services](/docs/concepts/services-networking/service/), and\nthe characteristics of the overall cluster. Kubernetes provides detailed\ninformation about an application's resource usage at each of these levels.\nThis information allows you to evaluate your application's performance and\nwhere bottlenecks can be removed to improve overall performance. \n\n\n\nIn Kubernetes, application monitoring does not depend on a single monitoring solution.\nOn new clusters, you can use [resource metrics](#resource-metrics-pipeline) or\n[full metrics](#full-metrics-pipeline) pipelines to collect monitoring statistics.\n\n## Resource metrics pipeline\n\nThe resource metrics pipeline provides a limited set of metrics related to\ncluster components such as the\n[Horizontal Pod Autoscaler](/docs/tasks/run-application/horizontal-pod-autoscale/)\ncontroller, as well as the `kubectl top` utility.\nThese  metrics are collected by the lightweight, short-term, in-memory \n[metrics-server](https://github.com/kubernetes-sigs/metrics-server) and\n are exposed via the `metrics.k8s.io` API. \n\nmetrics-server discovers all nodes on the cluster and \nqueries each node's \n[kubelet](/docs/reference/command-line-tools-reference/kubelet/) for CPU and \nmemory usage. The kubelet acts as a bridge between the Kubernetes master and \nthe nodes, managing the pods and containers running on a machine. The kubelet \ntranslates each pod into its constituent containers and fetches individual \ncontainer usage statistics from the container runtime through the container \nruntime interface. If you use a container runtime that uses Linux cgroups and\nnamespaces to implement containers, and the container runtime does not publish\nusage statistics, then the kubelet can look up those statistics directly\n(using code from [cAdvisor](https://github.com/google/cadvisor)).\nNo matter how those statistics arrive, the kubelet then exposes the aggregated pod\nresource usage statistics through the metrics-server Resource Metrics API.\nThis API is served at `/metrics/resource` on the kubelet's authenticated and \nread-only ports. \n\n## Full metrics pipeline\n\nA full metrics pipeline gives you access to richer metrics. Kubernetes can\nrespond to these metrics by  automatically scaling or adapting the cluster\nbased on its current state, using mechanisms such as the Horizontal Pod\nAutoscaler. The monitoring pipeline fetches metrics from the kubelet and\nthen exposes them to Kubernetes via an adapter by implementing either the\n`custom.metrics.k8s.io` or `external.metrics.k8s.io` API.\n\n\nKubernetes is designed to work with [OpenMetrics](https://openmetrics.io/), \nwhich is one of the\n[CNCF Observability and Analysis - Monitoring Projects](https://landscape.cncf.io/?group=projects-and-products&view-mode=card#observability-and-analysis--monitoring),\nbuilt upon and carefully extending [Prometheus exposition format](https://prometheus.io/docs/instrumenting/exposition_formats/)\nin almost 100% backwards-compatible ways.\n\nIf you glance over at the\n[CNCF Landscape](https://landscape.cncf.io/?group=projects-and-products&view-mode=card#observability-and-analysis--monitoring),\nyou can see a number of monitoring projects that can work with Kubernetes by _scraping_\nmetric data and using that to help you observe your cluster. It is up to you to select the tool\nor tools that suit your needs. The CNCF landscape for observability and analytics includes a\nmix of open-source software, paid-for software-as-a-service, and other commercial products.\n\nWhen you design and implement a full metrics pipeline you can make that monitoring data\navailable back to Kubernetes. For example, a HorizontalPodAutoscaler can use the processed\nmetrics to work out how many Pods to run for a component of your wor\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-usage-monitoring/",
      "meta": {
        "weight": 15,
        "rel_path": "tasks/debug/debug-cluster/resource-usage-monitoring.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-usage-monitoring.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-usage-monitoring/",
          "line_start": null,
          "line_end": null,
          "quote": "Tools for Monitoring Resources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-metrics-pipeline",
      "type": "concept",
      "title": "Resource metrics pipeline",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-usage-monitoring.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-usage-monitoring/",
          "line_start": 897,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:full-metrics-pipeline",
      "type": "concept",
      "title": "Full metrics pipeline",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-usage-monitoring.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-usage-monitoring/",
          "line_start": 2370,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "type": "page",
      "title": "Monitor Node Health",
      "summary": "",
      "body": "\n\n*Node Problem Detector* is a daemon for monitoring and reporting about a node's health.\nYou can run Node Problem Detector as a `DaemonSet` or as a standalone daemon.\nNode Problem Detector collects information about node problems from various daemons\nand reports these conditions to the API server as Node [Condition](/docs/concepts/architecture/nodes/#condition)s\nor as [Event](/docs/reference/kubernetes-api/cluster-resources/event-v1)s.\n\nTo learn how to install and use Node Problem Detector, see\n[Node Problem Detector project documentation](https://github.com/kubernetes/node-problem-detector).\n\n## \n\n\n\n\n\n## Limitations\n\n* Node Problem Detector uses the kernel log format for reporting kernel issues.\n  To learn how to extend the kernel log format, see [Add support for another log format](#support-other-log-format).\n\n## Enabling Node Problem Detector\n\nSome cloud providers enable Node Problem Detector as an [Addon](#gloss:addons).\nYou can also enable Node Problem Detector with `kubectl` or by creating an Addon DaemonSet.\n\n### Using kubectl to enable Node Problem Detector {#using-kubectl}\n\n`kubectl` provides the most flexible management of Node Problem Detector.\nYou can overwrite the default configuration to fit it into your environment or\nto detect customized node problems. For example:\n\n1. Create a Node Problem Detector configuration similar to `node-problem-detector.yaml`:\n\n   \n\n   \n> **Note:** You should verify that the system log directory is right for your operating system distribution.\n\n\n1. Start node problem detector with `kubectl`:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/debug/node-problem-detector.yaml\n   ```\n\n### Using an Addon pod to enable Node Problem Detector {#using-addon-pod}\n\nIf you are using a custom cluster bootstrap solution and don't need\nto overwrite the default configuration, you can leverage the Addon pod to\nfurther automate the deployment.\n\nCreate `node-problem-detector.yaml`, and save the configuration in the Addon pod's\ndirectory `/etc/kubernetes/addons/node-problem-detector` on a control plane node.\n\n## Overwrite the configuration\n\nThe [default configuration](https://github.com/kubernetes/node-problem-detector/tree/v0.8.12/config)\nis embedded when building the Docker image of Node Problem Detector.\n\nHowever, you can use a [`ConfigMap`](/docs/tasks/configure-pod-container/configure-pod-configmap/)\nto overwrite the configuration:\n\n1. Change the configuration files in `config/`\n1. Create the `ConfigMap` `node-problem-detector-config`:\n\n   ```shell\n   kubectl create configmap node-problem-detector-config --from-file=config/\n   ```\n\n1. Change the `node-problem-detector.yaml` to use the `ConfigMap`:\n\n   \n\n1. Recreate the Node Problem Detector with the new configuration file:\n\n   ```shell\n   # If you have a node-problem-detector running, delete before recreating\n   kubectl delete -f https://k8s.io/examples/debug/node-problem-detector.yaml\n   kubectl apply -f https://k8s.io/examples/debug/node-problem-detector-configmap.yaml\n   ```\n\n\n> **Note:** This approach only applies to a Node Problem Detector started with `kubectl`.\n\n\nOverwriting a configuration is not supported if a Node Problem Detector runs as a cluster Addon.\nThe Addon manager does not support `ConfigMap`.\n\n## Problem Daemons\n\nA problem daemon is a sub-daemon of the Node Problem Detector. It monitors specific kinds of node\nproblems and reports them to the Node Problem Detector.\nThere are several types of supported problem daemons.\n\n- A `SystemLogMonitor` type of daemon monitors the system logs and reports problems and metrics\n  according to predefined rules. You can customize the configurations for different log sources\n  such as [filelog](https://github.com/kubernetes/node-problem-detector/blob/v0.8.12/config/kernel-monitor-filelog.json),\n  [kmsg](https://github.com/kubernetes/node-problem-detector/blob/v0.8.12/config/kernel-monitor.json),\n  [kernel](https://github.com/kubernetes/node-problem-detector/blob/v0.8.12/config/kernel-monito\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/debug/debug-cluster/monitor-node-health.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": null,
          "line_end": null,
          "quote": "Monitor Node Health"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-node-problem-detector",
      "type": "concept",
      "title": "Enabling Node Problem Detector",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 930,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:overwrite-the-configuration",
      "type": "concept",
      "title": "Overwrite the configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 2291,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:problem-daemons",
      "type": "concept",
      "title": "Problem Daemons",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 3555,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exporter",
      "type": "concept",
      "title": "Exporter",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 6025,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:recommendations-and-restrictions",
      "type": "concept",
      "title": "Recommendations and restrictions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 6877,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-kubectl-to-enable-node-problem-detector-using-kubectl",
      "type": "concept",
      "title": "Using kubectl to enable Node Problem Detector {#using-kubectl}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 1170,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-an-addon-pod-to-enable-node-problem-detector-using-addon-pod",
      "type": "concept",
      "title": "Using an Addon pod to enable Node Problem Detector {#using-addon-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 1874,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adding-support-for-other-log-format-support-other-log-format",
      "type": "concept",
      "title": "Adding support for other log format {#support-other-log-format}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 5276,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adding-custom-plugin-monitors",
      "type": "concept",
      "title": "Adding custom plugin monitors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 5614,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-cluster/resource-metrics-pipeline",
      "type": "page",
      "title": "Resource metrics pipeline",
      "summary": "",
      "body": "\n\nFor Kubernetes, the _Metrics API_ offers a basic set of metrics to support automatic scaling and\nsimilar use cases.  This API makes information available about resource usage for node and pod,\nincluding metrics for CPU and memory.  If you deploy the Metrics API into your cluster, clients of\nthe Kubernetes API can then query for this information, and you can use Kubernetes' access control\nmechanisms to manage permissions to do so.\n\nThe [HorizontalPodAutoscaler](/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/)  (HPA) and\n[VerticalPodAutoscaler](/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/) (VPA)\nuse data from the metrics API to adjust workload replicas and resources to meet customer demand.\n\nYou can also view the resource metrics using the\n[`kubectl top`](/docs/reference/generated/kubectl/kubectl-commands#top)\ncommand.\n\n\n> **Note:** The Metrics API, and the metrics pipeline that it enables, only offers the minimum\nCPU and memory metrics to enable automatic scaling using HPA and / or VPA.\nIf you would like to provide a more complete set of metrics, you can complement\nthe simpler Metrics API by deploying a second\n[metrics pipeline](/docs/tasks/debug/debug-cluster/resource-usage-monitoring/#full-metrics-pipeline)\nthat uses the _Custom Metrics API_.\n\n\n\nFigure 1 illustrates the architecture of the resource metrics pipeline.\n\n\n```mermaid\nflowchart RL\nsubgraph cluster[Cluster]\ndirection RL\nS[ <br><br> ]\nA[Metrics-<br>Server]\nsubgraph B[Nodes]\ndirection TB\nD[cAdvisor] --> C[kubelet]\nE[Container<br>runtime] --> D\nE1[Container<br>runtime] --> D\nP[pod data] -.- C\nend\nL[API<br>server]\nW[HPA]\nC ---->|node level<br>resource metrics| A -->|metrics<br>API| L --> W\nend\nL ---> K[kubectl<br>top]\nclassDef box fill:#fff,stroke:#000,stroke-width:1px,color:#000;\nclass W,B,P,K,cluster,D,E,E1 box\nclassDef spacewhite fill:#ffffff,stroke:#fff,stroke-width:0px,color:#000\nclass S spacewhite\nclassDef k8s fill:#326ce5,stroke:#fff,stroke-width:1px,color:#fff;\nclass A,L,C k8s\n```\n\n\nFigure 1. Resource Metrics Pipeline\n\nThe architecture components, from right to left in the figure, consist of the following:\n\n* [cAdvisor](https://github.com/google/cadvisor): Daemon for collecting, aggregating and exposing\n  container metrics included in Kubelet.\n* [kubelet](/docs/concepts/architecture/#kubelet): Node agent for managing container\n  resources. Resource metrics are accessible using the `/metrics/resource` and `/stats` kubelet\n  API endpoints.\n* [node level resource metrics](/docs/reference/instrumentation/node-metrics): API provided by the kubelet for discovering and retrieving\n  per-node summarized stats available through the `/metrics/resource` endpoint.\n* [metrics-server](#metrics-server): Cluster addon component that collects and aggregates resource\n  metrics pulled from each kubelet. The API server serves Metrics API for use by HPA, VPA, and by\n  the `kubectl top` command. Metrics Server is a reference implementation of the Metrics API.\n* [Metrics API](#metrics-api): Kubernetes API supporting access to CPU and memory used for\n  workload autoscaling. To make this work in your cluster, you need an API extension server that\n  provides the Metrics API.\n\n  \n> **Note:** cAdvisor supports reading metrics from cgroups, which works with typical container runtimes on Linux.\n  If you use a container runtime that uses another resource isolation mechanism, for example\n  virtualization, then that container runtime must support\n  [CRI Container Metrics](https://github.com/kubernetes/community/blob/main/contributors/devel/sig-node/cri-container-stats.md)\n  in order for metrics to be available to the kubelet.\n\n\n\n\n## Metrics API\n\n\nThe metrics-server implements the Metrics API. This API allows you to access CPU and memory usage\nfor the nodes and pods in your cluster. Its primary role is to feed resource usage metrics to K8s\nautoscaler components.\n\nHere is an example of the Metrics API request for a `minikube` node piped through `jq` for easier\nread\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
      "meta": {
        "weight": 15,
        "rel_path": "tasks/debug/debug-cluster/resource-metrics-pipeline.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": null,
          "line_end": null,
          "quote": "Resource metrics pipeline"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metrics-api",
      "type": "concept",
      "title": "Metrics API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 3738,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:measuring-resource-usage",
      "type": "concept",
      "title": "Measuring resource usage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 6537,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metrics-server",
      "type": "concept",
      "title": "Metrics Server",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 7963,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cpu",
      "type": "concept",
      "title": "CPU",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 6566,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memory",
      "type": "concept",
      "title": "Memory",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 7148,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-cluster/local-debugging",
      "type": "page",
      "title": "Developing and debugging services locally using telepresence",
      "summary": "",
      "body": "\n\n\n\nKubernetes applications usually consist of multiple, separate services,\neach running in its own container. Developing and debugging these services\non a remote Kubernetes cluster can be cumbersome, requiring you to\n[get a shell on a running container](/docs/tasks/debug/debug-application/get-shell-running-container/)\nin order to run debugging tools.\n \n`telepresence` is a tool to ease the process of developing and debugging\nservices locally while proxying the service to a remote Kubernetes cluster.\nUsing `telepresence` allows you to use custom tools, such as a debugger and\nIDE, for a local service and provides the service full access to ConfigMap,\nsecrets, and the services running on the remote cluster.\n \nThis document describes using `telepresence` to develop and debug services\nrunning on a remote cluster locally.\n\n## \n\n* Kubernetes cluster is installed\n* `kubectl` is configured to communicate with the cluster\n* [Telepresence](https://www.telepresence.io/docs/latest/quick-start/) is installed\n\n\n\n\n## Connecting your local machine to a remote Kubernetes cluster\n \nAfter installing `telepresence`, run `telepresence connect` to launch\nits Daemon and connect your local workstation to the cluster.\n\n```\n$ telepresence connect\n \nLaunching Telepresence Daemon\n...\nConnected to context default (https://<cluster public IP>)\n```\n\nYou can curl services using the Kubernetes syntax e.g. `curl -ik https://kubernetes.default`\n \n## Developing or debugging an existing service\n\nWhen developing an application on Kubernetes, you typically program\nor debug a single service. The service might require access to other\nservices for testing and debugging. One option is to use the continuous\ndeployment pipeline, but even the fastest deployment pipeline introduces\na delay in the program or debug cycle.\n \nUse the `telepresence intercept $SERVICE_NAME --port $LOCAL_PORT:$REMOTE_PORT`\ncommand to create an \"intercept\" for rerouting remote service traffic.\n \nWhere:\n\n-   `$SERVICE_NAME`  is the name of your local service\n-   `$LOCAL_PORT` is the port that your service is running on your local workstation\n-   And `$REMOTE_PORT` is the port your service listens to in the cluster\n\nRunning this command tells Telepresence to send remote traffic to your\nlocal service instead of the service in the remote Kubernetes cluster.\nMake edits to your service source code locally, save, and see the corresponding\nchanges when accessing your remote application take effect immediately.\nYou can also run your local service using a debugger or any other local development tool.\n\n## How does Telepresence work?\n\nTelepresence installs a traffic-agent sidecar next to your existing\napplication's container running in the remote cluster. It then captures\nall traffic requests going into the Pod, and instead of forwarding this\nto the application in the remote cluster, it routes all traffic (when you\ncreate a [global intercept](https://www.getambassador.io/docs/telepresence/latest/concepts/intercepts/#global-intercept)\nor a subset of the traffic (when you create a\n[personal intercept](https://www.getambassador.io/docs/telepresence/latest/concepts/intercepts/#personal-intercept))\nto your local development environment.\n\n## \n \nIf you're interested in a hands-on tutorial, check out\n[this tutorial](https://cloud.google.com/community/tutorials/developing-services-with-k8s)\nthat walks through locally developing the Guestbook application on Google Kubernetes Engine.\n \nFor further reading, visit the [Telepresence website](https://www.telepresence.io).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/debug/debug-cluster/local-debugging.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/local-debugging.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
          "line_start": null,
          "line_end": null,
          "quote": "Developing and debugging services locally using telepresence"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:connecting-your-local-machine-to-a-remote-kubernetes-cluster",
      "type": "concept",
      "title": "Connecting your local machine to a remote Kubernetes cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/local-debugging.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
          "line_start": 1103,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:developing-or-debugging-an-existing-service",
      "type": "concept",
      "title": "Developing or debugging an existing service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/local-debugging.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
          "line_start": 1524,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-does-telepresence-work",
      "type": "concept",
      "title": "How does Telepresence work?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/local-debugging.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
          "line_start": 2655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-cluster/kubectl-node-debug",
      "type": "page",
      "title": "Debugging Kubernetes Nodes With Kubectl",
      "summary": "",
      "body": "\nThis page shows how to debug a [node](/docs/concepts/architecture/nodes/)\nrunning on the Kubernetes cluster using `kubectl debug` command.\n\n## \n\n\n \n\nYou need to have permission to create Pods and to assign those new Pods to arbitrary nodes.\nYou also need to be authorized to create Pods that access filesystems from the host.\n\n\n\n\n## Debugging a Node using `kubectl debug node`\n\nUse the `kubectl debug node` command to deploy a Pod to a Node that you want to troubleshoot.\nThis command is helpful in scenarios where you can't access your Node by using an SSH connection.\nWhen the Pod is created, the Pod opens an interactive shell on the Node.\nTo create an interactive shell on a Node named “mynode”, run:\n\n```shell\nkubectl debug node/mynode -it --image=ubuntu\n```\n\n```console\nCreating debugging pod node-debugger-mynode-pdx84 with container debugger on node mynode.\nIf you don't see a command prompt, try pressing enter.\nroot@mynode:/#\n```\n\nThe debug command helps to gather information and troubleshoot issues. Commands \nthat you might use include `ip`, `ifconfig`, `nc`, `ping`, and `ps` and so on. You can also\ninstall other tools, such as `mtr`, `tcpdump`, and `curl`, from the respective package manager.\n\n\n> **Note:** The debug commands may differ based on the image the debugging pod is using and\nthese commands might need to be installed.\n\n\nThe debugging Pod can access the root filesystem of the Node, mounted at `/host` in the Pod.\nIf you run your kubelet in a filesystem namespace,\nthe debugging Pod sees the root for that namespace, not for the entire node. For a typical Linux node,\nyou can look at the following paths to find relevant logs:\n\n`/host/var/log/kubelet.log`\n: Logs from the `kubelet`, responsible for running containers on the node.\n\n`/host/var/log/kube-proxy.log`\n: Logs from `kube-proxy`, which is responsible for directing traffic to Service endpoints.\n\n`/host/var/log/containerd.log`\n: Logs from the `containerd` process running on the node.\n\n`/host/var/log/syslog`\n: Shows general messages and information regarding the system.\n\n`/host/var/log/kern.log`\n: Shows kernel logs.\n\nWhen creating a debugging session on a Node, keep in mind that:\n\n* `kubectl debug` automatically generates the name of the new pod, based on\n  the name of the node.\n* The root filesystem of the Node will be mounted at `/host`.\n* Although the container runs in the host IPC, Network, and PID namespaces,\n  the pod isn't privileged. This means that reading some process information might fail\n  because access to that information is restricted to superusers. For example, `chroot /host` will fail.\n  If you need a privileged pod, create it manually or use the `--profile=sysadmin` flag.\n* By applying [Debugging Profiles](/docs/tasks/debug/debug-application/debug-running-pod/#debugging-profiles), you can set specific properties such as [securityContext](/docs/tasks/configure-pod-container/security-context/) to a debugging Pod.\n\n## \n\nWhen you finish using the debugging Pod, delete it:\n\n```shell\nkubectl get pods\n```\n\n```none\nNAME                          READY   STATUS       RESTARTS   AGE\nnode-debugger-mynode-pdx84    0/1     Completed    0          8m1s\n```\t\n\n```shell\n# Change the pod name accordingly\nkubectl delete pod node-debugger-mynode-pdx84 --now\n```\t\n\n```none\npod \"node-debugger-mynode-pdx84\" deleted\n```\n\n\n> **Note:** The `kubectl debug node` command won't work if the Node is down (disconnected\nfrom the network, or kubelet dies and won't restart, etc.).\nCheck [debugging a down/unreachable node ](/docs/tasks/debug/debug-cluster/#example-debugging-a-down-unreachable-node)\nin that case.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/kubectl-node-debug/",
      "meta": {
        "weight": null,
        "rel_path": "tasks/debug/debug-cluster/kubectl-node-debug.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/kubectl-node-debug.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/kubectl-node-debug/",
          "line_start": null,
          "line_end": null,
          "quote": "Debugging Kubernetes Nodes With Kubectl"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-a-node-using-kubectl-debug-node",
      "type": "concept",
      "title": "Debugging a Node using `kubectl debug node`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/kubectl-node-debug.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/kubectl-node-debug/",
          "line_start": 457,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/debug-cluster/_index",
      "type": "page",
      "title": "Troubleshooting Clusters",
      "summary": "Debugging common cluster issues.",
      "body": "\n\nThis doc is about cluster troubleshooting; we assume you have already ruled out your application as the root cause of the\nproblem you are experiencing. See\nthe [application troubleshooting guide](/docs/tasks/debug/debug-application/) for tips on application debugging.\nYou may also visit the [troubleshooting overview document](/docs/tasks/debug/) for more information.\n\nFor troubleshooting [kubectl](#gloss:kubectl), refer to\n[Troubleshooting kubectl](/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/).\n\n\n\n## Listing your cluster\n\nThe first thing to debug in your cluster is if your nodes are all registered correctly.\n\nRun the following command:\n\n```shell\nkubectl get nodes\n```\n\nAnd verify that all of the nodes you expect to see are present and that they are all in the `Ready` state.\n\nTo get detailed information about the overall health of your cluster, you can run:\n\n```shell\nkubectl cluster-info dump\n```\n\n### Example: debugging a down/unreachable node\n\nSometimes when debugging it can be useful to look at the status of a node -- for example, because\nyou've noticed strange behavior of a Pod that's running on the node, or to find out why a Pod\nwon't schedule onto the node. As with Pods, you can use `kubectl describe node` and `kubectl get\nnode -o yaml` to retrieve detailed information about nodes. For example, here's what you'll see if\na node is down (disconnected from the network, or kubelet dies and won't restart, etc.). Notice\nthe events that show the node is NotReady, and also notice that the pods are no longer running\n(they are evicted after five minutes of NotReady status).\n\n```shell\nkubectl get nodes\n```\n\n```none\nNAME                     STATUS       ROLES     AGE     VERSION\nkube-worker-1            NotReady     <none>    1h      v1.23.3\nkubernetes-node-bols     Ready        <none>    1h      v1.23.3\nkubernetes-node-st6x     Ready        <none>    1h      v1.23.3\nkubernetes-node-unaj     Ready        <none>    1h      v1.23.3\n```\n\n```shell\nkubectl describe node kube-worker-1\n```\n\n```none\nName:               kube-worker-1\nRoles:              <none>\nLabels:             beta.kubernetes.io/arch=amd64\n                    beta.kubernetes.io/os=linux\n                    kubernetes.io/arch=amd64\n                    kubernetes.io/hostname=kube-worker-1\n                    kubernetes.io/os=linux\n                    node.alpha.kubernetes.io/ttl: 0\n                    volumes.kubernetes.io/controller-managed-attach-detach: true\nCreationTimestamp:  Thu, 17 Feb 2022 16:46:30 -0500\nTaints:             node.kubernetes.io/unreachable:NoExecute\n                    node.kubernetes.io/unreachable:NoSchedule\nUnschedulable:      false\nLease:\n  HolderIdentity:  kube-worker-1\n  AcquireTime:     <unset>\n  RenewTime:       Thu, 17 Feb 2022 17:13:09 -0500\nConditions:\n  Type                 Status    LastHeartbeatTime                 LastTransitionTime                Reason              Message\n  ----                 ------    -----------------                 ------------------                ------              -------\n  NetworkUnavailable   False     Thu, 17 Feb 2022 17:09:13 -0500   Thu, 17 Feb 2022 17:09:13 -0500   WeaveIsUp           Weave pod has set this\n  MemoryPressure       Unknown   Thu, 17 Feb 2022 17:12:40 -0500   Thu, 17 Feb 2022 17:13:52 -0500   NodeStatusUnknown   Kubelet stopped posting node status.\n  DiskPressure         Unknown   Thu, 17 Feb 2022 17:12:40 -0500   Thu, 17 Feb 2022 17:13:52 -0500   NodeStatusUnknown   Kubelet stopped posting node status.\n  PIDPressure          Unknown   Thu, 17 Feb 2022 17:12:40 -0500   Thu, 17 Feb 2022 17:13:52 -0500   NodeStatusUnknown   Kubelet stopped posting node status.\n  Ready                Unknown   Thu, 17 Feb 2022 17:12:40 -0500   Thu, 17 Feb 2022 17:13:52 -0500   NodeStatusUnknown   Kubelet stopped posting node status.\nAddresses:\n  InternalIP:  192.168.0.113\n  Hostname:    kube-worker-1\nCapacity:\n  cpu:                2\n  ephemeral-storage:  15372232Ki\n  hugepages-2Mi:      0\n  memory:\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/debug/debug-cluster/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Troubleshooting Clusters"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:listing-your-cluster",
      "type": "concept",
      "title": "Listing your cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 575,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:looking-at-logs",
      "type": "concept",
      "title": "Looking at logs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 8356,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-failure-modes",
      "type": "concept",
      "title": "Cluster failure modes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 9273,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-debugging-a-down-unreachable-node",
      "type": "concept",
      "title": "Example: debugging a down/unreachable node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 981,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-nodes",
      "type": "concept",
      "title": "Control Plane nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 8606,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:worker-nodes",
      "type": "concept",
      "title": "Worker Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 9039,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:contributing-causes",
      "type": "concept",
      "title": "Contributing causes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 9421,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specific-scenarios",
      "type": "concept",
      "title": "Specific scenarios",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 9735,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mitigations",
      "type": "concept",
      "title": "Mitigations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 11365,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tasks/debug/monitoring/_index",
      "type": "page",
      "title": "Monitoring in Kubernetes",
      "summary": "Monitoring kubernetes system components.",
      "body": "Monitoring in Kubernetes involves tracking and analyzing system performance, resource utilization, and application metrics.\n\n**Why it matters**\nMonitoring is crucial for identifying issues, optimizing resources, and ensuring the overall health of a Kubernetes cluster.\n\n**Key facts**\n- Kubernetes provides built-in monitoring tools like Prometheus and Grafana\n- Custom dashboards can be created to visualize specific metrics\n\n**Common pitfalls**\n- Insufficient monitoring can lead to undetected issues and decreased system reliability\n- Over-monitoring can result in excessive resource usage and performance degradation\n\n**Related**\nLogging in Kubernetes, Bootstrapping clusters with kubeadm",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/monitoring/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/debug/monitoring/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/monitoring/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/monitoring/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Monitoring in Kubernetes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tasks/debug/logging/_index",
      "type": "page",
      "title": "Logging in Kubernetes",
      "summary": "Logging in Kubernetes involves collecting, storing, and analyzing log data from applications and system components.",
      "body": "Logging in Kubernetes involves collecting, storing, and analyzing log data from applications and system components.\n\n**Why it matters**\nLogging is essential for troubleshooting issues, auditing system activity, and ensuring compliance with regulatory requirements.\n\n**Key facts**\n- Kubernetes provides built-in logging tools like Fluentd and Elasticsearch\n- Custom logging pipelines can be created to meet specific needs\n\n**Common pitfalls**\n- Insufficient logging can make it difficult to diagnose issues and detect security threats\n- Over-logging can result in excessive storage usage and performance degradation\n\n**Related**\nMonitoring in Kubernetes, Bootstrapping clusters with kubeadm",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tasks",
      "tags": [
        "tasks"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tasks/debug/logging/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "tasks/debug/logging/_index.md"
      },
      "provenance": [
        {
          "source": "tasks/debug/logging/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/logging/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Logging in Kubernetes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:setup/_index",
      "type": "page",
      "title": "Getting started",
      "summary": "",
      "body": "\n\nThis section lists the different ways to set up and run Kubernetes.\nWhen you install Kubernetes, choose an installation type based on: ease of maintenance, security,\ncontrol, available resources, and expertise required to operate and manage a cluster.\n\nYou can [download Kubernetes](/releases/download/) to deploy a Kubernetes cluster\non a local machine, into the cloud, or for your own datacenter.\n\nSeveral [Kubernetes components](/docs/concepts/overview/components/) such as [kube-apiserver](#gloss:kube-apiserver) or [kube-proxy](#gloss:kube-proxy) can also be\ndeployed as [container images](/releases/download/#container-images) within the cluster.\n\nIt is **recommended** to run Kubernetes components as container images wherever\nthat is possible, and to have Kubernetes manage those components.\nComponents that run containers - notably, the kubelet - can't be included in this category.\n\nIf you don't want to manage a Kubernetes cluster yourself, you could pick a managed service, including\n[certified platforms](/docs/setup/production-environment/turnkey-solutions/).\nThere are also other standardized and custom solutions across a wide range of cloud and\nbare metal environments.\n\n\n\n## Learning environment\n\nIf you're learning Kubernetes, use the tools supported by the Kubernetes community,\nor tools in the ecosystem to set up a Kubernetes cluster on a local machine.\nSee [Learning environment](/docs/setup/learning-environment/)\n\n## Production environment\n\nWhen evaluating a solution for a\n[production environment](/docs/setup/production-environment/), consider which aspects of\noperating a Kubernetes cluster (or _abstractions_) you want to manage yourself and which you\nprefer to hand off to a provider.\n\nFor a cluster you're managing yourself, the officially supported tool\nfor deploying Kubernetes is [kubeadm](/docs/setup/production-environment/tools/kubeadm/).\n\n## \n\n- [Download Kubernetes](/releases/download/)\n- Download and [install tools](/docs/tasks/tools/) including `kubectl`\n- Select a [container runtime](/docs/setup/production-environment/container-runtimes/) for your new cluster\n- Learn about [best practices](/docs/setup/best-practices/) for cluster setup\n\nKubernetes is designed for its [control plane](#gloss:control-plane) to\nrun on Linux. Within your cluster you can run applications on Linux or other operating systems, including\nWindows.\n\n- Learn to [set up clusters with Windows nodes](/docs/concepts/windows/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "setup/_index.md"
      },
      "provenance": [
        {
          "source": "setup/_index.md",
          "url": "https://kubernetes.io/docs/setup/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Getting started"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:learning-environment",
      "type": "concept",
      "title": "Learning environment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/_index.md",
          "url": "https://kubernetes.io/docs/setup/_index/",
          "line_start": 1287,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:production-environment",
      "type": "concept",
      "title": "Production environment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/_index.md",
          "url": "https://kubernetes.io/docs/setup/_index/",
          "line_start": 1536,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/turnkey-solutions",
      "type": "page",
      "title": "Turnkey Cloud Solutions",
      "summary": "Turnkey Cloud Solutions provide pre-configured, cloud-based environments for deploying and managing applications.",
      "body": "Turnkey Cloud Solutions provide pre-configured, cloud-based environments for deploying and managing applications.\n\n**Why it matters**\nTurnkey solutions simplify the deployment process, reduce infrastructure costs, and improve scalability and reliability.\n\n**Key facts**\n- Cloud providers like AWS and GCP offer turnkey Kubernetes solutions\n- Turnkey solutions often include pre-configured monitoring and logging tools\n\n**Common pitfalls**\n- Dependence on a single cloud provider can limit flexibility and increase costs\n- Insufficient customization can lead to suboptimal performance and resource utilization\n\n**Related**\nMonitoring in Kubernetes, Logging in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/turnkey-solutions/",
      "meta": {
        "weight": 40,
        "rel_path": "setup/production-environment/turnkey-solutions.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/turnkey-solutions.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/turnkey-solutions/",
          "line_start": null,
          "line_end": null,
          "quote": "Turnkey Cloud Solutions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:setup/production-environment/container-runtimes",
      "type": "page",
      "title": "Container Runtimes",
      "summary": "",
      "body": "\n\n\n\nYou need to install a\n[container runtime](#gloss:container-runtime)\ninto each node in the cluster so that Pods can run there. This page outlines\nwhat is involved and describes related tasks for setting up nodes.\n\nKubernetes  requires that you use a runtime that\nconforms with the\n[Container Runtime Interface](#gloss:cri) (CRI).\n\nSee [CRI version support](#cri-versions) for more information.\n\nThis page provides an outline of how to use several common container runtimes with\nKubernetes.\n\n- [containerd](#containerd)\n- [CRI-O](#cri-o)\n- [Docker Engine](#docker)\n- [Mirantis Container Runtime](#mcr)\n\n\n> **Note:** Kubernetes releases before v1.24 included a direct integration with Docker Engine,\nusing a component named _dockershim_. That special direct integration is no longer\npart of Kubernetes (this removal was\n[announced](/blog/2020/12/08/kubernetes-1-20-release-announcement/#dockershim-deprecation)\nas part of the v1.20 release).\nYou can read\n[Check whether Dockershim removal affects you](/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/)\nto understand how this removal might affect you. To learn about migrating from using dockershim, see\n[Migrating from dockershim](/docs/tasks/administer-cluster/migrating-from-dockershim/).\n\nIf you are running a version of Kubernetes other than v,\ncheck the documentation for that version.\n\n\n\n## Install and configure prerequisites\n\n### Network configuration\n\nBy default, the Linux kernel does not allow IPv4 packets to be routed\nbetween interfaces. Most Kubernetes cluster networking implementations\nwill change this setting (if needed), but some might expect the\nadministrator to do it for them. (Some might also expect other sysctl\nparameters to be set, kernel modules to be loaded, etc; consult the\ndocumentation for your specific network implementation.)\n\n### Enable IPv4 packet forwarding {#prerequisite-ipv4-forwarding-optional}\n\nTo manually enable IPv4 packet forwarding:\n\n```bash\n# sysctl params required by setup, params persist across reboots\ncat <<EOF | sudo tee /etc/sysctl.d/k8s.conf\nnet.ipv4.ip_forward = 1\nEOF\n\n# Apply sysctl params without reboot\nsudo sysctl --system\n```\n\nVerify that `net.ipv4.ip_forward` is set to 1 with:\n\n```bash\nsysctl net.ipv4.ip_forward\n```\n\n## cgroup drivers\n\nOn Linux, [control groups](#gloss:cgroup)\nare used to constrain resources that are allocated to processes.\n\nBoth the [kubelet](#gloss:kubelet) and the\nunderlying container runtime need to interface with control groups to enforce\n[resource management for pods and containers](/docs/concepts/configuration/manage-resources-containers/)\nand set resources such as cpu/memory requests and limits. To interface with control\ngroups, the kubelet and the container runtime need to use a *cgroup driver*.\nIt's critical that the kubelet and the container runtime use the same cgroup\ndriver and are configured the same.\n\nThere are two cgroup drivers available:\n\n* [`cgroupfs`](#cgroupfs-cgroup-driver)\n* [`systemd`](#systemd-cgroup-driver)\n\n### cgroupfs driver {#cgroupfs-cgroup-driver}\n\nThe `cgroupfs` driver is the [default cgroup driver in the kubelet](/docs/reference/config-api/kubelet-config.v1beta1).\n When the `cgroupfs` driver is used, the kubelet and the container runtime directly interface with\n the cgroup filesystem to configure cgroups.\n\nThe `cgroupfs` driver is **not** recommended when\n[systemd](https://www.freedesktop.org/wiki/Software/systemd/) is the\ninit system because systemd expects a single cgroup manager on\nthe system. Additionally, if you use [cgroup v2](/docs/concepts/architecture/cgroups), use the `systemd`\ncgroup driver instead of `cgroupfs`.\n\n### systemd cgroup driver {#systemd-cgroup-driver}\n\nWhen [systemd](https://www.freedesktop.org/wiki/Software/systemd/) is chosen as the init\nsystem for a Linux distribution, the init process generates and consumes a root control group\n(`cgroup`) and acts as a cgroup manager.\n\nsystemd has a tight integration with cgroups and alloc\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
      "meta": {
        "weight": 20,
        "rel_path": "setup/production-environment/container-runtimes.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": null,
          "line_end": null,
          "quote": "Container Runtimes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-and-configure-prerequisites",
      "type": "concept",
      "title": "Install and configure prerequisites",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 1581,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cgroup-drivers",
      "type": "concept",
      "title": "cgroup drivers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 2471,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cri-version-support-cri-versions",
      "type": "concept",
      "title": "CRI version support {#cri-versions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 7230,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-runtimes",
      "type": "concept",
      "title": "Container runtimes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 7576,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-ipv4-packet-forwarding-prerequisite-ipv4-forwarding-optional",
      "type": "concept",
      "title": "Enable IPv4 packet forwarding {#prerequisite-ipv4-forwarding-optional}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 2049,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cgroupfs-driver-cgroupfs-cgroup-driver",
      "type": "concept",
      "title": "cgroupfs driver {#cgroupfs-cgroup-driver}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 3283,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:systemd-cgroup-driver-systemd-cgroup-driver",
      "type": "concept",
      "title": "systemd cgroup driver {#systemd-cgroup-driver}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 3920,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-to-the-systemd-driver-in-kubeadm-managed-clusters",
      "type": "concept",
      "title": "Migrating to the `systemd` driver in kubeadm managed clusters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 6967,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerd",
      "type": "concept",
      "title": "containerd",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 7627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cri-o",
      "type": "concept",
      "title": "CRI-O",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 11002,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-engine-docker",
      "type": "concept",
      "title": "Docker Engine {#docker}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 12477,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mirantis-container-runtime-mcr",
      "type": "concept",
      "title": "Mirantis Container Runtime {#mcr}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 13071,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/_index",
      "type": "page",
      "title": "Production environment",
      "summary": "Create a production-quality Kubernetes cluster",
      "body": "\n\nA production-quality Kubernetes cluster requires planning and preparation.\nIf your Kubernetes cluster is to run critical workloads, it must be configured to be resilient.\nThis page explains steps you can take to set up a production-ready cluster,\nor to promote an existing cluster for production use.\nIf you're already familiar with production setup and want the links, skip to\n[What's next](#what-s-next).\n\n\n\n## Production considerations\n\nTypically, a production Kubernetes cluster environment has more requirements than a\npersonal learning, development, or test environment Kubernetes. A production environment may require\nsecure access by many users, consistent availability, and the resources to adapt\nto changing demands.\n\nAs you decide where you want your production Kubernetes environment to live\n(on premises or in a cloud) and the amount of management you want to take\non or hand to others, consider how your requirements for a Kubernetes cluster\nare influenced by the following issues:\n\n- *Availability*: A single-machine Kubernetes [learning environment](/docs/setup/#learning-environment)\n  has a single point of failure. Creating a highly available cluster means considering:\n  - Separating the control plane from the worker nodes.\n  - Replicating the control plane components on multiple nodes.\n  - Load balancing traffic to the cluster’s [API server](#gloss:kube-apiserver).\n  - Having enough worker nodes available, or able to quickly become available, as changing workloads warrant it.\n\n- *Scale*: If you expect your production Kubernetes environment to receive a stable amount of\n  demand, you might be able to set up for the capacity you need and be done. However,\n  if you expect demand to grow over time or change dramatically based on things like\n  season or special events, you need to plan how to scale to relieve increased\n  pressure from more requests to the control plane and worker nodes or scale down to reduce unused\n  resources.\n\n- *Security and access management*: You have full admin privileges on your own\n  Kubernetes learning cluster. But shared clusters with important workloads, and\n  more than one or two users, require a more refined approach to who and what can\n  access cluster resources. You can use role-based access control\n  ([RBAC](/docs/reference/access-authn-authz/rbac/)) and other\n  security mechanisms to make sure that users and workloads can get access to the\n  resources they need, while keeping workloads, and the cluster itself, secure.\n  You can set limits on the resources that users and workloads can access\n  by managing [policies](/docs/concepts/policy/) and\n  [container resources](/docs/concepts/configuration/manage-resources-containers/).\n\nBefore building a Kubernetes production environment on your own, consider\nhanding off some or all of this job to \n[Turnkey Cloud Solutions](/docs/setup/production-environment/turnkey-solutions/) \nproviders or other [Kubernetes Partners](/partners/).\nOptions include:\n\n- *Serverless*: Just run workloads on third-party equipment without managing\n  a cluster at all. You will be charged for things like CPU usage, memory, and\n  disk requests.\n- *Managed control plane*: Let the provider manage the scale and availability\n  of the cluster's control plane, as well as handle patches and upgrades.\n- *Managed worker nodes*: Configure pools of nodes to meet your needs,\n  then the provider makes sure those nodes are available and ready to implement\n  upgrades when needed.\n- *Integration*: There are providers that integrate Kubernetes with other\n  services you may need, such as storage, container registries, authentication\n  methods, and development tools.\n\nWhether you build a production Kubernetes cluster yourself or work with\npartners, review the following sections to evaluate your needs as they relate\nto your cluster’s *control plane*, *worker nodes*, *user access*, and\n*workload resources*.\n\n## Production cluster setup\n\nIn a production-quality Kubernetes cluster, the control plane ma\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "setup/production-environment/_index.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Production environment"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:production-considerations",
      "type": "concept",
      "title": "Production considerations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 443,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:production-cluster-setup",
      "type": "concept",
      "title": "Production cluster setup",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 3970,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:production-user-management",
      "type": "concept",
      "title": "Production user management",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 11756,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-limits-on-workload-resources",
      "type": "concept",
      "title": "Set limits on workload resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 16020,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:production-control-plane",
      "type": "concept",
      "title": "Production control plane",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 4257,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:production-worker-nodes",
      "type": "concept",
      "title": "Production worker nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 9468,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/tools/_index",
      "type": "page",
      "title": "Installing Kubernetes with deployment tools",
      "summary": "",
      "body": "There are many methods and tools for setting up your own production Kubernetes cluster.\nFor example:\n\n- [kubeadm](/docs/setup/production-environment/tools/kubeadm/)\n\n- [Cluster API](https://cluster-api.sigs.k8s.io/): A Kubernetes sub-project focused on\n  providing declarative APIs and tooling to simplify provisioning, upgrading, and operating\n  multiple Kubernetes clusters.\n  \n- [kops](https://kops.sigs.k8s.io/): An automated cluster provisioning tool.\n  For tutorials, best practices, configuration options  and information on\n  reaching out to the community, please check the\n  [`kOps` website](https://kops.sigs.k8s.io/) for details.\n\n- [kubespray](https://kubespray.io/):\n  A composition of [Ansible](https://docs.ansible.com/) playbooks,\n  [inventory](https://github.com/kubernetes-sigs/kubespray/blob/master/docs/ansible/inventory.md),\n  provisioning tools, and domain knowledge for generic OS/Kubernetes clusters configuration\n  management tasks. You can reach out to the community on Slack channel\n  [#kubespray](https://kubernetes.slack.com/messages/kubespray/).\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "setup/production-environment/tools/_index.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Installing Kubernetes with deployment tools"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "type": "page",
      "title": "Troubleshooting kubeadm",
      "summary": "",
      "body": "\n\nAs with any program, you might run into an error installing or running kubeadm.\nThis page lists some common failure scenarios and have provided steps that can help you understand and fix the problem.\n\nIf your problem is not listed below, please follow the following steps:\n\n- If you think your problem is a bug with kubeadm:\n  - Go to [github.com/kubernetes/kubeadm](https://github.com/kubernetes/kubeadm/issues) and search for existing issues.\n  - If no issue exists, please [open one](https://github.com/kubernetes/kubeadm/issues/new) and follow the issue template.\n\n- If you are unsure about how kubeadm works, you can ask on [Slack](https://slack.k8s.io/) in `#kubeadm`,\n  or open a question on [StackOverflow](https://stackoverflow.com/questions/tagged/kubernetes). Please include\n  relevant tags like `#kubernetes` and `#kubeadm` so folks can help you.\n\n\n\n## Not possible to join a v1.18 Node to a v1.17 cluster due to missing RBAC\n\nIn v1.18 kubeadm added prevention for joining a Node in the cluster if a Node with the same name already exists.\nThis required adding RBAC for the bootstrap-token user to be able to GET a Node object.\n\nHowever this causes an issue where `kubeadm join` from v1.18 cannot join a cluster created by kubeadm v1.17.\n\nTo workaround the issue you have two options:\n\nExecute `kubeadm init phase bootstrap-token` on a control-plane node using kubeadm v1.18.\nNote that this enables the rest of the bootstrap-token permissions as well.\n\nor\n\nApply the following RBAC manually using `kubectl apply -f ...`:\n\n```yaml\napiVersion: rbac.authorization.k8s.io/v1\nkind: ClusterRole\nmetadata:\n  name: kubeadm:get-nodes\nrules:\n  - apiGroups:\n      - \"\"\n    resources:\n      - nodes\n    verbs:\n      - get\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind: ClusterRoleBinding\nmetadata:\n  name: kubeadm:get-nodes\nroleRef:\n  apiGroup: rbac.authorization.k8s.io\n  kind: ClusterRole\n  name: kubeadm:get-nodes\nsubjects:\n  - apiGroup: rbac.authorization.k8s.io\n    kind: Group\n    name: system:bootstrappers:kubeadm:default-node-token\n```\n\n## `ebtables` or some similar executable not found during installation\n\nIf you see the following warnings while running `kubeadm init`\n\n```console\n[preflight] WARNING: ebtables not found in system path\n[preflight] WARNING: ethtool not found in system path\n```\n\nThen you may be missing `ebtables`, `ethtool` or a similar executable on your node.\nYou can install them with the following commands:\n\n- For Ubuntu/Debian users, run `apt install ebtables ethtool`.\n- For CentOS/Fedora users, run `yum install ebtables ethtool`.\n\n## kubeadm blocks waiting for control plane during installation\n\nIf you notice that `kubeadm init` hangs after printing out the following line:\n\n```console\n[apiclient] Created API client, waiting for the control plane to become ready\n```\n\nThis may be caused by a number of problems. The most common are:\n\n- network connection problems. Check that your machine has full network connectivity before continuing.\n- the cgroup driver of the container runtime differs from that of the kubelet. To understand how to\n  configure it properly, see [Configuring a cgroup driver](/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/).\n- control plane containers are crashlooping or hanging. You can check this by running `docker ps`\n  and investigating each container by running `docker logs`. For other container runtime, see\n  [Debugging Kubernetes nodes with crictl](/docs/tasks/debug/debug-cluster/crictl/).\n\n## kubeadm blocks when removing managed containers\n\nThe following could happen if the container runtime halts and does not remove\nany Kubernetes-managed containers:\n\n```shell\nsudo kubeadm reset\n```\n\n```console\n[preflight] Running pre-flight checks\n[reset] Stopping the kubelet service\n[reset] Unmounting mounted directories in \"/var/lib/kubelet\"\n[reset] Removing kubernetes-managed containers\n(block)\n```\n\nA possible solution is to restart the container runtime and then re-run `kubeadm reset`.\nYou can also use `\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
      "meta": {
        "weight": 20,
        "rel_path": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": null,
          "line_end": null,
          "quote": "Troubleshooting kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:not-possible-to-join-a-v1-18-node-to-a-v1-17-cluster-due-to-missing-rbac",
      "type": "concept",
      "title": "Not possible to join a v1.18 Node to a v1.17 cluster due to missing RBAC",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 895,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ebtables-or-some-similar-executable-not-found-during-installation",
      "type": "concept",
      "title": "`ebtables` or some similar executable not found during installation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 2083,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-blocks-waiting-for-control-plane-during-installation",
      "type": "concept",
      "title": "kubeadm blocks waiting for control plane during installation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 2606,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-blocks-when-removing-managed-containers",
      "type": "concept",
      "title": "kubeadm blocks when removing managed containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 3518,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pods-in-runcontainererror-crashloopbackoff-or-error-state",
      "type": "concept",
      "title": "Pods in `RunContainerError`, `CrashLoopBackOff` or `Error` state",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 4172,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:coredns-is-stuck-in-the-pending-state",
      "type": "concept",
      "title": "`coredns` is stuck in the `Pending` state",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 4966,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostport-services-do-not-work",
      "type": "concept",
      "title": "`HostPort` services do not work",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 5335,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pods-are-not-accessible-via-their-service-ip",
      "type": "concept",
      "title": "Pods are not accessible via their Service IP",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 6027,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tls-certificate-errors",
      "type": "concept",
      "title": "TLS certificate errors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 6908,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-client-certificate-rotation-fails-kubelet-client-cert",
      "type": "concept",
      "title": "Kubelet client certificate rotation fails {#kubelet-client-cert}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 8032,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-nic-when-using-flannel-as-the-pod-network-in-vagrant",
      "type": "concept",
      "title": "Default NIC When using flannel as the pod network in Vagrant",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 9895,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:non-public-ip-used-for-containers",
      "type": "concept",
      "title": "Non-public IP used for containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 10700,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:coredns-pods-have-crashloopbackoff-or-error-state",
      "type": "concept",
      "title": "`coredns` pods have `CrashLoopBackOff` or `Error` state",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 12327,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:etcd-pods-restart-continually",
      "type": "concept",
      "title": "etcd pods restart continually",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 13662,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:not-possible-to-pass-a-comma-separated-list-of-values-to-arguments-inside-a-component-extra-args-flag",
      "type": "concept",
      "title": "Not possible to pass a comma separated list of values to arguments inside a `--component-extra-args` flag",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 14644,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-proxy-scheduled-before-node-is-initialized-by-cloud-controller-manager",
      "type": "concept",
      "title": "kube-proxy scheduled before node is initialized by cloud-controller-manager",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 15826,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:usr-is-mounted-read-only-on-nodes-usr-mounted-read-only",
      "type": "concept",
      "title": "`/usr` is mounted read-only on nodes {#usr-mounted-read-only}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 17121,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-plan-prints-out-context-deadline-exceeded-error-message",
      "type": "concept",
      "title": "`kubeadm upgrade plan` prints out `context deadline exceeded` error message",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 18828,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-reset-unmounts-var-lib-kubelet",
      "type": "concept",
      "title": "`kubeadm reset` unmounts `/var/lib/kubelet`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 19247,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cannot-use-the-metrics-server-securely-in-a-kubeadm-cluster",
      "type": "concept",
      "title": "Cannot use the metrics-server securely in a kubeadm cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 19588,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-fails-due-to-etcd-hash-not-changing",
      "type": "concept",
      "title": "Upgrade fails due to etcd hash not changing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 20598,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "type": "page",
      "title": "Installing kubeadm",
      "summary": "",
      "body": "\n\n<img src=\"/images/kubeadm-stacked-color.png\" align=\"right\" width=\"150px\"></img>\nThis page shows how to install the `kubeadm` toolbox.\nFor information on how to create a cluster with kubeadm once you have performed this installation process,\nsee the [Creating a cluster with kubeadm](/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/) page.\n\n\n\n## \n\n* A compatible Linux host. The Kubernetes project provides generic instructions for Linux distributions\n  based on Debian and Red Hat, and those distributions without a package manager.\n* 2 GB or more of RAM per machine (any less will leave little room for your apps).\n* 2 CPUs or more for control plane machines.\n* Full network connectivity between all machines in the cluster (public or private network is fine).\n* Unique hostname, MAC address, and product_uuid for every node. See [here](#verify-mac-address) for more details.\n* Certain ports are open on your machines. See [here](#check-required-ports) for more details.\n\n\n> **Note:** The `kubeadm` installation is done via binaries that use dynamic linking and assumes that your target system provides `glibc`.\nThis is a reasonable assumption on many Linux distributions (including Debian, Ubuntu, Fedora, CentOS, etc.)\nbut it is not always the case with custom and lightweight distributions which don't include `glibc` by default, such as Alpine Linux.\nThe expectation is that the distribution either includes `glibc` or a\n[compatibility layer](https://wiki.alpinelinux.org/wiki/Running_glibc_programs)\nthat provides the expected symbols.\n\n\n\n\n## Check your OS version\n\n\n\n\n\n\n* The kubeadm project supports LTS kernels. See [List of LTS kernels](https://www.kernel.org/category/releases.html).\n* You can get the kernel version using the command `uname -r`\n\nFor more information, see [Linux Kernel Requirements](/docs/reference/node/kernel-version-requirements/).\n\n\n\n\n\n* The kubeadm project supports recent kernel versions. For a list of recent kernels, see [Windows Server Release Information](https://learn.microsoft.com/en-us/windows/release-health/windows-server-release-info).\n* You can get the kernel version (also called the OS version) using the command `systeminfo`\n\nFor more information, see [Windows OS version compatibility](/docs/concepts/windows/intro/#windows-os-version-support).\n\n\n\n\nA Kubernetes cluster created by kubeadm depends on software that use kernel features.\nThis software includes, but is not limited to the\n[container runtime](#gloss:container-runtime),\nthe [kubelet](#gloss:kubelet), and a [Container Network Interface](#gloss:cni) plugin.\n\nTo help you avoid unexpected errors as a result of an unsupported kernel version, kubeadm runs the `SystemVerification`\npre-flight check. This check fails if the kernel version is not supported.\n\nYou may choose to skip the check, if you know that your kernel\nprovides the required features, even though kubeadm does not support its version.\n\n## Verify the MAC address and product_uuid are unique for every node {#verify-mac-address}\n\n* You can get the MAC address of the network interfaces using the command `ip link` or `ifconfig -a`\n* The product_uuid can be checked by using the command `sudo cat /sys/class/dmi/id/product_uuid`\n\nIt is very likely that hardware devices will have unique addresses, although some virtual machines may have\nidentical values. Kubernetes uses these values to uniquely identify the nodes in the cluster.\nIf these values are not unique to each node, the installation process\nmay [fail](https://github.com/kubernetes/kubeadm/issues/31).\n\n## Check network adapters\n\nIf you have more than one network adapter, and your Kubernetes components are not reachable on the default\nroute, we recommend you add IP route(s) so Kubernetes cluster addresses go via the appropriate adapter.\n\n## Check required ports {#check-required-ports}\n\nThese [required ports](/docs/reference/networking/ports-and-protocols/)\nneed to be open in order for Kubernetes components to communicate with each \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
      "meta": {
        "weight": 10,
        "rel_path": "setup/production-environment/tools/kubeadm/install-kubeadm.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": null,
          "line_end": null,
          "quote": "Installing kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-your-os-version",
      "type": "concept",
      "title": "Check your OS version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 1694,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-the-mac-address-and-product-uuid-are-unique-for-every-node-verify-mac-address",
      "type": "concept",
      "title": "Verify the MAC address and product_uuid are unique for every node {#verify-mac-address}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 3319,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-network-adapters",
      "type": "concept",
      "title": "Check network adapters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 3944,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-required-ports-check-required-ports",
      "type": "concept",
      "title": "Check required ports {#check-required-ports}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 4183,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:swap-configuration-swap-configuration",
      "type": "concept",
      "title": "Swap configuration {#swap-configuration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 4734,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installing-a-container-runtime-installing-runtime",
      "type": "concept",
      "title": "Installing a container runtime {#installing-runtime}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 5682,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installing-kubeadm-kubelet-and-kubectl",
      "type": "concept",
      "title": "Installing kubeadm, kubelet and kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 7971,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "type": "page",
      "title": "Customizing components with the kubeadm API",
      "summary": "",
      "body": "\n\nThis page covers how to customize the components that kubeadm deploys. For control plane components\nyou can use flags in the `ClusterConfiguration` structure or patches per-node. For the kubelet\nand kube-proxy you can use `KubeletConfiguration` and `KubeProxyConfiguration`, accordingly.\n\nAll of these options are possible via the kubeadm configuration API.\nFor more details on each field in the configuration you can navigate to our\n[API reference pages](/docs/reference/config-api/kubeadm-config.v1beta4/).\n\n\n> **Note:** To reconfigure a cluster that has already been created see\n[Reconfiguring a kubeadm cluster](/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure).\n\n\n\n\n## Customizing the control plane with flags in `ClusterConfiguration`\n\nThe kubeadm `ClusterConfiguration` object exposes a way for users to override the default\nflags passed to control plane components such as the APIServer, ControllerManager, Scheduler and Etcd.\nThe components are defined using the following structures:\n\n- `apiServer`\n- `controllerManager`\n- `scheduler`\n- `etcd`\n\nThese structures contain a common `extraArgs` field, that consists of `name` / `value` pairs.\nTo override a flag for a control plane component:\n\n1.  Add the appropriate `extraArgs` to your configuration.\n2.  Add flags to the `extraArgs` field.\n3.  Run `kubeadm init` with `--config <YOUR CONFIG YAML>`.\n\n\n> **Note:** You can generate a `ClusterConfiguration` object with default values by running `kubeadm config print init-defaults`\nand saving the output to a file of your choice.\n\n\n\n> **Note:** The `ClusterConfiguration` object is currently global in kubeadm clusters. This means that any flags that you add,\nwill apply to all instances of the same component on different nodes. To apply individual configuration per component\non different nodes you can use [patches](#patches).\n\n\n\n> **Note:** Duplicate flags (keys), or passing the same flag `--foo` multiple times, is currently not supported.\nTo workaround that you must use [patches](#patches).\n\n\n### APIServer flags\n\nFor details, see the [reference documentation for kube-apiserver](/docs/reference/command-line-tools-reference/kube-apiserver/).\n\nExample usage:\n\n```yaml\napiVersion: kubeadm.k8s.io/v1beta4\nkind: ClusterConfiguration\nkubernetesVersion: v1.16.0\napiServer:\n  extraArgs:\n  - name: \"enable-admission-plugins\"\n    value: \"AlwaysPullImages,DefaultStorageClass\"\n  - name: \"audit-log-path\"\n    value: \"/home/johndoe/audit.log\"\n```\n\n### ControllerManager flags\n\nFor details, see the [reference documentation for kube-controller-manager](/docs/reference/command-line-tools-reference/kube-controller-manager/).\n\nExample usage:\n\n```yaml\napiVersion: kubeadm.k8s.io/v1beta4\nkind: ClusterConfiguration\nkubernetesVersion: v1.16.0\ncontrollerManager:\n  extraArgs:\n  - name: \"cluster-signing-key-file\"\n    value: \"/home/johndoe/keys/ca.key\"\n  - name: \"deployment-controller-sync-period\"\n    value: \"50\"\n```\n\n### Scheduler flags\n\nFor details, see the [reference documentation for kube-scheduler](/docs/reference/command-line-tools-reference/kube-scheduler/).\n\nExample usage:\n\n```yaml\napiVersion: kubeadm.k8s.io/v1beta4\nkind: ClusterConfiguration\nkubernetesVersion: v1.16.0\nscheduler:\n  extraArgs:\n  - name: \"config\"\n    value: \"/etc/kubernetes/scheduler-config.yaml\"\n  extraVolumes:\n    - name: schedulerconfig\n      hostPath: /home/johndoe/schedconfig.yaml\n      mountPath: /etc/kubernetes/scheduler-config.yaml\n      readOnly: true\n      pathType: \"File\"\n```\n\n### Etcd flags\n\nFor details, see the [etcd server documentation](https://etcd.io/docs/).\n\nExample usage:\n\n```yaml\napiVersion: kubeadm.k8s.io/v1beta4\nkind: ClusterConfiguration\netcd:\n  local:\n    extraArgs:\n    - name: \"election-timeout\"\n      value: 1000\n```\n\n## Customizing with patches {#patches}\n\n\n\nKubeadm allows you to pass a directory with patch files to `InitConfiguration`,\n`JoinConfiguration` and `UpgradeConfiguration`.\non individual nodes. These patches can be used as the last customization step before com\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
      "meta": {
        "weight": 40,
        "rel_path": "setup/production-environment/tools/kubeadm/control-plane-flags.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": null,
          "line_end": null,
          "quote": "Customizing components with the kubeadm API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customizing-the-control-plane-with-flags-in-clusterconfiguration",
      "type": "concept",
      "title": "Customizing the control plane with flags in `ClusterConfiguration`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 727,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customizing-with-patches-patches",
      "type": "concept",
      "title": "Customizing with patches {#patches}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 3825,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customizing-the-kubelet-kubelet",
      "type": "concept",
      "title": "Customizing the kubelet {#kubelet}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 5850,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customizing-kube-proxy",
      "type": "concept",
      "title": "Customizing kube-proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 6912,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customizing-coredns",
      "type": "concept",
      "title": "Customizing CoreDNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 7443,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiserver-flags",
      "type": "concept",
      "title": "APIServer flags",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 2103,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controllermanager-flags",
      "type": "concept",
      "title": "ControllerManager flags",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 2547,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-flags",
      "type": "concept",
      "title": "Scheduler flags",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 3012,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:etcd-flags",
      "type": "concept",
      "title": "Etcd flags",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 3565,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm",
      "type": "page",
      "title": "Set up a High Availability etcd Cluster with kubeadm",
      "summary": "",
      "body": "\n\n\nBy default, kubeadm runs a local etcd instance on each control plane node.\nIt is also possible to treat the etcd cluster as external and provision\netcd instances on separate hosts. The differences between the two approaches are covered in the\n[Options for Highly Available topology](/docs/setup/production-environment/tools/kubeadm/ha-topology) page.\n\nThis task walks through the process of creating a high availability external\netcd cluster of three members that can be used by kubeadm during cluster creation.\n\n## \n\n- Three hosts that can talk to each other over TCP ports 2379 and 2380. This\n  document assumes these default ports. However, they are configurable through\n  the kubeadm config file.\n- Each host must have systemd and a bash compatible shell installed.\n- Each host must [have a container runtime, kubelet, and kubeadm installed](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/).\n- Each host should have access to the Kubernetes container image registry (`registry.k8s.io`) or list/pull the required etcd image using\n  `kubeadm config images list/pull`. This guide will set up etcd instances as\n  [static pods](/docs/tasks/configure-pod-container/static-pod/) managed by a kubelet.\n- Some infrastructure to copy files between hosts. For example `ssh` and `scp`\n  can satisfy this requirement.\n\n\n\n## Setting up the cluster\n\nThe general approach is to generate all certs on one node and only distribute\nthe _necessary_ files to the other nodes.\n\n\n> **Note:** kubeadm contains all the necessary cryptographic machinery to generate\nthe certificates described below; no other cryptographic tooling is required for\nthis example.\n\n\n\n> **Note:** The examples below use IPv4 addresses but you can also configure kubeadm, the kubelet and etcd\nto use IPv6 addresses. Dual-stack is supported by some Kubernetes options, but not by etcd. For more details\non Kubernetes dual-stack support see [Dual-stack support with kubeadm](/docs/setup/production-environment/tools/kubeadm/dual-stack-support/).\n\n\n1. Configure the kubelet to be a service manager for etcd.\n\n   \n> **Note:** You must do this on every host where etcd should be running.\n\n   Since etcd was created first, you must override the service priority by creating a new unit file\n   that has higher precedence than the kubeadm-provided kubelet unit file.\n\n   ```sh\n   cat << EOF > /etc/systemd/system/kubelet.service.d/kubelet.conf\n   # Replace \"systemd\" with the cgroup driver of your container runtime. The default value in the kubelet is \"cgroupfs\".\n   # Replace the value of \"containerRuntimeEndpoint\" for a different container runtime if needed.\n   #\n   apiVersion: kubelet.config.k8s.io/v1beta1\n   kind: KubeletConfiguration\n   authentication:\n     anonymous:\n       enabled: false\n     webhook:\n       enabled: false\n   authorization:\n     mode: AlwaysAllow\n   cgroupDriver: systemd\n   address: 127.0.0.1\n   containerRuntimeEndpoint: unix:///var/run/containerd/containerd.sock\n   staticPodPath: /etc/kubernetes/manifests\n   EOF\n\n   cat << EOF > /etc/systemd/system/kubelet.service.d/20-etcd-service-manager.conf\n   [Service]\n   ExecStart=\n   ExecStart=/usr/bin/kubelet --config=/etc/systemd/system/kubelet.service.d/kubelet.conf\n   Restart=always\n   EOF\n\n   systemctl daemon-reload\n   systemctl restart kubelet\n   ```\n\n   Check the kubelet status to ensure it is running.\n\n   ```sh\n   systemctl status kubelet\n   ```\n\n1. Create configuration files for kubeadm.\n\n   Generate one kubeadm configuration file for each host that will have an etcd\n   member running on it using the following script.\n\n   ```sh\n   # Update HOST0, HOST1 and HOST2 with the IPs of your hosts\n   export HOST0=10.0.0.6\n   export HOST1=10.0.0.7\n   export HOST2=10.0.0.8\n\n   # Update NAME0, NAME1 and NAME2 with the hostnames of your hosts\n   export NAME0=\"infra0\"\n   export NAME1=\"infra1\"\n   export NAME2=\"infra2\"\n\n   # Create temp directories to store files that will end up on other hosts\n   mkdir -p /tmp/${HOST0}/ /tmp/${HOST1}/ /tmp/${H\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm/",
      "meta": {
        "weight": 70,
        "rel_path": "setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm/",
          "line_start": null,
          "line_end": null,
          "quote": "Set up a High Availability etcd Cluster with kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-up-the-cluster",
      "type": "concept",
      "title": "Setting up the cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm/",
          "line_start": 1396,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "type": "page",
      "title": "Creating a cluster with kubeadm",
      "summary": "",
      "body": "\n\n<img src=\"/images/kubeadm-stacked-color.png\" align=\"right\" width=\"150px\"></img>\nUsing `kubeadm`, you can create a minimum viable Kubernetes cluster that conforms to best practices.\nIn fact, you can use `kubeadm` to set up a cluster that will pass the\n[Kubernetes Conformance tests](/blog/2017/10/software-conformance-certification/).\n`kubeadm` also supports other cluster lifecycle functions, such as\n[bootstrap tokens](/docs/reference/access-authn-authz/bootstrap-tokens/) and cluster upgrades.\n\nThe `kubeadm` tool is good if you need:\n\n- A simple way for you to try out Kubernetes, possibly for the first time.\n- A way for existing users to automate setting up a cluster and test their application.\n- A building block in other ecosystem and/or installer tools with a larger\n  scope.\n\nYou can install and use `kubeadm` on various machines: your laptop, a set\nof cloud servers, a Raspberry Pi, and more. Whether you're deploying into the\ncloud or on-premises, you can integrate `kubeadm` into provisioning systems such\nas Ansible or Terraform.\n\n## \n\nTo follow this guide, you need:\n\n- One or more machines running a deb/rpm-compatible Linux OS; for example: Ubuntu or CentOS.\n- 2 GiB or more of RAM per machine--any less leaves little room for your apps.\n- At least 2 CPUs on the machine that you use as a control-plane node.\n- Full network connectivity among all machines in the cluster. You can use either a\n  public or a private network.\n\nYou also need to use a version of `kubeadm` that can deploy the version\nof Kubernetes that you want to use in your new cluster.\n\n[Kubernetes' version and version skew support policy](/docs/setup/release/version-skew-policy/#supported-versions)\napplies to `kubeadm` as well as to Kubernetes overall.\nCheck that policy to learn about what versions of Kubernetes and `kubeadm`\nare supported. This page is written for Kubernetes .\n\nThe `kubeadm` tool's overall feature state is General Availability (GA). Some sub-features are\nstill under active development. The implementation of creating the cluster may change\nslightly as the tool evolves, but the overall implementation should be pretty stable.\n\n\n> **Note:** Any commands under `kubeadm alpha` are, by definition, supported on an alpha level.\n\n\n\n\n## Objectives\n\n* Install a single control-plane Kubernetes cluster\n* Install a Pod network on the cluster so that your Pods can\n  talk to each other\n\n## Instructions\n\n### Preparing the hosts\n\n#### Component installation\n\nInstall a [container runtime](#gloss:container-runtime)\nand kubeadm on all the hosts. For detailed instructions and other prerequisites, see\n[Installing kubeadm](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/).\n\n\n> **Note:** If you have already installed kubeadm, see the first two steps of the\n[Upgrading Linux nodes](/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes)\ndocument for instructions on how to upgrade kubeadm.\n\nWhen you upgrade, the kubelet restarts every few seconds as it waits in a crashloop for\nkubeadm to tell it what to do. This crashloop is expected and normal.\nAfter you initialize your control-plane, the kubelet runs normally.\n\n\n#### Network setup\n\nkubeadm similarly to other Kubernetes components tries to find a usable IP on\nthe network interfaces associated with a default gateway on a host. Such\nan IP is then used for the advertising and/or listening performed by a component.\n\nTo find out what this IP is on a Linux host you can use:\n\n```shell\nip route show # Look for a line starting with \"default via\"\n```\n\n\n> **Note:** If two or more default gateways are present on the host, a Kubernetes component will\ntry to use the first one it encounters that has a suitable global unicast IP address.\nWhile making this choice, the exact ordering of gateways might vary between different\noperating systems and kernel versions.\n\n\nKubernetes components do not accept custom network interface as an option,\ntherefore a custom IP address must be passed as a flag to all components instances\nt\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
      "meta": {
        "weight": 30,
        "rel_path": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": null,
          "line_end": null,
          "quote": "Creating a cluster with kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:objectives",
      "type": "concept",
      "title": "Objectives",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 2340,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:instructions",
      "type": "concept",
      "title": "Instructions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 2490,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clean-up-tear-down",
      "type": "concept",
      "title": "Clean up {#tear-down}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 20505,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:version-skew-policy-version-skew-policy",
      "type": "concept",
      "title": "Version skew policy {#version-skew-policy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 22007,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitations-limitations",
      "type": "concept",
      "title": "Limitations {#limitations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 24633,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:troubleshooting-troubleshooting",
      "type": "concept",
      "title": "Troubleshooting {#troubleshooting}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 25972,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preparing-the-hosts",
      "type": "concept",
      "title": "Preparing the hosts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 2507,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preparing-the-required-container-images",
      "type": "concept",
      "title": "Preparing the required container images",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 6132,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:initializing-your-control-plane-node",
      "type": "concept",
      "title": "Initializing your control-plane node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 6825,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:considerations-about-apiserver-advertise-address-and-controlplaneendpoint",
      "type": "concept",
      "title": "Considerations about apiserver-advertise-address and ControlPlaneEndpoint",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 8331,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:more-information",
      "type": "concept",
      "title": "More information",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 9427,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installing-a-pod-network-add-on-pod-network",
      "type": "concept",
      "title": "Installing a Pod network add-on {#pod-network}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 13242,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managed-node-labels",
      "type": "concept",
      "title": "Managed node labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 16437,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-node-isolation",
      "type": "concept",
      "title": "Control plane node isolation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 17369,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adding-more-control-plane-nodes",
      "type": "concept",
      "title": "Adding more control plane nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 18408,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adding-worker-nodes-join-nodes",
      "type": "concept",
      "title": "Adding worker nodes {#join-nodes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 18663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:optional-controlling-your-cluster-from-machines-other-than-the-control-plane-node",
      "type": "concept",
      "title": "(Optional) Controlling your cluster from machines other than the control-plane node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 19055,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:optional-proxying-api-server-to-localhost",
      "type": "concept",
      "title": "(Optional) Proxying API Server to localhost",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 20170,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:remove-the-node",
      "type": "concept",
      "title": "Remove the node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 20960,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clean-up-the-control-plane",
      "type": "concept",
      "title": "Clean up the control plane",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 21722,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-s-skew-against-the-kubernetes-version",
      "type": "concept",
      "title": "kubeadm's skew against the Kubernetes version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 22258,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-s-skew-against-the-kubelet",
      "type": "concept",
      "title": "kubeadm's skew against the kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 22928,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-s-skew-against-kubeadm",
      "type": "concept",
      "title": "kubeadm's skew against kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 23350,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-resilience-resilience",
      "type": "concept",
      "title": "Cluster resilience {#resilience}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 24664,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:platform-compatibility-multi-platform",
      "type": "concept",
      "title": "Platform compatibility {#multi-platform}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 25397,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:feedback-feedback",
      "type": "concept",
      "title": "Feedback {#feedback}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 27315,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/tools/kubeadm/ha-topology",
      "type": "page",
      "title": "Options for Highly Available Topology",
      "summary": "",
      "body": "\n\nThis page explains the two options for configuring the topology of your highly available (HA) Kubernetes clusters.\n\nYou can set up an HA cluster:\n\n- With stacked control plane nodes, where etcd nodes are colocated with control plane nodes\n- With external etcd nodes, where etcd runs on separate nodes from the control plane\n\nYou should carefully consider the advantages and disadvantages of each topology before setting up an HA cluster.\n\n\n> **Note:** kubeadm bootstraps the etcd cluster statically. Read the etcd\n[Clustering Guide](https://github.com/etcd-io/etcd/blob/release-3.4/Documentation/op-guide/clustering.md#static)\nfor more details.\n\n\n\n\n## Stacked etcd topology\n\nA stacked HA cluster is a [topology](https://en.wikipedia.org/wiki/Network_topology) where the distributed\ndata storage cluster provided by etcd is stacked on top of the cluster formed by the nodes managed by\nkubeadm that run control plane components.\n\nEach control plane node runs an instance of the `kube-apiserver`, `kube-scheduler`, and `kube-controller-manager`.\nThe `kube-apiserver` is exposed to worker nodes using a load balancer.\n\nEach control plane node creates a local etcd member and this etcd member communicates only with\nthe `kube-apiserver` of this node. The same applies to the local `kube-controller-manager`\nand `kube-scheduler` instances.\n\nThis topology couples the control planes and etcd members on the same nodes. It is simpler to set up than a cluster\nwith external etcd nodes, and simpler to manage for replication.\n\nHowever, a stacked cluster runs the risk of failed coupling. If one node goes down, both an etcd member and a control\nplane instance are lost, and redundancy is compromised. You can mitigate this risk by adding more control plane nodes.\n\nYou should therefore run a minimum of three stacked control plane nodes for an HA cluster.\n\nThis is the default topology in kubeadm. A local etcd member is created automatically\non control plane nodes when using `kubeadm init` and `kubeadm join --control-plane`.\n\n![Stacked etcd topology](/images/kubeadm/kubeadm-ha-topology-stacked-etcd.svg)\n\n## External etcd topology\n\nAn HA cluster with external etcd is a [topology](https://en.wikipedia.org/wiki/Network_topology)\nwhere the distributed data storage cluster provided by etcd is external to the cluster formed by\nthe nodes that run control plane components.\n\nLike the stacked etcd topology, each control plane node in an external etcd topology runs\nan instance of the `kube-apiserver`, `kube-scheduler`, and `kube-controller-manager`.\nAnd the `kube-apiserver` is exposed to worker nodes using a load balancer. However,\netcd members run on separate hosts, and each etcd host communicates with the\n`kube-apiserver` of each control plane node.\n\nThis topology decouples the control plane and etcd member. It therefore provides an HA setup where\nlosing a control plane instance or an etcd member has less impact and does not affect\nthe cluster redundancy as much as the stacked HA topology.\n\nHowever, this topology requires twice the number of hosts as the stacked HA topology.\nA minimum of three hosts for control plane nodes and three hosts for etcd nodes are\nrequired for an HA cluster with this topology.\n\n![External etcd topology](/images/kubeadm/kubeadm-ha-topology-external-etcd.svg)\n\n## \n\n- [Set up a highly available cluster with kubeadm](/docs/setup/production-environment/tools/kubeadm/high-availability/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/ha-topology/",
      "meta": {
        "weight": 50,
        "rel_path": "setup/production-environment/tools/kubeadm/ha-topology.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/ha-topology.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/ha-topology/",
          "line_start": null,
          "line_end": null,
          "quote": "Options for Highly Available Topology"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stacked-etcd-topology",
      "type": "concept",
      "title": "Stacked etcd topology",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/ha-topology.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/ha-topology/",
          "line_start": 695,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-etcd-topology",
      "type": "concept",
      "title": "External etcd topology",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/ha-topology.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/ha-topology/",
          "line_start": 2145,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "type": "page",
      "title": "Dual-stack support with kubeadm",
      "summary": "",
      "body": "\n\n\n\nYour Kubernetes cluster includes [dual-stack](/docs/concepts/services-networking/dual-stack/)\nnetworking, which means that cluster networking lets you use either address family.\nIn a cluster, the control plane can assign both an IPv4 address and an IPv6 address to a single\n[Pod](#gloss:pod) or a [Service](#gloss:service).\n\n\n\n## \n\nYou need to have installed the [kubeadm](#gloss:kubeadm) tool,\nfollowing the steps from [Installing kubeadm](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/).\n\nFor each server that you want to use as a [node](#gloss:node),\nmake sure it allows IPv6 forwarding. \n\n### Enable IPv6 packet forwarding {#prerequisite-ipv6-forwarding}\n\nTo check if IPv6 packet forwarding is enabled:\n\n```bash\nsysctl net.ipv6.conf.all.forwarding\n```\nIf the output is `net.ipv6.conf.all.forwarding = 1` it is already enabled. \nOtherwise it is not enabled yet.\n\nTo manually enable IPv6 packet forwarding:\n\n```bash\n# sysctl params required by setup, params persist across reboots\ncat <<EOF | sudo tee -a /etc/sysctl.d/k8s.conf\nnet.ipv6.conf.all.forwarding = 1\nEOF\n\n# Apply sysctl params without reboot\nsudo sysctl --system\n```\n\n\nYou need to have an IPv4 and and IPv6 address range to use. Cluster operators typically\nuse private address ranges for IPv4. For IPv6, a cluster operator typically chooses a global\nunicast address block from within `2000::/3`, using a range that is assigned to the operator.\nYou don't have to route the cluster's IP address ranges to the public internet.\n\nThe size of the IP address allocations should be suitable for the number of Pods and\nServices that you are planning to run.\n\n\n> **Note:** If you are upgrading an existing cluster with the `kubeadm upgrade` command,\n`kubeadm` does not support making modifications to the pod IP address range\n(“cluster CIDR”) nor to the cluster's Service address range (“Service CIDR”).\n\n\n### Create a dual-stack cluster\n\nTo create a dual-stack cluster with `kubeadm init` you can pass command line arguments\nsimilar to the following example:\n\n```shell\n# These address ranges are examples\nkubeadm init --pod-network-cidr=10.244.0.0/16,2001:db8:42:0::/56 --service-cidr=10.96.0.0/16,2001:db8:42:1::/112\n```\n\nTo make things clearer, here is an example kubeadm\n[configuration file](/docs/reference/config-api/kubeadm-config.v1beta4/)\n`kubeadm-config.yaml` for the primary dual-stack control plane node.\n\n```yaml\n---\napiVersion: kubeadm.k8s.io/v1beta4\nkind: ClusterConfiguration\nnetworking:\n  podSubnet: 10.244.0.0/16,2001:db8:42:0::/56\n  serviceSubnet: 10.96.0.0/16,2001:db8:42:1::/112\n---\napiVersion: kubeadm.k8s.io/v1beta4\nkind: InitConfiguration\nlocalAPIEndpoint:\n  advertiseAddress: \"10.100.0.1\"\n  bindPort: 6443\nnodeRegistration:\n  kubeletExtraArgs:\n  - name: \"node-ip\"\n    value: \"10.100.0.2,fd00:1:2:3::2\"\n```\n\n`advertiseAddress` in InitConfiguration specifies the IP address that the API Server\nwill advertise it is listening on. The value of `advertiseAddress` equals the\n`--apiserver-advertise-address` flag of `kubeadm init`.\n\nRun kubeadm to initiate the dual-stack control plane node:\n\n```shell\nkubeadm init --config=kubeadm-config.yaml\n```\n\nThe kube-controller-manager flags `--node-cidr-mask-size-ipv4|--node-cidr-mask-size-ipv6`\nare set with default values. See [configure IPv4/IPv6 dual stack](/docs/concepts/services-networking/dual-stack#configure-ipv4-ipv6-dual-stack).\n\n\n> **Note:** The `--apiserver-advertise-address` flag does not support dual-stack.\n\n\n### Join a node to dual-stack cluster\n\nBefore joining a node, make sure that the node has IPv6 routable network interface and allows IPv6 forwarding.\n\nHere is an example kubeadm [configuration file](/docs/reference/config-api/kubeadm-config.v1beta4/)\n`kubeadm-config.yaml` for joining a worker node to the cluster.\n\n```yaml\napiVersion: kubeadm.k8s.io/v1beta4\nkind: JoinConfiguration\ndiscovery:\n  bootstrapToken:\n    apiServerEndpoint: 10.100.0.1:6443\n    token: \"clvldh.vjjwg16ucnhp94qr\"\n    caCertHashes:\n    - \"sha256:a4863cde706cfc5\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
      "meta": {
        "weight": 100,
        "rel_path": "setup/production-environment/tools/kubeadm/dual-stack-support.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": null,
          "line_end": null,
          "quote": "Dual-stack support with kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-ipv6-packet-forwarding-prerequisite-ipv6-forwarding",
      "type": "concept",
      "title": "Enable IPv6 packet forwarding {#prerequisite-ipv6-forwarding}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 866,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-dual-stack-cluster",
      "type": "concept",
      "title": "Create a dual-stack cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 2145,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:join-a-node-to-dual-stack-cluster",
      "type": "concept",
      "title": "Join a node to dual-stack cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 3741,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-single-stack-cluster",
      "type": "concept",
      "title": "Create a single-stack cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 5552,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/tools/kubeadm/_index",
      "type": "page",
      "title": "Bootstrapping clusters with kubeadm",
      "summary": "Bootstrapping clusters with kubeadm involves using a tool to automate the installation and configuration of a Kubernetes cluster.",
      "body": "Bootstrapping clusters with kubeadm involves using a tool to automate the installation and configuration of a Kubernetes cluster.\n\n**Why it matters**\nkubeadm simplifies the cluster setup process, reduces errors, and improves consistency across environments.\n\n**Key facts**\n- kubeadm supports various deployment scenarios, including single-node and multi-node clusters\n- kubeadm integrates with other tools like etcd and Docker\n\n**Common pitfalls**\n- Inadequate configuration can lead to security vulnerabilities and performance issues\n- Dependence on a single tool can limit flexibility and increase maintenance costs\n\n**Related**\nMonitoring in Kubernetes, Logging in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/_index/",
      "meta": {
        "weight": 10,
        "rel_path": "setup/production-environment/tools/kubeadm/_index.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Bootstrapping clusters with kubeadm"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:setup/production-environment/tools/kubeadm/kubelet-integration",
      "type": "page",
      "title": "Configuring each kubelet in your cluster using kubeadm",
      "summary": "",
      "body": "\n\n\n\n\n\nThe lifecycle of the kubeadm CLI tool is decoupled from the\n[kubelet](/docs/reference/command-line-tools-reference/kubelet), which is a daemon that runs\non each node within the Kubernetes cluster. The kubeadm CLI tool is executed by the user when Kubernetes is\ninitialized or upgraded, whereas the kubelet is always running in the background.\n\nSince the kubelet is a daemon, it needs to be maintained by some kind of an init\nsystem or service manager. When the kubelet is installed using DEBs or RPMs,\nsystemd is configured to manage the kubelet. You can use a different service\nmanager instead, but you need to configure it manually.\n\nSome kubelet configuration details need to be the same across all kubelets involved in the cluster, while\nother configuration aspects need to be set on a per-kubelet basis to accommodate the different\ncharacteristics of a given machine (such as OS, storage, and networking). You can manage the configuration\nof your kubelets manually, but kubeadm now provides a `KubeletConfiguration` API type for\n[managing your kubelet configurations centrally](#configure-kubelets-using-kubeadm).\n\n\n\n## Kubelet configuration patterns\n\nThe following sections describe patterns to kubelet configuration that are simplified by\nusing kubeadm, rather than managing the kubelet configuration for each Node manually.\n\n### Propagating cluster-level configuration to each kubelet\n\nYou can provide the kubelet with default values to be used by `kubeadm init` and `kubeadm join`\ncommands. Interesting examples include using a different container runtime or setting the default subnet\nused by services.\n\nIf you want your services to use the subnet `10.96.0.0/12` as the default for services, you can pass\nthe `--service-cidr` parameter to kubeadm:\n\n```bash\nkubeadm init --service-cidr 10.96.0.0/12\n```\n\nVirtual IPs for services are now allocated from this subnet. You also need to set the DNS address used\nby the kubelet, using the `--cluster-dns` flag. This setting needs to be the same for every kubelet\non every manager and Node in the cluster. The kubelet provides a versioned, structured API object\nthat can configure most parameters in the kubelet and push out this configuration to each running\nkubelet in the cluster. This object is called\n[`KubeletConfiguration`](/docs/reference/config-api/kubelet-config.v1beta1/).\nThe `KubeletConfiguration` allows the user to specify flags such as the cluster DNS IP addresses expressed as\na list of values to a camelCased key, illustrated by the following example:\n\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nclusterDNS:\n- 10.96.0.10\n```\n\nFor more details on the `KubeletConfiguration` have a look at [this section](#configure-kubelets-using-kubeadm).\n\n### Providing instance-specific configuration details\n\nSome hosts require specific kubelet configurations due to differences in hardware, operating system,\nnetworking, or other host-specific parameters. The following list provides a few examples.\n\n- The path to the DNS resolution file, as specified by the `--resolv-conf` kubelet\n  configuration flag, may differ among operating systems, or depending on whether you are using\n  `systemd-resolved`. If this path is wrong, DNS resolution will fail on the Node whose kubelet\n  is configured incorrectly.\n\n- The Node API object `.metadata.name` is set to the machine's hostname by default,\n  unless you are using a cloud provider. You can use the `--hostname-override` flag to override the\n  default behavior if you need to specify a Node name different from the machine's hostname.\n\n- Currently, the kubelet cannot automatically detect the cgroup driver used by the container runtime,\n  but the value of `--cgroup-driver` must match the cgroup driver used by the container runtime to ensure\n  the health of the kubelet.\n\n- To specify the container runtime you must set its endpoint with the\n`--container-runtime-endpoint=<path>` flag.\n\nThe recommended way of applying such instance-specific configurati\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
      "meta": {
        "weight": 80,
        "rel_path": "setup/production-environment/tools/kubeadm/kubelet-integration.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": null,
          "line_end": null,
          "quote": "Configuring each kubelet in your cluster using kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-configuration-patterns",
      "type": "concept",
      "title": "Kubelet configuration patterns",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 1245,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-kubelets-using-kubeadm",
      "type": "concept",
      "title": "Configure kubelets using kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 4245,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-kubelet-drop-in-file-for-systemd",
      "type": "concept",
      "title": "The kubelet drop-in file for systemd",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 7829,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-binaries-and-package-contents",
      "type": "concept",
      "title": "Kubernetes binaries and package contents",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 10865,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:propagating-cluster-level-configuration-to-each-kubelet",
      "type": "concept",
      "title": "Propagating cluster-level configuration to each kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 1456,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:providing-instance-specific-configuration-details",
      "type": "concept",
      "title": "Providing instance-specific configuration details",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 2867,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workflow-when-using-kubeadm-init",
      "type": "concept",
      "title": "Workflow when using `kubeadm init`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 4929,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workflow-when-using-kubeadm-join",
      "type": "concept",
      "title": "Workflow when using `kubeadm join`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 6590,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "type": "page",
      "title": "Creating Highly Available Clusters with kubeadm",
      "summary": "",
      "body": "\n\nThis page explains two different approaches to setting up a highly available Kubernetes\ncluster using kubeadm:\n\n- With stacked control plane nodes. This approach requires less infrastructure. The etcd members\n  and control plane nodes are co-located.\n- With an external etcd cluster. This approach requires more infrastructure. The\n  control plane nodes and etcd members are separated.\n\nBefore proceeding, you should carefully consider which approach best meets the needs of your applications\nand environment. [Options for Highly Available topology](/docs/setup/production-environment/tools/kubeadm/ha-topology/)\noutlines the advantages and disadvantages of each.\n\nIf you encounter issues with setting up the HA cluster, please report these\nin the kubeadm [issue tracker](https://github.com/kubernetes/kubeadm/issues/new).\n\nSee also the [upgrade documentation](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).\n\n\n> **Caution:** This page does not address running your cluster on a cloud provider. In a cloud\nenvironment, neither approach documented here works with Service objects of type\nLoadBalancer, or with dynamic PersistentVolumes.\n\n\n## \n\nThe prerequisites depend on which topology you have selected for your cluster's\ncontrol plane:\n\n\n\n\n\nYou need:\n\n- Three or more machines that meet [kubeadm's minimum requirements](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin) for\n  the control-plane nodes. Having an odd number of control plane nodes can help\n  with leader selection in the case of machine or zone failure.\n  - including a , already set up and working\n- Three or more machines that meet [kubeadm's minimum\n  requirements](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin) for the workers\n  - including a container runtime, already set up and working\n- Full network connectivity between all machines in the cluster (public or\n  private network)\n- Superuser privileges on all machines using `sudo`\n  - You can use a different tool; this guide uses `sudo` in the examples.\n- SSH access from one device to all nodes in the system\n- `kubeadm` and `kubelet` already installed on all machines.\n\n_See [Stacked etcd topology](/docs/setup/production-environment/tools/kubeadm/ha-topology/#stacked-etcd-topology) for context._\n\n\n\n\nYou need:\n\n- Three or more machines that meet [kubeadm's minimum requirements](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin) for\n  the control-plane nodes. Having an odd number of control plane nodes can help\n  with leader selection in the case of machine or zone failure.\n  - including a , already set up and working\n- Three or more machines that meet [kubeadm's minimum\n  requirements](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin) for the workers\n  - including a container runtime, already set up and working\n- Full network connectivity between all machines in the cluster (public or\n  private network)\n- Superuser privileges on all machines using `sudo`\n  - You can use a different tool; this guide uses `sudo` in the examples.\n- SSH access from one device to all nodes in the system\n- `kubeadm` and `kubelet` already installed on all machines.\n\n\n\nAnd you also need:\n\n- Three or more additional machines, that will become etcd cluster members.\n  Having an odd number of members in the etcd cluster is a requirement for achieving\n  optimal voting quorum.\n  - These machines again need to have `kubeadm` and `kubelet` installed.\n  - These machines also require a container runtime, that is already set up and working.\n\n_See [External etcd topology](/docs/setup/production-environment/tools/kubeadm/ha-topology/#external-etcd-topology) for context._\n\n\n\n### Container images\n\nEach host should have access read and fetch images from the Kubernetes container image registry,\n`registry.k8s.io`. If you want to deploy a highly-available cluster where the hosts do not have\naccess to pull images, this is possible. Y\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
      "meta": {
        "weight": 60,
        "rel_path": "setup/production-environment/tools/kubeadm/high-availability.md"
      },
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": null,
          "line_end": null,
          "quote": "Creating Highly Available Clusters with kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:first-steps-for-both-methods",
      "type": "concept",
      "title": "First steps for both methods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 5005,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stacked-control-plane-and-etcd-nodes",
      "type": "concept",
      "title": "Stacked control plane and etcd nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 6733,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-etcd-nodes",
      "type": "concept",
      "title": "External etcd nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 12328,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:common-tasks-after-bootstrapping-control-plane",
      "type": "concept",
      "title": "Common tasks after bootstrapping control plane",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 15417,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manual-certificate-distribution-manual-certs",
      "type": "concept",
      "title": "Manual certificate distribution {#manual-certs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 15801,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-images",
      "type": "concept",
      "title": "Container images",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 4338,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:command-line-interface-kubectl",
      "type": "concept",
      "title": "Command line interface {#kubectl}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 4710,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-load-balancer-for-kube-apiserver",
      "type": "concept",
      "title": "Create load balancer for kube-apiserver",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 5038,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:steps-for-the-first-control-plane-node",
      "type": "concept",
      "title": "Steps for the first control plane node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 6774,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:steps-for-the-rest-of-the-control-plane-nodes",
      "type": "concept",
      "title": "Steps for the rest of the control plane nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 11188,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-up-the-etcd-cluster",
      "type": "concept",
      "title": "Set up the etcd cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 12571,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-up-the-first-control-plane-node",
      "type": "concept",
      "title": "Set up the first control plane node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 13246,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-workers",
      "type": "concept",
      "title": "Install workers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 15468,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/best-practices/multiple-zones",
      "type": "page",
      "title": "Running in multiple zones",
      "summary": "",
      "body": "\n\nThis page describes running Kubernetes across multiple zones.\n\n\n\n## Background\n\nKubernetes is designed so that a single Kubernetes cluster can run\nacross multiple failure zones, typically where these zones fit within\na logical grouping called a _region_. Major cloud providers define a region\nas a set of failure zones (also called _availability zones_) that provide\na consistent set of features: within a region, each zone offers the same\nAPIs and services.\n\nTypical cloud architectures aim to minimize the chance that a failure in\none zone also impairs services in another zone.\n\n## Control plane behavior\n\nAll [control plane components](/docs/concepts/architecture/#control-plane-components)\nsupport running as a pool of interchangeable resources, replicated per\ncomponent.\n\nWhen you deploy a cluster control plane, place replicas of\ncontrol plane components across multiple failure zones. If availability is\nan important concern, select at least three failure zones and replicate\neach individual control plane component (API server, scheduler, etcd,\ncluster controller manager) across at least three failure zones.\nIf you are running a cloud controller manager then you should\nalso replicate this across all the failure zones you selected.\n\n\n> **Note:** Kubernetes does not provide cross-zone resilience for the API server\nendpoints. You can use various techniques to improve availability for\nthe cluster API server, including DNS round-robin, SRV records, or\na third-party load balancing solution with health checking.\n\n\n## Node behavior\n\nKubernetes automatically spreads the Pods for\nworkload resources (such as [Deployment](#gloss:deployment)\nor [StatefulSet](#gloss:statefulset))\nacross different nodes in a cluster. This spreading helps\nreduce the impact of failures.\n\nWhen nodes start up, the kubelet on each node automatically adds\n[labels](#gloss:label) to the Node object\nthat represents that specific kubelet in the Kubernetes API.\nThese labels can include\n[zone information](/docs/reference/labels-annotations-taints/#topologykubernetesiozone).\n\nIf your cluster spans multiple zones or regions, you can use node labels\nin conjunction with\n[Pod topology spread constraints](/docs/concepts/scheduling-eviction/topology-spread-constraints/)\nto control how Pods are spread across your cluster among fault domains:\nregions, zones, and even specific nodes.\nThese hints enable the\n[scheduler](#gloss:kube-scheduler) to place\nPods for better expected availability, reducing the risk that a correlated\nfailure affects your whole workload.\n\nFor example, you can set a constraint to make sure that the\n3 replicas of a StatefulSet are all running in different zones to each\nother, whenever that is feasible. You can define this declaratively\nwithout explicitly defining which availability zones are in use for\neach workload.\n\n### Distributing nodes across zones\n\nKubernetes' core does not create nodes for you; you need to do that yourself,\nor use a tool such as the [Cluster API](https://cluster-api.sigs.k8s.io/) to\nmanage nodes on your behalf.\n\nUsing tools such as the Cluster API you can define sets of machines to run as\nworker nodes for your cluster across multiple failure domains, and rules to\nautomatically heal the cluster in case of whole-zone service disruption.\n\n## Manual zone assignment for Pods\n\nYou can apply [node selector constraints](/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector)\nto Pods that you create, as well as to Pod templates in workload resources\nsuch as Deployment, StatefulSet, or Job.\n\n## Storage access for zones\n\nWhen persistent volumes are created, Kubernetes automatically adds zone labels \nto any PersistentVolumes that are linked to a specific zone.\nThe [scheduler](#gloss:kube-scheduler) then ensures,\nthrough its `NoVolumeZoneConflict` predicate, that pods which claim a given PersistentVolume\nare only placed into the same zone as that volume.\n\nPlease note that the method of adding zone labels can depend on your \ncloud provider and t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
      "meta": {
        "weight": 20,
        "rel_path": "setup/best-practices/multiple-zones.md"
      },
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": null,
          "line_end": null,
          "quote": "Running in multiple zones"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-behavior",
      "type": "concept",
      "title": "Control plane behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 615,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-behavior",
      "type": "concept",
      "title": "Node behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 1572,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manual-zone-assignment-for-pods",
      "type": "concept",
      "title": "Manual zone assignment for Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 3453,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storage-access-for-zones",
      "type": "concept",
      "title": "Storage access for zones",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 3714,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networking",
      "type": "concept",
      "title": "Networking",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 4709,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fault-recovery",
      "type": "concept",
      "title": "Fault recovery",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 5559,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:distributing-nodes-across-zones",
      "type": "concept",
      "title": "Distributing nodes across zones",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 3003,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/best-practices/enforcing-pod-security-standards",
      "type": "page",
      "title": "Enforcing Pod Security Standards",
      "summary": "",
      "body": "\n\nThis page provides an overview of best practices when it comes to enforcing\n[Pod Security Standards](/docs/concepts/security/pod-security-standards).\n\n\n\n## Using the built-in Pod Security Admission Controller\n\n\n\nThe [Pod Security Admission Controller](/docs/reference/access-authn-authz/admission-controllers/#podsecurity)\nintends to replace the deprecated PodSecurityPolicies. \n\n### Configure all cluster namespaces\n\nNamespaces that lack any configuration at all should be considered significant gaps in your cluster\nsecurity model. We recommend taking the time to analyze the types of workloads occurring in each\nnamespace, and by referencing the Pod Security Standards, decide on an appropriate level for\neach of them. Unlabeled namespaces should only indicate that they've yet to be evaluated.\n\nIn the scenario that all workloads in all namespaces have the same security requirements,\nwe provide an [example](/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/#applying-to-all-namespaces)\nthat illustrates how the PodSecurity labels can be applied in bulk.\n\n### Embrace the principle of least privilege\n\nIn an ideal world, every pod in every namespace would meet the requirements of the `restricted`\npolicy. However, this is not possible nor practical, as some workloads will require elevated\nprivileges for legitimate reasons.\n\n- Namespaces allowing `privileged` workloads should establish and enforce appropriate access controls.\n- For workloads running in those permissive namespaces, maintain documentation about their unique\n  security requirements. If at all possible, consider how those requirements could be further\n  constrained.\n\n### Adopt a multi-mode strategy\n\nThe `audit` and `warn` modes of the Pod Security Standards admission controller make it easy to\ncollect important security insights about your pods without breaking existing workloads.\n\nIt is good practice to enable these modes for all namespaces, setting them to the _desired_ level\nand version you would eventually like to `enforce`. The warnings and audit annotations generated in\nthis phase can guide you toward that state. If you expect workload authors to make changes to fit\nwithin the desired level, enable the `warn` mode. If you expect to use audit logs to monitor/drive\nchanges to fit within the desired level, enable the `audit` mode.\n\nWhen you have the `enforce` mode set to your desired value, these modes can still be useful in a\nfew different ways:\n\n- By setting `warn` to the same level as `enforce`, clients will receive warnings when attempting\n  to create Pods (or resources that have Pod templates) that do not pass validation. This will help\n  them update those resources to become compliant.\n- In Namespaces that pin `enforce` to a specific non-latest version, setting the `audit` and `warn`\n  modes to the same level as `enforce`, but to the `latest` version, gives visibility into settings\n  that were allowed by previous versions but are not allowed per current best practices.\n\n## Third-party alternatives\n\n\n\nOther alternatives for enforcing security profiles are being developed in the Kubernetes\necosystem:\n\n- [Kubewarden](https://github.com/kubewarden).\n- [Kyverno](https://kyverno.io/policies/).\n- [OPA Gatekeeper](https://github.com/open-policy-agent/gatekeeper).\n\nThe decision to go with a _built-in_ solution (e.g. PodSecurity admission controller) versus a\nthird-party tool is entirely dependent on your own situation. When evaluating any solution,\ntrust of your supply chain is crucial. Ultimately, using _any_ of the aforementioned approaches\nwill be better than doing nothing.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
      "meta": {
        "weight": 40,
        "rel_path": "setup/best-practices/enforcing-pod-security-standards.md"
      },
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": null,
          "line_end": null,
          "quote": "Enforcing Pod Security Standards"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-the-built-in-pod-security-admission-controller",
      "type": "concept",
      "title": "Using the built-in Pod Security Admission Controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": 186,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:third-party-alternatives",
      "type": "concept",
      "title": "Third-party alternatives",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": 3095,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-all-cluster-namespaces",
      "type": "concept",
      "title": "Configure all cluster namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": 473,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:embrace-the-principle-of-least-privilege",
      "type": "concept",
      "title": "Embrace the principle of least privilege",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": 1175,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adopt-a-multi-mode-strategy",
      "type": "concept",
      "title": "Adopt a multi-mode strategy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": 1757,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/best-practices/cluster-large",
      "type": "page",
      "title": "Considerations for large clusters",
      "summary": "",
      "body": "A cluster is a set of [nodes](#gloss:node) (physical\nor virtual machines) running Kubernetes agents, managed by the\n[control plane](#gloss:control-plane).\nKubernetes  supports clusters with up to 5,000 nodes. More specifically,\nKubernetes is designed to accommodate configurations that meet *all* of the following criteria:\n\n* No more than 110 pods per node\n* No more than 5,000 nodes\n* No more than 150,000 total pods\n* No more than 300,000 total containers\n\nYou can scale your cluster by adding or removing nodes. The way you do this depends\non how your cluster is deployed.\n\n## Cloud provider resource quotas {#quota-issues}\n\nTo avoid running into cloud provider quota issues, when creating a cluster with many nodes,\nconsider:\n* Requesting a quota increase for cloud resources such as:\n    * Computer instances\n    * CPUs\n    * Storage volumes\n    * In-use IP addresses\n    * Packet filtering rule sets\n    * Number of load balancers\n    * Network subnets\n    * Log streams\n* Gating the cluster scaling actions to bring up new nodes in batches, with a pause\n  between batches, because some cloud providers rate limit the creation of new instances.\n\n## Control plane components\n\nFor a large cluster, you need a control plane with sufficient compute and other\nresources.\n\nTypically you would run one or two control plane instances per failure zone,\nscaling those instances vertically first and then scaling horizontally after reaching\nthe point of falling returns to (vertical) scale.\n\nYou should run at least one instance per failure zone to provide fault-tolerance. Kubernetes\nnodes do not automatically steer traffic towards control-plane endpoints that are in the\nsame failure zone; however, your cloud provider might have its own mechanisms to do this.\n\nFor example, using a managed load balancer, you configure the load balancer to send traffic\nthat originates from the kubelet and Pods in failure zone _A_, and direct that traffic only\nto the control plane hosts that are also in zone _A_. If a single control-plane host or\nendpoint failure zone _A_ goes offline, that means that all the control-plane traffic for\nnodes in zone _A_ is now being sent between zones. Running multiple control plane hosts in\neach zone makes that outcome less likely.\n\n### etcd storage\n\nTo improve performance of large clusters, you can store Event objects in a separate\ndedicated etcd instance.\n\nWhen creating a cluster, you can (using custom tooling):\n\n* start and configure additional etcd instance\n* configure the [API server](#gloss:kube-apiserver) to use it for storing events\n\nSee [Operating etcd clusters for Kubernetes](/docs/tasks/administer-cluster/configure-upgrade-etcd/) and\n[Set up a High Availability etcd cluster with kubeadm](/docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm/)\nfor details on configuring and managing etcd for a large cluster.\n\n## Addon resources\n\nKubernetes [resource limits](/docs/concepts/configuration/manage-resources-containers/)\nhelp to minimize the impact of memory leaks and other ways that pods and containers can\nimpact on other components. These resource limits apply to\n[addon](#gloss:addons) resources just as they apply to application workloads.\n\nFor example, you can set CPU and memory limits for a logging component:\n\n```yaml\n  ...\n  containers:\n  - name: fluentd-cloud-logging\n    image: fluent/fluentd-kubernetes-daemonset:v1\n    resources:\n      limits:\n        cpu: 100m\n        memory: 200Mi\n```\n\nAddons' default limits are typically based on data collected from experience running\neach addon on small or medium Kubernetes clusters. When running on large\nclusters, addons often consume more of some resources than their default limits.\nIf a large cluster is deployed without adjusting these values, the addon(s)\nmay continuously get killed because they keep hitting the memory limit.\nAlternatively, the addon may run but with poor performance due to CPU time\nslice restrictions.\n\nTo avoid running into cluster addon resource issu\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
      "meta": {
        "weight": 10,
        "rel_path": "setup/best-practices/cluster-large.md"
      },
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": null,
          "line_end": null,
          "quote": "Considerations for large clusters"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cloud-provider-resource-quotas-quota-issues",
      "type": "concept",
      "title": "Cloud provider resource quotas {#quota-issues}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 666,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-components",
      "type": "concept",
      "title": "Control plane components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 1241,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:addon-resources",
      "type": "concept",
      "title": "Addon resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 2997,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prioritizing-cluster-essential-components",
      "type": "concept",
      "title": "Prioritizing cluster-essential components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 5067,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:etcd-storage",
      "type": "concept",
      "title": "etcd storage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 2345,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/best-practices/certificates",
      "type": "page",
      "title": "PKI certificates and requirements",
      "summary": "",
      "body": "\n\nKubernetes requires PKI certificates for authentication over TLS.\nIf you install Kubernetes with [kubeadm](/docs/reference/setup-tools/kubeadm/), the certificates\nthat your cluster requires are automatically generated.\nYou can also generate your own certificates -- for example, to keep your private keys more secure\nby not storing them on the API server.\nThis page explains the certificates that your cluster requires.\n\n\n\n## How certificates are used by your cluster\n\nKubernetes requires PKI for the following operations:\n\n### Server certificates\n\n* Server certificate for the API server endpoint\n* Server certificate for the etcd server\n* [Server certificates](/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/#client-and-serving-certificates)\n  for each kubelet (every [node](#gloss:node) runs a kubelet)\n* Optional server certificate for the [front-proxy](/docs/tasks/extend-kubernetes/configure-aggregation-layer/)\n\n### Client certificates\n\n* Client certificates for each kubelet, used to authenticate to the API server as a client of\n  the Kubernetes API\n* Client certificate for each API server, used to authenticate to etcd\n* Client certificate for the controller manager to securely communicate with the API server\n* Client certificate for the scheduler to securely communicate with the API server\n* Client certificates, one for each node, for kube-proxy to authenticate to the API server\n* Optional client certificates for administrators of the cluster to authenticate to the API server\n* Optional client certificate for the [front-proxy](/docs/tasks/extend-kubernetes/configure-aggregation-layer/)\n\n### Kubelet's server and client certificates\n\nTo establish a secure connection and authenticate itself to the kubelet, the API Server\nrequires a client certificate and key pair.\n\nIn this scenario, there are two approaches for certificate usage:\n\n* Shared Certificates: The kube-apiserver can utilize the same certificate and key pair it uses\n  to authenticate its clients. This means that the existing certificates, such as `apiserver.crt`\n  and `apiserver.key`, can be used for communicating with the kubelet servers.\n\n* Separate Certificates: Alternatively, the kube-apiserver can generate a new client certificate\n  and key pair to authenticate its communication with the kubelet servers. In this case,\n  a distinct certificate named `kubelet-client.crt` and its corresponding private key,\n  `kubelet-client.key` are created.\n\n\n> **Note:** `front-proxy` certificates are required only when using the API server aggregation layer\nto support [an extension API server](/docs/tasks/extend-kubernetes/setup-extension-api-server/).\n\n\netcd also implements mutual TLS to authenticate clients and peers.\n\n## Where certificates are stored\n\nIf you install Kubernetes with kubeadm, most certificates are stored in `/etc/kubernetes/pki`.\nAll paths in this documentation are relative to that directory, with the exception of user account\ncertificates which kubeadm places in `/etc/kubernetes`.\n\n## Configure certificates manually\n\nIf you don't want kubeadm to generate the required certificates, you can create them using a\nsingle root CA or by providing all certificates. See [Certificates](/docs/tasks/administer-cluster/certificates/)\nfor details on creating your own certificate authority. See\n[Certificate Management with kubeadm](/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/)\nfor more on managing certificates.\n\n### Single root CA\n\nYou can create a single root CA, controlled by an administrator. This root CA can then create\nmultiple intermediate CAs, and delegate all further creation to Kubernetes itself.\n\nRequired CAs:\n\n| Path                   | Default CN                | Description                      |\n|------------------------|---------------------------|----------------------------------|\n| ca.crt,key             | kubernetes-ca             | Kubernetes general CA            |\n| etcd/ca.crt,key        | etcd-ca                   | For all etcd-related f\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
      "meta": {
        "weight": 50,
        "rel_path": "setup/best-practices/certificates.md"
      },
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": null,
          "line_end": null,
          "quote": "PKI certificates and requirements"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-certificates-are-used-by-your-cluster",
      "type": "concept",
      "title": "How certificates are used by your cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 456,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:where-certificates-are-stored",
      "type": "concept",
      "title": "Where certificates are stored",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 2799,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-certificates-manually",
      "type": "concept",
      "title": "Configure certificates manually",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 3084,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-certificates-for-user-accounts",
      "type": "concept",
      "title": "Configure certificates for user accounts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 11419,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:server-certificates",
      "type": "concept",
      "title": "Server certificates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 557,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:client-certificates",
      "type": "concept",
      "title": "Client certificates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 998,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-s-server-and-client-certificates",
      "type": "concept",
      "title": "Kubelet's server and client certificates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 1687,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:single-root-ca",
      "type": "concept",
      "title": "Single root CA",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 3516,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:all-certificates",
      "type": "concept",
      "title": "All certificates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 4669,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificate-paths",
      "type": "concept",
      "title": "Certificate paths",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 7973,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/best-practices/_index",
      "type": "page",
      "title": "Best practices",
      "summary": "Establishing best practices is essential for a smooth Kubernetes experience.",
      "body": "Establishing best practices is essential for a smooth Kubernetes experience.\n\n**Why it matters**\nBest practices ensure efficient and secure cluster management, reducing the risk of errors and downtime.\n\n**Key facts**\n- Adhere to established guidelines for cluster setup and maintenance.\n- Regularly review and update best practices to reflect changing requirements.\n\n**Common pitfalls**\n- Ignoring best practices can lead to security vulnerabilities and performance issues.\n\n**Related**\nsetup, best-practices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/best-practices/_index/",
      "meta": {
        "weight": 40,
        "rel_path": "setup/best-practices/_index.md"
      },
      "provenance": [
        {
          "source": "setup/best-practices/_index.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Best practices"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:setup/best-practices/node-conformance",
      "type": "page",
      "title": "Validate node setup",
      "summary": "",
      "body": "## Node Conformance Test\n\n*Node conformance test* is a containerized test framework that provides a system\nverification and functionality test for a node. The test validates whether the\nnode meets the minimum requirements for Kubernetes; a node that passes the test\nis qualified to join a Kubernetes cluster.\n\n## Node Prerequisite\n\nTo run node conformance test, a node must satisfy the same prerequisites as a\nstandard Kubernetes node. At a minimum, the node should have the following\ndaemons installed:\n\n* CRI-compatible container runtimes such as Docker, containerd and CRI-O\n* kubelet\n\n## Running Node Conformance Test\n\nTo run the node conformance test, perform the following steps:\n\n1. Work out the value of the `--kubeconfig` option for the kubelet; for example:\n   `--kubeconfig=/var/lib/kubelet/config.yaml`.\n    Because the test framework starts a local control plane to test the kubelet,\n    use `http://localhost:8080` as the URL of the API server.\n    There are some other kubelet command line parameters you may want to use:\n  \n   * `--cloud-provider`: If you are using `--cloud-provider=gce`, you should\n     remove the flag to run the test.\n\n1. Run the node conformance test with command:\n\n   ```shell\n   # $CONFIG_DIR is the pod manifest path of your kubelet.\n   # $LOG_DIR is the test output path.\n   sudo docker run -it --rm --privileged --net=host \\\n     -v /:/rootfs -v $CONFIG_DIR:$CONFIG_DIR -v $LOG_DIR:/var/result \\\n     registry.k8s.io/node-test:0.2\n   ```\n\n## Running Node Conformance Test for Other Architectures\n\nKubernetes also provides node conformance test docker images for other\narchitectures:\n\n|  Arch  |       Image       |\n|--------|:-----------------:|\n|  amd64 |  node-test-amd64  |\n|  arm   |   node-test-arm   |\n| arm64  |  node-test-arm64  |\n\n## Running Selected Test\n\nTo run specific tests, overwrite the environment variable `FOCUS` with the\nregular expression of tests you want to run.\n\n```shell\nsudo docker run -it --rm --privileged --net=host \\\n  -v /:/rootfs:ro -v $CONFIG_DIR:$CONFIG_DIR -v $LOG_DIR:/var/result \\\n  -e FOCUS=MirrorPod \\ # Only run MirrorPod test\n  registry.k8s.io/node-test:0.2\n```\n\nTo skip specific tests, overwrite the environment variable `SKIP` with the\nregular expression of tests you want to skip.\n\n```shell\nsudo docker run -it --rm --privileged --net=host \\\n  -v /:/rootfs:ro -v $CONFIG_DIR:$CONFIG_DIR -v $LOG_DIR:/var/result \\\n  -e SKIP=MirrorPod \\ # Run all conformance tests but skip MirrorPod test\n  registry.k8s.io/node-test:0.2\n```\n\nNode conformance test is a containerized version of\n[node e2e test](https://github.com/kubernetes/community/blob/main/contributors/devel/sig-node/e2e-node-tests.md).\nBy default, it runs all conformance tests.\n\nTheoretically, you can run any node e2e test if you configure the container and\nmount required volumes properly. But **it is strongly recommended to only run conformance\ntest**, because it requires much more complex configuration to run non-conformance test.\n\n## Caveats\n\n* The test leaves some docker images on the node, including the node conformance\n  test image and images of containers used in the functionality\n  test.\n* The test leaves dead containers on the node. These containers are created\n  during the functionality test.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
      "meta": {
        "weight": 30,
        "rel_path": "setup/best-practices/node-conformance.md"
      },
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": null,
          "line_end": null,
          "quote": "Validate node setup"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-conformance-test",
      "type": "concept",
      "title": "Node Conformance Test",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-prerequisite",
      "type": "concept",
      "title": "Node Prerequisite",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 311,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-node-conformance-test",
      "type": "concept",
      "title": "Running Node Conformance Test",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 590,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-node-conformance-test-for-other-architectures",
      "type": "concept",
      "title": "Running Node Conformance Test for Other Architectures",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 1483,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-selected-test",
      "type": "concept",
      "title": "Running Selected Test",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 1784,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:setup/learning-environment/_index",
      "type": "page",
      "title": "Learning environment",
      "summary": "",
      "body": "\n\nIf you are learning Kubernetes, you need a place to practice. This page explains your options for setting up a Kubernetes environment where you can experiment and learn.\n\n\n\n## Installing kubectl\n\nBefore you set up a cluster, you need the `kubectl` command-line tool. This tool lets you communicate with a Kubernetes cluster and run commands against it.\n\nSee [Install and Set Up kubectl](/docs/tasks/tools/#kubectl) for installation instructions.\n\n## Setting up local Kubernetes environments\n\nRunning Kubernetes locally gives you a safe environment to learn and experiment. You can set up and tear down clusters without worrying about costs or affecting production systems.\n\n### kind\n\n[kind](https://kind.sigs.k8s.io/) (Kubernetes IN Docker) runs Kubernetes clusters using Docker containers as nodes. It is lightweight and designed specifically for testing Kubernetes itself, but works great for learning too.\n\nTo get started with kind, see the [kind Quick Start](https://kind.sigs.k8s.io/docs/user/quick-start/).\n\n### minikube\n\n[minikube](https://minikube.sigs.k8s.io/) runs a single-node Kubernetes cluster on your local machine. It supports multiple container runtimes and works on Linux, macOS, and Windows.\n\nTo get started with minikube, see the [minikube Get Started](https://minikube.sigs.k8s.io/docs/start/) guide.\n\n### Other local options\n\n\n\nThere are several third-party tools that can also run Kubernetes locally. Kubernetes does not provide support for these tools, but they may work well for your learning needs:\n\n- [Docker Desktop](https://docs.docker.com/desktop/kubernetes/) can run a local Kubernetes cluster\n- [Podman Desktop](https://podman-desktop.io/docs/kubernetes) can run a local Kubernetes cluster\n- [Rancher Desktop](https://docs.rancherdesktop.io/) provides Kubernetes on your desktop\n- [MicroK8s](https://canonical.com/microk8s) runs a lightweight Kubernetes cluster\n- [Red Hat CodeReady Containers (CRC)](https://developers.redhat.com/products/openshift-local) runs a minimal OpenShift cluster locally (OpenShift is Kubernetes-conformant)\n\nRefer to each tool's documentation for setup instructions and support.\n\n## Using online playgrounds\n\n\n\nOnline Kubernetes playgrounds let you try Kubernetes without installing anything on your computer. These environments run in your web browser:\n\n- **[Killercoda](https://killercoda.com/kubernetes)** provides interactive Kubernetes scenarios and a playground environment\n\nThese platforms are useful for quick experiments and following tutorials without local setup.\n\n## Practicing with production-like clusters\n\nIf you want to practice setting up a more production-like cluster, you can use **kubeadm**. Setting up a cluster with kubeadm is an advanced task that requires multiple machines (physical or virtual) and careful configuration.\n\nFor learning about production environments, see [Production environment](/docs/setup/production-environment/).\n\n\n> **Note:** Setting up a production-like cluster is significantly more complex than the learning environments described above. Start with kind, minikube, or an online playground first.\n\n\n## \n\n- Follow the [Hello Minikube](/docs/tutorials/hello-minikube/) tutorial to deploy your first application\n- Learn about [Kubernetes components](/docs/concepts/overview/components/)\n- Explore [kubectl commands](/docs/reference/kubectl/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "setup/learning-environment/_index.md"
      },
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Learning environment"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installing-kubectl",
      "type": "concept",
      "title": "Installing kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-up-local-kubernetes-environments",
      "type": "concept",
      "title": "Setting up local Kubernetes environments",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 480,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-online-playgrounds",
      "type": "concept",
      "title": "Using online playgrounds",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 2213,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:practicing-with-production-like-clusters",
      "type": "concept",
      "title": "Practicing with production-like clusters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 2649,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:other-local-options",
      "type": "concept",
      "title": "Other local options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "setup",
      "tags": [
        "setup"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 1356,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/_index",
      "type": "page",
      "title": "Concepts",
      "summary": "Kubernetes concepts are fundamental building blocks for cluster management.",
      "body": "Kubernetes concepts are fundamental building blocks for cluster management.\n\n**Why it matters**\nUnderstanding core concepts enables effective deployment, scaling, and maintenance of applications.\n\n**Key facts**\n- Key Kubernetes concepts include Pods, Replication Controllers, Services, and Persistent Volumes.\n\n**Common pitfalls**\n- Failing to grasp core concepts can result in inefficient resource utilization and poor application performance.\n\n**Related**\nconcepts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/_index/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/_index.md",
          "url": "https://kubernetes.io/docs/concepts/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Concepts"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:concepts/configuration/configmap",
      "type": "page",
      "title": "ConfigMaps",
      "summary": "",
      "body": "\n\n[definition:configmap]\n\n\n> **Caution:** ConfigMap does not provide secrecy or encryption.\nIf the data you want to store are confidential, use a\n rather than a ConfigMap,\nor use additional (third party) tools to keep your data private.\n\n\n\n## Motivation\n\nUse a ConfigMap for setting configuration data separately from application code.\n\nFor example, imagine that you are developing an application that you can run on your\nown computer (for development) and in the cloud (to handle real traffic).\nYou write the code to look in an environment variable named `DATABASE_HOST`.\nLocally, you set that variable to `localhost`. In the cloud, you set it to\nrefer to a Kubernetes [Service](#gloss:service)\nthat exposes the database component to your cluster.\nThis lets you fetch a container image running in the cloud and\ndebug the exact same code locally if needed.\n\n\n> **Note:** A ConfigMap is not designed to hold large chunks of data. The data stored in a\nConfigMap cannot exceed 1 MiB. If you need to store settings that are\nlarger than this limit, you may want to consider mounting a volume or use a\nseparate database or file service.\n\n\n## ConfigMap object\n\nA ConfigMap is an [API object](#gloss:object)\nthat lets you store configuration for other objects to use. Unlike most\nKubernetes objects that have a `spec`, a ConfigMap has `data` and `binaryData`\nfields. These fields accept key-value pairs as their values.  Both the `data`\nfield and the `binaryData` are optional. The `data` field is designed to\ncontain UTF-8 strings while the `binaryData` field is designed to\ncontain binary data as base64-encoded strings.\n\nThe name of a ConfigMap must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\nEach key under the `data` or the `binaryData` field must consist of\nalphanumeric characters, `-`, `_` or `.`. The keys stored in `data` must not\noverlap with the keys in the `binaryData` field.\n\nStarting from v1.19, you can add an `immutable` field to a ConfigMap\ndefinition to create an [immutable ConfigMap](#configmap-immutable).\n\n## ConfigMaps and Pods\n\nYou can write a Pod `spec` that refers to a ConfigMap and configures the container(s)\nin that Pod based on the data in the ConfigMap. The Pod and the ConfigMap must be in\nthe same [namespace](#gloss:namespace).\n\n\n> **Note:** The `spec` of a  cannot refer to a ConfigMap\nor any other API objects.\n\n\nHere's an example ConfigMap that has some keys with single values,\nand other keys where the value looks like a fragment of a configuration\nformat.\n\n```yaml\napiVersion: v1\nkind: ConfigMap\nmetadata:\n  name: game-demo\ndata:\n  # property-like keys; each key maps to a simple value\n  player_initial_lives: \"3\"\n  ui_properties_file_name: \"user-interface.properties\"\n\n  # file-like keys\n  game.properties: |\n    enemy.types=aliens,monsters\n    player.maximum-lives=5\n  user-interface.properties: |\n    color.good=purple\n    color.bad=yellow\n    allow.textmode=true\n```\n\nThere are four different ways that you can use a ConfigMap to configure\na container inside a Pod:\n\n1. Inside a container command and args\n1. Environment variables for a container\n1. Add a file in read-only volume, for the application to read\n1. Write code to run inside the Pod that uses the Kubernetes API to read a ConfigMap\n\nThese different methods lend themselves to different ways of modeling\nthe data being consumed.\nFor the first three methods, the\n[kubelet](#gloss:kubelet) uses the data from\nthe ConfigMap when it launches container(s) for a Pod.\n\nThe fourth method means you have to write code to read the ConfigMap and its data.\nHowever, because you're using the Kubernetes API directly, your application can\nsubscribe to get updates whenever the ConfigMap changes, and react\nwhen that happens. By accessing the Kubernetes API directly, this\ntechnique also lets you access a ConfigMap in a different namespace.\n\nHere's an example Pod that uses values from `game-demo` to configure a Pod:\n\n\n\nA ConfigMap doesn't differen\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/configuration/configmap.md"
      },
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": null,
          "line_end": null,
          "quote": "ConfigMaps"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmap-object",
      "type": "concept",
      "title": "ConfigMap object",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 1343,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmaps-and-pods",
      "type": "concept",
      "title": "ConfigMaps and Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 2327,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-configmaps",
      "type": "concept",
      "title": "Using ConfigMaps",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 5031,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:immutable-configmaps-configmap-immutable",
      "type": "concept",
      "title": "Immutable ConfigMaps {#configmap-immutable}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 11202,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-configmaps-as-files-from-a-pod",
      "type": "concept",
      "title": "Using ConfigMaps as files from a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 5667,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-configmaps-as-environment-variables",
      "type": "concept",
      "title": "Using Configmaps as environment variables",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 8325,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/configuration/secret",
      "type": "page",
      "title": "Secrets",
      "summary": "",
      "body": "\n\nA Secret is an object that contains a small amount of sensitive data such as\na password, a token, or a key. Such information might otherwise be put in a\n[pod](#gloss:pod) specification or in a\n[container image](#gloss:image). Using a\nSecret means that you don't need to include confidential data in your\napplication code.\n\nBecause Secrets can be created independently of the Pods that use them, there\nis less risk of the Secret (and its data) being exposed during the workflow of\ncreating, viewing, and editing Pods. Kubernetes, and applications that run in\nyour cluster, can also take additional precautions with Secrets, such as avoiding\nwriting sensitive data to nonvolatile storage.\n\nSecrets are similar to [ConfigMaps](#gloss:configmap)\nbut are specifically intended to hold confidential data.\n\n\n> **Caution:** Kubernetes Secrets are, by default, stored unencrypted in the API server's underlying data store\n(etcd). Anyone with API access can retrieve or modify a Secret, and so can anyone with access to etcd.\nAdditionally, anyone who is authorized to create a Pod in a namespace can use that access to read\nany Secret in that namespace; this includes indirect access such as the ability to create a\nDeployment.\n\nIn order to safely use Secrets, take at least the following steps:\n\n1. [Enable Encryption at Rest](/docs/tasks/administer-cluster/encrypt-data/) for Secrets.\n1. [Enable or configure RBAC rules](/docs/reference/access-authn-authz/authorization/) with\n   least-privilege access to Secrets.\n1. Restrict Secret access to specific containers.\n1. [Consider using external Secret store providers](https://secrets-store-csi-driver.sigs.k8s.io/concepts.html#provider-for-the-secrets-store-csi-driver).\n\nFor more guidelines to manage and improve the security of your Secrets, refer to\n[Good practices for Kubernetes Secrets](/docs/concepts/security/secrets-good-practices).\n\n\nSee [Information security for Secrets](#information-security-for-secrets) for more details.\n\n\n\n## Uses for Secrets\n\nYou can use Secrets for purposes such as the following:\n\n- [Set environment variables for a container](/docs/tasks/inject-data-application/distribute-credentials-secure/#define-container-environment-variables-using-secret-data).\n- [Provide credentials such as SSH keys or passwords to Pods](/docs/tasks/inject-data-application/distribute-credentials-secure/#provide-prod-test-creds).\n- [Allow the kubelet to pull container images from private registries](/docs/tasks/configure-pod-container/pull-image-private-registry/).\n\nThe Kubernetes control plane also uses Secrets; for example,\n[bootstrap token Secrets](#bootstrap-token-secrets) are a mechanism to\nhelp automate node registration.\n\n### Use case: dotfiles in a secret volume\n\nYou can make your data \"hidden\" by defining a key that begins with a dot.\nThis key represents a dotfile or \"hidden\" file. For example, when the following Secret\nis mounted into a volume, `secret-volume`, the volume will contain a single file,\ncalled `.secret-file`, and the `dotfile-test-container` will have this file\npresent at the path `/etc/secret-volume/.secret-file`.\n\n\n> **Note:** Files beginning with dot characters are hidden from the output of `ls -l`;\nyou must use `ls -la` to see them when listing directory contents.\n\n\n\n\n### Use case: Secret visible to one container in a Pod\n\nConsider a program that needs to handle HTTP requests, do some complex business\nlogic, and then sign some messages with an HMAC. Because it has complex\napplication logic, there might be an unnoticed remote file reading exploit in\nthe server, which could expose the private key to an attacker.\n\nThis could be divided into two processes in two containers: a frontend container\nwhich handles user interaction and business logic, but which cannot see the\nprivate key; and a signer container that can see the private key, and responds\nto simple signing requests from the frontend (for example, over localhost networking).\n\nWith this partitioned approach, an attacker now has to tr\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/configuration/secret.md"
      },
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": null,
          "line_end": null,
          "quote": "Secrets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uses-for-secrets",
      "type": "concept",
      "title": "Uses for Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 2115,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:types-of-secret-secret-types",
      "type": "concept",
      "title": "Types of Secret {#secret-types}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 6171,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:working-with-secrets",
      "type": "concept",
      "title": "Working with Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 19777,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:immutable-secrets-secret-immutable",
      "type": "concept",
      "title": "Immutable Secrets {#secret-immutable}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 28424,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:information-security-for-secrets",
      "type": "concept",
      "title": "Information security for Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 29730,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-case-dotfiles-in-a-secret-volume",
      "type": "concept",
      "title": "Use case: dotfiles in a secret volume",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 2825,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-case-secret-visible-to-one-container-in-a-pod",
      "type": "concept",
      "title": "Use case: Secret visible to one container in a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 3477,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alternatives-to-secrets",
      "type": "concept",
      "title": "Alternatives to Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 4327,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:opaque-secrets",
      "type": "concept",
      "title": "Opaque Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 8123,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccount-token-secrets",
      "type": "concept",
      "title": "ServiceAccount token Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 8758,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-config-secrets",
      "type": "concept",
      "title": "Docker config Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 11765,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:basic-authentication-secret",
      "type": "concept",
      "title": "Basic authentication Secret",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 14348,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ssh-authentication-secrets",
      "type": "concept",
      "title": "SSH authentication Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 15452,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tls-secrets",
      "type": "concept",
      "title": "TLS Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 16610,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bootstrap-token-secrets",
      "type": "concept",
      "title": "Bootstrap token Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 18214,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-secret",
      "type": "concept",
      "title": "Creating a Secret",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 19802,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:editing-a-secret",
      "type": "concept",
      "title": "Editing a Secret",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 21457,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-a-secret",
      "type": "concept",
      "title": "Using a Secret",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 22318,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-secrets-as-files-from-a-pod-using-secrets-as-files-from-a-pod",
      "type": "concept",
      "title": "Using Secrets as files from a Pod {#using-secrets-as-files-from-a-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 23794,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-secrets-as-environment-variables",
      "type": "concept",
      "title": "Using Secrets as environment variables",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 25689,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-image-pull-secrets-using-imagepullsecrets",
      "type": "concept",
      "title": "Container image pull Secrets {#using-imagepullsecrets}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 26724,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-secrets-with-static-pods-restriction-static-pod",
      "type": "concept",
      "title": "Using Secrets with static Pods {#restriction-static-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 28253,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:marking-a-secret-as-immutable-secret-immutable-create",
      "type": "concept",
      "title": "Marking a Secret as immutable {#secret-immutable-create}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 29105,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-least-privilege-access-to-secrets",
      "type": "concept",
      "title": "Configure least-privilege access to Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 31620,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/configuration/manage-resources-containers",
      "type": "page",
      "title": "Resource Management for Pods and Containers",
      "summary": "",
      "body": "\n\nWhen you specify a [pod](#gloss:pod), you can optionally specify how much of each resource a \n[container](#gloss:container) needs. The most common resources to specify are CPU and memory \n(RAM); there are others.\n\nWhen you specify the resource _request_ for containers in a Pod, the\n[kube-scheduler](#gloss:kube-scheduler) uses this information to decide which node to place the Pod on. \nWhen you specify a resource _limit_ for a container, the [kubelet](#gloss:kubelet) enforces those \nlimits so that the running container is not allowed to use more of that resource \nthan the limit you set. The kubelet also reserves at least the _request_ amount of \nthat system resource specifically for that container to use.\n\n\n\n## Requests and limits\n\nIf the node where a Pod is running has enough of a resource available, it's possible (and\nallowed) for a container to use more resource than its `request` for that resource specifies.\n\nFor example, if you set a `memory` request of 256 MiB for a container, and that container is in\na Pod scheduled to a Node with 8GiB of memory and no other Pods, then the container can try to use\nmore RAM.\n\nLimits are a different story. Both `cpu` and `memory` limits are applied by the kubelet (and\n[container runtime](#gloss:container-runtime)),\nand are ultimately enforced by the kernel. On Linux nodes, the Linux kernel\nenforces limits with\n[cgroups](#gloss:cgroup).\nThe behavior of `cpu` and `memory` limit enforcement is slightly different.\n\n`cpu` limits are enforced by CPU throttling. When a container approaches\nits `cpu` limit, the kernel will restrict access to the CPU corresponding to the\ncontainer's limit. Thus, a `cpu` limit is a hard limit the kernel enforces.\nContainers may not use more CPU than is specified in their `cpu` limit.\n\n`memory` limits are enforced by the kernel with out of memory (OOM) kills. When\na container uses more than its `memory` limit, the kernel may terminate it. However,\nterminations only happen when the kernel detects memory pressure. Thus, a\ncontainer that over allocates memory may not be immediately killed. This means\n`memory` limits are enforced reactively. A container may use more memory than\nits `memory` limit, but if it does, it may get killed.\n\n\n> **Note:** There is an alpha feature `MemoryQoS` which adds memory throttling and optional\ntiered memory reservation on Linux nodes using cgroup v2. For details, see\n[Memory QoS with cgroup v2](/docs/concepts/workloads/pods/pod-qos/#memory-qos-with-cgroup-v2).\n\n\n\n> **Note:** If you specify a limit for a resource, but do not specify any request, and no admission-time\nmechanism has applied a default request for that resource, then Kubernetes copies the limit\nyou specified and uses it as the requested value for the resource.\n\n\n## Resource types\n\nA *resource type* has a base unit and can be requested, limited, or both.\nKubernetes has the following built-in resource types:\n\n| Resource type | Description | Base unit |\n|---|---|---|\n| `cpu` | Compute processing | cpu (core) |\n| `memory` | RAM | Bytes |\n| `ephemeral-storage` | [Local ephemeral storage](/docs/concepts/storage/ephemeral-storage/) | Bytes |\n| `hugepages-<size>` | [Huge pages](#huge-pages) (Linux only) | Bytes |\n\nClusters can also provide\n[extended resources](/docs/concepts/configuration/manage-resources-containers/#extended-resources)\n(resources with a custom name, typically exposed by device plugins).\n\n### Huge pages\n\nFor Linux workloads, you can specify _huge page_ resources.\nHuge pages are a Linux-specific feature where the node kernel allocates blocks of memory\nthat are much larger than the default page size.\n\nFor example, on a system where the default page size is 4KiB, you could specify a limit,\n`hugepages-2Mi: 80Mi`. If the container tries allocating over 40 2MiB huge pages (a\ntotal of 80 MiB), that allocation fails.\n\n\n> **Note:** You cannot overcommit `hugepages-*` resources.\nThis is different from the `memory` and `cpu` resources.\n\n\nCPU and memory are collectively referred \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/configuration/manage-resources-containers.md"
      },
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": null,
          "line_end": null,
          "quote": "Resource Management for Pods and Containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:requests-and-limits",
      "type": "concept",
      "title": "Requests and limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 867,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-types",
      "type": "concept",
      "title": "Resource types",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 3000,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-requests-and-limits-of-pod-and-container",
      "type": "concept",
      "title": "Resource requests and limits of Pod and container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 4633,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-level-resource-specification",
      "type": "concept",
      "title": "Pod-level resource specification",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 5500,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-units-in-kubernetes",
      "type": "concept",
      "title": "Resource units in Kubernetes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 6655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-resources-example-example-1",
      "type": "concept",
      "title": "Container resources example {#example-1}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 9313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-resources-example-example-2",
      "type": "concept",
      "title": "Pod resources example {#example-2}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 10159,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-pods-with-resource-requests-are-scheduled",
      "type": "concept",
      "title": "How Pods with resource requests are scheduled",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 10857,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-kubernetes-applies-resource-requests-and-limits-how-pods-with-resource-limits-are-run",
      "type": "concept",
      "title": "How Kubernetes applies resource requests and limits {#how-pods-with-resource-limits-are-run}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 11563,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:local-ephemeral-storage",
      "type": "concept",
      "title": "Local ephemeral storage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 18950,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extended-resources",
      "type": "concept",
      "title": "Extended resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 19779,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pid-limiting",
      "type": "concept",
      "title": "PID limiting",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 24931,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:huge-pages",
      "type": "concept",
      "title": "Huge pages",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 3648,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cpu-resource-units-meaning-of-cpu",
      "type": "concept",
      "title": "CPU resource units {#meaning-of-cpu}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 6688,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memory-resource-units-meaning-of-memory",
      "type": "concept",
      "title": "Memory resource units {#meaning-of-memory}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 8324,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resizing-container-resources",
      "type": "concept",
      "title": "Resizing container resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 14029,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:monitoring-compute-memory-resource-usage",
      "type": "concept",
      "title": "Monitoring compute & memory resource usage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 15824,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:considerations-for-memory-backed-emptydir-volumes-memory-backed-emptydir",
      "type": "concept",
      "title": "Considerations for memory backed `emptyDir` volumes {#memory-backed-emptydir}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 16332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-monitoring-for-local-ephemeral-storage",
      "type": "concept",
      "title": "Resource monitoring for local ephemeral storage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 19215,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managing-extended-resources",
      "type": "concept",
      "title": "Managing extended resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 20175,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:consuming-extended-resources",
      "type": "concept",
      "title": "Consuming extended resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 23455,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:my-pods-are-pending-with-event-message-failedscheduling",
      "type": "concept",
      "title": "My Pods are pending with event message `FailedScheduling`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 25165,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:my-container-is-terminated",
      "type": "concept",
      "title": "My container is terminated",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 29872,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/configuration/organize-cluster-access-kubeconfig",
      "type": "page",
      "title": "Organizing Cluster Access Using kubeconfig Files",
      "summary": "",
      "body": "\n\nUse kubeconfig files to organize information about clusters, users, namespaces, and\nauthentication mechanisms. The `kubectl` command-line tool uses kubeconfig files to\nfind the information it needs to choose a cluster and communicate with the API server\nof a cluster.\n\n\n> **Note:** A file that is used to configure access to clusters is called\na *kubeconfig file*. This is a generic way of referring to configuration files.\nIt does not mean that there is a file named `kubeconfig`.\n\n\n\nOnly use kubeconfig files from trusted sources. Using a specially-crafted kubeconfig file could result in malicious code execution or file exposure.\nIf you must use an untrusted kubeconfig file, inspect it carefully first, much as you would a shell script.\n\n\nBy default, `kubectl` looks for a file named `config` in the `$HOME/.kube` directory.\nYou can specify other kubeconfig files by setting the `KUBECONFIG` environment\nvariable or by setting the\n[`--kubeconfig`](/docs/reference/generated/kubectl/kubectl/) flag.\n\nFor step-by-step instructions on creating and specifying kubeconfig files, see\n[Configure Access to Multiple Clusters](/docs/tasks/access-application-cluster/configure-access-multiple-clusters).\n\n\n\n\n\n\n## Supporting multiple clusters, users, and authentication mechanisms\n\nSuppose you have several clusters, and your users and components authenticate\nin a variety of ways. For example:\n\n- A running kubelet might authenticate using certificates.\n- A user might authenticate using tokens.\n- Administrators might have sets of certificates that they provide to individual users.\n\nWith kubeconfig files, you can organize your clusters, users, and namespaces.\nYou can also define contexts to quickly and easily switch between\nclusters and namespaces.\n\n## Context\n\nA *context* element in a kubeconfig file is used to group access parameters\nunder a convenient name. Each context has three parameters: cluster, namespace, and user.\nBy default, the `kubectl` command-line tool uses parameters from\nthe *current context* to communicate with the cluster.\n\nTo choose the current context:\n```\nkubectl config use-context\n```\n\n## The KUBECONFIG environment variable\n\nThe `KUBECONFIG` environment variable holds a list of kubeconfig files.\nFor Linux and Mac, the list is colon-delimited. For Windows, the list\nis semicolon-delimited. The `KUBECONFIG` environment variable is not\nrequired. If the `KUBECONFIG` environment variable doesn't exist,\n`kubectl` uses the default kubeconfig file, `$HOME/.kube/config`.\n\nIf the `KUBECONFIG` environment variable does exist, `kubectl` uses\nan effective configuration that is the result of merging the files\nlisted in the `KUBECONFIG` environment variable.\n\n## Merging kubeconfig files\n\nTo see your configuration, enter this command:\n\n```shell\nkubectl config view\n```\n\nAs described previously, the output might be from a single kubeconfig file,\nor it might be the result of merging several kubeconfig files.\n\nHere are the rules that `kubectl` uses when it merges kubeconfig files:\n\n1. If the `--kubeconfig` flag is set, use only the specified file. Do not merge.\n   Only one instance of this flag is allowed.\n\n   Otherwise, if the `KUBECONFIG` environment variable is set, use it as a\n   list of files that should be merged.\n   Merge the files listed in the `KUBECONFIG` environment variable\n   according to these rules:\n\n   * Ignore empty filenames.\n   * Produce errors for files with content that cannot be deserialized.\n   * The first file to set a particular value or map key wins.\n   * Never change the value or map key.\n     Example: Preserve the context of the first file to set `current-context`.\n     Example: If two files specify a `red-user`, use only values from the first file's `red-user`.\n     Even if the second file has non-conflicting entries under `red-user`, discard them.\n\n   For an example of setting the `KUBECONFIG` environment variable, see\n   [Setting the KUBECONFIG environment variable](/docs/tasks/access-application-cluster/configure-access-\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/configuration/organize-cluster-access-kubeconfig.md"
      },
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": null,
          "line_end": null,
          "quote": "Organizing Cluster Access Using kubeconfig Files"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:supporting-multiple-clusters-users-and-authentication-mechanisms",
      "type": "concept",
      "title": "Supporting multiple clusters, users, and authentication mechanisms",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 1281,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:context",
      "type": "concept",
      "title": "Context",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 1826,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-kubeconfig-environment-variable",
      "type": "concept",
      "title": "The KUBECONFIG environment variable",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 2192,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:merging-kubeconfig-files",
      "type": "concept",
      "title": "Merging kubeconfig files",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 2761,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:file-references",
      "type": "concept",
      "title": "File references",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 5886,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:proxy",
      "type": "concept",
      "title": "Proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 6194,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/configuration/windows-resource-management",
      "type": "page",
      "title": "Resource Management for Windows nodes",
      "summary": "",
      "body": "\n\nThis page outlines the differences in how resources are managed between Linux and Windows.\n\n\n\nOn Linux nodes, [cgroups](#gloss:cgroup) are used\nas a pod boundary for resource control. Containers are created within that boundary\nfor network, process and file system isolation. The Linux cgroup APIs can be used to\ngather CPU, I/O, and memory use statistics.\n\nIn contrast, Windows uses a [_job object_](https://docs.microsoft.com/windows/win32/procthread/job-objects) per container with a system namespace filter\nto contain all processes in a container and provide logical isolation from the\nhost.\n(Job objects are a Windows process isolation mechanism and are different from\nwhat Kubernetes refers to as a [Job](#gloss:job)).\n\nThere is no way to run a Windows container without the namespace filtering in\nplace. This means that system privileges cannot be asserted in the context of the\nhost, and thus privileged containers are not available on Windows.\nContainers cannot assume an identity from the host because the Security Account Manager\n(SAM) is separate.\n\n## Memory management {#resource-management-memory}\n\nWindows does not have an out-of-memory process killer as Linux does. Windows always\ntreats all user-mode memory allocations as virtual, and pagefiles are mandatory.\n\nWindows nodes do not overcommit memory for processes. The\nnet effect is that Windows won't reach out of memory conditions the same way Linux\ndoes, and processes page to disk instead of being subject to out of memory (OOM)\ntermination. If memory is over-provisioned and all physical memory is exhausted,\nthen paging can slow down performance.\n\n## CPU management {#resource-management-cpu}\n\nWindows can limit the amount of CPU time allocated for different processes but cannot\nguarantee a minimum amount of CPU time.\n\nOn Windows, the kubelet supports a command-line flag to set the\n[scheduling priority](https://docs.microsoft.com/windows/win32/procthread/scheduling-priorities) of the\nkubelet process: `--windows-priorityclass`. This flag allows the kubelet process to get\nmore CPU time slices when compared to other processes running on the Windows host.\nMore information on the allowable values and their meaning is available at\n[Windows Priority Classes](https://docs.microsoft.com/en-us/windows/win32/procthread/scheduling-priorities#priority-class).\nTo ensure that running Pods do not starve the kubelet of CPU cycles, set this flag to `ABOVE_NORMAL_PRIORITY_CLASS` or above.\n\n## Resource reservation {#resource-reservation}\n\nTo account for memory and CPU used by the operating system, the container runtime, and by\nKubernetes host processes such as the kubelet, you can (and should) reserve\nmemory and CPU resources with the  `--kube-reserved` and/or `--system-reserved` kubelet flags.\nOn Windows these values are only used to calculate the node's\n[allocatable](/docs/tasks/administer-cluster/reserve-compute-resources/#node-allocatable) resources.\n\n\n> **Caution:** As you deploy workloads, set resource memory and CPU limits on containers.\nThis also subtracts from `NodeAllocatable` and helps the cluster-wide scheduler in determining which pods to place on which nodes.\n\nScheduling pods without limits may over-provision the Windows nodes and in extreme\ncases can cause the nodes to become unhealthy.\n\n\nOn Windows, a good practice is to reserve at least 2GiB of memory.\n\nTo determine how much CPU to reserve,\nidentify the maximum pod density for each node and monitor the CPU usage of\nthe system services running there, then choose a value that meets your workload needs.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
      "meta": {
        "weight": 75,
        "rel_path": "concepts/configuration/windows-resource-management.md"
      },
      "provenance": [
        {
          "source": "concepts/configuration/windows-resource-management.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
          "line_start": null,
          "line_end": null,
          "quote": "Resource Management for Windows nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memory-management-resource-management-memory",
      "type": "concept",
      "title": "Memory management {#resource-management-memory}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/windows-resource-management.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
          "line_start": 1158,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cpu-management-resource-management-cpu",
      "type": "concept",
      "title": "CPU management {#resource-management-cpu}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/windows-resource-management.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
          "line_start": 1719,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-reservation-resource-reservation",
      "type": "concept",
      "title": "Resource reservation {#resource-reservation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/configuration/windows-resource-management.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
          "line_start": 2557,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/configuration/_index",
      "type": "page",
      "title": "Configuration",
      "summary": "Resources that Kubernetes provides for configuring Pods.",
      "body": "Configuration is a critical aspect of Kubernetes cluster management.\n\n**Why it matters**\nProper configuration ensures optimal performance, security, and scalability.\n\n**Key facts**\n- Kubernetes supports various configuration methods, including YAML and JSON files.\n\n**Common pitfalls**\n- Incorrect or incomplete configuration can lead to application failures and security breaches.\n\n**Related**\nconfiguration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/configuration/_index/",
      "meta": {
        "weight": 80,
        "rel_path": "concepts/configuration/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/configuration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Configuration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:concepts/security/application-security-checklist",
      "type": "page",
      "title": "Application Security Checklist",
      "summary": "Baseline guidelines around ensuring application security on Kubernetes, aimed at application developers\n",
      "body": "\n\nThis checklist aims to provide basic guidelines on securing applications\nrunning in Kubernetes from a developer's perspective.\nThis list is not meant to be exhaustive and is intended to evolve over time.\n\n\n\nOn how to read and use this document:\n\n- The order of topics does not reflect an order of priority.\n- Some checklist items are detailed in the paragraph below the list of each section.\n- This checklist assumes that a `developer` is a Kubernetes cluster user who\n  interacts with namespaced scope objects.\n\n\n> **Caution:** Checklists are **not** sufficient for attaining a good security posture on their own.\nA good security posture requires constant attention and improvement, but a checklist\ncan be the first step on the never-ending journey towards security preparedness.\nSome recommendations in this checklist may be too restrictive or too lax for\nyour specific security needs. Since Kubernetes security is not \"one size fits all\",\neach category of checklist items should be evaluated on its merits.\n\n\n\n\n## Base security hardening\n\nThe following checklist provides base security hardening recommendations that\nwould apply to most applications deploying to Kubernetes.\n\n### Application design\n\n- [ ] Follow the right\n  [security principles](https://www.cncf.io/wp-content/uploads/2022/06/CNCF_cloud-native-security-whitepaper-May2022-v2.pdf)\n  when designing applications.\n- [ ] Application configured with appropriate [QoS class](#gloss:QoS-class)\n  through resource request and limits.\n  - [ ] Memory limit is set for the workloads with a limit equal to or greater than the request.\n  - [ ] CPU limit might be set on sensitive workloads.\n\n### Service account\n\n- [ ] Avoid using the `default` ServiceAccount. Instead, create ServiceAccounts for\n  each workload or microservice.\n- [ ] `automountServiceAccountToken` should be set to `false` unless the pod\n  specifically requires access to the Kubernetes API to operate.\n\n### Pod-level `securityContext` recommendations {#security-context-pod}\n\n- [ ] Set `runAsNonRoot: true`.\n- [ ] Configure the container to execute as a less privileged user\n  (for example, using `runAsUser` and `runAsGroup`), and configure appropriate\n  permissions on files or directories inside the container image.\n- [ ] Optionally add a supplementary group with `fsGroup` to access persistent volumes.\n- [ ] The application deploys into a namespace that enforces an appropriate\n  [Pod security standard](/docs/concepts/security/pod-security-standards/).\n  If you cannot control this enforcement for the cluster(s) where the application is\n  deployed, take this into account either through documentation or additional defense in depth.\n\n### Container-level `securityContext` recommendations {#security-context-container}\n\n- [ ] Disable privilege escalations using `allowPrivilegeEscalation: false`.\n- [ ] Configure the root filesystem to be read-only with `readOnlyRootFilesystem: true`.\n- [ ] Avoid running privileged containers (set `privileged: false`).\n- [ ] Drop all capabilities from the containers and add back only specific ones\n  that are needed for operation of the container.\n\n### Role Based Access Control (RBAC) {#rbac}\n\n- [ ] Permissions such as **create**, **patch**, **update** and **delete**\n  should be only granted if necessary.\n- [ ] Avoid creating RBAC permissions to create or update roles which can lead to\n  [privilege escalation](/docs/reference/access-authn-authz/rbac/#privilege-escalation-prevention-and-bootstrapping).\n- [ ] Review bindings for the `system:unauthenticated` group and remove them where\n  possible, as this gives access to anyone who can contact the API server at a network level.\n\nThe **create**, **update** and **delete** verbs should be permitted judiciously.\nThe **patch** verb if allowed on a Namespace can\n[allow users to update labels on the namespace or deployments](/docs/concepts/security/rbac-good-practices/#namespace-modification)\nwhich can increase the attack surface.\n\nFor sensitive workloads, consider pro\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
      "meta": {
        "weight": 110,
        "rel_path": "concepts/security/application-security-checklist.md"
      },
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": null,
          "line_end": null,
          "quote": "Application Security Checklist"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:base-security-hardening",
      "type": "concept",
      "title": "Base security hardening",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 1218,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:advanced-security-hardening-advanced",
      "type": "concept",
      "title": "Advanced security hardening {#advanced}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 4978,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:application-design",
      "type": "concept",
      "title": "Application design",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 1383,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-account",
      "type": "concept",
      "title": "Service account",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 1886,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-level-securitycontext-recommendations-security-context-pod",
      "type": "concept",
      "title": "Pod-level `securityContext` recommendations {#security-context-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 2167,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-level-securitycontext-recommendations-security-context-container",
      "type": "concept",
      "title": "Container-level `securityContext` recommendations {#security-context-container}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 2906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:role-based-access-control-rbac-rbac",
      "type": "concept",
      "title": "Role Based Access Control (RBAC) {#rbac}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 3357,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:image-security",
      "type": "concept",
      "title": "Image security",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 4334,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:network-policies",
      "type": "concept",
      "title": "Network policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 4576,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:linux-container-security",
      "type": "concept",
      "title": "Linux container security",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 5170,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:runtime-classes",
      "type": "concept",
      "title": "Runtime classes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 5695,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/linux-kernel-security-constraints",
      "type": "page",
      "title": "Linux kernel security constraints for Pods and containers",
      "summary": "Overview of Linux kernel security modules and constraints that you can use to harden your Pods and containers.\n",
      "body": "\n\nThis page describes some of the security features that are built into the Linux\nkernel that you can use in your Kubernetes workloads. To learn how to apply\nthese features to your Pods and containers, refer to\n[Configure a SecurityContext for a Pod or Container](/docs/tasks/configure-pod-container/security-context/).\nYou should already be familiar with Linux and with the basics of Kubernetes\nworkloads.\n\n\n\n## Run workloads without root privileges {#run-without-root}\n\nWhen you deploy a workload in Kubernetes, use the Pod specification to restrict\nthat workload from running as the root user on the node. You can use the Pod\n`securityContext` to define the specific Linux user and group for the processes in\nthe Pod, and explicitly restrict containers from running as root users. Setting\nthese values in the Pod manifest takes precedence over similar values in the\ncontainer image, which is especially useful if you're running images that you\ndon't own.\n\n\n> **Caution:** Ensure that the user or group that you assign to the workload has the permissions\nrequired for the application to function correctly. Changing the user or group\nto one that doesn't have the correct permissions could lead to file access\nissues or failed operations.\n\n\nConfiguring the kernel security features on this page provides fine-grained\ncontrol over the actions that processes in your cluster can take, but managing\nthese configurations can be challenging at scale. Running containers as\nnon-root, or in user namespaces if you need root privileges, helps to reduce the\nchance that you'll need to enforce your configured kernel security capabilities.\n\n## Security features in the Linux kernel {#linux-security-features}\n\nKubernetes lets you configure and use Linux kernel features to improve isolation\nand harden your containerized workloads. Common features include the following:\n\n* **Secure computing mode (seccomp)**: Filter which system calls a process can\n  make\n* **AppArmor**: Restrict the access privileges of individual programs\n* **Security Enhanced Linux (SELinux)**: Assign security labels to objects for\n  more manageable security policy enforcement\n\nTo configure settings for one of these features, the operating system that you\nchoose for your nodes must enable the feature in the kernel. For example,\nUbuntu 7.10 and later enable AppArmor by default. To learn whether your OS\nenables a specific feature, consult the OS documentation.\n\nYou use the `securityContext` field in your Pod specification to define the\nconstraints that apply to those processes. The `securityContext` field also\nsupports other security settings, such as specific Linux capabilities or file\naccess permissions using UIDs and GIDs. To learn more, refer to\n[Configure a SecurityContext for a Pod or Container](/docs/tasks/configure-pod-container/security-context/).\n\n### seccomp\n\nSome of your workloads might need privileges to perform specific actions as the\nroot user on your node's host machine. Linux uses *capabilities* to divide the\navailable privileges into categories, so that processes can get the privileges\nrequired to perform specific actions without being granted all privileges. Each\ncapability has a set of system calls (syscalls) that a process can make. seccomp\nlets you restrict these individual syscalls. \nIt can be used to sandbox the privileges of a process, restricting the calls it\nis able to make from userspace into the kernel.\n\nIn Kubernetes, you use a *container runtime* on each node to run your\ncontainers. Example runtimes include CRI-O, Docker, or containerd. Each runtime\nallows only a subset of Linux capabilities by default. You can further limit the\nallowed syscalls individually by using a seccomp profile. Container runtimes\nusually include a default seccomp profile. \nKubernetes lets you automatically\napply seccomp profiles loaded onto a node to your Pods and containers.\n\n\n> **Note:** Kubernetes also has the `allowPrivilegeEscalation` setting for Pods and\ncontainers. When set to `false`, t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
      "meta": {
        "weight": 100,
        "rel_path": "concepts/security/linux-kernel-security-constraints.md"
      },
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": null,
          "line_end": null,
          "quote": "Linux kernel security constraints for Pods and containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:run-workloads-without-root-privileges-run-without-root",
      "type": "concept",
      "title": "Run workloads without root privileges {#run-without-root}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 441,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:security-features-in-the-linux-kernel-linux-security-features",
      "type": "concept",
      "title": "Security features in the Linux kernel {#linux-security-features}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 1679,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kernel-level-security-features-and-privileged-containers-kernel-security-features-privileged-containers",
      "type": "concept",
      "title": "Kernel-level security features and privileged containers {#kernel-security-features-privileged-containers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 10936,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:recommendations-and-best-practices-recommendations-best-practices",
      "type": "concept",
      "title": "Recommendations and best practices {#recommendations-best-practices}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 13346,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:seccomp",
      "type": "concept",
      "title": "seccomp",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 2883,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apparmor-and-selinux-policy-based-mandatory-access-control-policy-based-mac",
      "type": "concept",
      "title": "AppArmor and SELinux: policy-based mandatory access control {#policy-based-mac}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 5519,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:summary-of-features-summary",
      "type": "concept",
      "title": "Summary of features {#summary}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 8329,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:considerations-for-managing-custom-configurations-considerations-custom-configurations",
      "type": "concept",
      "title": "Considerations for managing custom configurations {#considerations-custom-configurations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 10332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:privileged-containers-privileged-containers",
      "type": "concept",
      "title": "Privileged containers {#privileged-containers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 11747,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/rbac-good-practices",
      "type": "page",
      "title": "Role Based Access Control Good Practices",
      "summary": "Principles and practices for good RBAC design for cluster operators.\n",
      "body": "\n\nKubernetes [RBAC](#gloss:rbac) is a key security control\nto ensure that cluster users and workloads have only the access to resources required to\nexecute their roles. It is important to ensure that, when designing permissions for cluster\nusers, the cluster administrator understands the areas where privilege escalation could occur,\nto reduce the risk of excessive access leading to security incidents.\n\nThe good practices laid out here should be read in conjunction with the general\n[RBAC documentation](/docs/reference/access-authn-authz/rbac/#restrictions-on-role-creation-or-update).\n\n\n\n## General good practice\n\n### Least privilege\n\nIdeally, minimal RBAC rights should be assigned to users and service accounts. Only permissions\nexplicitly required for their operation should be used. While each cluster will be different,\nsome general rules that can be applied are :\n\n- Assign permissions at the namespace level where possible. Use RoleBindings as opposed to\n  ClusterRoleBindings to give users rights only within a specific namespace.\n- Avoid providing wildcard permissions when possible, especially to all resources.\n  As Kubernetes is an extensible system, providing wildcard access gives rights\n  not just to all object types that currently exist in the cluster, but also to all object types\n  which are created in the future.\n- Administrators should not use `cluster-admin` accounts except where specifically needed.\n  Providing a low privileged account with\n  [impersonation rights](/docs/reference/access-authn-authz/authentication/#user-impersonation)\n  can avoid accidental modification of cluster resources.\n- Avoid adding users to the `system:masters` group. Any user who is a member of this group\n  bypasses all RBAC rights checks and will always have unrestricted superuser access, which cannot be\n  revoked by removing RoleBindings or ClusterRoleBindings. As an aside, if a cluster is\n  using an authorization webhook, membership of this group also bypasses that webhook (requests\n  from users who are members of that group are never sent to the webhook)\n\n### Minimize distribution of privileged tokens\n\nIdeally, pods shouldn't be assigned service accounts that have been granted powerful permissions\n(for example, any of the rights listed under [privilege escalation risks](#privilege-escalation-risks)).\nIn cases where a workload requires powerful permissions, consider the following practices:\n\n- Limit the number of nodes running powerful pods. Ensure that any DaemonSets you run\n  are necessary and are run with least privilege to limit the blast radius of container escapes.\n- Avoid running powerful pods alongside untrusted or publicly-exposed ones. Consider using\n  [Taints and Toleration](/docs/concepts/scheduling-eviction/taint-and-toleration/),\n  [NodeAffinity](/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity), or\n  [PodAntiAffinity](/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity)\n  to ensure pods don't run alongside untrusted or less-trusted Pods. Pay special attention to\n  situations where less-trustworthy Pods are not meeting the **Restricted** Pod Security Standard.\n\n### Hardening\n\nKubernetes defaults to providing access which may not be required in every cluster. Reviewing\nthe RBAC rights provided by default can provide opportunities for security hardening.\nIn general, changes should not be made to rights provided to `system:` accounts some options\nto harden cluster rights exist:\n\n- Review bindings for the `system:unauthenticated` group and remove them where possible, as this gives \n  access to anyone who can contact the API server at a network level.\n- Avoid the default auto-mounting of service account tokens by setting\n  `automountServiceAccountToken: false`. For more details, see\n  [using default service account token](/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server).\n  Setting this value for a Pod will ov\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/security/rbac-good-practices.md"
      },
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": null,
          "line_end": null,
          "quote": "Role Based Access Control Good Practices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:general-good-practice",
      "type": "concept",
      "title": "General good practice",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 656,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-rbac-privilege-escalation-risks-privilege-escalation-risks",
      "type": "concept",
      "title": "Kubernetes RBAC - privilege escalation risks {#privilege-escalation-risks}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 4514,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-rbac-denial-of-service-risks-denial-of-service-risks",
      "type": "concept",
      "title": "Kubernetes RBAC - denial of service risks {#denial-of-service-risks}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 11040,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:least-privilege",
      "type": "concept",
      "title": "Least privilege",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 682,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:minimize-distribution-of-privileged-tokens",
      "type": "concept",
      "title": "Minimize distribution of privileged tokens",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 2141,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hardening",
      "type": "concept",
      "title": "Hardening",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 3234,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:periodic-review",
      "type": "concept",
      "title": "Periodic review",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 4172,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:listing-secrets",
      "type": "concept",
      "title": "Listing secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 4983,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workload-creation",
      "type": "concept",
      "title": "Workload creation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 5381,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistent-volume-creation",
      "type": "concept",
      "title": "Persistent volume creation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 6733,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:access-to-proxy-subresource-of-nodes",
      "type": "concept",
      "title": "Access to `proxy` subresource of Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 7869,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:escalate-verb",
      "type": "concept",
      "title": "Escalate verb",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 8816,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bind-verb",
      "type": "concept",
      "title": "Bind verb",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 9178,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:impersonate-verb",
      "type": "concept",
      "title": "Impersonate verb",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 9420,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csrs-and-certificate-issuing",
      "type": "concept",
      "title": "CSRs and certificate issuing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 9663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:token-request",
      "type": "concept",
      "title": "Token request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 10118,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-admission-webhooks",
      "type": "concept",
      "title": "Control admission webhooks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 10264,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespace-modification",
      "type": "concept",
      "title": "Namespace modification",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 10529,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:object-creation-denial-of-service-object-creation-dos",
      "type": "concept",
      "title": "Object creation denial-of-service {#object-creation-dos}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 11113,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/cloud-native-security",
      "type": "page",
      "title": "Cloud Native Security and Kubernetes",
      "summary": "Concepts for keeping your cloud native workload secure.",
      "body": "Kubernetes is based on a cloud native architecture and draws on advice from the\n[CNCF](#gloss:cncf) about good practices for\ncloud native information security.\n\nRead on for an overview of how Kubernetes is designed to help you deploy a\nsecure cloud native platform.\n\n## Cloud native information security\n\n\nThere are localized versions available of this whitepaper; if you can link to one of those\nwhen localizing, that's even better.\n\n\nThe CNCF [white paper](https://github.com/cncf/tag-security/blob/main/community/resources/security-whitepaper/v2/CNCF_cloud-native-security-whitepaper-May2022-v2.pdf)\non cloud native security defines security controls and practices that are\nappropriate to different _lifecycle phases_.\n\n## _Develop_ lifecycle phase {#lifecycle-phase-develop}\n\n- Ensure the integrity of development environments.\n- Design applications following good practices for information security,\n  appropriate for your context.\n- Consider end user security as part of solution design.\n\nTo achieve this, you can:\n\n1. Adopt an architecture, such as [zero trust](https://glossary.cncf.io/zero-trust-architecture/),\n   that minimizes attack surfaces, even for internal threats.\n1. Define a code review process that considers security concerns.\n1. Build a _threat model_ of your system or application that identifies\n   trust boundaries. Use that threat model to identify risks and determine\n   how to treat them.\n1. Incorporate advanced security automation, such as _fuzzing_ and\n   [security chaos engineering](https://glossary.cncf.io/security-chaos-engineering/),\n   where it's justified.\n\n## _Distribute_ lifecycle phase {#lifecycle-phase-distribute}\n\n- Ensure the security of the supply chain for container images you execute.\n- Ensure the security of the supply chain for the cluster and other components\n  that execute your application. For example, this might include an external\n  database that your cloud native application uses for persistence.\n\nTo achieve this, you can:\n\n1. Scan container images and other artifacts for known vulnerabilities.\n1. Ensure that software distribution uses encryption in transit, with\n   a chain of trust for the software source.\n1. Adopt and follow processes to update dependencies when updates are\n   available, especially in response to security announcements.\n1. Use validation mechanisms such as digital certificates for supply\n   chain assurance.\n1. Subscribe to feeds and other mechanisms to alert you to security\n   risks.\n1. Restrict access to artifacts. Place container images in a\n   [private registry](/docs/concepts/containers/images/#using-a-private-registry)\n   that only allows authorized clients to pull images.\n\n## _Deploy_ lifecycle phase {#lifecycle-phase-deploy}\n\nEnsure appropriate restrictions on what can be deployed, who can deploy it,\nand where it can be deployed.\nYou can enforce measures from the _distribute_ phase, such as verifying the\ncryptographic identity of container image artifacts.\n\nYou can deploy different applications and cluster components into different\n[namespaces](#gloss:namespace). Containers\nand namespaces both provide isolation mechanisms that are relevant to\ninformation security.\n\nWhen you deploy Kubernetes, you also set the foundation for your\napplications' runtime environment: a Kubernetes cluster (or\nmultiple clusters).\nThat infrastructure must provide the security guarantees that higher\nlayers expect.\n\n## _Runtime_ lifecycle phase {#lifecycle-phase-runtime}\n\nThe Runtime phase comprises three critical areas: [access](#protection-runtime-access),\n[compute](#protection-runtime-compute), and [storage](#protection-runtime-storage).\n\n### Runtime protection: access {#protection-runtime-access}\n\nThe Kubernetes API is what makes your cluster work. Protecting this API is key\nto providing effective cluster security.\n\nOther pages in the Kubernetes documentation have more detail about how to set up\nspecific aspects of access control. The [security checklist](/docs/concepts/security/security-chec\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/security/cloud-native-security.md"
      },
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": null,
          "line_end": null,
          "quote": "Cloud Native Security and Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cloud-native-information-security",
      "type": "concept",
      "title": "Cloud native information security",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 300,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:develop-lifecycle-phase-lifecycle-phase-develop",
      "type": "concept",
      "title": "_Develop_ lifecycle phase {#lifecycle-phase-develop}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 787,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:distribute-lifecycle-phase-lifecycle-phase-distribute",
      "type": "concept",
      "title": "_Distribute_ lifecycle phase {#lifecycle-phase-distribute}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 1662,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploy-lifecycle-phase-lifecycle-phase-deploy",
      "type": "concept",
      "title": "_Deploy_ lifecycle phase {#lifecycle-phase-deploy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 2740,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:runtime-lifecycle-phase-lifecycle-phase-runtime",
      "type": "concept",
      "title": "_Runtime_ lifecycle phase {#lifecycle-phase-runtime}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 3505,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:runtime-protection-access-protection-runtime-access",
      "type": "concept",
      "title": "Runtime protection: access {#protection-runtime-access}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 3735,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:runtime-protection-compute-protection-runtime-compute",
      "type": "concept",
      "title": "Runtime protection: compute {#protection-runtime-compute}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 4928,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:runtime-protection-storage-protection-runtime-storage",
      "type": "concept",
      "title": "Runtime protection: storage {#protection-runtime-storage}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 7109,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networking-and-security",
      "type": "concept",
      "title": "Networking and security",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 7961,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:observability-and-runtime-security",
      "type": "concept",
      "title": "Observability and runtime security",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 8634,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cloud-native-security-further-reading-cloud-native",
      "type": "concept",
      "title": "Cloud native security {#further-reading-cloud-native}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 9856,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-and-information-security-further-reading-k8s",
      "type": "concept",
      "title": "Kubernetes and information security {#further-reading-k8s}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 10725,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/service-accounts",
      "type": "page",
      "title": "Service Accounts",
      "summary": "Learn about ServiceAccount objects in Kubernetes.\n",
      "body": "\n\nThis page introduces the ServiceAccount object in Kubernetes, providing\ninformation about how service accounts work, use cases, limitations,\nalternatives, and links to resources for additional guidance.\n\n\n\n## What are service accounts? {#what-are-service-accounts}\n\nA service account is a type of non-human account that, in Kubernetes, provides\na distinct identity in a Kubernetes cluster. Application Pods, system\ncomponents, and entities inside and outside the cluster can use a specific\nServiceAccount's credentials to identify as that ServiceAccount. This identity\nis useful in various situations, including authenticating to the API server or\nimplementing identity-based security policies.\n\nService accounts exist as ServiceAccount objects in the API server. Service\naccounts have the following properties:\n\n* **Namespaced:** Each service account is bound to a Kubernetes\n  [namespace](#gloss:namespace). Every namespace\n  gets a [`default` ServiceAccount](#default-service-accounts) upon creation.\n\n* **Lightweight:** Service accounts exist in the cluster and are\n  defined in the Kubernetes API. You can quickly create service accounts to\n  enable specific tasks.\n\n* **Portable:** A configuration bundle for a complex containerized workload\n  might include service account definitions for the system's components. The\n  lightweight nature of service accounts and the namespaced identities make\n  the configurations portable.\n\nService accounts are different from user accounts, which are authenticated\nhuman users in the cluster. By default, user accounts don't exist in the Kubernetes\nAPI server; instead, the API server treats user identities as opaque\ndata. You can authenticate as a user account using multiple methods. Some\nKubernetes distributions might add custom extension APIs to represent user\naccounts in the API server.\n\n\n\n| Description | ServiceAccount | User or group |\n| --- | --- | --- |\n| Location | Kubernetes API (ServiceAccount object) | External |\n| Access control | Kubernetes RBAC or other [authorization mechanisms](/docs/reference/access-authn-authz/authorization/#authorization-modules) | Kubernetes RBAC or other identity and access management mechanisms |\n| Intended use | Workloads, automation | People |\n\n\n\n### Default service accounts {#default-service-accounts}\n\nWhen you create a cluster, Kubernetes automatically creates a ServiceAccount\nobject named `default` for every namespace in your cluster. The `default`\nservice accounts in each namespace get no permissions by default other than the\n[default API discovery permissions](/docs/reference/access-authn-authz/rbac/#default-roles-and-role-bindings)\nthat Kubernetes grants to all authenticated principals if role-based access control (RBAC) is enabled.\nIf you delete the `default` ServiceAccount object in a namespace, the\n[control plane](#gloss:control-plane)\nreplaces it with a new one.\n\nIf you deploy a Pod in a namespace, and you don't\n[manually assign a ServiceAccount to the Pod](#assign-to-pod), Kubernetes\nassigns the `default` ServiceAccount for that namespace to the Pod.\n\n## Use cases for Kubernetes service accounts {#use-cases}\n\nAs a general guideline, you can use service accounts to provide identities in\nthe following scenarios:\n\n* Your Pods need to communicate with the Kubernetes API server, for example in\n  situations such as the following:\n  * Providing read-only access to sensitive information stored in Secrets.\n  * Granting [cross-namespace access](#cross-namespace), such as allowing a\n    Pod in namespace `example` to read, list, and watch for Lease objects in\n    the `kube-node-lease` namespace.\n* Your Pods need to communicate with an external service. For example, a\n  workload Pod requires an identity for a commercially available cloud API,\n  and the commercial provider allows configuring a suitable trust relationship.\n* [Authenticating to a private image registry using an `imagePullSecret`](/docs/tasks/configure-pod-container/configure-service-account/#add-imagepulls\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
      "meta": {
        "weight": 25,
        "rel_path": "concepts/security/service-accounts.md"
      },
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": null,
          "line_end": null,
          "quote": "Service Accounts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-are-service-accounts-what-are-service-accounts",
      "type": "concept",
      "title": "What are service accounts? {#what-are-service-accounts}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-cases-for-kubernetes-service-accounts-use-cases",
      "type": "concept",
      "title": "Use cases for Kubernetes service accounts {#use-cases}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 3253,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-use-service-accounts-how-to-use",
      "type": "concept",
      "title": "How to use service accounts {#how-to-use}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 4522,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authenticating-service-account-credentials-authenticating-credentials",
      "type": "concept",
      "title": "Authenticating service account credentials {#authenticating-credentials}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 13313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-service-accounts-default-service-accounts",
      "type": "concept",
      "title": "Default service accounts {#default-service-accounts}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 2389,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:grant-permissions-to-a-serviceaccount-grant-permissions",
      "type": "concept",
      "title": "Grant permissions to a ServiceAccount {#grant-permissions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 5245,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:assign-a-serviceaccount-to-a-pod-assign-to-pod",
      "type": "concept",
      "title": "Assign a ServiceAccount to a Pod {#assign-to-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 6636,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restricting-access-to-secrets-deprecated-enforce-mountable-secrets",
      "type": "concept",
      "title": "Restricting access to Secrets (deprecated) {#enforce-mountable-secrets}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 11705,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authenticating-service-account-credentials-in-your-own-code-authenticating-in-code",
      "type": "concept",
      "title": "Authenticating service account credentials in your own code {#authenticating-in-code}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 15223,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/secrets-good-practices",
      "type": "page",
      "title": "Good practices for Kubernetes Secrets",
      "summary": "Principles and practices for good Secret management for cluster administrators and application developers.\n",
      "body": "\n\n[definition:secret]\n\nThe following good practices are intended for both cluster administrators and\napplication developers. Use these guidelines to improve the security of your\nsensitive information in Secret objects, as well as to more effectively manage\nyour Secrets.\n\n\n\n## Cluster administrators\n\nThis section provides good practices that cluster administrators can use to\nimprove the security of confidential information in the cluster.\n\n### Configure encryption at rest\n\nBy default, Secret objects are stored unencrypted in [etcd](#gloss:etcd). You should configure encryption of your Secret\ndata in `etcd`. For instructions, refer to\n[Encrypt Secret Data at Rest](/docs/tasks/administer-cluster/encrypt-data/).\n\n### Configure least-privilege access to Secrets {#least-privilege-secrets}\n\nWhen planning your access control mechanism, such as Kubernetes\n[Role-based Access Control](#gloss:rbac) [(RBAC)](/docs/reference/access-authn-authz/rbac/),\nconsider the following guidelines for access to `Secret` objects. You should\nalso follow the other guidelines in\n[RBAC good practices](/docs/concepts/security/rbac-good-practices).\n\n- **Components**: Restrict `watch` or `list` access to only the most\n  privileged, system-level components. Only grant `get` access for Secrets if\n  the component's normal behavior requires it.\n- **Humans**: Restrict `get`, `watch`, or `list` access to Secrets. Only allow\n  cluster administrators to access `etcd`. This includes read-only access. For\n  more complex access control, such as restricting access to Secrets with\n  specific annotations, consider using third-party authorization mechanisms.\n\n\n> **Caution:** Granting `list` access to Secrets implicitly lets the subject fetch the\ncontents of the Secrets.\n\n\nA user who can create a Pod that uses a Secret can also see the value of that\nSecret. Even if cluster policies do not allow a user to read the Secret\ndirectly, the same user could have access to run a Pod that then exposes the\nSecret. You can detect or limit the impact caused by Secret data being exposed,\neither intentionally or unintentionally, by a user with this access. Some\nrecommendations include:\n\n*  Use short-lived Secrets\n*  Implement audit rules that alert on specific events, such as concurrent\n   reading of multiple Secrets by a single user\n\n#### Restrict Access for Secrets\nUse separate namespaces to isolate access to mounted secrets.\n\n### Improve etcd management policies\n\nConsider wiping or shredding the durable storage used by `etcd` once it is\nno longer in use.\n\nIf there are multiple `etcd` instances, configure encrypted SSL/TLS\ncommunication between the instances to protect the Secret data in transit.\n\n### Configure access to external Secrets\n\n\n\nYou can use third-party Secrets store providers to keep your confidential data\noutside your cluster and then configure Pods to access that information.\nThe [Kubernetes Secrets Store CSI Driver](https://secrets-store-csi-driver.sigs.k8s.io/)\nis a DaemonSet that lets the kubelet retrieve Secrets from external stores, and\nmount the Secrets as a volume into specific Pods that you authorize to access\nthe data.\n\nFor a list of supported providers, refer to\n[Providers for the Secret Store CSI Driver](https://secrets-store-csi-driver.sigs.k8s.io/concepts.html#provider-for-the-secrets-store-csi-driver).\n\n## Good practices for using swap memory\n\nFor best practices for setting swap memory for Linux nodes, please refer to\n[swap memory management](/docs/concepts/cluster-administration/swap-memory-management/#good-practice-for-using-swap-in-a-kubernetes-cluster).\n\n## Developers\n\nThis section provides good practices for developers to use to improve the\nsecurity of confidential data when building and deploying Kubernetes resources.\n\n### Restrict Secret access to specific containers\n\nIf you are defining multiple containers in a Pod, and only one of those\ncontainers needs access to a Secret, define the volume mount or environment\nvariable configuration so that the other c\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/security/secrets-good-practices.md"
      },
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": null,
          "line_end": null,
          "quote": "Good practices for Kubernetes Secrets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-administrators",
      "type": "concept",
      "title": "Cluster administrators",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 393,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:good-practices-for-using-swap-memory",
      "type": "concept",
      "title": "Good practices for using swap memory",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 3550,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:developers",
      "type": "concept",
      "title": "Developers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 3810,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-encryption-at-rest",
      "type": "concept",
      "title": "Configure encryption at rest",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 562,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-least-privilege-access-to-secrets-least-privilege-secrets",
      "type": "concept",
      "title": "Configure least-privilege access to Secrets {#least-privilege-secrets}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 868,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:improve-etcd-management-policies",
      "type": "concept",
      "title": "Improve etcd management policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 2602,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-access-to-external-secrets",
      "type": "concept",
      "title": "Configure access to external Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 2878,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restrict-secret-access-to-specific-containers",
      "type": "concept",
      "title": "Restrict Secret access to specific containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 3980,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protect-secret-data-after-reading",
      "type": "concept",
      "title": "Protect Secret data after reading",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 4267,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:avoid-sharing-secret-manifests",
      "type": "concept",
      "title": "Avoid sharing Secret manifests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 4557,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/api-server-bypass-risks",
      "type": "page",
      "title": "Kubernetes API Server Bypass Risks",
      "summary": "Security architecture information relating to the API server and other components\n",
      "body": "\n\nThe Kubernetes API server is the main point of entry to a cluster for external parties\n(users and services) interacting with it.\n\nAs part of this role, the API server has several key built-in security controls, such as\naudit logging and [admission controllers](#gloss:admission-controller).\nHowever, there are ways to modify the configuration\nor content of the cluster that bypass these controls.\n\nThis page describes the ways in which the security controls built into the\nKubernetes API server can be bypassed, so that cluster operators\nand security architects can ensure that these bypasses are appropriately restricted.\n\n\n\n## Static Pods {#static-pods}\n\nThe [kubelet](#gloss:kubelet) on each node loads and\ndirectly manages any manifests that are stored in a named directory or fetched from\na specific URL as [*static Pods*](/docs/tasks/configure-pod-container/static-pod) in\nyour cluster. The API server doesn't manage these static Pods. An attacker with write\naccess to this location could modify the configuration of static pods loaded from that\nsource, or could introduce new static Pods.\n\nStatic Pods are restricted from accessing other objects in the Kubernetes API. For example,\nyou can't configure a static Pod to mount a Secret from the cluster. However, these Pods can\ntake other security sensitive actions, such as using `hostPath` mounts from the underlying\nnode.\n\nBy default, the kubelet creates a [mirror pod](#gloss:mirror-pod)\nso that the static Pods are visible in the Kubernetes API. However, if the attacker uses an invalid\nnamespace name when creating the Pod, it will not be visible in the Kubernetes API and can only\nbe discovered by tooling that has access to the affected host(s).\n\nIf a static Pod fails admission control, the kubelet won't register the Pod with the\nAPI server. However, the Pod still runs on the node. For more information, refer to\n[kubeadm issue #1541](https://github.com/kubernetes/kubeadm/issues/1541#issuecomment-487331701).\n\n### Mitigations {#static-pods-mitigations}\n\n- Only [enable the kubelet static Pod manifest functionality](/docs/tasks/configure-pod-container/static-pod/#static-pod-creation)\n  if required by the node.\n- If a node uses the static Pod functionality, restrict filesystem access to the static Pod manifest directory\n  or URL to users who need the access.\n- Restrict access to kubelet configuration parameters and files to prevent an attacker setting\n  a static Pod path or URL.\n- Regularly audit and centrally report all access to directories or web storage locations that host\n  static Pod manifests and kubelet configuration files.\n\n## The kubelet API {#kubelet-api}\n\nThe kubelet provides an HTTP API that is typically exposed on TCP port 10250 on cluster\nworker nodes. The API might also be exposed on control plane nodes depending on the Kubernetes\ndistribution in use. Direct access to the API allows for disclosure of information about\nthe pods running on a node, the logs from those pods, and execution of commands in\nevery container running on the node.\n\nSome of these endpoints support Websocket protocols via HTTP `GET` requests, which are authorized with the **get** verb.\nThis means that **get** permission on `nodes/proxy` is not a read-only permission,\nand authorizes access to endpoints which can be used to execute commands in any container running on the node.\n\nWhen Kubernetes cluster users have RBAC access to `Node` object sub-resources, that access\nserves as authorization to interact with the kubelet API. The exact access depends on\nwhich sub-resource access has been granted, as detailed in\n[kubelet authorization](/docs/reference/access-authn-authz/kubelet-authn-authz/#kubelet-authorization).\n\nDirect access to the kubelet API is not subject to admission control and is not logged\nby Kubernetes audit logging. An attacker with direct access to this API may be able to\nbypass controls that detect or prevent certain actions.\n\nThe kubelet API can be configured to authenticate requests in a number of \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/security/api-server-bypass-risks.md"
      },
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes API Server Bypass Risks"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:static-pods-static-pods",
      "type": "concept",
      "title": "Static Pods {#static-pods}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 691,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-kubelet-api-kubelet-api",
      "type": "concept",
      "title": "The kubelet API {#kubelet-api}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 2736,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-etcd-api",
      "type": "concept",
      "title": "The etcd API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 5293,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-runtime-socket-runtime-socket",
      "type": "concept",
      "title": "Container runtime socket {#runtime-socket}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 7210,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mitigations-static-pods-mitigations",
      "type": "concept",
      "title": "Mitigations {#static-pods-mitigations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 2104,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mitigations-etcd-api-mitigations",
      "type": "concept",
      "title": "Mitigations {#etcd-api-mitigations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 6786,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mitigations-runtime-socket-mitigations",
      "type": "concept",
      "title": "Mitigations {#runtime-socket-mitigations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 7879,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/multi-tenancy",
      "type": "page",
      "title": "Multi-tenancy",
      "summary": "",
      "body": "\n\nThis page provides an overview of available configuration options and best practices for cluster\nmulti-tenancy.\n\nSharing clusters saves costs and simplifies administration. However, sharing clusters also\npresents challenges such as security, fairness, and managing _noisy neighbors_.\n\nClusters can be shared in many ways. In some cases, different applications may run in the same\ncluster. In other cases, multiple instances of the same application may run in the same cluster,\none for each end user. All these types of sharing are frequently described using the umbrella term\n_multi-tenancy_.\n\nWhile Kubernetes does not have first-class concepts of end users or tenants, it provides several\nfeatures to help manage different tenancy requirements. These are discussed below.\n\n\n## Use cases\n\nThe first step to determining how to share your cluster is understanding your use case, so you can\nevaluate the patterns and tools available. In general, multi-tenancy in Kubernetes clusters falls\ninto two broad categories, though many variations and hybrids are also possible.\n\n### Multiple teams\n\nA common form of multi-tenancy is to share a cluster between multiple teams within an\norganization, each of whom may operate one or more workloads. These workloads frequently need to\ncommunicate with each other, and with other workloads located on the same or different clusters.\n\nIn this scenario, members of the teams often have direct access to Kubernetes resources via tools\nsuch as `kubectl`, or indirect access through GitOps controllers or other types of release\nautomation tools. There is often some level of trust between members of different teams, but\nKubernetes policies such as RBAC, quotas, and network policies are essential to safely and fairly\nshare clusters.\n\n### Multiple customers\n\nThe other major form of multi-tenancy frequently involves a Software-as-a-Service (SaaS) vendor\nrunning multiple instances of a workload for customers. This business model is so strongly\nassociated with this deployment style that many people call it \"SaaS tenancy.\" However, a better\nterm might be \"multi-customer tenancy,\" since SaaS vendors may also use other deployment models,\nand this deployment model can also be used outside of SaaS.\n\nIn this scenario, the customers do not have access to the cluster; Kubernetes is invisible from\ntheir perspective and is only used by the vendor to manage the workloads. Cost optimization is\nfrequently a critical concern, and Kubernetes policies are used to ensure that the workloads are\nstrongly isolated from each other.\n\n## Terminology\n\n### Tenants\n\nWhen discussing multi-tenancy in Kubernetes, there is no single definition for a \"tenant\".\nRather, the definition of a tenant will vary depending on whether multi-team or multi-customer\ntenancy is being discussed.\n\nIn multi-team usage, a tenant is typically a team, where each team typically deploys a small\nnumber of workloads that scales with the complexity of the service. However, the definition of\n\"team\" may itself be fuzzy, as teams may be organized into higher-level divisions or subdivided\ninto smaller teams.\n\nBy contrast, if each team deploys dedicated workloads for each new client, they are using a\nmulti-customer model of tenancy. In this case, a \"tenant\" is simply a group of users who share a\nsingle workload. This may be as large as an entire company, or as small as a single team at that\ncompany.\n\nIn many cases, the same organization may use both definitions of \"tenants\" in different contexts.\nFor example, a platform team may offer shared services such as security tools and databases to\nmultiple internal “customers” and a SaaS vendor may also have multiple teams sharing a development\ncluster. Finally, hybrid architectures are also possible, such as a SaaS provider using a\ncombination of per-customer workloads for sensitive data, combined with multi-tenant shared\nservices.\n\n\n![](/images/docs/multi-tenancy.png)\n\n\n### Isolation\n\nThere are several ways to design and build multi-tenant s\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
      "meta": {
        "weight": 80,
        "rel_path": "concepts/security/multi-tenancy.md"
      },
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": null,
          "line_end": null,
          "quote": "Multi-tenancy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-cases",
      "type": "concept",
      "title": "Use cases",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 809,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:terminology",
      "type": "concept",
      "title": "Terminology",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 2590,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-isolation",
      "type": "concept",
      "title": "Control plane isolation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 6523,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:data-plane-isolation",
      "type": "concept",
      "title": "Data Plane Isolation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 11604,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:additional-considerations",
      "type": "concept",
      "title": "Additional Considerations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 19189,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:implementations",
      "type": "concept",
      "title": "Implementations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 24482,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multiple-teams",
      "type": "concept",
      "title": "Multiple teams",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 1102,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multiple-customers",
      "type": "concept",
      "title": "Multiple customers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 1800,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tenants",
      "type": "concept",
      "title": "Tenants",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 2606,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:isolation",
      "type": "concept",
      "title": "Isolation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 4047,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespaces",
      "type": "concept",
      "title": "Namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 6670,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:access-controls",
      "type": "concept",
      "title": "Access controls",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 7932,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quotas",
      "type": "concept",
      "title": "Quotas",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 9597,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:network-isolation",
      "type": "concept",
      "title": "Network isolation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 11732,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storage-isolation",
      "type": "concept",
      "title": "Storage isolation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 14157,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sandboxing-containers",
      "type": "concept",
      "title": "Sandboxing containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 15451,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-isolation",
      "type": "concept",
      "title": "Node Isolation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 17288,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-priority-and-fairness",
      "type": "concept",
      "title": "API Priority and Fairness",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 19321,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quality-of-service-qos-qos",
      "type": "concept",
      "title": "Quality-of-Service (QoS) {#qos}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 20048,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dns",
      "type": "concept",
      "title": "DNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 22413,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:operators",
      "type": "concept",
      "title": "Operators",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 23670,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespace-per-tenant",
      "type": "concept",
      "title": "Namespace per tenant",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 25809,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:virtual-control-plane-per-tenant",
      "type": "concept",
      "title": "Virtual control plane per tenant",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 27384,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/pod-security-admission",
      "type": "page",
      "title": "Pod Security Admission",
      "summary": "An overview of the Pod Security Admission Controller, which can enforce the Pod Security Standards.\n",
      "body": "\n\n\n\nThe Kubernetes [Pod Security Standards](/docs/concepts/security/pod-security-standards/) define\ndifferent isolation levels for Pods. These standards let you define how you want to restrict the\nbehavior of pods in a clear, consistent fashion.\n\nKubernetes offers a built-in _Pod Security_ [admission controller](#gloss:admission-controller) to enforce the Pod Security Standards. Pod security restrictions\nare applied at the [namespace](#gloss:namespace) level when pods are\ncreated.\n\n### Built-in Pod Security admission enforcement\n\nThis page is part of the documentation for Kubernetes v.\nIf you are running a different version of Kubernetes, consult the documentation for that release.\n\n\n\n## Pod Security levels\n\nPod Security admission places requirements on a Pod's [Security\nContext](/docs/tasks/configure-pod-container/security-context/) and other related fields according\nto the three levels defined by the [Pod Security\nStandards](/docs/concepts/security/pod-security-standards): `privileged`, `baseline`, and\n`restricted`. Refer to the [Pod Security Standards](/docs/concepts/security/pod-security-standards)\npage for an in-depth look at those requirements.\n\n## Pod Security Admission labels for namespaces\n\nOnce the feature is enabled or the webhook is installed, you can configure namespaces to define the admission\ncontrol mode you want to use for pod security in each namespace. Kubernetes defines a set of \n[labels](#gloss:label) that you can set to define which of the \npredefined Pod Security Standard levels you want to use for a namespace. The label you select\ndefines what action the [control plane](#gloss:control-plane)\ntakes if a potential violation is detected:\n\n\nMode | Description\n:---------|:------------\n**enforce** | Policy violations will cause the pod to be rejected.\n**audit** | Policy violations will trigger the addition of an audit annotation to the event recorded in the [audit log](/docs/tasks/debug/debug-cluster/audit/), but are otherwise allowed.\n**warn** | Policy violations will trigger a user-facing warning, but are otherwise allowed.\n\n\nA namespace can configure any or all modes, or even set a different level for different modes.\n\nFor each mode, there are two labels that determine the policy used:\n\n```yaml\n# The per-mode level label indicates which policy level to apply for the mode.\n#\n# MODE must be one of `enforce`, `audit`, or `warn`.\n# LEVEL must be one of `privileged`, `baseline`, or `restricted`.\npod-security.kubernetes.io/<MODE>: <LEVEL>\n\n# Optional: per-mode version label that can be used to pin the policy to the\n# version that shipped with a given Kubernetes minor version (for example v).\n#\n# MODE must be one of `enforce`, `audit`, or `warn`.\n# VERSION must be a valid Kubernetes minor version, or `latest`.\npod-security.kubernetes.io/<MODE>-version: <VERSION>\n```\n\nCheck out [Enforce Pod Security Standards with Namespace Labels](/docs/tasks/configure-pod-container/enforce-standards-namespace-labels) to see example usage.\n\n## Workload resources and Pod templates\n\nPods are often created indirectly, by creating a [workload\nobject](/docs/concepts/workloads/controllers/) such as a [deployment](#gloss:deployment) or [job](#gloss:job). The workload object defines a\n_Pod template_ and a [controller](#gloss:controller) for the\nworkload resource creates Pods based on that template. To help catch violations early, both the\naudit and warning modes are applied to the workload resources. However, enforce mode is **not**\napplied to workload resources, only to the resulting pod objects.\n\n## Exemptions\n\nYou can define _exemptions_ from pod security enforcement in order to allow the creation of pods that\nwould have otherwise been prohibited due to the policy associated with a given namespace.\nExemptions can be statically configured in the\n[Admission Controller configuration](/docs/tasks/configure-pod-container/enforce-standards-admission-controller/#configure-the-admission-controller).\n\nExemptions must be explicitly enumerated. \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/security/pod-security-admission.md"
      },
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Security Admission"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-levels",
      "type": "concept",
      "title": "Pod Security levels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 876,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-admission-labels-for-namespaces",
      "type": "concept",
      "title": "Pod Security Admission labels for namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 1352,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workload-resources-and-pod-templates",
      "type": "concept",
      "title": "Workload resources and Pod templates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 3331,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exemptions",
      "type": "concept",
      "title": "Exemptions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 3958,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metrics",
      "type": "concept",
      "title": "Metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 6061,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:built-in-pod-security-admission-enforcement",
      "type": "concept",
      "title": "Built-in Pod Security admission enforcement",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 629,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/controlling-access",
      "type": "page",
      "title": "Controlling Access to the Kubernetes API",
      "summary": "",
      "body": "\nThis page provides an overview of controlling access to the Kubernetes API.\n\n\nUsers access the [Kubernetes API](/docs/concepts/overview/kubernetes-api/) using `kubectl`,\nclient libraries, or by making REST requests.  Both human users and\n[Kubernetes service accounts](/docs/tasks/configure-pod-container/configure-service-account/) can be\nauthorized for API access.\nWhen a request reaches the API, it goes through several stages, illustrated in the\nfollowing diagram:\n\n![Diagram of request handling steps for Kubernetes API request](/images/docs/admin/access-control-overview.svg)\n\n## Transport security\n\nBy default, the Kubernetes API server listens on port 6443 on the first non-localhost\nnetwork interface, protected by TLS. In a typical production Kubernetes cluster, the\nAPI serves on port 443. The port can be changed with the `--secure-port`, and the\nlistening IP address with the `--bind-address` flag.\n\nThe API server presents a certificate. This certificate may be signed using\na private certificate authority (CA), or based on a public key infrastructure linked\nto a generally recognized CA. The certificate and corresponding private key can be set\nby using the `--tls-cert-file` and `--tls-private-key-file` flags.\n\nIf your cluster uses a private certificate authority, you need a copy of that CA\ncertificate configured into your `~/.kube/config` on the client, so that you can\ntrust the connection and be confident it was not intercepted.\n\nYour client can present a TLS client certificate at this stage.\n\n## Authentication\n\nOnce TLS is established, the HTTP request moves to the Authentication step.\nThis is shown as step **1** in the diagram.\nThe cluster creation script or cluster admin configures the API server to run\none or more Authenticator modules.\nAuthenticators are described in more detail in\n[Authentication](/docs/reference/access-authn-authz/authentication/).\n\nThe input to the authentication step is the entire HTTP request; however, it typically\nexamines the headers and/or client certificate.\n\nAuthentication modules include client certificates, password, and plain tokens,\nbootstrap tokens, and JSON Web Tokens (used for service accounts).\n\nMultiple authentication modules can be specified, in which case each one is tried in sequence,\nuntil one of them succeeds.\n\nIf the request cannot be authenticated, it is rejected with HTTP status code 401.\nOtherwise, the user is authenticated as a specific `username`, and the user name\nis available to subsequent steps to use in their decisions.  Some authenticators\nalso provide the group memberships of the user, while other authenticators\ndo not.\n\nWhile Kubernetes uses usernames for access control decisions and in request logging,\nit does not have a `User` object nor does it store usernames or other information about\nusers in its API.\n\n## Authorization\n\nAfter the request is authenticated as coming from a specific user, the request must\nbe authorized. This is shown as step **2** in the diagram.\n\nA request must include the username of the requester, the requested action, and\nthe object affected by the action. The request is authorized if an existing policy\ndeclares that the user has permissions to complete the requested action.\n\nFor example, if Bob has the policy below, then he can read pods only in the namespace `projectCaribou`:\n\n```json\n{\n    \"apiVersion\": \"abac.authorization.kubernetes.io/v1beta1\",\n    \"kind\": \"Policy\",\n    \"spec\": {\n        \"user\": \"bob\",\n        \"namespace\": \"projectCaribou\",\n        \"resource\": \"pods\",\n        \"readonly\": true\n    }\n}\n```\n\nIf Bob makes the following request, the request is authorized because he is\nallowed to read objects in the `projectCaribou` namespace:\n\n```json\n{\n  \"apiVersion\": \"authorization.k8s.io/v1beta1\",\n  \"kind\": \"SubjectAccessReview\",\n  \"spec\": {\n    \"resourceAttributes\": {\n      \"namespace\": \"projectCaribou\",\n      \"verb\": \"get\",\n      \"group\": \"unicorn.example.org\",\n      \"resource\": \"pods\"\n    }\n  }\n}\n```\n\nIf Bob makes a request to write (`crea\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/security/controlling-access.md"
      },
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": null,
          "line_end": null,
          "quote": "Controlling Access to the Kubernetes API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:transport-security",
      "type": "concept",
      "title": "Transport security",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 614,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authentication",
      "type": "concept",
      "title": "Authentication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 1550,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorization",
      "type": "concept",
      "title": "Authorization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 2848,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admission-control",
      "type": "concept",
      "title": "Admission control",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 5222,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:auditing",
      "type": "concept",
      "title": "Auditing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 6355,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/security-checklist",
      "type": "page",
      "title": "Security Checklist",
      "summary": "Baseline checklist for ensuring security in Kubernetes clusters.\n",
      "body": "\n\nThis checklist aims at providing a basic list of guidance with links to more\ncomprehensive documentation on each topic. It does not claim to be exhaustive\nand is meant to evolve.\n\nOn how to read and use this document:\n\n- The order of topics does not reflect an order of priority.\n- Some checklist items are detailed in the paragraph below the list of each section.\n\n\n> **Caution:** Checklists are **not** sufficient for attaining a good security posture on their\nown. A good security posture requires constant attention and improvement, but a\nchecklist can be the first step on the never-ending journey towards security\npreparedness. Some of the recommendations in this checklist may be too\nrestrictive or too lax for your specific security needs. Since Kubernetes\nsecurity is not \"one size fits all\", each category of checklist items should be\nevaluated on its merits.\n\n\n\n\n## Authentication & Authorization\n\n- [ ] `system:masters` group is not used for user or component authentication after bootstrapping.\n- [ ] The kube-controller-manager is running with `--use-service-account-credentials`\n  enabled.\n- [ ] The root certificate is protected (either an offline CA, or a managed\n  online CA with effective access controls).\n- [ ] Intermediate and leaf certificates have an expiry date no more than 3\n  years in the future.\n- [ ] A process exists for periodic access review, and reviews occur no more\n  than 24 months apart.\n- [ ] The [Role Based Access Control Good Practices](/docs/concepts/security/rbac-good-practices/)\n  are followed for guidance related to authentication and authorization.\n\nAfter bootstrapping, neither users nor components should authenticate to the\nKubernetes API as `system:masters`. Similarly, running all of\nkube-controller-manager as `system:masters` should be avoided. In fact,\n`system:masters` should only be used as a break-glass mechanism, as opposed to\nan admin user.\n\n## Network security\n\n- [ ] CNI plugins in use support network policies.\n- [ ] Ingress and egress network policies are applied to all workloads in the\n  cluster.\n- [ ] Default network policies within each namespace, selecting all pods, denying\n  everything, are in place.\n- [ ] If appropriate, a service mesh is used to encrypt all communications inside of the cluster.\n- [ ] The Kubernetes API, kubelet API and etcd are not exposed publicly on Internet.\n- [ ] Access from the workloads to the cloud metadata API is filtered.\n- [ ] Use of LoadBalancer and ExternalIPs is restricted.\n\nA number of [Container Network Interface (CNI) plugins](/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/)\nplugins provide the functionality to\nrestrict network resources that pods may communicate with. This is most commonly done\nthrough [Network Policies](/docs/concepts/services-networking/network-policies/)\nwhich provide a namespaced resource to define rules. Default network policies\nthat block all egress and ingress, in each namespace, selecting all pods, can be\nuseful to adopt an allow list approach to ensure that no workloads are missed.\n\nNot all CNI plugins provide encryption in transit. If the chosen plugin lacks this\nfeature, an alternative solution could be to use a service mesh to provide that\nfunctionality.\n\nThe etcd datastore of the control plane should have controls to limit access and\nnot be publicly exposed on the Internet. Furthermore, mutual TLS (mTLS) should\nbe used to communicate securely with it. The certificate authority for this\nshould be unique to etcd.\n\nExternal Internet access to the Kubernetes API server should be restricted to\nnot expose the API publicly. Be careful, as many managed Kubernetes distributions\nare publicly exposing the API server by default. You can then use a bastion host\nto access the server.\n\nThe [kubelet](/docs/reference/command-line-tools-reference/kubelet/) API access\nshould be restricted and not exposed publicly, the default authentication and\nauthorization settings, when no configuration file specified with the `--con\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
      "meta": {
        "weight": 100,
        "rel_path": "concepts/security/security-checklist.md"
      },
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": null,
          "line_end": null,
          "quote": "Security Checklist"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authentication-authorization",
      "type": "concept",
      "title": "Authentication & Authorization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 923,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:network-security",
      "type": "concept",
      "title": "Network security",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 1954,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security",
      "type": "concept",
      "title": "Pod security",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 4623,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:logs-and-auditing",
      "type": "concept",
      "title": "Logs and auditing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 10414,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-placement",
      "type": "concept",
      "title": "Pod placement",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 10503,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:secrets",
      "type": "concept",
      "title": "Secrets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 12294,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admission-controllers",
      "type": "concept",
      "title": "Admission controllers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 17238,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-seccomp",
      "type": "concept",
      "title": "Enabling Seccomp",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 7821,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-apparmor-or-selinux",
      "type": "concept",
      "title": "Enabling AppArmor or SELinux",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 8893,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/pod-security-standards",
      "type": "page",
      "title": "Pod Security Standards",
      "summary": "A detailed look at the different policy levels defined in the Pod Security Standards.\n",
      "body": "\n\nThe Pod Security Standards define three different _policies_ to broadly cover the security\nspectrum. These policies are _cumulative_ and range from highly-permissive to highly-restrictive.\nThis guide outlines the requirements of each policy.\n\n| Profile | Description |\n| ------ | ----------- |\n| <strong style=\"white-space: nowrap\">Privileged</strong> | Unrestricted policy, providing the widest possible level of permissions. This policy allows for known privilege escalations. |\n| <strong style=\"white-space: nowrap\">Baseline</strong> | Minimally restrictive policy which prevents known privilege escalations. Allows the default (minimally specified) Pod configuration. |\n| <strong style=\"white-space: nowrap\">Restricted</strong> | Heavily restricted policy, following current Pod hardening best practices. |\n\n\n\n## Profile Details\n\n### Privileged\n\n**The _Privileged_ policy is purposely-open, and entirely unrestricted.** This type of policy is\ntypically aimed at system- and infrastructure-level workloads managed by privileged, trusted users.\n\nThe Privileged policy is defined by an absence of restrictions. If you define a Pod where the Privileged\nsecurity policy applies, the Pod you define is able to bypass typical container isolation mechanisms.\nFor example, you can define a Pod that has access to the node's host network.\n\n### Baseline\n\n**The _Baseline_ policy is aimed at ease of adoption for common containerized workloads while\npreventing known privilege escalations.** This policy is targeted at application operators and\ndevelopers of non-critical applications. The following listed controls should be\nenforced/disallowed:\n\n\n> **Note:** In this table, wildcards (`*`) indicate all elements in a list. For example,\n`spec.containers[*].securityContext` refers to the Security Context object for _all defined\ncontainers_. If any of the listed containers fails to meet the requirements, the entire pod will\nfail validation.\n\n\n<table>\n\t<caption style=\"display:none\">Baseline policy specification</caption>\n\t<tbody>\n\t\t<tr>\n\t\t\t<th>Control</th>\n\t\t\t<th>Policy</th>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td style=\"white-space: nowrap\">HostProcess</td>\n\t\t\t<td>\n\t\t\t\t<p>Windows Pods offer the ability to run <a href=\"/docs/tasks/configure-pod-container/create-hostprocess-pod\">HostProcess containers</a> which enables privileged access to the Windows host machine. Privileged access to the host is disallowed in the Baseline policy. </p>\n\t\t\t\t<p><strong>Restricted Fields</strong></p>\n\t\t\t\t<ul>\n\t\t\t\t\t<li><code>spec.securityContext.windowsOptions.hostProcess</code></li>\n\t\t\t\t\t<li><code>spec.containers[*].securityContext.windowsOptions.hostProcess</code></li>\n\t\t\t\t\t<li><code>spec.initContainers[*].securityContext.windowsOptions.hostProcess</code></li>\n\t\t\t\t\t<li><code>spec.ephemeralContainers[*].securityContext.windowsOptions.hostProcess</code></li>\n\t\t\t\t</ul>\n\t\t\t\t<p><strong>Allowed Values</strong></p>\n\t\t\t\t<ul>\n\t\t\t\t\t<li>Undefined/nil</li>\n\t\t\t\t\t<li><code>false</code></li>\n\t\t\t\t</ul>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td style=\"white-space: nowrap\">Host Namespaces</td>\n\t\t\t<td>\n\t\t\t\t<p>Sharing the host namespaces must be disallowed.</p>\n\t\t\t\t<p><strong>Restricted Fields</strong></p>\n\t\t\t\t<ul>\n\t\t\t\t\t<li><code>spec.hostNetwork</code></li>\n\t\t\t\t\t<li><code>spec.hostPID</code></li>\n\t\t\t\t\t<li><code>spec.hostIPC</code></li>\n\t\t\t\t</ul>\n\t\t\t\t<p><strong>Allowed Values</strong></p>\n\t\t\t\t<ul>\n\t\t\t\t\t<li>Undefined/nil</li>\n\t\t\t\t\t<li><code>false</code></li>\n\t\t\t\t</ul>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td style=\"white-space: nowrap\">Privileged Containers</td>\n\t\t\t<td>\n\t\t\t\t<p>Privileged Pods disable most security mechanisms and must be disallowed.</p>\n\t\t\t\t<p><strong>Restricted Fields</strong></p>\n\t\t\t\t<ul>\n\t\t\t\t\t<li><code>spec.containers[*].securityContext.privileged</code></li>\n\t\t\t\t\t<li><code>spec.initContainers[*].securityContext.privileged</code></li>\n\t\t\t\t\t<li><code>spec.ephemeralContainers[*].securityContext.privileged</code></li>\n\t\t\t\t</ul>\n\t\t\t\t<p><strong>Allowed Values</strong></p>\n\t\t\t\t<ul>\n\t\t\t\t\t<li>Undefined/nil</li>\n\t\t\t\t\t<li><code>fals\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
      "meta": {
        "weight": 15,
        "rel_path": "concepts/security/pod-security-standards.md"
      },
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Security Standards"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:profile-details",
      "type": "concept",
      "title": "Profile Details",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 847,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policy-instantiation",
      "type": "concept",
      "title": "Policy Instantiation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 20166,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-os-field",
      "type": "concept",
      "title": "Pod OS field",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 21230,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:user-namespaces",
      "type": "concept",
      "title": "User namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 22305,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:faq",
      "type": "concept",
      "title": "FAQ",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 22626,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:privileged",
      "type": "concept",
      "title": "Privileged",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 867,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:baseline",
      "type": "concept",
      "title": "Baseline",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 1367,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restricted",
      "type": "concept",
      "title": "Restricted",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 13626,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restricted-pod-security-standard-changes",
      "type": "concept",
      "title": "Restricted Pod Security Standard changes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 21830,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-isn-t-there-a-profile-between-privileged-and-baseline",
      "type": "concept",
      "title": "Why isn't there a profile between Privileged and Baseline?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 22634,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-s-the-difference-between-a-security-profile-and-a-security-context",
      "type": "concept",
      "title": "What's the difference between a security profile and a security context?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 23258,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-about-sandboxed-pods",
      "type": "concept",
      "title": "What about sandboxed Pods?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 23986,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/pod-security-policy",
      "type": "page",
      "title": "Pod Security Policies",
      "summary": "",
      "body": "\n\n\nPodSecurityPolicy was [deprecated](/blog/2021/04/08/kubernetes-1-21-release-announcement/#podsecuritypolicy-deprecation)\nin Kubernetes v1.21, and removed from Kubernetes in v1.25.\n\n\nInstead of using PodSecurityPolicy, you can enforce similar restrictions on Pods using\neither or both:\n\n- [Pod Security Admission](/docs/concepts/security/pod-security-admission/)\n- a 3rd party admission plugin, that you deploy and configure yourself\n\nFor a migration guide, see [Migrate from PodSecurityPolicy to the Built-In PodSecurity Admission Controller](/docs/tasks/configure-pod-container/migrate-from-psp/).\nFor more information on the removal of this API,\nsee [PodSecurityPolicy Deprecation: Past, Present, and Future](/blog/2021/04/06/podsecuritypolicy-deprecation-past-present-and-future/).\n\nIf you are not running Kubernetes v, check the documentation for\nyour version of Kubernetes.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/pod-security-policy/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/security/pod-security-policy.md"
      },
      "provenance": [
        {
          "source": "concepts/security/pod-security-policy.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Security Policies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/linux-security",
      "type": "page",
      "title": "Security For Linux Nodes",
      "summary": "",
      "body": "\n\nThis page describes security considerations and best practices specific to the Linux operating system.\n\n\n\n## Protection for Secret data on nodes\n\nOn Linux nodes, memory-backed volumes (such as [`secret`](/docs/concepts/configuration/secret/)\nvolume mounts, or [`emptyDir`](/docs/concepts/storage/volumes/#emptydir) with `medium: Memory`)\nare implemented with a `tmpfs` filesystem.\n\nIf you have swap configured and use an older Linux kernel (or a current kernel and an unsupported configuration of Kubernetes),\n**memory** backed volumes can have data written to persistent storage.\n\nThe Linux kernel officially supports the `noswap` option from version 6.3,\ntherefore it is recommended the used kernel version is 6.3 or later,\nor supports the `noswap` option via a backport, if swap is enabled on the node.\n\nRead [swap memory management](/docs/concepts/cluster-administration/swap-memory-management/#memory-backed-volumes)\nfor more info.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/linux-security/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/security/linux-security.md"
      },
      "provenance": [
        {
          "source": "concepts/security/linux-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-security/",
          "line_start": null,
          "line_end": null,
          "quote": "Security For Linux Nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protection-for-secret-data-on-nodes",
      "type": "concept",
      "title": "Protection for Secret data on nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/linux-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-security/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/windows-security",
      "type": "page",
      "title": "Security For Windows Nodes",
      "summary": "",
      "body": "\n\nThis page describes security considerations and best practices specific to the Windows operating system.\n\n\n\n## Protection for Secret data on nodes\n\nOn Windows, data from Secrets are written out in clear text onto the node's local\nstorage (as compared to using tmpfs / in-memory filesystems on Linux). As a cluster\noperator, you should take both of the following additional measures:\n\n1. Use file ACLs to secure the Secrets' file location.\n1. Apply volume-level encryption using\n   [BitLocker](https://docs.microsoft.com/windows/security/information-protection/bitlocker/bitlocker-how-to-deploy-on-windows-server).\n\n## Container users\n\n[RunAsUsername](/docs/tasks/configure-pod-container/configure-runasusername)\ncan be specified for Windows Pods or containers to execute the container\nprocesses as specific user. This is roughly equivalent to\n[RunAsUser](/docs/concepts/security/pod-security-policy/#users-and-groups).\n\nWindows containers offer two default user accounts, ContainerUser and ContainerAdministrator.\nThe differences between these two user accounts are covered in\n[When to use ContainerAdmin and ContainerUser user accounts](https://docs.microsoft.com/virtualization/windowscontainers/manage-containers/container-security#when-to-use-containeradmin-and-containeruser-user-accounts)\nwithin Microsoft's _Secure Windows containers_ documentation.\n\nLocal users can be added to container images during the container build process.\n\n\n> **Note:** * [Nano Server](https://hub.docker.com/_/microsoft-windows-nanoserver) based images run as\n  `ContainerUser` by default\n* [Server Core](https://hub.docker.com/_/microsoft-windows-servercore) based images run as\n  `ContainerAdministrator` by default\n\n\nWindows containers can also run as Active Directory identities by utilizing\n[Group Managed Service Accounts](/docs/tasks/configure-pod-container/configure-gmsa/)\n\n## Pod-level security isolation\n\nLinux-specific pod security context mechanisms (such as SELinux, AppArmor, Seccomp, or custom\nPOSIX capabilities) are not supported on Windows nodes.\n\nPrivileged containers are [not supported](/docs/concepts/windows/intro/#compatibility-v1-pod-spec-containers-securitycontext)\non Windows.\nInstead [HostProcess containers](/docs/tasks/configure-pod-container/create-hostprocess-pod)\ncan be used on Windows to perform many of the tasks performed by privileged containers on Linux.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/windows-security/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/security/windows-security.md"
      },
      "provenance": [
        {
          "source": "concepts/security/windows-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/windows-security/",
          "line_start": null,
          "line_end": null,
          "quote": "Security For Windows Nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-users",
      "type": "concept",
      "title": "Container users",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/windows-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/windows-security/",
          "line_start": 648,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-level-security-isolation",
      "type": "concept",
      "title": "Pod-level security isolation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/windows-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/windows-security/",
          "line_start": 1915,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/_index",
      "type": "page",
      "title": "Security",
      "summary": "Concepts for keeping your cloud-native workload secure.\n",
      "body": "This section of the Kubernetes documentation aims to help you learn to run\nworkloads more securely, and about the essential aspects of keeping a\nKubernetes cluster secure.\n\nKubernetes is based on a cloud-native architecture, and draws on advice from the\n[CNCF](#gloss:cncf) about good practice for\ncloud native information security.\n\nRead [Cloud Native Security and Kubernetes](/docs/concepts/security/cloud-native-security/)\nfor the broader context about how to secure your cluster and the applications that\nyou're running on it.\n\n## Kubernetes security mechanisms {#security-mechanisms}\n\nKubernetes includes several APIs and security controls, as well as ways to\ndefine [policies](#policies) that can form part of how you manage information security.\n\n### Control plane protection\n\nA key security mechanism for any Kubernetes cluster is to\n[control access to the Kubernetes API](/docs/concepts/security/controlling-access).\n\nKubernetes expects you to configure and use TLS to provide\n[data encryption in transit](/docs/tasks/tls/managing-tls-in-a-cluster/)\nwithin the control plane, and between the control plane and its clients.\nYou can also enable [encryption at rest](/docs/tasks/administer-cluster/encrypt-data/)\nfor the data stored within Kubernetes control plane; this is separate from using\nencryption at rest for your own workloads' data, which might also be a good idea.\n\n### Secrets\n\nThe [Secret](/docs/concepts/configuration/secret/) API provides basic protection for\nconfiguration values that require confidentiality.\n\n### Workload protection\n\nEnforce [Pod security standards](/docs/concepts/security/pod-security-standards/) to\nensure that Pods and their containers are isolated appropriately. You can also use\n[RuntimeClasses](/docs/concepts/containers/runtime-class) to define custom isolation\nif you need it.\n\n[Network policies](/docs/concepts/services-networking/network-policies/) let you control\nnetwork traffic between Pods, or between Pods and the network outside your cluster.\n\nYou can deploy security controls from the wider ecosystem to implement preventative\nor detective controls around Pods, their containers, and the images that run in them.\n\n### Admission control {#admission-control}\n\n[Admission controllers](/docs/reference/access-authn-authz/admission-controllers/)\nare plugins that intercept Kubernetes API requests and can validate or mutate\nthe requests based on specific fields in the request. Thoughtfully designing\nthese controllers helps to avoid unintended disruptions as Kubernetes APIs\nchange across version updates. For design considerations, see\n[Admission Webhook Good Practices](/docs/concepts/cluster-administration/admission-webhooks-good-practices/).\n\n### Auditing\n\nKubernetes [audit logging](/docs/tasks/debug/debug-cluster/audit/) provides a\nsecurity-relevant, chronological set of records documenting the sequence of actions\nin a cluster. The cluster audits the activities generated by users, by applications\nthat use the Kubernetes API, and by the control plane itself.\n\n## Cloud provider security\n\n\n\nIf you are running a Kubernetes cluster on your own hardware or a different cloud provider,\nconsult your documentation for security best practices.\nHere are links to some of the popular cloud providers' security documentation:\n\n\n\nIaaS Provider        | Link |\n-------------------- | ------------ |\nAlibaba Cloud | https://www.alibabacloud.com/trust-center |\nAmazon Web Services | https://aws.amazon.com/security |\nGoogle Cloud Platform | https://cloud.google.com/security |\nHuawei Cloud | https://www.huaweicloud.com/intl/en-us/securecenter/overallsafety |\nIBM Cloud | https://www.ibm.com/cloud/security |\nMicrosoft Azure | https://docs.microsoft.com/en-us/azure/security/azure-security |\nOracle Cloud Infrastructure | https://www.oracle.com/security |\nTencent Cloud | https://www.tencentcloud.com/solutions/data-security-and-information-protection |\nVMware vSphere | https://www.vmware.com/solutions/security/hardening-guides |\n\n\n\n## Policies\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/_index/",
      "meta": {
        "weight": 85,
        "rel_path": "concepts/security/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Security"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-security-mechanisms-security-mechanisms",
      "type": "concept",
      "title": "Kubernetes security mechanisms {#security-mechanisms}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 565,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cloud-provider-security",
      "type": "concept",
      "title": "Cloud provider security",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 3059,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-protection",
      "type": "concept",
      "title": "Control plane protection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 787,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workload-protection",
      "type": "concept",
      "title": "Workload protection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 1566,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admission-control-admission-control",
      "type": "concept",
      "title": "Admission control {#admission-control}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 2206,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/hardening-guide/scheduler",
      "type": "page",
      "title": "Hardening Guide - Scheduler Configuration",
      "summary": "Information about how to make the Kubernetes scheduler more secure.\n",
      "body": "\nThe Kubernetes [scheduler](#gloss:kube-scheduler) is\none of the critical components of the\n[control plane](#gloss:control-plane).\n\nThis document covers how to improve the security posture of the Scheduler.\n\nA misconfigured scheduler can have security implications. \nSuch a scheduler can target specific nodes and evict the workloads or applications that are sharing the node and its resources. \nThis can aid an attacker with a [Yo-Yo attack](https://arxiv.org/abs/2105.00542): an attack on a vulnerable autoscaler.\n\n\n## kube-scheduler configuration\n\n### Scheduler authentication & authorization command line options\n\nWhen setting up authentication configuration, it should be made sure that\nkube-scheduler's authentication remains consistent with kube-api-server's authentication. \nIf any request has missing authentication headers, the authentication should happen through the kube-api-server\n[allowing all authentication to be consistent in the cluster](/docs/tasks/extend-kubernetes/configure-aggregation-layer/#original-request-username-and-group).\n\n- `authentication-kubeconfig`: Make sure to provide a proper kubeconfig so that\n  the scheduler can retrieve authentication configuration options from the API Server.\n  This kubeconfig file should be protected with strict file permissions.\n- `authentication-tolerate-lookup-failure`: Set this to `false` to make sure\n  the scheduler _always_ looks up its authentication configuration from the API server.\n- `authentication-skip-lookup`: Set this to `false` to make sure\n  the scheduler _always_ looks up its authentication configuration from the API server.\n- `authorization-always-allow-paths`: These paths should respond with data that is appropriate\n  for anonymous authorization. Defaults to `/healthz,/readyz,/livez`.\n- `profiling`: Set to `false` to disable the profiling endpoints which are provide debugging information\n  but which should not be enabled on production clusters as they present a risk of denial of service\n  or information leakage. The `--profiling` argument is deprecated and can now be provided through the\n  [KubeScheduler DebuggingConfiguration](/docs/reference/config-api/kube-scheduler-config.v1/#DebuggingConfiguration).\n  Profiling can be disabled through the kube-scheduler config by setting `enableProfiling` to `false`. \n- `requestheader-client-ca-file`: Avoid passing this argument.\n\n### Scheduler networking command line options\n\n- `bind-address`: In most cases, the kube-scheduler does not need to be externally accessible.\n  Setting the bind address to `localhost` is a secure practice.\n- `permit-address-sharing`: Set this to `false` to  disable connection sharing through `SO_REUSEADDR`.\n  `SO_REUSEADDR` can lead to reuse of terminated connections that are in `TIME_WAIT` state.\n- `permit-port-sharing`: Default `false`. Use the default unless you are confident you understand the security implications.\n\n### Scheduler TLS command line options\n\n- `tls-cipher-suites`: Always provide a list of preferred cipher suites.\n  This ensures encryption never happens with insecure cipher suites. \n\n## Scheduling configurations for custom schedulers\n\nWhen using custom schedulers based on the Kubernetes scheduling code, cluster administrators need to be careful with\nplugins that use the `queueSort`, `prefilter`, `filter`, or `permit` [extension points](/docs/reference/scheduling/config/#extension-points).\nThese extension points control various stages of a scheduling process,\nand the wrong configuration can impact the kube-scheduler's behavior in your cluster.\n\n### Key considerations\n\n- Exactly one plugin that uses the `queueSort` extension point can be enabled at a time.\n  Any plugins that use `queueSort` should be scrutinized.\n- Plugins that implement the `prefilter` or `filter` extension point can potentially mark all nodes as unschedulable.\n  This can bring scheduling of new pods to a halt.\n- Plugins that implement the `permit` extension point can prevent or delay the binding of a Pod.\n  Such pl\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/security/hardening-guide/scheduler.md"
      },
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": null,
          "line_end": null,
          "quote": "Hardening Guide - Scheduler Configuration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-configuration",
      "type": "concept",
      "title": "kube-scheduler configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 613,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduling-configurations-for-custom-schedulers",
      "type": "concept",
      "title": "Scheduling configurations for custom schedulers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 3180,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disallow-labeling-nodes",
      "type": "concept",
      "title": "Disallow labeling nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 5860,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-authentication-authorization-command-line-options",
      "type": "concept",
      "title": "Scheduler authentication & authorization command line options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 646,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-networking-command-line-options",
      "type": "concept",
      "title": "Scheduler networking command line options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 2469,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-tls-command-line-options",
      "type": "concept",
      "title": "Scheduler TLS command line options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 2996,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:key-considerations",
      "type": "concept",
      "title": "Key considerations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 3649,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/hardening-guide/dynamic-resource-allocation",
      "type": "page",
      "title": "Hardening Guide - Dynamic Resource Allocation",
      "summary": "Information about hardening Dynamic Resource Allocation (DRA) authorization and access patterns.\n",
      "body": "\n\nDynamic Resource Allocation (DRA) adds powerful scheduling and device management\ncapabilities. Because DRA components update `ResourceClaim` status, cluster\nadministrators should configure authorization for those updates with explicit,\nleast-privilege RBAC.\n\n\n\nStarting in Kubernetes v1.36, DRA status updates use synthetic subresources and,\nin some cases, specialized node-aware verbs.\n\n\n\n## Harden DRA status update permissions\n\nFor DRA status updates,In addition to granting `update` permissions on the\n`resourceclaims/status` subresource, cluster administrators must grant permissions on\nspecific \"synthetic\" subresources based on the exact fields a component needs to modify.\nThis enforces the principle of least privilege between the scheduler, custom controllers,\nand DRA drivers.\n\nThe DRA authorization checks are divided into two synthetic subresources:\n\n- **`resourceclaims/binding`**\n  - Required to modify `status.allocation` and `status.reservedFor`.\n  - Typically granted to the kube-scheduler and custom allocation controllers.\n  - Uses standard `update` and `patch` verbs.\n- **`resourceclaims/driver`**\n  - Required to modify `status.devices`.\n  - This check is performed per-driver to drivers from tampering with devices on different\n  nodes and/or from other drivers.\n  - Uses node-aware verbs for stricter scope.\n\n## Node-aware DRA verbs\n\nWhen authorizing updates to `resourceclaims/driver`, use the appropriate\nspecialized verb prefix:\n\n- **`associated-node:<verb>`** (for example, `associated-node:update`)\n  - For node-local drivers.\n  - The API server verifies node association for the requesting driver.\n- **`arbitrary-node:<verb>`** (for example, `arbitrary-node:patch`)\n  - For control-plane or multi-node controllers that may update claims from\n    any node.\n\n## Example RBAC patterns\n\n### Scheduler and allocation controller permissions\n\n```yaml\napiVersion: rbac.authorization.k8s.io/v1\nkind: ClusterRole\nmetadata:\n  name: dra-binding-updater\nrules:\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/status\"]\n    verbs: [\"get\", \"patch\", \"update\"]\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/binding\"]\n    verbs: [\"patch\", \"update\"]\n```\n\n### Node-local DRA driver permissions\n\n```yaml\napiVersion: rbac.authorization.k8s.io/v1\nkind: ClusterRole\nmetadata:\n  name: dra-node-driver-status-updater\nrules:\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/status\"]\n    verbs: [\"get\", \"patch\", \"update\"]\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/driver\"]\n    verbs: [\"associated-node:patch\", \"associated-node:update\"]\n    resourceNames: [\"dra.example.com\"]\n```\n\n### Multi-node status controller permissions\n\n```yaml\napiVersion: rbac.authorization.k8s.io/v1\nkind: ClusterRole\nmetadata:\n  name: dra-multinode-status-updater\nrules:\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/status\"]\n    verbs: [\"get\", \"patch\", \"update\"]\n  - apiGroups: [\"resource.k8s.io\"]\n    resources: [\"resourceclaims/driver\"]\n    verbs: [\"arbitrary-node:patch\", \"arbitrary-node:update\"]\n    resourceNames: [\"dra.example.com\"]\n```\n\n## Related cluster administrator task\n\nTo apply these patterns in a running cluster, see\n[Harden Dynamic Resource Allocation in Your Cluster](/docs/tasks/administer-cluster/hardening-dra/).\n\n## \n\n- [Authorization](/docs/reference/access-authn-authz/authorization/)\n- [Set Up DRA in a Cluster](/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/)\n- [Dynamic Resource Allocation](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/security/hardening-guide/dynamic-resource-allocation.md"
      },
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": null,
          "line_end": null,
          "quote": "Hardening Guide - Dynamic Resource Allocation"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:harden-dra-status-update-permissions",
      "type": "concept",
      "title": "Harden DRA status update permissions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 508,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-aware-dra-verbs",
      "type": "concept",
      "title": "Node-aware DRA verbs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 1451,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-rbac-patterns",
      "type": "concept",
      "title": "Example RBAC patterns",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 1905,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:related-cluster-administrator-task",
      "type": "concept",
      "title": "Related cluster administrator task",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 3244,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-and-allocation-controller-permissions",
      "type": "concept",
      "title": "Scheduler and allocation controller permissions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 1931,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-local-dra-driver-permissions",
      "type": "concept",
      "title": "Node-local DRA driver permissions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 2323,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multi-node-status-controller-permissions",
      "type": "concept",
      "title": "Multi-node status controller permissions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 2782,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/security/hardening-guide/authentication-mechanisms",
      "type": "page",
      "title": "Hardening Guide - Authentication Mechanisms",
      "summary": "Information on authentication options in Kubernetes and their security properties.\n",
      "body": "\n\nSelecting the appropriate authentication mechanism(s) is a crucial aspect of securing your cluster.\nKubernetes provides several built-in mechanisms, each with its own strengths and weaknesses that\nshould be carefully considered when choosing the best authentication mechanism for your cluster.\n\nIn general, it is recommended to enable as few authentication mechanisms as possible to simplify\nuser management and prevent cases where users retain access to a cluster that is no longer required.\n\nIt is important to note that Kubernetes does not have an in-built user database within the cluster.\nInstead, it takes user information from the configured authentication system and uses that to make\nauthorization decisions. Therefore, to audit user access, you need to review credentials from every\nconfigured authentication source.\n\nFor production clusters with multiple users directly accessing the Kubernetes API, it is\nrecommended to use external authentication sources such as OIDC. The internal authentication\nmechanisms, such as client certificates and service account tokens, described below, are not\nsuitable for this use case.\n\n\n\n## X.509 client certificate authentication {#x509-client-certificate-authentication}\n\nKubernetes leverages [X.509 client certificate](/docs/reference/access-authn-authz/authentication/#x509-client-certificates)\nauthentication for system components, such as when the kubelet authenticates to the API Server.\nWhile this mechanism can also be used for user authentication, it might not be suitable for\nproduction use due to several restrictions:\n\n- Client certificates cannot be individually revoked. Once compromised, a certificate can be used\n  by an attacker until it expires. To mitigate this risk, it is recommended to configure short\n  lifetimes for user authentication credentials created using client certificates.\n- If a certificate needs to be invalidated, the certificate authority must be re-keyed, which\n  can introduce availability risks to the cluster.\n- There is no permanent record of client certificates created in the cluster. Therefore, all\n  issued certificates must be recorded if you need to keep track of them.\n- Private keys used for client certificate authentication cannot be password-protected. Anyone\n  who can read the file containing the key will be able to make use of it.\n- Using client certificate authentication requires a direct connection from the client to the\n  API server without any intervening TLS termination points, which can complicate network architectures.\n- Group data is embedded in the `O` value of the client certificate, which means the user's group\n  memberships cannot be changed for the lifetime of the certificate.\n\n## Static token file {#static-token-file}\n\nAlthough Kubernetes allows you to load credentials from a\n[static token file](/docs/reference/access-authn-authz/authentication/#static-token-file) located\non the control plane node disks, this approach is not recommended for production servers due to\nseveral reasons:\n\n- Credentials are stored in clear text on control plane node disks, which can be a security risk.\n- Changing any credential requires a restart of the API server process to take effect, which can\n  impact availability.\n- There is no mechanism available to allow users to rotate their credentials. To rotate a\n  credential, a cluster administrator must modify the token on disk and distribute it to the users.\n- There is no lockout mechanism available to prevent brute-force attacks.\n\n## Bootstrap tokens {#bootstrap-tokens}\n\n[Bootstrap tokens](/docs/reference/access-authn-authz/bootstrap-tokens/) are used for joining\nnodes to clusters and are not recommended for user authentication due to several reasons:\n\n- They have hard-coded group memberships that are not suitable for general use, making them\n  unsuitable for authentication purposes.\n- Manually generating bootstrap tokens can lead to weak tokens that can be guessed by an attacker,\n  which can be a security risk.\n- There \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/security/hardening-guide/authentication-mechanisms.md"
      },
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": null,
          "line_end": null,
          "quote": "Hardening Guide - Authentication Mechanisms"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:x-509-client-certificate-authentication-x509-client-certificate-authentication",
      "type": "concept",
      "title": "X.509 client certificate authentication {#x509-client-certificate-authentication}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 1167,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:static-token-file-static-token-file",
      "type": "concept",
      "title": "Static token file {#static-token-file}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 2736,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bootstrap-tokens-bootstrap-tokens",
      "type": "concept",
      "title": "Bootstrap tokens {#bootstrap-tokens}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 3532,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccount-secret-tokens-serviceaccount-secret-tokens",
      "type": "concept",
      "title": "ServiceAccount secret tokens {#serviceaccount-secret-tokens}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 4160,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tokenrequest-api-tokens-tokenrequest-api-tokens",
      "type": "concept",
      "title": "TokenRequest API tokens {#tokenrequest-api-tokens}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 5030,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:openid-connect-token-authentication-openid-connect-token-authentication",
      "type": "concept",
      "title": "OpenID Connect token authentication {#openid-connect-token-authentication}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 5570,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhook-token-authentication-webhook-token-authentication",
      "type": "concept",
      "title": "Webhook token authentication {#webhook-token-authentication}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 6423,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authenticating-proxy-authenticating-proxy",
      "type": "concept",
      "title": "Authenticating proxy {#authenticating-proxy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 7428,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/node-declared-features",
      "type": "page",
      "title": "Node Declared Features",
      "summary": "",
      "body": "\n\nKubernetes nodes use _declared features_ to report the availability of specific\nfeatures that are new or feature-gated. Control plane components\nutilize this information to make better decisions. The kube-scheduler, via the\n`NodeDeclaredFeatures` plugin, ensures pods are only placed on nodes that\nexplicitly support the features the pod requires. Additionally, the\n`NodeDeclaredFeatureValidator` admission controller validates pod updates\nagainst a node's declared features.\n\nThis mechanism helps manage version skew and improve cluster stability,\nespecially during cluster upgrades or in mixed-version environments where nodes\nmight not all have the same features enabled. This is intended for Kubernetes\nfeature developers introducing new node-level features and works in the\nbackground; application developers deploying Pods do not need to interact with\nthis framework directly.\n\n## How it Works\n\n1.  **Kubelet Feature Reporting:** At startup, the kubelet on each node detects\n    which managed Kubernetes features are currently enabled and reports them\n    in the `.status.declaredFeatures` field of the Node. Only features\n    under active development are included in this field.\n2.  **Scheduler Filtering:** The default kube-scheduler uses the\n    `NodeDeclaredFeatures` plugin. This plugin:\n    * In the `PreFilter` stage, checks the `PodSpec` to infer the set of node\n      features required by the pod.\n    * In the `Filter` stage, checks if the features listed in the node's\n      `.status.declaredFeatures` satisfy the requirements inferred for the Pod.\n      Pods will not be scheduled on nodes lacking the required features.\n    Custom schedulers can also utilize the\n    `.status.declaredFeatures` field to enforce similar constraints.\n3.  **Admission Control:** The `nodedeclaredfeaturevalidator` admission controller\n    can reject Pods that require features not declared by the node they are\n    bound to, preventing issues during pod updates.\n\n## Enabling node declared features\n\nTo use Node Declared Features, the `NodeDeclaredFeatures`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/#NodeDeclaredFeatures)\nmust be enabled on the `kube-apiserver`, `kube-scheduler`, and `kubelet`\ncomponents.\n\n## \n\n* Read the KEP for more details:\n    [KEP-5328: Node Declared Features](https://github.com/kubernetes/enhancements/blob/6d3210f7dd5d547c8f7f6a33af6a09eb45193cd7/keps/sig-node/5328-node-declared-features/README.md)\n* Read about the [`NodeDeclaredFeatureValidator` admission controller](/docs/reference/access-authn-authz/admission-controllers/#nodedeclaredfeaturevalidator).",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-declared-features/",
      "meta": {
        "weight": 160,
        "rel_path": "concepts/scheduling-eviction/node-declared-features.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-declared-features.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-declared-features/",
          "line_start": null,
          "line_end": null,
          "quote": "Node Declared Features"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-node-declared-features",
      "type": "concept",
      "title": "Enabling node declared features",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-declared-features.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-declared-features/",
          "line_start": 2028,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/assign-pod-node",
      "type": "page",
      "title": "Assigning Pods to Nodes",
      "summary": "",
      "body": "\n\nYou can constrain a [Pod](#gloss:pod) so that it is\n_restricted_ to run on particular [node(s)](#gloss:node),\nor to _prefer_ to run on particular nodes.\nThere are several ways to do this and the recommended approaches all use\n[label selectors](/docs/concepts/overview/working-with-objects/labels/) to facilitate the selection.\nOften, you do not need to set any such constraints; the\n[scheduler](#gloss:kube-scheduler) will automatically do a reasonable placement\n(for example, spreading your Pods across nodes so as not place Pods on a node with insufficient free resources).\nHowever, there are some circumstances where you may want to control which node\nthe Pod deploys to, for example, to ensure that a Pod ends up on a node with an SSD attached to it,\nor to co-locate Pods from two different services that communicate a lot into the same availability zone.\n\n\n\nYou can use any of the following methods to choose where Kubernetes schedules\nspecific Pods:\n\n- [nodeSelector](#nodeselector) field matching against [node labels](#built-in-node-labels)\n- [Affinity and anti-affinity](#affinity-and-anti-affinity)\n- [nodeName](#nodename) field\n- [Pod topology spread constraints](#pod-topology-spread-constraints)\n\n## Node labels {#built-in-node-labels}\n\nLike many other Kubernetes objects, nodes have\n[labels](/docs/concepts/overview/working-with-objects/labels/). You can\n[attach labels manually](/docs/tasks/configure-pod-container/assign-pods-nodes/#add-a-label-to-a-node).\nKubernetes also populates a [standard set of labels](/docs/reference/node/node-labels/)\non all nodes in a cluster.\n\n\n> **Note:** The value of these labels is cloud provider specific and is not guaranteed to be reliable.\nFor example, the value of `kubernetes.io/hostname` may be the same as the node name in some environments\nand a different value in other environments.\n\n\n### Node isolation/restriction\n\nAdding labels to nodes allows you to target Pods for scheduling on specific\nnodes or groups of nodes. You can use this functionality to ensure that specific\nPods only run on nodes with certain isolation, security, or regulatory\nproperties.\n\nIf you use labels for node isolation, choose label keys that the \ncannot modify. This prevents a compromised node from setting those labels on\nitself so that the scheduler schedules workloads onto the compromised node.\n\nThe [`NodeRestriction` admission plugin](/docs/reference/access-authn-authz/admission-controllers/#noderestriction)\nprevents the kubelet from setting or modifying labels with a\n`node-restriction.kubernetes.io/` prefix.\n\nTo make use of that label prefix for node isolation:\n\n1. Ensure you are using the [Node authorizer](/docs/reference/access-authn-authz/node/) and have _enabled_ the `NodeRestriction` admission plugin.\n2. Add labels with the `node-restriction.kubernetes.io/` prefix to your nodes, and use those labels in your [node selectors](#nodeselector).\n   For example, `example.com.node-restriction.kubernetes.io/fips=true` or `example.com.node-restriction.kubernetes.io/pci-dss=true`.\n\n## nodeSelector\n\n`nodeSelector` is the simplest recommended form of node selection constraint.\nYou can add the `nodeSelector` field to your Pod specification and specify the\n[node labels](#built-in-node-labels) you want the target node to have.\nKubernetes only schedules the Pod onto nodes that have each of the labels you\nspecify.\n\nSee [Assign Pods to Nodes](/docs/tasks/configure-pod-container/assign-pods-nodes) for more\ninformation.\n\n## Affinity and anti-affinity\n\n`nodeSelector` is the simplest way to constrain Pods to nodes with specific\nlabels. Affinity and anti-affinity expand the types of constraints you can\ndefine. Some of the benefits of affinity and anti-affinity include:\n\n- The affinity/anti-affinity language is more expressive. `nodeSelector` only\n  selects nodes with all the specified labels. Affinity/anti-affinity gives you\n  more control over the selection logic.\n- You can indicate that a rule is *soft* or *preferred*, so that the schedul\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/scheduling-eviction/assign-pod-node.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": null,
          "line_end": null,
          "quote": "Assigning Pods to Nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-labels-built-in-node-labels",
      "type": "concept",
      "title": "Node labels {#built-in-node-labels}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 1339,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeselector",
      "type": "concept",
      "title": "nodeSelector",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 3227,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:affinity-and-anti-affinity",
      "type": "concept",
      "title": "Affinity and anti-affinity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 3665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodename",
      "type": "concept",
      "title": "nodeName",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 26849,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nominatednodename",
      "type": "concept",
      "title": "nominatedNodeName",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 28283,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-topology-spread-constraints",
      "type": "concept",
      "title": "Pod topology spread constraints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 29112,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-topology-labels",
      "type": "concept",
      "title": "Pod topology labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 29624,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-isolation-restriction",
      "type": "concept",
      "title": "Node isolation/restriction",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 1983,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-affinity",
      "type": "concept",
      "title": "Node affinity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 4751,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:inter-pod-affinity-and-anti-affinity",
      "type": "concept",
      "title": "Inter-pod affinity and anti-affinity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 10302,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/scheduling-framework",
      "type": "page",
      "title": "Scheduling Framework",
      "summary": "",
      "body": "\n\n\n\nThe _scheduling framework_ is a pluggable architecture for the Kubernetes scheduler.\nIt consists of a set of \"plugin\" APIs that are compiled directly into the scheduler.\nThese APIs allow most scheduling features to be implemented as plugins,\nwhile keeping the scheduling \"core\" lightweight and maintainable. Refer to the\n[design proposal of the scheduling framework][kep] for more technical information on\nthe design of the framework.\n\n[kep]: https://github.com/kubernetes/enhancements/blob/master/keps/sig-scheduling/624-scheduling-framework/README.md\n\n\n\n## Framework workflow\n\nThe Scheduling Framework defines a few extension points. Scheduler plugins\nregister to be invoked at one or more extension points. Some of these plugins\ncan change the scheduling decisions and some are informational only.\n\nEach attempt to schedule one Pod is split into two phases, the\n**scheduling cycle** and the **binding cycle**.\n\n### Scheduling cycle & binding cycle\n\nThe scheduling cycle selects a node for the Pod, and the binding cycle applies\nthat decision to the cluster. Together, a scheduling cycle and binding cycle are\nreferred to as a \"scheduling context\".\n\nScheduling cycles are run serially, while binding cycles may run concurrently.\n\nA scheduling or binding cycle can be aborted if the Pod is determined to\nbe unschedulable or if there is an internal error. The Pod will be returned to\nthe queue and retried.\n\n## Interfaces\n\nThe following picture shows the scheduling context of a Pod and the interfaces\nthat the scheduling framework exposes.\n\nOne plugin may implement multiple interfaces to perform more complex or\nstateful tasks.\n\nSome interfaces match the scheduler extension points which can be configured through\n[Scheduler Configuration](/docs/reference/scheduling/config/#extension-points).\n\n\n![](/images/docs/scheduling-framework-extensions.png)\n\n\n### PreEnqueue {#pre-enqueue}\n\nThese plugins are called prior to adding Pods to the internal active queue, where Pods are marked as\nready for scheduling.\n\nOnly when all PreEnqueue plugins return `Success`, the Pod is allowed to enter the active queue.\nOtherwise, it's placed in the internal unschedulable Pods list, and doesn't get an `Unschedulable` condition.\n\nFor more details about how internal scheduler queues work, read\n[Scheduling queue in kube-scheduler](https://github.com/kubernetes/community/blob/f03b6d5692bd979f07dd472e7b6836b2dad0fd9b/contributors/devel/sig-scheduling/scheduler_queues.md).\n\n### EnqueueExtension\n\nEnqueueExtension is the interface where the plugin can control\nwhether to retry scheduling of Pods rejected by this plugin, based on changes in the cluster.\nPlugins that implement PreEnqueue, PreFilter, Filter, Reserve or Permit should implement this interface.\n\n### QueueingHint\n\n\n\nQueueingHint is a callback function for deciding whether a Pod can be requeued to the active queue or backoff queue.\nIt's executed every time a certain kind of event or change happens in the cluster.\nWhen the QueueingHint finds that the event might make the Pod schedulable,\nthe Pod is put into the active queue or the backoff queue\nso that the scheduler will retry the scheduling of the Pod.\n\n### QueueSort {#queue-sort}\n\nThese plugins are used to sort Pods in the scheduling queue. A queue sort plugin\nessentially provides a `Less(Pod1, Pod2)` function. Only one queue sort\nplugin may be enabled at a time.\n\n### PreFilter {#pre-filter}\n\nThese plugins are used to pre-process info about the Pod, or to check certain\nconditions that the cluster or the Pod must meet. If a PreFilter plugin returns\nan error, the scheduling cycle is aborted.\n\n### Filter\n\nThese plugins are used to filter out nodes that cannot run the Pod. For each\nnode, the scheduler will call filter plugins in their configured order. If any\nfilter plugin marks the node as infeasible, the remaining plugins will not be\ncalled for that node. Nodes may be evaluated concurrently.\n\n### PostFilter {#post-filter}\n\nThese plugins are called after the Filter phase, but\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/scheduling-eviction/scheduling-framework.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": null,
          "line_end": null,
          "quote": "Scheduling Framework"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:framework-workflow",
      "type": "concept",
      "title": "Framework workflow",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:interfaces",
      "type": "concept",
      "title": "Interfaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 1503,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:plugin-api",
      "type": "concept",
      "title": "Plugin API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 10526,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:plugin-configuration",
      "type": "concept",
      "title": "Plugin configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 10986,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduling-cycle-binding-cycle",
      "type": "concept",
      "title": "Scheduling cycle & binding cycle",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 1009,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preenqueue-pre-enqueue",
      "type": "concept",
      "title": "PreEnqueue {#pre-enqueue}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 2030,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enqueueextension",
      "type": "concept",
      "title": "EnqueueExtension",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 2637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:queueinghint",
      "type": "concept",
      "title": "QueueingHint",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 2922,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:queuesort-queue-sort",
      "type": "concept",
      "title": "QueueSort {#queue-sort}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 3400,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prefilter-pre-filter",
      "type": "concept",
      "title": "PreFilter {#pre-filter}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 3616,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:filter",
      "type": "concept",
      "title": "Filter",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 3847,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:postfilter-post-filter",
      "type": "concept",
      "title": "PostFilter {#post-filter}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 4153,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prescore-pre-score",
      "type": "concept",
      "title": "PreScore {#pre-score}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 4553,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:score-scoring",
      "type": "concept",
      "title": "Score {#scoring}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 4766,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:normalizescore-normalize-scoring",
      "type": "concept",
      "title": "NormalizeScore {#normalize-scoring}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 5890,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reserve-reserve",
      "type": "concept",
      "title": "Reserve {#reserve}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 7035,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:permit",
      "type": "concept",
      "title": "Permit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 8404,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prebind-pre-bind",
      "type": "concept",
      "title": "PreBind {#pre-bind}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 9632,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bind",
      "type": "concept",
      "title": "Bind",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 9976,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:postbind-post-bind",
      "type": "concept",
      "title": "PostBind {#post-bind}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 10312,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/pod-scheduling-readiness",
      "type": "page",
      "title": "Pod Scheduling Readiness",
      "summary": "",
      "body": "\n\n\n\nPods were considered ready for scheduling once created. Kubernetes scheduler\ndoes its due diligence to find nodes to place all pending Pods. However, in a\nreal-world case, some Pods may stay in a \"miss-essential-resources\" state for a long period.\nThese Pods actually churn the scheduler (and downstream integrators like Cluster AutoScaler)\nin an unnecessary manner.\n\nBy specifying/removing a Pod's `.spec.schedulingGates`, you can control when a Pod is ready\nto be considered for scheduling.\n\n\n\n## Configuring Pod schedulingGates\n\nThe `schedulingGates` field contains a list of strings, and each string literal is perceived as a\ncriteria that Pod should be satisfied before considered schedulable. This field can be initialized\nonly when a Pod is created (either by the client, or mutated during admission). After creation,\neach schedulingGate can be removed in arbitrary order, but addition of a new scheduling gate is disallowed.\n\n\n![pod-scheduling-gates-diagram](/docs/images/podSchedulingGates.svg) — Figure. Pod SchedulingGates\n\n## Usage example\n\nTo mark a Pod not-ready for scheduling, you can create it with one or more scheduling gates like this:\n\n\n\nAfter the Pod's creation, you can check its state using:\n\n```bash\nkubectl get pod test-pod\n```\n\nThe output reveals it's in `SchedulingGated` state:\n\n```none\nNAME       READY   STATUS            RESTARTS   AGE\ntest-pod   0/1     SchedulingGated   0          7s\n```\n\nYou can also check its `schedulingGates` field by running:\n\n```bash\nkubectl get pod test-pod -o jsonpath='{.spec.schedulingGates}'\n```\n\nThe output is:\n\n```none\n[{\"name\":\"example.com/foo\"},{\"name\":\"example.com/bar\"}]\n```\n\nTo inform scheduler this Pod is ready for scheduling, you can remove its `schedulingGates` entirely\nby reapplying a modified manifest:\n\n\n\nYou can check if the `schedulingGates` is cleared by running:\n\n```bash\nkubectl get pod test-pod -o jsonpath='{.spec.schedulingGates}'\n```\n\nThe output is expected to be empty. And you can check its latest status by running:\n\n```bash\nkubectl get pod test-pod -o wide\n```\n\nGiven the test-pod doesn't request any CPU/memory resources, it's expected that this Pod's state get\ntransited from previous `SchedulingGated` to `Running`:\n\n```none\nNAME       READY   STATUS    RESTARTS   AGE   IP         NODE\ntest-pod   1/1     Running   0          15s   10.0.0.4   node-2\n```\n\n## Observability\n\nThe metric `scheduler_pending_pods` comes with a new label `\"gated\"` to distinguish whether a Pod\nhas been tried scheduling but claimed as unschedulable, or explicitly marked as not ready for\nscheduling. You can use `scheduler_pending_pods{queue=\"gated\"}` to check the metric result.\n\n## Mutable Pod scheduling directives\n\nYou can mutate scheduling directives of Pods while they have scheduling gates, with certain constraints.\nAt a high level, you can only tighten the scheduling directives of a Pod. In other words, the updated\ndirectives would cause the Pods to only be able to be scheduled on a subset of the nodes that it would\npreviously match. More concretely, the rules for updating a Pod's scheduling directives are as follows:\n\n1. For `.spec.nodeSelector`, only additions are allowed. If absent, it will be allowed to be set.\n\n2. For `spec.affinity.nodeAffinity`, if nil, then setting anything is allowed.\n\n3. If `NodeSelectorTerms` was empty, it will be allowed to be set.\n   If not empty, then only additions of `NodeSelectorRequirements` to `matchExpressions`\n   or `fieldExpressions` are allowed, and no changes to existing `matchExpressions`\n   and `fieldExpressions` will be allowed. This is because the terms in\n   `.requiredDuringSchedulingIgnoredDuringExecution.NodeSelectorTerms`, are ORed\n   while the expressions in `nodeSelectorTerms[].matchExpressions` and\n   `nodeSelectorTerms[].fieldExpressions` are ANDed.\n\n4. For `.preferredDuringSchedulingIgnoredDuringExecution`, all updates are allowed.\n   This is because preferred terms are not authoritative, and so policy controllers\n   don't validate those t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/scheduling-eviction/pod-scheduling-readiness.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Scheduling Readiness"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-pod-schedulinggates",
      "type": "concept",
      "title": "Configuring Pod schedulingGates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": 591,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:usage-example",
      "type": "concept",
      "title": "Usage example",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": 1720,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:observability",
      "type": "concept",
      "title": "Observability",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": 3162,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutable-pod-scheduling-directives",
      "type": "concept",
      "title": "Mutable Pod scheduling directives",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": 3465,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "type": "page",
      "title": "Node-pressure Eviction",
      "summary": "",
      "body": "[definition:node-pressure-eviction]</br>\n\n\nThe [kubelet](#gloss:kubelet) monitors resources\nlike memory, disk space, and filesystem inodes on your cluster's nodes.\nWhen one or more of these resources reach specific consumption levels, the\nkubelet can proactively fail one or more pods on the node to reclaim resources\nand prevent starvation.\n\nDuring a node-pressure eviction, the kubelet sets the [phase](/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase) for the\nselected pods to `Failed`, and terminates the Pod.\n\nNode-pressure eviction is not the same as\n[API-initiated eviction](/docs/concepts/scheduling-eviction/api-eviction/).\n\nThe kubelet does not respect your configured [PodDisruptionBudget](#gloss:pod-disruption-budget)\nor the pod's\n`terminationGracePeriodSeconds`. If you use [soft eviction thresholds](#soft-eviction-thresholds),\nthe kubelet respects your configured `eviction-max-pod-grace-period`. If you use\n[hard eviction thresholds](#hard-eviction-thresholds), the kubelet uses a `0s` grace period (immediate shutdown) for termination.\n\n## Self healing behavior\n\nThe kubelet attempts to [reclaim node-level resources](#reclaim-node-resources)\nbefore it terminates end-user pods. For example, it removes unused container\nimages when disk resources are starved.\n\nIf the pods are managed by a [workload](#gloss:workload)\nmanagement object (such as [StatefulSet](#gloss:statefulset)\nor [Deployment](#gloss:deployment)) that\nreplaces failed pods, the control plane (`kube-controller-manager`) creates new\npods in place of the evicted pods.\n\n### Self healing for static pods\n\nIf you are running a [static pod](/docs/concepts/workloads/pods/#static-pods)\non a node that is under resource pressure, the kubelet may evict that static\nPod. The kubelet then tries to create a replacement, because static Pods always\nrepresent an intent to run a Pod on that node.\n\nThe kubelet takes the _priority_ of the static pod into account when creating\na replacement. If the static pod manifest specifies a low priority, and there\nare higher-priority Pods defined within the cluster's control plane, and the\nnode is under resource pressure, the kubelet may not be able to make room for\nthat static pod. The kubelet continues to attempt to run all static pods even\nwhen there is resource pressure on a node.\n\n## Eviction signals and thresholds\n\nThe kubelet uses various parameters to make eviction decisions, like the following:\n\n- Eviction signals\n- Eviction thresholds\n- Monitoring intervals\n\n### Eviction signals {#eviction-signals}\n\nEviction signals are the current state of a particular resource at a specific\npoint in time. The kubelet uses eviction signals to make eviction decisions by\ncomparing the signals to eviction thresholds, which are the minimum amount of\nthe resource that should be available on the node.\n\nThe kubelet uses the following eviction signals:\n\n| Eviction Signal          | Description                                                                           | Linux Only |\n|--------------------------|---------------------------------------------------------------------------------------|------------|\n| `memory.available`       | `memory.available` := `node.status.capacity[memory]` - `node.stats.memory.workingSet` |            |\n| `nodefs.available`       | `nodefs.available` := `node.stats.fs.available`                                       |            |\n| `nodefs.inodesFree`      | `nodefs.inodesFree` := `node.stats.fs.inodesFree`                                     |      •     |\n| `imagefs.available`      | `imagefs.available` := `node.stats.runtime.imagefs.available`                         |            |\n| `imagefs.inodesFree`     | `imagefs.inodesFree` := `node.stats.runtime.imagefs.inodesFree`                       |      •     |\n| `containerfs.available`  | `containerfs.available` := `node.stats.runtime.containerfs.available`                 |            |\n| `containerfs.inodesFree` | `containerfs.inodesFree` := `node.stats.runtime.containe\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
      "meta": {
        "weight": 100,
        "rel_path": "concepts/scheduling-eviction/node-pressure-eviction.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": null,
          "line_end": null,
          "quote": "Node-pressure Eviction"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:self-healing-behavior",
      "type": "concept",
      "title": "Self healing behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 1160,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:eviction-signals-and-thresholds",
      "type": "concept",
      "title": "Eviction signals and thresholds",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 2505,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:eviction-monitoring-interval",
      "type": "concept",
      "title": "Eviction monitoring interval",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 14167,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-conditions-node-conditions",
      "type": "concept",
      "title": "Node conditions {#node-conditions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 14317,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-out-of-memory-behavior",
      "type": "concept",
      "title": "Node out of memory behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 23221,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:good-practices-node-pressure-eviction-good-practices",
      "type": "concept",
      "title": "Good practices {#node-pressure-eviction-good-practices}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 24831,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:self-healing-for-static-pods",
      "type": "concept",
      "title": "Self healing for static pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 1755,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:eviction-signals-eviction-signals",
      "type": "concept",
      "title": "Eviction signals {#eviction-signals}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 2691,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deprecated-kubelet-garbage-collection-features",
      "type": "concept",
      "title": "Deprecated kubelet garbage collection features",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 9556,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-condition-oscillation",
      "type": "concept",
      "title": "Node condition oscillation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 16047,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reclaiming-node-level-resources-reclaim-node-resources",
      "type": "concept",
      "title": "Reclaiming node level resources {#reclaim-node-resources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 16573,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-selection-for-kubelet-eviction",
      "type": "concept",
      "title": "Pod selection for kubelet eviction",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 17897,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:minimum-eviction-reclaim",
      "type": "concept",
      "title": "Minimum eviction reclaim",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 21374,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:schedulable-resources-and-eviction-policies",
      "type": "concept",
      "title": "Schedulable resources and eviction policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 24966,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonsets-and-node-pressure-eviction-daemonset",
      "type": "concept",
      "title": "DaemonSets and node-pressure eviction {#daemonset}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 25992,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-may-not-observe-memory-pressure-right-away",
      "type": "concept",
      "title": "kubelet may not observe memory pressure right away",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 26514,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:active-file-memory-is-not-considered-as-available-memory",
      "type": "concept",
      "title": "active_file memory is not considered as available memory",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 27205,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "type": "page",
      "title": "Pod Priority and Preemption",
      "summary": "",
      "body": "\n\n\n\n[Pods](/docs/concepts/workloads/pods/) can have _priority_. Priority indicates the\nimportance of a Pod relative to other Pods. If a Pod cannot be scheduled, the\nscheduler tries to preempt (evict) lower priority Pods to make scheduling of the\npending Pod possible.\n\n\n\n\n\n\n\n> **Warning:** In a cluster where not all users are trusted, a malicious user could create Pods\nat the highest possible priorities, causing other Pods to be evicted/not get\nscheduled.\nAn administrator can use ResourceQuota to prevent users from creating pods at\nhigh priorities.\n\nSee [limit Priority Class consumption by default](/docs/concepts/policy/resource-quotas/#limit-priority-class-consumption-by-default)\nfor details.\n\n\n## How to use priority and preemption\n\nTo use priority and preemption:\n\n1.  Add one or more [PriorityClasses](#priorityclass).\n\n1.  Create Pods with[`priorityClassName`](#pod-priority) set to one of the added\n    PriorityClasses. Of course you do not need to create the Pods directly;\n    normally you would add `priorityClassName` to the Pod template of a\n    collection object like a Deployment.\n\nKeep reading for more information about these steps.\n\n\n> **Note:** Kubernetes already ships with two PriorityClasses:\n`system-cluster-critical` and `system-node-critical`.\nThese are common classes and are used to [ensure that critical components are always scheduled first](/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/).\n\n\n## PriorityClass\n\nA PriorityClass is a non-namespaced object that defines a mapping from a\npriority class name to the integer value of the priority. The name is specified\nin the `name` field of the PriorityClass object's metadata. The value is\nspecified in the required `value` field. The higher the value, the higher the\npriority.\nThe name of a PriorityClass object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names),\nand it cannot be prefixed with `system-`.\n\nA PriorityClass object can have any 32-bit integer value smaller than or equal\nto 1 billion. This means that the range of values for a PriorityClass object is\nfrom -2147483648 to 1000000000 inclusive. Larger numbers are reserved for\nbuilt-in PriorityClasses that represent critical system Pods. A cluster\nadmin should create one PriorityClass object for each such mapping that they want.\n\nPriorityClass also has two optional fields: `globalDefault` and `description`.\nThe `globalDefault` field indicates that the value of this PriorityClass should\nbe used for Pods without a `priorityClassName`. Only one PriorityClass with\n`globalDefault` set to true can exist in the system. If there is no\nPriorityClass with `globalDefault` set, the priority of Pods with no\n`priorityClassName` is zero.\n\nThe `description` field is an arbitrary string. It is meant to tell users of the\ncluster when they should use this PriorityClass.\n\n### Notes about PodPriority and existing clusters\n\n-   If you upgrade an existing cluster without this feature, the priority\n    of your existing Pods is effectively zero.\n\n-   Addition of a PriorityClass with `globalDefault` set to `true` does not\n    change the priorities of existing Pods. The value of such a PriorityClass is\n    used only for Pods created after the PriorityClass is added.\n\n-   If you delete a PriorityClass, existing Pods that use the name of the\n    deleted PriorityClass remain unchanged, but you cannot create more Pods that\n    use the name of the deleted PriorityClass.\n\n### Example PriorityClass\n\n```yaml\napiVersion: scheduling.k8s.io/v1\nkind: PriorityClass\nmetadata:\n  name: high-priority\nvalue: 1000000\nglobalDefault: false\ndescription: \"This priority class should be used for XYZ service pods only.\"\n```\n\n## Non-preempting PriorityClass {#non-preempting-priority-class}\n\n\n\nPods with `preemptionPolicy: Never` will be placed in the scheduling queue\nahead of lower-priority pods,\nbut they cannot preempt other pods.\nA non-preempting pod waiting to be scheduled will stay in\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/scheduling-eviction/pod-priority-preemption.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Priority and Preemption"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-use-priority-and-preemption",
      "type": "concept",
      "title": "How to use priority and preemption",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 811,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:priorityclass",
      "type": "concept",
      "title": "PriorityClass",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 1575,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:non-preempting-priorityclass-non-preempting-priority-class",
      "type": "concept",
      "title": "Non-preempting PriorityClass {#non-preempting-priority-class}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 3854,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-priority",
      "type": "concept",
      "title": "Pod priority",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 5520,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preemption",
      "type": "concept",
      "title": "Preemption",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 6754,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:interactions-between-pod-priority-and-quality-of-service-interactions-of-pod-priority-and-qos",
      "type": "concept",
      "title": "Interactions between Pod priority and quality of service {#interactions-of-pod-priority-and-qos}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 15021,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:notes-about-podpriority-and-existing-clusters",
      "type": "concept",
      "title": "Notes about PodPriority and existing clusters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 3017,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-priorityclass",
      "type": "concept",
      "title": "Example PriorityClass",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 3616,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-non-preempting-priorityclass",
      "type": "concept",
      "title": "Example Non-preempting PriorityClass",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 5228,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:effect-of-pod-priority-on-scheduling-order",
      "type": "concept",
      "title": "Effect of Pod priority on scheduling order",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 6283,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:user-exposed-information",
      "type": "concept",
      "title": "User exposed information",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 7359,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitations-of-preemption",
      "type": "concept",
      "title": "Limitations of preemption",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 8424,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pods-are-preempted-unnecessarily",
      "type": "concept",
      "title": "Pods are preempted unnecessarily",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 12225,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pods-are-preempted-but-the-preemptor-is-not-scheduled",
      "type": "concept",
      "title": "Pods are preempted, but the preemptor is not scheduled",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 13389,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:higher-priority-pods-are-preempted-before-lower-priority-pods",
      "type": "concept",
      "title": "Higher priority Pods are preempted before lower priority pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 14053,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/topology-aware-scheduling",
      "type": "page",
      "title": "Topology-Aware Workload Scheduling",
      "summary": "",
      "body": "\n\n\n*Topology-Aware Scheduling* (TAS) is a [placement scheduling algorithm](/docs/concepts/scheduling-eviction/podgroup-scheduling/#placement-scheduling-algorithm)\nthat allows to find the optimal placement for the considered PodGroup, guaranteeing that all pods\nwill be collocated within the same topology domain. Users can accomodate TAS to their specific\nneeds by changing TAS plugins configuration.\n\n## Scheduling framework: TAS plugins configuration\n\nThe scheduler includes new and extended in-tree plugins that implement the TAS extension points:\n\n*   `TopologyPlacement`: Implements the `PlacementGeneratePlugin` interface. It generates candidate\nplacements by grouping nodes based on the distinct values of the requested topology `key` (defined\nin the PodGroup).\n\n*   `NodeResourcesFit`: Extended to implement the `PlacementScorePlugin` interface. Following\nsimilar logic to standard pod bin-packing, it scores placements based on the allocation ratio\nacross all nodes within the placement. It uses the `MostAllocated` strategy to maximize resource\nutilization within a placement, and it inherits resource weights from the standard pod-by-pod\nplugin settings.\n\n*   `PodGroupPodsCount`: Implements the `PlacementScorePlugin` interface. It scores candidate\nplacements based on the total number of pods in the PodGroup that you can successfully schedule. \n\n### Customizing plugin weights and bin-packing resource weights\n\nBy default, the `NodeResourcesFit` and `PodGroupPodsCount` plugins are configured with equal\nweights (both default to 1) to maintain a good balance between bin-packing logic and scheduling as\nmany pods as possible. \n\nYou can adjust these weights, or the resource weights in the bin-packing strategy in your\nKubeSchedulerConfiguration. Here is an example snippet showing how to change the weights for both\nplugins, and how to override the `NodeResourcesFit` resource weights. The latter change will apply\nboth to pod-by-pod and placement scoring algorithms:\n\n```yaml\napiVersion: kubescheduler.config.k8s.io/v1\nkind: KubeSchedulerConfiguration\nprofiles:\n  - schedulerName: default-scheduler\n    plugins:\n      placementScore:\n        enabled:\n          # 1) Change the default weights of the placement score plugins\n          - name: NodeResourcesFit\n            weight: 2\n          - name: PodGroupPodsCount\n            weight: 5\n    pluginConfig:\n      - name: NodeResourcesFit\n        args:\n          # 2) Changing the scoring resource weights for both pod-by-pod and placement scoring\n          # algorithms\n          scoringStrategy:\n            # The type will only be considered in pod-by-pod scheduling. Placement scoring always\n            # uses MostAllocated strategy\n            type: LeastAllocated\n            # Resource weights will be used in both pod-by-pod and placement scoring algorithms\n            resources:\n              - name: cpu\n                weight: 2\n              - name: memory\n                weight: 3\n```\n\n## \n\n* Learn more about [Topology-aware scheduling API](/docs/concepts/workloads/workload-api/topology-aware-scheduling/).\n* Read about [pod group scheduling](/docs/concepts/scheduling-eviction/podgroup-scheduling/).\n* Read about [pod group policies](/docs/concepts/workloads/workload-api/policies/).",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-aware-scheduling/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/scheduling-eviction/topology-aware-scheduling.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-aware-scheduling/",
          "line_start": null,
          "line_end": null,
          "quote": "Topology-Aware Workload Scheduling"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduling-framework-tas-plugins-configuration",
      "type": "concept",
      "title": "Scheduling framework: TAS plugins configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-aware-scheduling/",
          "line_start": 493,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customizing-plugin-weights-and-bin-packing-resource-weights",
      "type": "concept",
      "title": "Customizing plugin weights and bin-packing resource weights",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-aware-scheduling/",
          "line_start": 1451,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/gang-scheduling",
      "type": "page",
      "title": "Gang Scheduling",
      "summary": "",
      "body": "\n\n\nGang scheduling ensures that a group of Pods are scheduled on an \"all-or-nothing\" basis.\nIf the cluster cannot accommodate the entire group (or a defined minimum number of Pods),\nnone of the Pods are bound to a node.\n\nThis feature depends on the [PodGroup API](/docs/concepts/workloads/podgroup-api/).\nEnsure the  [`GenericWorkload`](/docs/reference/command-line-tools-reference/feature-gates/#GenericWorkload)\nfeature gate and the `scheduling.k8s.io/v1alpha2`\n[API group](#gloss:api-group) are enabled in the cluster.\n\n\n\n## How it works\n\nWhen the `GangScheduling` plugin is enabled, the scheduler alters the lifecycle for Pods belonging\nto a [PodGroup](/docs/concepts/workloads/podgroup-api/) that has a `gang`\n[scheduling policy](/docs/concepts/workloads/workload-api/policies/).\nThe process follows these steps for each PodGroup:\n\n1. The scheduler holds Pods in the `PreEnqueue` phase until:\n   * The referenced PodGroup object exists.\n   * The number of `Pods` created for the `PodGroup` is at least equal to `minCount`.\n\n   `Pods` do not enter the active scheduling queue until both conditions are met.\n\n2. Once the quorum is met, the scheduler attempts to find placements for all Pods in the group.\n   It utilizes the [PodGroup scheduling](/docs/concepts/scheduling-eviction/podgroup-scheduling/) cycle to make a single,\n   atomic scheduling decision. `GangScheduling` plugin implements a `Permit` extension point that is evaluated for each\n   schedulable Pod during the cycle. This is used to determine whether the `minCount` constraint is satisfied,\n   by comparing the number of successfully placed pods against the `minCount` value.\n\n3. If the scheduler finds valid placements for at least the `minCount` number of Pods,\n   it allows those successfully placed Pods to be bound to their assigned nodes.\n   If it cannot find enough placements to satisfy the `minCount` requirement, none of the Pods are scheduled.\n   Instead, they are moved to the unschedulable queue to wait for cluster resources to free up,\n   allowing other workloads to be scheduled in the meantime.\n\n## \n\n* Learn about the [PodGroup API](/docs/concepts/workloads/podgroup-api/) and its [lifecycle](/docs/concepts/workloads/podgroup-api/lifecycle/).\n* Read about [PodGroup scheduling policies](/docs/concepts/workloads/workload-api/policies/).\n* Read about [PodGroup scheduling](/docs/concepts/scheduling-eviction/podgroup-scheduling/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/gang-scheduling/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/scheduling-eviction/gang-scheduling.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/gang-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/gang-scheduling/",
          "line_start": null,
          "line_end": null,
          "quote": "Gang Scheduling"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "type": "page",
      "title": "Dynamic Resource Allocation",
      "summary": "",
      "body": "\n\n\n\nThis page describes _dynamic resource allocation (DRA)_ in Kubernetes.\n\n\n\n## About DRA {#about-dra}\n\n[definition:dra]\n\nAllocating resources with DRA is a similar experience to\n[dynamic volume provisioning](/docs/concepts/storage/dynamic-provisioning/),\nin which you use PersistentVolumeClaims to claim storage capacity from storage classes\nand request the claimed capacity in your Pods.\n\n### Benefits of DRA {#dra-benefits}\n\nDRA provides a flexible way to categorize, request, and use devices in your cluster.\nUsing DRA provides benefits like the following:\n\n* **Flexible device filtering**: use common expression language (CEL) to perform\n  fine-grained filtering for specific device attributes.\n* **Device sharing**: share the same resource with multiple containers or Pods\n  by referencing the corresponding resource claim.\n* **Centralized device categorization**: device drivers and cluster admins can\n  use device classes to provide app operators with hardware categories that are\n  optimized for various use cases. For example, you can create a cost-optimized\n  device class for general-purpose workloads, and a high-performance device\n  class for critical jobs.\n* **Simplified Pod requests**: with DRA, app operators don't need to specify\n  device quantities in Pod resource requests. Instead, the Pod references a\n  resource claim, and the device configuration in that claim applies to the Pod.\n\nThese benefits provide significant improvements in the device allocation\nworkflow when compared to\n[device plugins](/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/),\nwhich require per-container device requests, don't support device sharing, and\ndon't support expression-based device filtering.\n\n### Types of DRA users {#dra-user-types}\n\nThe workflow of using DRA to allocate devices involves the following types of users:\n\n* **Device owner**: responsible for devices. Device owners might be commercial\n  vendors, the cluster operator, or another entity. To use DRA, devices must\n  have DRA-compatible drivers that do the following:\n\n  * Create ResourceSlices that provide Kubernetes with information about\n    nodes and resources.\n  * Update ResourceSlices when resource capacity in the cluster changes.\n  * Optionally, create DeviceClasses that workload operators can use to\n    claim devices.\n\n* **Cluster admin**: responsible for configuring clusters and nodes,\n  attaching devices, installing drivers, and similar tasks. To use DRA,\n  cluster admins do the following:\n\n  * Attach devices to nodes.\n  * Install device drivers that support DRA.\n  * Optionally, create DeviceClasses that workload operators can use to claim devices.\n\n* **Workload operator**: responsible for deploying and managing workloads in the\n  cluster. To use DRA to allocate devices to Pods, workload operators do the following:\n\n  * Create ResourceClaims or ResourceClaimTemplates to request specific\n    configurations within DeviceClasses.\n  * Deploy workloads that use specific ResourceClaims or ResourceClaimTemplates.\n\n## DRA terminology {#terminology}\n\nDRA uses the following Kubernetes API kinds to provide the core allocation\nfunctionality. All of these API kinds are included in the `resource.k8s.io/v1`\n[API group](#gloss:api-group).\n\nDeviceClass\n: Defines a category of devices that can be claimed and how to select specific\n  device attributes in claims. The DeviceClass parameters can match zero or\n  more devices in ResourceSlices. To claim devices from a DeviceClass,\n  ResourceClaims select specific device attributes.\n\nResourceClaim\n: Describes a request for access to attached resources, such as\n  devices, in the cluster. ResourceClaims provide Pods with access to\n  a specific resource. ResourceClaims can be created by workload operators\n  or generated by Kubernetes based on a ResourceClaimTemplate.\n\nResourceClaimTemplate\n: Defines a template that Kubernetes uses to create per-Pod\n  ResourceClaims for a workload. ResourceClaimTemplates provide Pods with\n  access to sepa\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
      "meta": {
        "weight": 65,
        "rel_path": "concepts/scheduling-eviction/dynamic-resource-allocation.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": null,
          "line_end": null,
          "quote": "Dynamic Resource Allocation"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dra-terminology-terminology",
      "type": "concept",
      "title": "DRA terminology {#terminology}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 3182,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-resource-allocation-with-dra-works-how-it-works",
      "type": "concept",
      "title": "How resource allocation with DRA works {#how-it-works}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 19358,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:observability-of-dynamic-resources-observability-dynamic-resources",
      "type": "concept",
      "title": "Observability of dynamic resources {#observability-dynamic-resources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 22186,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pre-scheduled-pods",
      "type": "concept",
      "title": "Pre-scheduled Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 26603,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dra-beta-features-beta-features",
      "type": "concept",
      "title": "DRA beta features {#beta-features}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 28507,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dra-alpha-features-alpha-features",
      "type": "concept",
      "title": "DRA alpha features {#alpha-features}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 31084,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:benefits-of-dra-dra-benefits",
      "type": "concept",
      "title": "Benefits of DRA {#dra-benefits}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 545,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:types-of-dra-users-dra-user-types",
      "type": "concept",
      "title": "Types of DRA users {#dra-user-types}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 1877,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceclass-deviceclass",
      "type": "concept",
      "title": "DeviceClass {#deviceclass}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 4801,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaims-and-resourceclaimtemplates-resourceclaims-templates",
      "type": "concept",
      "title": "ResourceClaims and ResourceClaimTemplates {#resourceclaims-templates}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 5385,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceslice-resourceslice",
      "type": "concept",
      "title": "ResourceSlice {#resourceslice}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 15727,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workflow-for-users-user-workflow",
      "type": "concept",
      "title": "Workflow for users {#user-workflow}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 19583,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workflow-for-kubernetes-kubernetes-workflow",
      "type": "concept",
      "title": "Workflow for Kubernetes {#kubernetes-workflow}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 20410,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-device-metrics-monitoring-resources",
      "type": "concept",
      "title": "kubelet device metrics {#monitoring-resources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 22522,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaim-device-status-resourceclaim-device-status",
      "type": "concept",
      "title": "ResourceClaim device status {#resourceclaim-device-status}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 22957,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-health-monitoring-device-health-monitoring",
      "type": "concept",
      "title": "Device Health Monitoring {#device-health-monitoring}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 24494,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admin-access-admin-access",
      "type": "concept",
      "title": "Admin access {#admin-access}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 29106,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:granular-status-authorization-granular-status-authorization",
      "type": "concept",
      "title": "Granular status authorization {#granular-status-authorization}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 30389,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extended-resource-allocation-by-dra-extended-resource",
      "type": "concept",
      "title": "Extended resource allocation by DRA {#extended-resource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 31556,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:partitionable-devices-partitionable-devices",
      "type": "concept",
      "title": "Partitionable devices {#partitionable-devices}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 33468,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:consumable-capacity",
      "type": "concept",
      "title": "Consumable capacity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 36033,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-taints-and-tolerations-device-taints-and-tolerations",
      "type": "concept",
      "title": "Device taints and tolerations {#device-taints-and-tolerations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 39949,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-pool-status-resource-pool-status",
      "type": "concept",
      "title": "Resource pool status {#resource-pool-status}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 48026,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-binding-conditions",
      "type": "concept",
      "title": "Device binding conditions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 51135,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-allocatable-resources-node-allocatable-resources",
      "type": "concept",
      "title": "Node allocatable resources {#node-allocatable-resources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 56128,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dra-device-metadata-in-containers-device-metadata",
      "type": "concept",
      "title": "DRA device metadata in containers {#device-metadata}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 61247,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-type-attributes-list-type-attributes",
      "type": "concept",
      "title": "List type attributes {#list-type-attributes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 68990,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/pod-overhead",
      "type": "page",
      "title": "Pod Overhead",
      "summary": "",
      "body": "\n\n\n\nWhen you run a Pod on a Node, the Pod itself takes an amount of system resources. These\nresources are additional to the resources needed to run the container(s) inside the Pod.\nIn Kubernetes, _Pod Overhead_ is a way to account for the resources consumed by the Pod\ninfrastructure on top of the container requests & limits.\n\n\n\nIn Kubernetes, the Pod's overhead is set at\n[admission](/docs/reference/access-authn-authz/extensible-admission-controllers/#what-are-admission-webhooks)\ntime according to the overhead associated with the Pod's\n[RuntimeClass](/docs/concepts/containers/runtime-class/).\n\nA pod's overhead is considered in addition to the sum of container resource requests when\nscheduling a Pod. Similarly, the kubelet will include the Pod overhead when sizing the Pod cgroup,\nand when carrying out Pod eviction ranking.\n\n## Configuring Pod overhead {#set-up}\n\nYou need to make sure a `RuntimeClass` is utilized which defines the `overhead` field.\n\n## Usage example\n\nTo work with Pod overhead, you need a RuntimeClass that defines the `overhead` field. As\nan example, you could use the following RuntimeClass definition with a virtualization container\nruntime (in this example, Kata Containers combined with the Firecracker virtual machine monitor)\nthat uses around 120MiB per Pod for the virtual machine and the guest OS:\n\n```yaml\n# You need to change this example to match the actual runtime name, and per-Pod\n# resource overhead, that the container runtime is adding in your cluster.\napiVersion: node.k8s.io/v1\nkind: RuntimeClass\nmetadata:\n  name: kata-fc\nhandler: kata-fc\noverhead:\n  podFixed:\n    memory: \"120Mi\"\n    cpu: \"250m\"\n```\n\nWorkloads which are created which specify the `kata-fc` RuntimeClass handler will take the memory and\ncpu overheads into account for resource quota calculations, node scheduling, as well as Pod cgroup sizing.\n\nConsider running the given example workload, test-pod:\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: test-pod\nspec:\n  runtimeClassName: kata-fc\n  containers:\n  - name: busybox-ctr\n    image: busybox:1.28\n    stdin: true\n    tty: true\n    resources:\n      limits:\n        cpu: 500m\n        memory: 100Mi\n  - name: nginx-ctr\n    image: nginx\n    resources:\n      limits:\n        cpu: 1500m\n        memory: 100Mi\n```\n\n\n> **Note:** If only `limits` are specified in the pod definition, kubelet will deduce `requests` from those limits and set them to be the same as the defined `limits`.\n\n\nAt admission time the RuntimeClass [admission controller](/docs/reference/access-authn-authz/admission-controllers/)\nupdates the workload's PodSpec to include the `overhead` as described in the RuntimeClass. If the PodSpec already has this field defined,\nthe Pod will be rejected. In the given example, since only the RuntimeClass name is specified, the admission controller mutates the Pod\nto include an `overhead`.\n\nAfter the RuntimeClass admission controller has made modifications, you can check the updated\nPod overhead value:\n\n```bash\nkubectl get pod test-pod -o jsonpath='{.spec.overhead}'\n```\n\nThe output is:\n\n```\nmap[cpu:250m memory:120Mi]\n```\n\nIf a [ResourceQuota](/docs/concepts/policy/resource-quotas/) is defined, the sum of container requests as well as the\n`overhead` field are counted.\n\nWhen the kube-scheduler is deciding which node should run a new Pod, the scheduler considers that Pod's\n`overhead` as well as the sum of container requests for that Pod. For this example, the scheduler adds the\nrequests and the overhead, then looks for a node that has 2.25 CPU and 320 MiB of memory available.\n\nOnce a Pod is scheduled to a node, the kubelet on that node creates a new [cgroup](#gloss:cgroup) for the Pod. It is within this pod that the underlying\ncontainer runtime will create containers.\n\nIf the resource has a limit defined for each container (Guaranteed QoS or Burstable QoS with limits defined),\nthe kubelet will set an upper limit for the pod cgroup associated with that resource (cpu.cfs_quota_us for CPU\nand memory.limi\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/scheduling-eviction/pod-overhead.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-overhead.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Overhead"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-pod-overhead-set-up",
      "type": "concept",
      "title": "Configuring Pod overhead {#set-up}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-overhead.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
          "line_start": 925,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-pod-cgroup-limits",
      "type": "concept",
      "title": "Verify Pod cgroup limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-overhead.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
          "line_start": 5211,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/workload-aware-preemption",
      "type": "page",
      "title": "Workload-Aware Preemption",
      "summary": "",
      "body": "\n\n\nWorkload-aware preemption introduces a preemption mechanism specifically designed for PodGroups.\nWhen a PodGroup cannot be scheduled, the scheduler utilizes a preemption logic that tries to\nmake scheduling of this PodGroup possible. This approach is used exclusively during PodGroup scheduling\nand replaces the default preemption mechanism for pods from a given PodGroup.\n\nWhen this feature is enabled, the scheduler treats the PodGroup as a single preemptor unit,\nrather than evaluating individual pods from a PodGroup in isolation. To make room for the pending pods in the group,\nit searches for victims across the entire cluster,\nand knows how to treat and preempt other PodGroups as victims according to their disruption modes.\n\nThis feature depends on the [Gang Scheduling](/docs/concepts/scheduling-eviction/gang-scheduling/)\nand the [Workload API](/docs/concepts/workloads/workload-api/).\nEnsure the [`GenericWorkload`](/docs/reference/command-line-tools-reference/feature-gates/#GenericWorkload)\nand [`GangScheduling`](/docs/reference/command-line-tools-reference/feature-gates/#GangScheduling) feature gates\nand the `scheduling.k8s.io/v1alpha2` [API group](#gloss:api-group) are enabled in the cluster.\n\n\n\n## How it works\n\nThe workload-aware preemption process follows the same principles\nas [default preemption](/docs/concepts/scheduling-eviction/pod-priority-preemption/#preemption)\nwith a few differences:\n\n1. Cluster-wide domain: Instead of evaluating preemption node by node,\n   the scheduler evaluates the entire cluster as a single domain.\n   It selects a set of victims across multiple nodes that can be removed\n   to make enough room for the preemptor PodGroup to be scheduled.\n\n2. Victim importance hierarchy: The scheduler decides which preemption units\n   (individual pods or PodGroups) are more critical and should be spared from preemption\n   using a strict hierarchy:\n   * Priority: Higher priority units are always more important.\n   * Workload type: PodGroups are considered more important than individual Pods of the same priority.\n   * Group size (PodGroups): If both units are PodGroups,\n     the one with more members (larger size) is considered more important.\n   * Start time: Units that started earlier are more important.\n\n3. Pod group priority and disruption: The scheduler considers the specific\n   [priority and disruption mode](/docs/concepts/workloads/workload-api/disruption-and-priority/) of a PodGroup\n   to evaluate if and how its pods can be preempted during preemption events.\n\n\n> **Note:** When scheduling a single Pod, the default pod preemption applies.\nAs of 1.36, when the scheduler performs a default preemption for a single Pod\nand it attempts to preempt a Pod belonging to a PodGroup, it does **not**\nrespect the `priority` or `disruptionMode` fields of that PodGroup.\n\n\n## \n\n* Learn more about [PodGroup Priority and Disruption](/docs/concepts/workloads/workload-api/disruption-and-priority/).\n* Learn about the [Workload API](/docs/concepts/workloads/workload-api/).\n* Read more about [Gang scheduling](/docs/concepts/scheduling-eviction/gang-scheduling/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/workload-aware-preemption/",
      "meta": {
        "weight": 80,
        "rel_path": "concepts/scheduling-eviction/workload-aware-preemption.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/workload-aware-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/workload-aware-preemption/",
          "line_start": null,
          "line_end": null,
          "quote": "Workload-Aware Preemption"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "type": "page",
      "title": "PodGroup Scheduling",
      "summary": "",
      "body": "\n\nThe standard Kubernetes scheduler evaluates Pods sequentially. When multiple workloads, such as machine learning training jobs,\nare submitted concurrently, this sequential evaluation can lead to resource deadlocks.\nFor example, two competing workloads might each schedule a subset of their Pods,\nconsuming cluster capacity but leaving neither workload with enough resources to fully start.\n\nThe PodGroup scheduling cycle evaluates a group of Pods as a single unit.\nThe scheduler attempts to find placements for all Pods in the group simultaneously.\nIf it cannot find sufficient resources to satisfy the entire group's requirements, none of the Pods are bound.\n\nAdditionally, treating the group as a unified entity establishes a foundational architecture\nthat simplifies the implementation of other group-based scheduling features.\n\nThis feature depends on the [Workload API](/docs/concepts/workloads/workload-api/).\nEnsure the [`GenericWorkload`](/docs/reference/command-line-tools-reference/feature-gates/#GenericWorkload)\nfeature gate and the `scheduling.k8s.io/v1alpha1`\n[API group](#gloss:api-group) are enabled in the cluster.\n\n\n\n## PodGroup scheduling cycle\n\nTo support scheduling a group of Pods together, the kube-scheduler uses the **PodGroup scheduling cycle**.\nInstead of processing Pods individually and holding them at a `WaitOnPermit` gate,\nthe scheduler evaluates the entire group of pending Pods belonging to a specific PodGroup collectively.\nRather than executing separate scheduling cycles for each Pod,\nit evaluates feasibility for the entire group and moves directly to the binding phase afterwards.\n\nWhen the scheduler pops a Pod belonging to a PodGroup, it retrieves all other queued Pods in that group.\nIt then sorts them deterministically based on priority and the time they were initially observed by the scheduler,\nand initiates the PodGroup scheduling cycle as follows:\n\n1. **Snapshotting the cluster state:** When the scheduler begins evaluating a PodGroup,\n   it takes a single snapshot of the cluster state that lasts for the entire duration of the cycle.\n   This ensures the evaluation remains consistent for the whole group and prevents race conditions with other events.\n\n2. **Finding feasible placements:** The scheduler runs the [PodGroup scheduling algorithm](#podgroup-scheduling-algorithm)\n   to find valid Node placements for the Pods in the group.\n\n3. **Atomic decision:** Depending on the algorithm's outcome, the scheduling decision\n   is applied atomically for the entire PodGroup.\n\n   * **Success:** If the scheduler finds sufficient resources and valid placements for the Pods\n     (e.g., satisfying the `minCount` constraint for [gang scheduling](/docs/concepts/scheduling-eviction/gang-scheduling/)),\n     those Pods proceed directly to the binding cycle with their selected nodes.\n     Any remaining unschedulable Pods are returned to the scheduling queue to wait for available resources\n     so they can join the already scheduled Pods. \n     \n     Furthermore, if new Pods are added to a PodGroup after others have already been scheduled,\n     the cycle evaluates the new Pods while accounting for the existing ones.\n\n   * **Failure:** If the scheduler cannot find enough resources to make the PodGroup feasible\n     (e.g., failing to meet the `minCount` constraint), the entire PodGroup is considered unschedulable.\n     No Pods are bound, but instead, all are returned to the scheduling queue.\n     Standard scheduling backoff logic applies, allowing the PodGroup to be retried later.\n\nBy using this single-cycle approach, the scheduler avoids inefficient bottlenecks\nwhere partially scheduled groups reserve cluster capacity while waiting indefinitely for the rest of their group to fit.\n\n## PodGroup scheduling algorithm\n\nThe default PodGroup scheduling algorithm relies heavily on the baseline Pod-based scheduling algorithm.\nIt iterates over the Pods and performs the following for each:\n\n1. Finds a feasible node using the standard per-Pod f\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
      "meta": {
        "weight": 80,
        "rel_path": "concepts/scheduling-eviction/podgroup-scheduling.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": null,
          "line_end": null,
          "quote": "PodGroup Scheduling"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroup-scheduling-cycle",
      "type": "concept",
      "title": "PodGroup scheduling cycle",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 1240,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroup-scheduling-algorithm",
      "type": "concept",
      "title": "PodGroup scheduling algorithm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 3847,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:placement-scheduling-algorithm",
      "type": "concept",
      "title": "Placement scheduling algorithm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 4784,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroup-conditions",
      "type": "concept",
      "title": "PodGroup conditions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 7292,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:phase-1-candidate-placement-generation",
      "type": "concept",
      "title": "Phase 1: Candidate placement generation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 5281,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:phase-2-pod-level-filtering-and-feasibility-check",
      "type": "concept",
      "title": "Phase 2: Pod-level filtering and feasibility check",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 5611,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:phase-3-placement-scoring-and-selection",
      "type": "concept",
      "title": "Phase 3:  Placement scoring and selection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 5870,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroupscheduled",
      "type": "concept",
      "title": "`PodGroupScheduled`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 7633,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disruptiontarget",
      "type": "concept",
      "title": "`DisruptionTarget`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 8230,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/scheduler-perf-tuning",
      "type": "page",
      "title": "Scheduler Performance Tuning",
      "summary": "",
      "body": "\n\n\n\n[kube-scheduler](/docs/concepts/scheduling-eviction/kube-scheduler/#kube-scheduler)\nis the Kubernetes default scheduler. It is responsible for placement of Pods\non Nodes in a cluster.\n\nNodes in a cluster that meet the scheduling requirements of a Pod are\ncalled _feasible_ Nodes for the Pod. The scheduler finds feasible Nodes\nfor a Pod and then runs a set of functions to score the feasible Nodes,\npicking a Node with the highest score among the feasible ones to run\nthe Pod. The scheduler then notifies the API server about this decision\nin a process called _Binding_.\n\nThis page explains performance tuning optimizations that are relevant for\nlarge Kubernetes clusters.\n\n\n\nIn large clusters, you can tune the scheduler's behaviour balancing\nscheduling outcomes between latency (new Pods are placed quickly) and\naccuracy (the scheduler rarely makes poor placement decisions).\n\nYou configure this tuning setting via kube-scheduler setting\n`percentageOfNodesToScore`. This KubeSchedulerConfiguration setting determines\na threshold for scheduling nodes in your cluster.\n\n### Setting the threshold\n\nThe `percentageOfNodesToScore` option accepts whole numeric values between 0\nand 100. The value 0 is a special number which indicates that the kube-scheduler\nshould use its compiled-in default.\nIf you set `percentageOfNodesToScore` above 100, kube-scheduler acts as if you\nhad set a value of 100.\n\nTo change the value, edit the\n[kube-scheduler configuration file](/docs/reference/config-api/kube-scheduler-config.v1/)\nand then restart the scheduler.\nIn many cases, the configuration file can be found at `/etc/kubernetes/config/kube-scheduler.yaml`.\n\nAfter you have made this change, you can run\n\n```bash\nkubectl get pods -n kube-system | grep kube-scheduler\n```\n\nto verify that the kube-scheduler component is healthy.\n\n## Node scoring threshold {#percentage-of-nodes-to-score}\n\nTo improve scheduling performance, the kube-scheduler can stop looking for\nfeasible nodes once it has found enough of them. In large clusters, this saves\ntime compared to a naive approach that would consider every node.\n\nYou specify a threshold for how many nodes are enough, as a whole number percentage\nof all the nodes in your cluster. The kube-scheduler converts this into an\ninteger number of nodes. During scheduling, if the kube-scheduler has identified\nenough feasible nodes to exceed the configured percentage, the kube-scheduler\nstops searching for more feasible nodes and moves on to the\n[scoring phase](/docs/concepts/scheduling-eviction/kube-scheduler/#kube-scheduler-implementation).\n\n[How the scheduler iterates over Nodes](#how-the-scheduler-iterates-over-nodes)\ndescribes the process in detail.\n\n### Default threshold\n\nIf you don't specify a threshold, Kubernetes calculates a figure using a\nlinear formula that yields 50% for a 100-node cluster and yields 10%\nfor a 5000-node cluster. The lower bound for the automatic value is 5%.\n\nThis means that the kube-scheduler always scores at least 5% of your cluster no\nmatter how large the cluster is, unless you have explicitly set\n`percentageOfNodesToScore` to be smaller than 5.\n\nIf you want the scheduler to score all nodes in your cluster, set\n`percentageOfNodesToScore` to 100.\n\n## Example\n\nBelow is an example configuration that sets `percentageOfNodesToScore` to 50%.\n\n```yaml\napiVersion: kubescheduler.config.k8s.io/v1alpha1\nkind: KubeSchedulerConfiguration\nalgorithmSource:\n  provider: DefaultProvider\n\n...\n\npercentageOfNodesToScore: 50\n```\n\n## Tuning percentageOfNodesToScore\n\n`percentageOfNodesToScore` must be a value between 1 and 100 with the default\nvalue being calculated based on the cluster size. There is also a hardcoded\nminimum value of 100 nodes.\n\n\n> **Note:** In clusters with less than 100 feasible nodes, the scheduler still\nchecks all the nodes because there are not enough feasible nodes to stop\nthe scheduler's search early.\n\nIn a small cluster, if you set a low value for `percentageOfNodesToScore`, your\nchange will have no or\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/scheduling-eviction/scheduler-perf-tuning.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": null,
          "line_end": null,
          "quote": "Scheduler Performance Tuning"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-scoring-threshold-percentage-of-nodes-to-score",
      "type": "concept",
      "title": "Node scoring threshold {#percentage-of-nodes-to-score}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 1911,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tuning-percentageofnodestoscore",
      "type": "concept",
      "title": "Tuning percentageOfNodesToScore",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 3584,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-the-scheduler-iterates-over-nodes",
      "type": "concept",
      "title": "How the scheduler iterates over Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 5097,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-opportunistic-batching",
      "type": "concept",
      "title": "Enabling Opportunistic Batching",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 6214,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-the-threshold",
      "type": "concept",
      "title": "Setting the threshold",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 1163,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-threshold",
      "type": "concept",
      "title": "Default threshold",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 2783,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/resource-bin-packing",
      "type": "page",
      "title": "Resource Bin Packing",
      "summary": "",
      "body": "\n\n\n> **Note:** This article applies to resource bin packing in context of scheduling of a single pod. For bin packing when scheduling pod groups, please read the [article about Topology-aware Scheduling](/docs/concepts/scheduling-eviction/topology-aware-scheduling/).\n\n\nIn the [scheduling-plugin](/docs/reference/scheduling/config/#scheduling-plugins) `NodeResourcesFit` of kube-scheduler, there are two\nscoring strategies that support the bin packing of resources: `MostAllocated` and `RequestedToCapacityRatio`.\n\n\n\n## Enabling bin packing using MostAllocated strategy\nThe `MostAllocated` strategy scores the nodes based on the utilization of resources, favoring the ones with higher allocation.\nFor each resource type, you can set a weight to modify its influence in the node score.\n\nTo set the `MostAllocated` strategy for the `NodeResourcesFit` plugin, use a\n[scheduler configuration](/docs/reference/scheduling/config) similar to the following:\n\n```yaml\napiVersion: kubescheduler.config.k8s.io/v1\nkind: KubeSchedulerConfiguration\nprofiles:\n- pluginConfig:\n  - args:\n      scoringStrategy:\n        resources:\n        - name: cpu\n          weight: 1\n        - name: memory\n          weight: 1\n        - name: intel.com/foo\n          weight: 3\n        - name: intel.com/bar\n          weight: 3\n        type: MostAllocated\n    name: NodeResourcesFit\n```\n\nWith this configuration, nodes are scored using a weighted average of utilization across all four\nresources. Because `intel.com/foo` and `intel.com/bar` each carry a weight of `3` versus `1` for\nCPU and memory, the utilization of those extended resources has three times more influence on the\nfinal node score. The scheduler selects the highest-scoring node, aiming to schedule pods on\nhighly utilized nodes. This helps prepare for scale-down of the least utilized nodes.\n\nTo learn more about other parameters and their default configuration, see the API documentation for\n[`NodeResourcesFitArgs`](/docs/reference/config-api/kube-scheduler-config.v1/#kubescheduler-config-k8s-io-v1-NodeResourcesFitArgs).\n\n## Enabling bin packing using RequestedToCapacityRatio\n\nThe `RequestedToCapacityRatio` strategy allows the users to specify the resources along with weights for\neach resource to score nodes based on the request to capacity ratio. This\nallows users to bin pack extended resources by using appropriate parameters\nto improve the utilization of scarce resources in large clusters. It favors nodes according to a\nconfigured function of the allocated resources. The behavior of the `RequestedToCapacityRatio` in\nthe `NodeResourcesFit` score function can be controlled by the\n[scoringStrategy](/docs/reference/config-api/kube-scheduler-config.v1/#kubescheduler-config-k8s-io-v1-ScoringStrategy) field.\nWithin the `scoringStrategy` field, you can configure two parameters: `requestedToCapacityRatio` and\n`resources`. The `shape` in the `requestedToCapacityRatio`\nparameter allows the user to tune the function as least requested or most\nrequested based on `utilization` and `score` values. The `resources` parameter\ncomprises both the `name` of the resource to be considered during scoring and\nits corresponding `weight`, which specifies the weight of each resource.\n\nBelow is an example configuration that sets\nthe bin packing behavior for extended resources `intel.com/foo` and `intel.com/bar`\nusing the `requestedToCapacityRatio` field.\n\n```yaml\napiVersion: kubescheduler.config.k8s.io/v1\nkind: KubeSchedulerConfiguration\nprofiles:\n- pluginConfig:\n  - args:\n      scoringStrategy:\n        resources:\n        - name: intel.com/foo\n          weight: 3\n        - name: intel.com/bar\n          weight: 3\n        requestedToCapacityRatio:\n          shape:\n          - utilization: 0\n            score: 0\n          - utilization: 100\n            score: 10\n        type: RequestedToCapacityRatio\n    name: NodeResourcesFit\n```\n\nIn this example, only the extended resources `intel.com/foo` and `intel.com/bar` are listed in\n`resources`. The `NodeResou\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
      "meta": {
        "weight": 80,
        "rel_path": "concepts/scheduling-eviction/resource-bin-packing.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/resource-bin-packing.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
          "line_start": null,
          "line_end": null,
          "quote": "Resource Bin Packing"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-bin-packing-using-mostallocated-strategy",
      "type": "concept",
      "title": "Enabling bin packing using MostAllocated strategy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/resource-bin-packing.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
          "line_start": 561,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-bin-packing-using-requestedtocapacityratio",
      "type": "concept",
      "title": "Enabling bin packing using RequestedToCapacityRatio",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/resource-bin-packing.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
          "line_start": 2106,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tuning-the-score-function",
      "type": "concept",
      "title": "Tuning the score function",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/resource-bin-packing.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
          "line_start": 5132,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-scoring-for-capacity-allocation",
      "type": "concept",
      "title": "Node scoring for capacity allocation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/resource-bin-packing.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
          "line_start": 6072,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/api-eviction",
      "type": "page",
      "title": "API-initiated Eviction",
      "summary": "",
      "body": "[definition:api-eviction] </br>\n\nYou can request eviction by calling the Eviction API directly, or programmatically\nusing a client of the [API server](#gloss:kube-apiserver), like the `kubectl drain` command. This\ncreates an `Eviction` object, which causes the API server to terminate the Pod.\n\nAPI-initiated evictions respect your configured [`PodDisruptionBudgets`](/docs/tasks/run-application/configure-pdb/)\nand [`terminationGracePeriodSeconds`](/docs/concepts/workloads/pods/pod-lifecycle#pod-termination).\n\nUsing the API to create an Eviction object for a Pod is like performing a\npolicy-controlled [`DELETE` operation](/docs/reference/kubernetes-api/workload-resources/pod-v1/#delete-delete-a-pod)\non the Pod.\n\n## Calling the Eviction API\n\nYou can use a [Kubernetes language client](/docs/tasks/administer-cluster/access-cluster-api/#programmatic-access-to-the-api)\nto access the Kubernetes API and create an `Eviction` object. To do this, you\nPOST the attempted operation, similar to the following example:\n\n\n\n\n`policy/v1` Eviction is available in v1.22+. Use `policy/v1beta1` with prior releases.\n\n\n```json\n{\n  \"apiVersion\": \"policy/v1\",\n  \"kind\": \"Eviction\",\n  \"metadata\": {\n    \"name\": \"quux\",\n    \"namespace\": \"default\"\n  }\n}\n```\n\n\n\nDeprecated in v1.22 in favor of `policy/v1`\n\n\n```json\n{\n  \"apiVersion\": \"policy/v1beta1\",\n  \"kind\": \"Eviction\",\n  \"metadata\": {\n    \"name\": \"quux\",\n    \"namespace\": \"default\"\n  }\n}\n```\n\n\n\nAlternatively, you can attempt an eviction operation by accessing the API using\n`curl` or `wget`, similar to the following example:\n\n```bash\ncurl -v -H 'Content-type: application/json' https://your-cluster-api-endpoint.example/api/v1/namespaces/default/pods/quux/eviction -d @eviction.json\n```\n\n## How API-initiated eviction works\n\nWhen you request an eviction using the API, the API server performs admission\nchecks and responds in one of the following ways:\n\n* `200 OK`: the eviction is allowed, the `Eviction` subresource is created, and\n  the Pod is deleted, similar to sending a `DELETE` request to the Pod URL.\n* `429 Too Many Requests`: the eviction is not currently allowed because of the\n  configured [PodDisruptionBudget](#gloss:pod-disruption-budget).\n  You may be able to attempt the eviction again later. You might also see this\n  response because of API rate limiting.\n* `500 Internal Server Error`: the eviction is not allowed because there is a\n  misconfiguration, like if multiple PodDisruptionBudgets reference the same Pod.\n\nIf the Pod you want to evict isn't part of a workload that has a\nPodDisruptionBudget, the API server always returns `200 OK` and allows the\neviction.\n\nIf the API server allows the eviction, the Pod is deleted as follows:\n\n1. The `Pod` resource in the API server is updated with a deletion timestamp,\n   after which the API server considers the `Pod` resource to be terminated. The\n   `Pod` resource is also marked with the configured grace period.\n1. The [kubelet](#gloss:kubelet) on the node where the local Pod is running notices that the `Pod`\n   resource is marked for termination and starts to gracefully shut down the\n   local Pod.\n1. While the kubelet is shutting the Pod down, the control plane removes the Pod\n   from [EndpointSlice](#gloss:endpoint-slice)\n   objects. As a result, controllers no longer consider the Pod as a valid object.\n1. After the grace period for the Pod expires, the kubelet forcefully terminates\n   the local Pod.\n1. The kubelet tells the API server to remove the `Pod` resource.\n1. The API server deletes the `Pod` resource.\n\n## Troubleshooting stuck evictions\n\nIn some cases, your applications may enter a broken state, where the Eviction\nAPI will only return `429` or `500` responses until you intervene. This can\nhappen if, for example, a ReplicaSet creates pods for your application but new\npods do not enter a `Ready` state. You may also notice this behavior in cases\nwhere the last evicted Pod had a long termination grace period.\n\nIf you notice stuck evictions, try one of the foll\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
      "meta": {
        "weight": 110,
        "rel_path": "concepts/scheduling-eviction/api-eviction.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": null,
          "line_end": null,
          "quote": "API-initiated Eviction"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:calling-the-eviction-api",
      "type": "concept",
      "title": "Calling the Eviction API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 789,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-api-initiated-eviction-works",
      "type": "concept",
      "title": "How API-initiated eviction works",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 1983,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:troubleshooting-stuck-evictions",
      "type": "concept",
      "title": "Troubleshooting stuck evictions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 3883,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "type": "page",
      "title": "Taints and Tolerations",
      "summary": "",
      "body": "\n[_Node affinity_](/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity)\nis a property of [Pods](#gloss:pod) that *attracts* them to\na set of [nodes](#gloss:node) (either as a preference or a\nhard requirement). _Taints_ are the opposite -- they allow a node to repel a set of pods.\n\n_Tolerations_ are applied to pods. Tolerations allow the scheduler to schedule pods with matching\ntaints. Tolerations allow scheduling but don't guarantee scheduling: the scheduler also\n[evaluates other parameters](/docs/concepts/scheduling-eviction/pod-priority-preemption/)\nas part of its function.\n\nTaints and tolerations work together to ensure that pods are not scheduled\nonto inappropriate nodes. One or more taints are applied to a node; this\nmarks that the node should not accept any pods that do not tolerate the taints.\n\n\n\n## Concepts\n\nYou add a taint to a node using [kubectl taint](/docs/reference/generated/kubectl/kubectl-commands#taint).\nFor example,\n\n```shell\nkubectl taint nodes node1 key1=value1:NoSchedule\n```\n\nplaces a taint on node `node1`. The taint has key `key1`, value `value1`, and taint effect `NoSchedule`.\nThis means that no pod will be able to schedule onto `node1` unless it has a matching toleration.\n\nTo remove the taint added by the command above, you can run:\n\n```shell\nkubectl taint nodes node1 key1=value1:NoSchedule-\n```\n\nYou specify a toleration for a pod in the PodSpec. Both of the following tolerations \"match\" the\ntaint created by the `kubectl taint` line above, and thus a pod with either toleration would be able\nto schedule onto `node1`:\n\n```yaml\ntolerations:\n- key: \"key1\"\n  operator: \"Equal\"\n  value: \"value1\"\n  effect: \"NoSchedule\"\n```\n\n```yaml\ntolerations:\n- key: \"key1\"\n  operator: \"Exists\"\n  effect: \"NoSchedule\"\n```\n\nThe default Kubernetes scheduler takes taints and tolerations into account when\nselecting a node to run a particular Pod. However, if you manually specify the\n`.spec.nodeName` for a Pod, that action bypasses the scheduler; the Pod is then\nbound onto the node where you assigned it, even if there are `NoSchedule`\ntaints on that node that you selected.\nIf this happens and the node also has a `NoExecute` taint set, the kubelet will\neject the Pod unless there is an appropriate tolerance set.\n\nHere's an example of a pod that has some tolerations defined:\n\n\n\nThe default value for `operator` is `Equal`.\n\nA toleration \"matches\" a taint if the keys are the same and the effects are the same, and:\n\n* the `operator` is `Exists` (in which case no `value` should be specified), or\n* the `operator` is `Equal` and the values should be equal.\n\n\n> **Note:** There are two special cases:\n\nIf the `key` is empty, then the `operator` must be `Exists`, which matches all keys and values.\nNote that the `effect` still needs to be matched at the same time.\n\nAn empty `effect` matches all effects with key `key1`.\n\n\nThe above example used the `effect` of `NoSchedule`. Alternatively, you can use the `effect` of `PreferNoSchedule`.\n\nThe allowed values for the `effect` field are:\n\n`NoExecute`\n: This affects pods that are already running on the node as follows:\n\n  * Pods that do not tolerate the taint are evicted immediately\n  * Pods that tolerate the taint without specifying `tolerationSeconds` in\n    their toleration specification remain bound forever\n  * Pods that tolerate the taint with a specified `tolerationSeconds` remain\n    bound for the specified amount of time. After that time elapses, the node\n    lifecycle controller evicts the Pods from the node.\n\n`NoSchedule`\n: No new Pods will be scheduled on the tainted node unless they have a matching\n  toleration. Pods currently running on the node are **not** evicted.\n\n`PreferNoSchedule`\n: `PreferNoSchedule` is a \"preference\" or \"soft\" version of `NoSchedule`.\n  The control plane will *try* to avoid placing a Pod that does not tolerate\n  the taint on the node, but it is not guaranteed.\n\nYou can put multiple taints on the same node and multiple tolerations on the sam\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/scheduling-eviction/taint-and-toleration.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": null,
          "line_end": null,
          "quote": "Taints and Tolerations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:concepts",
      "type": "concept",
      "title": "Concepts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 937,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:numeric-comparison-operators-numeric-comparison-operators",
      "type": "concept",
      "title": "Numeric comparison operators {#numeric-comparison-operators}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 6473,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-use-cases",
      "type": "concept",
      "title": "Example Use Cases",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 9443,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:taint-based-evictions",
      "type": "concept",
      "title": "Taint based Evictions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 12280,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:taint-nodes-by-condition",
      "type": "concept",
      "title": "Taint Nodes by Condition",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 15939,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-taints-and-tolerations",
      "type": "concept",
      "title": "Device taints and tolerations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 17719,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "type": "page",
      "title": "Pod Topology Spread Constraints",
      "summary": "",
      "body": "\n\nYou can use _topology spread constraints_ to control how\n[Pods](#gloss:Pod) are spread across your cluster\namong failure-domains such as regions, zones, nodes, and other user-defined topology\ndomains. This can help to achieve high availability as well as efficient resource\nutilization.\n\nYou can set [cluster-level constraints](#cluster-level-default-constraints) as a default,\nor configure topology spread constraints for individual workloads.\n\n\n\n## Motivation\n\nImagine that you have a cluster of up to twenty nodes, and you want to run a\n[workload](#gloss:workload)\nthat automatically scales how many replicas it uses. There could be as few as\ntwo Pods or as many as fifteen.\nWhen there are only two Pods, you'd prefer not to have both of those Pods run on the\nsame node: you would run the risk that a single node failure takes your workload\noffline.\n\nIn addition to this basic usage, there are some advanced usage examples that\nenable your workloads to benefit on high availability and cluster utilization.\n\nAs you scale up and run more Pods, a different concern becomes important. Imagine\nthat you have three nodes running five Pods each. The nodes have enough capacity\nto run that many replicas; however, the clients that interact with this workload\nare split across three different datacenters (or infrastructure zones). Now you\nhave less concern about a single node failure, but you notice that latency is\nhigher than you'd like, and you are paying for network costs associated with\nsending network traffic between the different zones.\n\nYou decide that under normal operation you'd prefer to have a similar number of replicas\n[scheduled](/docs/concepts/scheduling-eviction/) into each infrastructure zone,\nand you'd like the cluster to self-heal in the case that there is a problem.\n\nPod topology spread constraints offer you a declarative way to configure that.\n\n## `topologySpreadConstraints` field\n\nThe Pod API includes a field, `spec.topologySpreadConstraints`. The usage of this field looks like\nthe following:\n\n```yaml\n---\napiVersion: v1\nkind: Pod\nmetadata:\n  name: example-pod\nspec:\n  # Configure a topology spread constraint\n  topologySpreadConstraints:\n    - maxSkew: <integer>\n      minDomains: <integer> # optional\n      topologyKey: <string>\n      whenUnsatisfiable: <string>\n      labelSelector: <object>\n      matchLabelKeys: <list> # optional; beta since v1.27\n      nodeAffinityPolicy: [Honor|Ignore] # optional; beta since v1.26\n      nodeTaintsPolicy: [Honor|Ignore] # optional; beta since v1.26\n  ### other Pod fields go here\n```\n\n\n> **Note:** There can only be one `topologySpreadConstraint` for a given `topologyKey` and `whenUnsatisfiable` value. For example, if you have defined a `topologySpreadConstraint` that uses the `topologyKey` \"kubernetes.io/hostname\" and `whenUnsatisfiable` value \"DoNotSchedule\", you can only add another `topologySpreadConstraint` for the `topologyKey` \"kubernetes.io/hostname\" if you use a different `whenUnsatisfiable` value.\n\n\nYou can read more about this field by running `kubectl explain Pod.spec.topologySpreadConstraints` or\nrefer to the [scheduling](/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling) section of the API reference for Pod.\n\n### Spread constraint definition\n\nYou can define one or multiple `topologySpreadConstraints` entries to instruct the\nkube-scheduler how to place each incoming Pod in relation to the existing Pods across\nyour cluster. Those fields are:\n\n- **maxSkew** describes the degree to which Pods may be unevenly distributed. You must\n  specify this field and the number must be greater than zero. Its semantics differ\n  according to the value of `whenUnsatisfiable`:\n\n  - if you select `whenUnsatisfiable: DoNotSchedule`, then `maxSkew` defines the\n    maximum permitted difference between the number of matching pods in the target\n    topology and the _global minimum_\n    (the minimum number of matching pods in an eligible domain or zero if the number of eligible domains is less \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/scheduling-eviction/topology-spread-constraints.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Topology Spread Constraints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topologyspreadconstraints-field",
      "type": "concept",
      "title": "`topologySpreadConstraints` field",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 1968,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:consistency",
      "type": "concept",
      "title": "Consistency",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 12484,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-spread-constraint-examples",
      "type": "concept",
      "title": "Topology spread constraint examples",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 13205,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:implicit-conventions",
      "type": "concept",
      "title": "Implicit conventions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 21160,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-level-default-constraints",
      "type": "concept",
      "title": "Cluster-level default constraints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 22804,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:comparison-with-podaffinity-and-podantiaffinity-comparison-with-podaffinity-podantiaffinity",
      "type": "concept",
      "title": "Comparison with podAffinity and podAntiAffinity {#comparison-with-podaffinity-podantiaffinity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 25636,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:spread-constraint-definition",
      "type": "concept",
      "title": "Spread constraint definition",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 3336,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-labels",
      "type": "concept",
      "title": "Node labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 10878,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-one-topology-spread-constraint-example-one-topologyspreadconstraint",
      "type": "concept",
      "title": "Example: one topology spread constraint {#example-one-topologyspreadconstraint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 13245,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-multiple-topology-spread-constraints-example-multiple-topologyspreadconstraints",
      "type": "concept",
      "title": "Example: multiple topology spread constraints {#example-multiple-topologyspreadconstraints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 16677,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-conflicting-topology-spread-constraints-example-conflicting-topologyspreadconstraints",
      "type": "concept",
      "title": "Example: conflicting topology spread constraints {#example-conflicting-topologyspreadconstraints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 17971,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-topology-spread-constraints-with-node-affinity-example-topologyspreadconstraints-with-nodeaffinity",
      "type": "concept",
      "title": "Example: topology spread constraints with node affinity {#example-topologyspreadconstraints-with-nodeaffinity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 19842,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:built-in-default-constraints-internal-default-constraints",
      "type": "concept",
      "title": "Built-in default constraints {#internal-default-constraints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 24001,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/kube-scheduler",
      "type": "page",
      "title": "Kubernetes Scheduler",
      "summary": "",
      "body": "\n\nIn Kubernetes, _scheduling_ refers to making sure that [Pods](#gloss:pod)\nare matched to [Nodes](#gloss:node) so that\n[kubelet](#gloss:kubelet) can run them.\n\n\n\n## Scheduling overview {#scheduling}\n\nA scheduler watches for newly created Pods that have no Node assigned. For\nevery Pod that the scheduler discovers, the scheduler becomes responsible\nfor finding the best Node for that Pod to run on. The scheduler reaches\nthis placement decision taking into account the scheduling principles\ndescribed below.\n\nIf you want to understand why Pods are placed onto a particular Node,\nor if you're planning to implement a custom scheduler yourself, this\npage will help you learn about scheduling.\n\n## kube-scheduler\n\n[kube-scheduler](/docs/reference/command-line-tools-reference/kube-scheduler/)\nis the default scheduler for Kubernetes and runs as part of the\n[control plane](#gloss:control-plane).\nkube-scheduler is designed so that, if you want and need to, you can\nwrite your own scheduling component and use that instead.\n\nKube-scheduler selects an optimal node to run newly created or not yet\nscheduled (unscheduled) pods. Since containers in pods - and pods themselves -\ncan have different requirements, the scheduler filters out any nodes that\ndon't meet a Pod's specific scheduling needs. Alternatively, the API lets\nyou specify a node for a Pod when you create it, but this is unusual\nand is only done in special cases.\n\nIn a cluster, Nodes that meet the scheduling requirements for a Pod\nare called _feasible_ nodes. If none of the nodes are suitable, the pod\nremains unscheduled until the scheduler is able to place it.\n\nThe scheduler finds feasible Nodes for a Pod and then runs a set of\nfunctions to score the feasible Nodes and picks a Node with the highest\nscore among the feasible ones to run the Pod. The scheduler then notifies\nthe API server about this decision in a process called _binding_.\n\nFactors that need to be taken into account for scheduling decisions include\nindividual and collective resource requirements, hardware / software /\npolicy constraints, affinity and anti-affinity specifications, data\nlocality, inter-workload interference, and so on.\n\n### Node selection in kube-scheduler {#kube-scheduler-implementation}\n\nkube-scheduler selects a node for the pod in a 2-step operation:\n\n1. Filtering\n1. Scoring\n\nThe _filtering_ step finds the set of Nodes where it's feasible to\nschedule the Pod. For example, the PodFitsResources filter checks whether a\ncandidate Node has enough available resources to meet a Pod's specific\nresource requests. After this step, the node list contains any suitable\nNodes; often, there will be more than one. If the list is empty, that\nPod isn't (yet) schedulable.\n\nIn the _scoring_ step, the scheduler ranks the remaining nodes to choose\nthe most suitable Pod placement. The scheduler assigns a score to each Node\nthat survived filtering, basing this score on the active scoring rules.\n\nFinally, kube-scheduler assigns the Pod to the Node with the highest ranking.\nIf there is more than one node with equal scores, kube-scheduler selects\none of these at random.\n\nThere are two supported ways to configure the filtering and scoring behavior\nof the scheduler:\n\n1. [Scheduling Policies](/docs/reference/scheduling/policies) allow you to configure _Predicates_ for filtering and _Priorities_ for scoring.\n1. [Scheduling Profiles](/docs/reference/scheduling/config/#profiles) allow you to configure Plugins that implement different scheduling stages, including: `QueueSort`, `Filter`, `Score`, `Bind`, `Reserve`, `Permit`, and others. You can also configure the kube-scheduler to run different profiles.\n\n## \n\n* Read about [scheduler performance tuning](/docs/concepts/scheduling-eviction/scheduler-perf-tuning/)\n* Read about [Pod topology spread constraints](/docs/concepts/scheduling-eviction/topology-spread-constraints/)\n* Read the [reference documentation](/docs/reference/command-line-tools-reference/kube-scheduler/) for kube-scheduler\n* Rea\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/scheduling-eviction/kube-scheduler.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Scheduler"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduling-overview-scheduling",
      "type": "concept",
      "title": "Scheduling overview {#scheduling}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 275,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler",
      "type": "concept",
      "title": "kube-scheduler",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 805,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-selection-in-kube-scheduler-kube-scheduler-implementation",
      "type": "concept",
      "title": "Node selection in kube-scheduler {#kube-scheduler-implementation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 2318,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/scheduling-eviction/_index",
      "type": "page",
      "title": "Scheduling, Preemption and Eviction",
      "summary": "",
      "body": "In Kubernetes, scheduling refers to making sure that [Pods](#gloss:pod)\nare matched to [Nodes](#gloss:node) so that the\n[kubelet](#gloss:kubelet) can run them. Preemption\nis the process of terminating Pods with lower [Priority](#gloss:pod-priority)\nso that Pods with higher Priority can schedule on Nodes. Eviction is the process\nof terminating one or more Pods on Nodes.\n\n## Scheduling\n\n* [Kubernetes Scheduler](/docs/concepts/scheduling-eviction/kube-scheduler/)\n* [Assigning Pods to Nodes](/docs/concepts/scheduling-eviction/assign-pod-node/)\n* [Pod Overhead](/docs/concepts/scheduling-eviction/pod-overhead/)\n* [Pod Topology Spread Constraints](/docs/concepts/scheduling-eviction/topology-spread-constraints/)\n* [Taints and Tolerations](/docs/concepts/scheduling-eviction/taint-and-toleration/)\n* [Scheduling Framework](/docs/concepts/scheduling-eviction/scheduling-framework)\n* [Dynamic Resource Allocation](/docs/concepts/scheduling-eviction/dynamic-resource-allocation)\n* [Scheduler Performance Tuning](/docs/concepts/scheduling-eviction/scheduler-perf-tuning/)\n* [Resource Bin Packing for Extended Resources](/docs/concepts/scheduling-eviction/resource-bin-packing/)\n* [Pod Scheduling Readiness](/docs/concepts/scheduling-eviction/pod-scheduling-readiness/)\n* [PodGroup Scheduling](/docs/concepts/scheduling-eviction/podgroup-scheduling/)\n* [Gang Scheduling](/docs/concepts/scheduling-eviction/gang-scheduling/)\n* [Topology-aware Scheduling](/docs/concepts/scheduling-eviction/topology-aware-scheduling/)\n* [Workload-Aware preemption](/docs/concepts/scheduling-eviction/workload-aware-preemption/)\n* [Descheduler](https://github.com/kubernetes-sigs/descheduler#descheduler-for-kubernetes)\n* [Node Declared Features](/docs/concepts/scheduling-eviction/node-declared-features/)\n\n## Pod Disruption\n\n[definition:pod-disruption]\n\n* [Pod Priority and Preemption](/docs/concepts/scheduling-eviction/pod-priority-preemption/)\n* [Node-pressure Eviction](/docs/concepts/scheduling-eviction/node-pressure-eviction/)\n* [API-initiated Eviction](/docs/concepts/scheduling-eviction/api-eviction/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
      "meta": {
        "weight": 95,
        "rel_path": "concepts/scheduling-eviction/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Scheduling, Preemption and Eviction"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduling",
      "type": "concept",
      "title": "Scheduling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": 494,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-disruption",
      "type": "concept",
      "title": "Pod Disruption",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": 1906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/ephemeral-volumes",
      "type": "page",
      "title": "Ephemeral Volumes",
      "summary": "",
      "body": "\n\nThis document describes _ephemeral volumes_ in Kubernetes. Familiarity\nwith [volumes](/docs/concepts/storage/volumes/) is suggested, in\nparticular PersistentVolumeClaim and PersistentVolume.\n\n\n\nSome applications need additional storage but don't care whether that\ndata is stored persistently across restarts. For example, caching\nservices are often limited by memory size and can move infrequently\nused data into storage that is slower than memory with little impact\non overall performance.\n\nOther applications expect some read-only input data to be present in\nfiles, like configuration data or secret keys.\n\n_Ephemeral volumes_ are designed for these use cases. Because volumes\nfollow the Pod's lifetime and get created and deleted along with the\nPod, Pods can be stopped and restarted without being limited to where\nsome persistent volume is available.\n\nEphemeral volumes are specified _inline_ in the Pod spec, which\nsimplifies application deployment and management.\n\n### Types of ephemeral volumes\n\nKubernetes supports several different kinds of ephemeral volumes for\ndifferent purposes:\n- [emptyDir](/docs/concepts/storage/volumes/#emptydir): empty at Pod startup,\n  with storage coming locally from the kubelet base directory (usually\n  the root disk) or RAM\n- [configMap](/docs/concepts/storage/volumes/#configmap),\n  [downwardAPI](/docs/concepts/storage/volumes/#downwardapi),\n  [secret](/docs/concepts/storage/volumes/#secret): inject different\n  kinds of Kubernetes data into a Pod\n- [image](/docs/concepts/storage/volumes/#image): allows mounting container image files or artifacts,\n  directly to a Pod.\n- [CSI ephemeral volumes](#csi-ephemeral-volumes):\n  similar to the previous volume kinds, but provided by special [CSI](#gloss:csi) drivers\n  which specifically [support this feature](https://kubernetes-csi.github.io/docs/ephemeral-local-volumes.html)\n- [generic ephemeral volumes](#generic-ephemeral-volumes), which\n  can be provided by all storage drivers that also support persistent volumes\n\n\n`emptyDir`, `configMap`, `downwardAPI`, `secret` are provided as\n[local ephemeral storage](/docs/concepts/storage/ephemeral-storage/).\nThey are managed by kubelet on each node.\n\nCSI ephemeral volumes *must* be provided by third-party CSI storage\ndrivers.\n\nGeneric ephemeral volumes *can* be provided by third-party CSI storage\ndrivers, but also by any other storage driver that supports dynamic\nprovisioning. Some CSI drivers are written specifically for CSI\nephemeral volumes and do not support dynamic provisioning: those then\ncannot be used for generic ephemeral volumes.\n\nThe advantage of using third-party drivers is that they can offer\nfunctionality that Kubernetes itself does not support, for example\nstorage with different performance characteristics than the disk that\nis managed by kubelet, or injecting different data.\n\n### CSI ephemeral volumes\n\n\n\n\n> **Note:** CSI ephemeral volumes are only supported by a subset of CSI drivers.\nThe Kubernetes CSI [Drivers list](https://kubernetes-csi.github.io/docs/drivers.html)\nshows which drivers support ephemeral volumes.\n\n\nConceptually, CSI ephemeral volumes are similar to `configMap`,\n`downwardAPI` and `secret` volume types: the storage is managed locally on each\n node and is created together with other local resources after a Pod has been\nscheduled onto a node. Kubernetes has no concept of rescheduling Pods\nanymore at this stage. Volume creation has to be unlikely to fail,\notherwise Pod startup gets stuck. In particular, [storage capacity\naware Pod scheduling](/docs/concepts/storage/storage-capacity/) is *not*\nsupported for these volumes. They are currently also not covered by\nthe storage resource usage limits of a Pod, because that is something\nthat kubelet can only enforce for storage that it manages itself.\n\n\nHere's an example manifest for a Pod that uses CSI ephemeral storage:\n\n```yaml\nkind: Pod\napiVersion: v1\nmetadata:\n  name: my-csi-app\nspec:\n  containers:\n    - name: my-frontend\n      image: busybox:1.28\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/storage/ephemeral-volumes.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": null,
          "line_end": null,
          "quote": "Ephemeral Volumes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:types-of-ephemeral-volumes",
      "type": "concept",
      "title": "Types of ephemeral volumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 1004,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csi-ephemeral-volumes",
      "type": "concept",
      "title": "CSI ephemeral volumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 2910,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csi-driver-restrictions",
      "type": "concept",
      "title": "CSI driver restrictions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 4608,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generic-ephemeral-volumes",
      "type": "concept",
      "title": "Generic ephemeral volumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 5473,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:lifecycle-and-persistentvolumeclaim",
      "type": "concept",
      "title": "Lifecycle and PersistentVolumeClaim",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 6975,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaim-naming",
      "type": "concept",
      "title": "PersistentVolumeClaim naming",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 8914,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:security",
      "type": "concept",
      "title": "Security",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 10032,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ephemeral-volumes-managed-by-kubelet",
      "type": "concept",
      "title": "Ephemeral volumes managed by kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 10725,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/storage-capacity",
      "type": "page",
      "title": "Storage Capacity",
      "summary": "",
      "body": "\n\nStorage capacity is limited and may vary depending on the node on\nwhich a pod runs: network-attached storage might not be accessible by\nall nodes, or storage is local to a node to begin with.\n\n\n\nThis page describes how Kubernetes keeps track of storage capacity and\nhow the scheduler uses that information to [schedule Pods](/docs/concepts/scheduling-eviction/) onto nodes\nthat have access to enough storage capacity for the remaining missing\nvolumes. Without storage capacity tracking, the scheduler may choose a\nnode that doesn't have enough capacity to provision a volume and\nmultiple scheduling retries will be needed.\n\n## \n\nKubernetes v includes cluster-level API support for\nstorage capacity tracking. To use this you must also be using a CSI driver that\nsupports capacity tracking. Consult the documentation for the CSI drivers that\nyou use to find out whether this support is available and, if so, how to use\nit. If you are not running Kubernetes v, check the\ndocumentation for that version of Kubernetes.\n\n\n\n## API\n\nThere are two API extensions for this feature:\n- [CSIStorageCapacity](/docs/reference/kubernetes-api/config-and-storage-resources/csi-storage-capacity-v1/) objects:\n  these get produced by a CSI driver in the namespace\n  where the driver is installed. Each object contains capacity\n  information for one storage class and defines which nodes have\n  access to that storage.\n- [The `CSIDriverSpec.StorageCapacity` field](/docs/reference/kubernetes-api/config-and-storage-resources/csi-driver-v1/#CSIDriverSpec):\n  when set to `true`, the Kubernetes scheduler will consider storage\n  capacity for volumes that use the CSI driver.\n\n## Scheduling\n\nStorage capacity information is used by the Kubernetes scheduler if:\n- a Pod uses a volume that has not been created yet,\n- that volume uses a [StorageClass](#gloss:storage-class) which references a CSI driver and\n  uses `WaitForFirstConsumer` [volume binding\n  mode](/docs/concepts/storage/storage-classes/#volume-binding-mode),\n  and\n- the `CSIDriver` object for the driver has `StorageCapacity` set to\n  true.\n\nIn that case, the scheduler only considers nodes for the Pod which\nhave enough storage available to them. This check is very\nsimplistic and only compares the size of the volume against the\ncapacity listed in `CSIStorageCapacity` objects with a topology that\nincludes the node.\n\nFor volumes with `Immediate` volume binding mode, the storage driver\ndecides where to create the volume, independently of Pods that will\nuse the volume. The scheduler then schedules Pods onto nodes where the\nvolume is available after the volume has been created.\n\nFor [CSI ephemeral volumes](/docs/concepts/storage/ephemeral-volumes/#csi-ephemeral-volumes),\nscheduling always happens without considering storage capacity. This\nis based on the assumption that this volume type is only used by\nspecial CSI drivers which are local to a node and do not need\nsignificant resources there.\n\n## Rescheduling\n\nWhen a node has been selected for a Pod with `WaitForFirstConsumer`\nvolumes, that decision is still tentative. The next step is that the\nCSI storage driver gets asked to create the volume with a hint that the\nvolume is supposed to be available on the selected node.\n\nBecause Kubernetes might have chosen a node based on out-dated\ncapacity information, it is possible that the volume cannot really be\ncreated. The node selection is then reset and the Kubernetes scheduler\ntries again to find a node for the Pod.\n\n## Limitations\n\nStorage capacity tracking increases the chance that scheduling works\non the first try, but cannot guarantee this because the scheduler has\nto decide based on potentially out-dated information. Usually, the\nsame retry mechanism as for scheduling without any storage capacity\ninformation handles scheduling failures.\n\nOne situation where scheduling can fail permanently is when a Pod uses\nmultiple volumes: one volume might have been created already in a\ntopology segment which then does not have enough capacit\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/storage-capacity/",
      "meta": {
        "weight": 80,
        "rel_path": "concepts/storage/storage-capacity.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/storage-capacity.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-capacity/",
          "line_start": null,
          "line_end": null,
          "quote": "Storage Capacity"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rescheduling",
      "type": "concept",
      "title": "Rescheduling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-capacity.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-capacity/",
          "line_start": 3154,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/volume-populators-and-data-sources",
      "type": "page",
      "title": "Volume Populators and Data Sources",
      "summary": "",
      "body": "\n\nThis document describes _volume populators_ and _data sources_ in Kubernetes.\nFamiliarity with [persistent volumes](/docs/concepts/storage/persistent-volumes/)\nis suggested.\n\n\n\nWhen you create a [PersistentVolumeClaim](#gloss:persistent-volume-claim),\nthe volume that Kubernetes provisions for it normally starts empty. A _data source_\nlets you instead request that the new volume be pre-populated with existing data.\n_Volume populators_ are the controllers that carry out that population, based on the\ndata source that the PersistentVolumeClaim references.\n\nKubernetes has built-in support for data sources that\n[clone an existing volume](/docs/concepts/storage/volume-pvc-datasource/) or that\n[restore a volume snapshot](/docs/concepts/storage/volume-snapshots/). Custom volume\npopulators extend this mechanism. The data source is a custom resource, that is, an object\nwhose type is defined by a\n[CustomResourceDefinition](#gloss:CustomResourceDefinition).\nA populator controller watches for PersistentVolumeClaims that reference such a resource\nand fills the new volume from it.\n\n## Volume populators and data sources\n\n\n\nKubernetes supports custom volume populators.\nTo use custom volume populators, you must enable the `AnyVolumeDataSource`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/) for\nthe kube-apiserver and kube-controller-manager.\n\nVolume populators take advantage of a PVC spec field called `dataSourceRef`. Unlike the\n`dataSource` field, which can only contain either a reference to another PersistentVolumeClaim\nor to a VolumeSnapshot, the `dataSourceRef` field can contain a reference to any object in the\nsame namespace, except for core objects other than PVCs. For clusters that have the feature\ngate enabled, use of the `dataSourceRef` is preferred over `dataSource`.\n\n## Data source references\n\nThe `dataSourceRef` field behaves almost the same as the `dataSource` field. If one is\nspecified while the other is not, the API server will give both fields the same value. Neither\nfield can be changed after creation, and attempting to specify different values for the two\nfields will result in a validation error. Therefore the two fields will always have the same\ncontents.\n\nThere are two differences between the `dataSourceRef` field and the `dataSource` field that\nusers should be aware of:\n\n* The `dataSource` field ignores invalid values (as if the field was blank) while the\n  `dataSourceRef` field never ignores values and will cause an error if an invalid value is\n  used. Invalid values are any core object (objects with no apiGroup) except for PVCs.\n* The `dataSourceRef` field may contain different types of objects, while the `dataSource` field\n  only allows PVCs and VolumeSnapshots.\n\nWhen the `CrossNamespaceVolumeDataSource` feature is enabled, there are additional differences:\n\n* The `dataSource` field only allows local objects, while the `dataSourceRef` field allows\n  objects in any namespaces.\n* When namespace is specified, `dataSource` and `dataSourceRef` are not synced.\n\nUsers should always use `dataSourceRef` on clusters that have the feature gate enabled, and\nfall back to `dataSource` on clusters that do not. It is not necessary to look at both fields\nunder any circumstance. The duplicated values with slightly different semantics exist only for\nbackwards compatibility. In particular, a mixture of older and newer controllers are able to\ninteroperate because the fields are the same.\n\n### Using volume populators\n\nVolume populators are [controllers](#gloss:controller) that can\ncreate non-empty volumes, where the contents of the volume are determined by a Custom Resource.\nUsers create a populated volume by referring to a Custom Resource using the `dataSourceRef` field:\n\n```yaml\napiVersion: v1\nkind: PersistentVolumeClaim\nmetadata:\n  name: populated-pvc\nspec:\n  dataSourceRef:\n    name: example-name\n    kind: ExampleDataSource\n    apiGroup: example.storage.k8s.io\n  accessModes:\n    - ReadWriteOnce\n  resources:\n   \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
      "meta": {
        "weight": 71,
        "rel_path": "concepts/storage/volume-populators-and-data-sources.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": null,
          "line_end": null,
          "quote": "Volume Populators and Data Sources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-populators-and-data-sources",
      "type": "concept",
      "title": "Volume populators and data sources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 1180,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:data-source-references",
      "type": "concept",
      "title": "Data source references",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 1973,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cross-namespace-data-sources",
      "type": "concept",
      "title": "Cross namespace data sources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 5019,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-volume-populators",
      "type": "concept",
      "title": "Using volume populators",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 3619,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-a-cross-namespace-volume-data-source",
      "type": "concept",
      "title": "Using a cross-namespace volume data source",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 6160,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/windows-storage",
      "type": "page",
      "title": "Windows Storage",
      "summary": "",
      "body": "\n\nThis page provides an storage overview specific to the Windows operating system.\n\n\n\n## Persistent storage {#storage}\n\nWindows has a layered filesystem driver to mount container layers and create a copy\nfilesystem based on NTFS. All file paths in the container are resolved only within\nthe context of that container.\n\n* With Docker, volume mounts can only target a directory in the container, and not\n  an individual file. This limitation does not apply to containerd.\n* Volume mounts cannot project files or directories back to the host filesystem.\n* Read-only filesystems are not supported because write access is always required\n  for the Windows registry and SAM database. However, read-only volumes are supported.\n* Volume user-masks and permissions are not available. Because the SAM is not shared\n  between the host & container, there's no mapping between them. All permissions are\n  resolved within the context of the container.\n\nAs a result, the following storage functionality is not supported on Windows nodes:\n\n* Volume subpath mounts: only the entire volume can be mounted in a Windows container\n* Subpath volume mounting for Secrets\n* Host mount projection\n* Read-only root filesystem (mapped volumes still support `readOnly`)\n* Block device mapping\n* Memory as the storage medium (for example, `emptyDir.medium` set to `Memory`)\n* File system features like uid/gid; per-user Linux filesystem permissions\n* Setting [secret permissions with DefaultMode](/docs/tasks/inject-data-application/distribute-credentials-secure/#set-posix-permissions-for-secret-keys) (due to UID/GID dependency)\n* NFS based storage/volume support\n* Expanding the mounted volume (resizefs)\n\nKubernetes [volumes](#gloss:volume) enable complex\napplications, with data persistence and Pod volume sharing requirements, to be deployed\non Kubernetes. Management of persistent volumes associated with a specific storage\nback-end or protocol includes actions such as provisioning/de-provisioning/resizing\nof volumes, attaching/detaching a volume to/from a Kubernetes node and\nmounting/dismounting a volume to/from individual containers in a pod that needs to\npersist data.\n\nVolume management components are shipped as Kubernetes volume\n[plugin](/docs/concepts/storage/volumes/#volume-types).\nThe following broad classes of Kubernetes volume plugins are supported on Windows:\n\n* [`FlexVolume plugins`](/docs/concepts/storage/volumes/#flexvolume)\n  * Please note that FlexVolumes have been deprecated as of 1.23\n* [`CSI Plugins`](/docs/concepts/storage/volumes/#csi)\n\n##### In-tree volume plugins\n\nThe following in-tree plugins support persistent storage on Windows nodes:\n\n* [`azureFile`](/docs/concepts/storage/volumes/#azurefile)\n* [`vsphereVolume`](/docs/concepts/storage/volumes/#vspherevolume)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/windows-storage/",
      "meta": {
        "weight": 110,
        "rel_path": "concepts/storage/windows-storage.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/windows-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/windows-storage/",
          "line_start": null,
          "line_end": null,
          "quote": "Windows Storage"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistent-storage-storage",
      "type": "concept",
      "title": "Persistent storage {#storage}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/windows-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/windows-storage/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/projected-volumes",
      "type": "page",
      "title": "Projected Volumes",
      "summary": "",
      "body": "\n\nThis document describes _projected volumes_ in Kubernetes. Familiarity with [volumes](/docs/concepts/storage/volumes/) is suggested.\n\n\n\n## Introduction\n\nA `projected` volume maps several existing volume sources into the same directory.\n\nCurrently, the following types of volume sources can be projected:\n\n* [`secret`](/docs/concepts/storage/volumes/#secret)\n* [`downwardAPI`](/docs/concepts/storage/volumes/#downwardapi)\n* [`configMap`](/docs/concepts/storage/volumes/#configmap)\n* [`serviceAccountToken`](#serviceaccounttoken)\n* [`clusterTrustBundle`](#clustertrustbundle)\n* [`podCertificate`](#podcertificate)\n\nAll sources are required to be in the same namespace as the Pod. For more details,\nsee the [all-in-one volume](https://git.k8s.io/design-proposals-archive/node/all-in-one-volume.md) design document.\n\n### Example configuration with a secret, a downwardAPI, and a configMap {#example-configuration-secret-downwardapi-configmap}\n\n\n\n### Example configuration: secrets with a non-default permission mode set {#example-configuration-secrets-nondefault-permission-mode}\n\n\n\nEach projected volume source is listed in the spec under `sources`. The\nparameters are nearly the same with two exceptions:\n\n* For secrets, the `secretName` field has been changed to `name` to be consistent\n  with ConfigMap naming.\n* The `defaultMode` can only be specified at the projected level and not for each\n  volume source. However, as illustrated above, you can explicitly set the `mode`\n  for each individual projection.\n\n## serviceAccountToken projected volumes {#serviceaccounttoken}\nYou can inject the token for the current [service account](/docs/reference/access-authn-authz/authentication/#service-account-tokens)\ninto a Pod at a specified path. For example:\n\n\n\nThe example Pod has a projected volume containing the injected service account\ntoken. Containers in this Pod can use that token to access the Kubernetes API\nserver, authenticating with the identity of [the pod's ServiceAccount](/docs/tasks/configure-pod-container/configure-service-account/).\nThe `audience` field contains the intended audience of the\ntoken. A recipient of the token must identify itself with an identifier specified\nin the audience of the token, and otherwise should reject the token. This field\nis optional and it defaults to the identifier of the API server.\n\nThe `expirationSeconds` is the expected duration of validity of the service account\ntoken. It defaults to 1 hour and must be at least 10 minutes (600 seconds). An administrator\ncan also limit its maximum value by specifying the `--service-account-max-token-expiration`\noption for the API server. The `path` field specifies a relative path to the mount point\nof the projected volume.\n\n\n> **Note:** A container using a projected volume source as a [`subPath`](/docs/concepts/storage/volumes/#using-subpath)\nvolume mount will not receive updates for those volume sources.\n\n\n## clusterTrustBundle projected volumes {#clustertrustbundle}\n\n\n\n\n> **Note:** To use this feature in Kubernetes , you must enable support for ClusterTrustBundle objects\nwith the `ClusterTrustBundle` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) and\n`--runtime-config=certificates.k8s.io/v1beta1/clustertrustbundles=true` kube-apiserver flag,\nthen enable the `ClusterTrustBundleProjection` feature gate.\n\n\nThe `clusterTrustBundle` projected volume source injects the contents of one or more\n[ClusterTrustBundle](/docs/reference/access-authn-authz/certificate-signing-requests#cluster-trust-bundles)\nobjects as an automatically-updating file in the container filesystem.\n\nClusterTrustBundles can be selected either by [name](/docs/reference/access-authn-authz/certificate-signing-requests#ctb-signer-unlinked)\nor by [signer name](/docs/reference/access-authn-authz/certificate-signing-requests#ctb-signer-linked).\n\nTo select by name, use the `name` field to designate a single ClusterTrustBundle object.\n\nTo select by signer name, use the `signerName` field (and \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
      "meta": {
        "weight": 21,
        "rel_path": "concepts/storage/projected-volumes.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": null,
          "line_end": null,
          "quote": "Projected Volumes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccounttoken-projected-volumes-serviceaccounttoken",
      "type": "concept",
      "title": "serviceAccountToken projected volumes {#serviceaccounttoken}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 1715,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clustertrustbundle-projected-volumes-clustertrustbundle",
      "type": "concept",
      "title": "clusterTrustBundle projected volumes {#clustertrustbundle}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 3201,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podcertificate-projected-volumes-podcertificate",
      "type": "concept",
      "title": "podCertificate projected volumes {#podcertificate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 5343,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:securitycontext-interactions",
      "type": "concept",
      "title": "SecurityContext interactions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 9231,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-configuration-with-a-secret-a-downwardapi-and-a-configmap-example-configuration-secret-downwardapi-configmap",
      "type": "concept",
      "title": "Example configuration with a secret, a downwardAPI, and a configMap {#example-configuration-secret-downwardapi-configmap}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 846,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-configuration-secrets-with-a-non-default-permission-mode-set-example-configuration-secrets-nondefault-permission-mode",
      "type": "concept",
      "title": "Example configuration: secrets with a non-default permission mode set {#example-configuration-secrets-nondefault-permission-mode}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 1058,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:windows",
      "type": "concept",
      "title": "Windows",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 10676,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/volume-snapshots",
      "type": "page",
      "title": "Volume Snapshots",
      "summary": "",
      "body": "\n\nIn Kubernetes, a _VolumeSnapshot_ represents a snapshot of a volume on a storage\nsystem. This document assumes that you are already familiar with Kubernetes\n[persistent volumes](/docs/concepts/storage/persistent-volumes/).\n\n\n\n## Introduction\n\nSimilar to how API resources `PersistentVolume` and `PersistentVolumeClaim` are\nused to provision volumes for users and administrators, `VolumeSnapshotContent`\nand `VolumeSnapshot` API resources are provided to create volume snapshots for\nusers and administrators.\n\nA `VolumeSnapshotContent` is a snapshot taken from a volume in the cluster that\nhas been provisioned by an administrator. It is a resource in the cluster just\nlike a PersistentVolume is a cluster resource.\n\nA `VolumeSnapshot` is a request for snapshot of a volume by a user. It is similar\nto a PersistentVolumeClaim.\n\n`VolumeSnapshotClass` allows you to specify different attributes belonging to a\n`VolumeSnapshot`. These attributes may differ among snapshots taken from the same\nvolume on the storage system and therefore cannot be expressed by using the same\n`StorageClass` of a `PersistentVolumeClaim`.\n\nVolume snapshots provide Kubernetes users with a standardized way to copy a volume's\ncontents at a particular point in time without creating an entirely new volume. This\nfunctionality enables, for example, database administrators to backup databases before\nperforming edit or delete modifications.\n\nUsers need to be aware of the following when using this feature:\n\n- API Objects `VolumeSnapshot`, `VolumeSnapshotContent`, and `VolumeSnapshotClass`\n  are [CRDs](#gloss:CustomResourceDefinition), not\n  part of the core API.\n- `VolumeSnapshot` support is only available for CSI drivers.\n- As part of the deployment process of `VolumeSnapshot`, the Kubernetes team provides\n  a snapshot controller to be deployed into the control plane, and a sidecar helper\n  container called csi-snapshotter to be deployed together with the CSI driver.\n  The snapshot controller watches `VolumeSnapshot` and `VolumeSnapshotContent` objects\n  and is responsible for the creation and deletion of `VolumeSnapshotContent` object.\n  The sidecar csi-snapshotter watches `VolumeSnapshotContent` objects and triggers\n  `CreateSnapshot` and `DeleteSnapshot` operations against a CSI endpoint.\n- There is also a validating webhook server which provides tightened validation on\n  snapshot objects. This should be installed by the Kubernetes distros along with\n  the snapshot controller and CRDs, not CSI drivers. It should be installed in all\n  Kubernetes clusters that has the snapshot feature enabled.\n- CSI drivers may or may not have implemented the volume snapshot functionality.\n  The CSI drivers that have provided support for volume snapshot will likely use\n  the csi-snapshotter. See [CSI Driver documentation](https://kubernetes-csi.github.io/docs/) for details.\n- The CRDs and snapshot controller installations are the responsibility of the Kubernetes distribution.\n\nFor advanced use cases, such as creating group snapshots of multiple volumes, see the external\n[CSI Volume Group Snapshot documentation](https://kubernetes-csi.github.io/docs/group-snapshot-restore-feature.html).\n\n## Lifecycle of a volume snapshot and volume snapshot content\n\n`VolumeSnapshotContents` are resources in the cluster. `VolumeSnapshots` are requests\nfor those resources. The interaction between `VolumeSnapshotContents` and `VolumeSnapshots`\nfollow this lifecycle:\n\n### Provisioning Volume Snapshot\n\nThere are two ways snapshots may be provisioned: pre-provisioned or dynamically provisioned.\n\n#### Pre-provisioned {#static}\n\nA cluster administrator creates a number of `VolumeSnapshotContents`. They carry the details\nof the real volume snapshot on the storage system which is available for use by cluster users.\nThey exist in the Kubernetes API and are available for consumption.\n\n#### Dynamic\n\nInstead of using a pre-existing snapshot, you can request that a snapshot to be dynamically\ntaken from a PersistentVolumeCl\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/storage/volume-snapshots.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": null,
          "line_end": null,
          "quote": "Volume Snapshots"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:lifecycle-of-a-volume-snapshot-and-volume-snapshot-content",
      "type": "concept",
      "title": "Lifecycle of a volume snapshot and volume snapshot content",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 3244,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumesnapshots",
      "type": "concept",
      "title": "VolumeSnapshots",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 5644,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-snapshot-contents",
      "type": "concept",
      "title": "Volume Snapshot Contents",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 6755,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:converting-the-volume-mode-of-a-snapshot-convert-volume-mode",
      "type": "concept",
      "title": "Converting the volume mode of a Snapshot {#convert-volume-mode}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 8951,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:provisioning-volumes-from-snapshots",
      "type": "concept",
      "title": "Provisioning Volumes from Snapshots",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 10317,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:provisioning-volume-snapshot",
      "type": "concept",
      "title": "Provisioning Volume Snapshot",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 3509,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:binding",
      "type": "concept",
      "title": "Binding",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 4222,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistent-volume-claim-as-snapshot-source-protection",
      "type": "concept",
      "title": "Persistent Volume Claim as Snapshot Source Protection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 4602,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete",
      "type": "concept",
      "title": "Delete",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 5281,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/volume-pvc-datasource",
      "type": "page",
      "title": "CSI Volume Cloning",
      "summary": "",
      "body": "\n\nThis document describes the concept of cloning existing CSI Volumes in Kubernetes.\nFamiliarity with [Volumes](/docs/concepts/storage/volumes) is suggested.\n\n\n\n## Introduction\n\nThe [CSI](#gloss:csi) Volume Cloning feature adds\nsupport for specifying existing [PVC](#gloss:persistent-volume-claim)s\nin the `dataSource` field to indicate a user would like to clone a [volume](#gloss:volume).\n\nA Clone is defined as a duplicate of an existing Kubernetes Volume that can be\nconsumed as any standard Volume would be.  The only difference is that upon\nprovisioning, rather than creating a \"new\" empty Volume, the back end device\ncreates an exact duplicate of the specified Volume.\n\nThe implementation of cloning, from the perspective of the Kubernetes API, adds\nthe ability to specify an existing PVC as a dataSource during new PVC creation.\nThe source PVC must be bound and available (not in use).\n\nUsers need to be aware of the following when using this feature:\n\n* Cloning support (`VolumePVCDataSource`) is only available for CSI drivers.\n* Cloning support is only available for dynamic provisioners.\n* CSI drivers may or may not have implemented the volume cloning functionality.\n* You can only clone a PVC when it exists in the same namespace as the destination PVC\n  (source and destination must be in the same namespace).\n* Cloning is supported with a different Storage Class.\n  - Destination volume can be the same or a different storage class as the source.\n  - Default storage class can be used and storageClassName omitted in the spec.\n* Cloning can only be performed between two volumes that use the same VolumeMode setting\n  (if you request a block mode volume, the source MUST also be block mode)\n\n## Provisioning\n\nClones are provisioned like any other PVC with the exception of adding a dataSource\nthat references an existing PVC in the same namespace.\n\n```yaml\napiVersion: v1\nkind: PersistentVolumeClaim\nmetadata:\n    name: clone-of-pvc-1\n    namespace: myns\nspec:\n  accessModes:\n  - ReadWriteOnce\n  storageClassName: cloning\n  resources:\n    requests:\n      storage: 5Gi\n  dataSource:\n    kind: PersistentVolumeClaim\n    name: pvc-1\n```\n\n\n> **Note:** You must specify a capacity value for `spec.resources.requests.storage`, and the\nvalue you specify must be the same or larger than the capacity of the source volume.\n\n\nThe result is a new PVC with the name `clone-of-pvc-1` that has the exact same\ncontent as the specified source `pvc-1`.\n\n## Usage\n\nUpon availability of the new PVC, the cloned PVC is consumed the same as other PVC.\nIt's also expected at this point that the newly created PVC is an independent object.\nIt can be consumed, cloned, snapshotted, or deleted independently and without\nconsideration for it's original dataSource PVC.  This also implies that the source\nis not linked in any way to the newly created clone, it may also be modified or\ndeleted without affecting the newly created clone.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/storage/volume-pvc-datasource.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/volume-pvc-datasource.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
          "line_start": null,
          "line_end": null,
          "quote": "CSI Volume Cloning"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:provisioning",
      "type": "concept",
      "title": "Provisioning",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-pvc-datasource.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
          "line_start": 1821,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:usage",
      "type": "concept",
      "title": "Usage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-pvc-datasource.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
          "line_start": 2579,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/storage-classes",
      "type": "page",
      "title": "Storage Classes",
      "summary": "",
      "body": "\n\nThis document describes the concept of a StorageClass in Kubernetes. Familiarity\nwith [volumes](/docs/concepts/storage/volumes/) and\n[persistent volumes](/docs/concepts/storage/persistent-volumes) is suggested.\n\nA StorageClass provides a way for administrators to describe the _classes_ of\nstorage they offer. Different classes might map to quality-of-service levels,\nor to backup policies, or to arbitrary policies determined by the cluster\nadministrators. Kubernetes itself is unopinionated about what classes\nrepresent.\n\nThe Kubernetes concept of a storage class is similar to “profiles” in some other\nstorage system designs.\n\n\n\n## StorageClass objects\n\nEach StorageClass contains the fields `provisioner`, `parameters`, and\n`reclaimPolicy`, which are used when a PersistentVolume belonging to the\nclass needs to be dynamically provisioned to satisfy a PersistentVolumeClaim (PVC).\n\nThe name of a StorageClass object is significant, and is how users can\nrequest a particular class. Administrators set the name and other parameters\nof a class when first creating StorageClass objects.\n\nAs an administrator, you can specify a default StorageClass that applies to any PVCs that\ndon't request a specific class. For more details, see the\n[PersistentVolumeClaim concept](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims).\n\nHere's an example of a StorageClass:\n\n\n\n## Default StorageClass\n\nYou can mark a StorageClass as the default for your cluster.\nFor instructions on setting the default StorageClass, see\n[Change the default StorageClass](/docs/tasks/administer-cluster/change-default-storage-class/).\n\nWhen a PVC does not specify a `storageClassName`, the default StorageClass is\nused.\n\nIf you set the\n[`storageclass.kubernetes.io/is-default-class`](/docs/reference/labels-annotations-taints/#storageclass-kubernetes-io-is-default-class)\nannotation to true on more than one StorageClass in your cluster, and you then\ncreate a PersistentVolumeClaim with no `storageClassName` set, Kubernetes\nuses the most recently created default StorageClass.\n\n\n> **Note:** You should try to only have one StorageClass in your cluster that is\nmarked as the default. The reason that Kubernetes allows you to have\nmultiple default StorageClasses is to allow for seamless migration.\n\n\nYou can create a PersistentVolumeClaim without specifying a `storageClassName`\nfor the new PVC, and you can do so even when no default StorageClass exists\nin your cluster. In this case, the new PVC creates as you defined it, and the\n`storageClassName` of that PVC remains unset until a default becomes available.\n\nYou can have a cluster without any default StorageClass. If you don't mark any\nStorageClass as default (and one hasn't been set for you by, for example, a cloud provider),\nthen Kubernetes cannot apply that defaulting for PersistentVolumeClaims that need\nit.\n\nIf or when a default StorageClass becomes available, the control plane identifies any\nexisting PVCs without `storageClassName`. For the PVCs that either have an empty\nvalue for `storageClassName` or do not have this key, the control plane then\nupdates those PVCs to set `storageClassName` to match the new default StorageClass.\nIf you have an existing PVC where the `storageClassName` is `\"\"`, and you configure\na default StorageClass, then this PVC will not get updated.\n\nIn order to keep binding to PVs with `storageClassName` set to `\"\"`\n(while a default StorageClass is present), you need to set the `storageClassName`\nof the associated PVC to `\"\"`.\n\n## Provisioner\n\nEach StorageClass has a provisioner that determines what volume plugin is used\nfor provisioning PVs. This field must be specified.\n\n| Volume Plugin        | Internal Provisioner |            Config Example             |\n| :------------------- | :------------------: | :-----------------------------------: |\n| AzureFile            |       &#x2713;       |       [Azure File](#azure-file)       |\n| CephFS               |          -           |                   -        \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/storage/storage-classes.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": null,
          "line_end": null,
          "quote": "Storage Classes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageclass-objects",
      "type": "concept",
      "title": "StorageClass objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-storageclass",
      "type": "concept",
      "title": "Default StorageClass",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 1474,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:provisioner",
      "type": "concept",
      "title": "Provisioner",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 3621,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reclaim-policy",
      "type": "concept",
      "title": "Reclaim policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 6008,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-expansion-allow-volume-expansion",
      "type": "concept",
      "title": "Volume expansion {#allow-volume-expansion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 6519,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mount-options",
      "type": "concept",
      "title": "Mount options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 7635,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-binding-mode",
      "type": "concept",
      "title": "Volume binding mode",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 8022,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:allowed-topologies",
      "type": "concept",
      "title": "Allowed topologies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 10123,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:parameters",
      "type": "concept",
      "title": "Parameters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 10679,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aws-ebs",
      "type": "concept",
      "title": "AWS EBS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 11060,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aws-efs",
      "type": "concept",
      "title": "AWS EFS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 11848,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nfs",
      "type": "concept",
      "title": "NFS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 12616,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:vsphere",
      "type": "concept",
      "title": "vSphere",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 13487,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ceph-rbd-deprecated-ceph-rbd",
      "type": "concept",
      "title": "Ceph RBD (deprecated) {#ceph-rbd}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 17192,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:azure-disk",
      "type": "concept",
      "title": "Azure Disk",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 18922,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:azure-file-deprecated-azure-file",
      "type": "concept",
      "title": "Azure File (deprecated) {#azure-file}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 19440,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:portworx-volume-deprecated-portworx-volume",
      "type": "concept",
      "title": "Portworx volume (deprecated) {#portworx-volume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 21122,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:local",
      "type": "concept",
      "title": "Local",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 22497,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/volume-snapshot-classes",
      "type": "page",
      "title": "Volume Snapshot Classes",
      "summary": "",
      "body": "\n\nThis document describes the concept of VolumeSnapshotClass in Kubernetes. Familiarity\nwith [volume snapshots](/docs/concepts/storage/volume-snapshots/) and\n[storage classes](/docs/concepts/storage/storage-classes) is suggested.\n\n\n\n## Introduction\n\nJust like StorageClass provides a way for administrators to describe the \"classes\"\nof storage they offer when provisioning a volume, VolumeSnapshotClass provides a\nway to describe the \"classes\" of storage when provisioning a volume snapshot.\n\n## The VolumeSnapshotClass Resource\n\nEach VolumeSnapshotClass contains the fields `driver`, `deletionPolicy`, and `parameters`,\nwhich are used when a VolumeSnapshot belonging to the class needs to be\ndynamically provisioned.\n\nThe name of a VolumeSnapshotClass object is significant, and is how users can\nrequest a particular class. Administrators set the name and other parameters\nof a class when first creating VolumeSnapshotClass objects, and the objects cannot\nbe updated once they are created.\n\n\n> **Note:** Installation of the CRDs is the responsibility of the Kubernetes distribution.\nWithout the required CRDs present, the creation of a VolumeSnapshotClass fails.\n\n\n```yaml\napiVersion: snapshot.storage.k8s.io/v1\nkind: VolumeSnapshotClass\nmetadata:\n  name: csi-hostpath-snapclass\ndriver: hostpath.csi.k8s.io\ndeletionPolicy: Delete\nparameters:\n```\n\nAdministrators can specify a default VolumeSnapshotClass for VolumeSnapshots\nthat don't request any particular class to bind to by adding the\n`snapshot.storage.kubernetes.io/is-default-class: \"true\"` annotation:\n\n```yaml\napiVersion: snapshot.storage.k8s.io/v1\nkind: VolumeSnapshotClass\nmetadata:\n  name: csi-hostpath-snapclass\n  annotations:\n    snapshot.storage.kubernetes.io/is-default-class: \"true\"\ndriver: hostpath.csi.k8s.io\ndeletionPolicy: Delete\nparameters:\n```\n\nIf multiple CSI drivers exist, a default VolumeSnapshotClass can be specified\nfor each of them.\n\n### VolumeSnapshotClass dependencies\n\nWhen you create a VolumeSnapshot without specifying a VolumeSnapshotClass, Kubernetes\nautomatically selects a default VolumeSnapshotClass that has a CSI driver matching\nthe CSI driver of the PVC’s StorageClass.\n\nThis behavior allows multiple default VolumeSnapshotClass objects to coexist in a cluster, as long as\neach one is associated with a unique CSI driver.\n\nAlways ensure that there is only one default VolumeSnapshotClass for each CSI driver. If\nmultiple default VolumeSnapshotClass objects are created using the same CSI driver,\na VolumeSnapshot creation will fail because Kubernetes cannot determine which one to use.\n\n### Driver\n\nVolume snapshot classes have a driver that determines what CSI volume plugin is\nused for provisioning VolumeSnapshots. This field must be specified.\n\n### DeletionPolicy\n\nVolume snapshot classes have a [deletionPolicy](/docs/concepts/storage/volume-snapshots/#delete).\nIt enables you to configure what happens to a VolumeSnapshotContent when the VolumeSnapshot\nobject it is bound to is to be deleted. The deletionPolicy of a volume snapshot class can\neither be `Retain` or `Delete`. This field must be specified.\n\nIf the deletionPolicy is `Delete`, then the underlying storage snapshot will be\ndeleted along with the VolumeSnapshotContent object. If the deletionPolicy is `Retain`,\nthen both the underlying snapshot and VolumeSnapshotContent remain.\n\n## Parameters\n\nVolume snapshot classes have parameters that describe volume snapshots belonging to\nthe volume snapshot class. Different parameters may be accepted depending on the\n`driver`.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
      "meta": {
        "weight": 61,
        "rel_path": "concepts/storage/volume-snapshot-classes.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": null,
          "line_end": null,
          "quote": "Volume Snapshot Classes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-volumesnapshotclass-resource",
      "type": "concept",
      "title": "The VolumeSnapshotClass Resource",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": 524,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumesnapshotclass-dependencies",
      "type": "concept",
      "title": "VolumeSnapshotClass dependencies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": 1961,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:driver",
      "type": "concept",
      "title": "Driver",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": 2627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deletionpolicy",
      "type": "concept",
      "title": "DeletionPolicy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": 2789,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/persistent-volumes",
      "type": "page",
      "title": "Persistent Volumes",
      "summary": "",
      "body": "\n\nThis document describes _persistent volumes_ in Kubernetes. Familiarity with\n[volumes](/docs/concepts/storage/volumes/), [StorageClasses](/docs/concepts/storage/storage-classes/)\nand [VolumeAttributesClasses](/docs/concepts/storage/volume-attributes-classes/) is suggested.\n\n\n\n## Introduction\n\nManaging storage is a distinct problem from managing compute instances.\nThe PersistentVolume subsystem provides an API for users and administrators\nthat abstracts details of how storage is provided from how it is consumed.\nTo do this, we introduce two new API resources: PersistentVolume and PersistentVolumeClaim.\n\nA _PersistentVolume_ (PV) is a piece of storage in the cluster that has been\nprovisioned by an administrator or dynamically provisioned using\n[Storage Classes](/docs/concepts/storage/storage-classes/). It is a resource in\nthe cluster just like a node is a cluster resource. PVs are volume plugins like\nVolumes, but have a lifecycle independent of any individual Pod that uses the PV.\nThis API object captures the details of the implementation of the storage, be that\nNFS, iSCSI, or a cloud-provider-specific storage system.\n\nA _PersistentVolumeClaim_ (PVC) is a request for storage by a user. It is similar\nto a Pod. Pods consume node resources and PVCs consume PV resources. Pods can\nrequest specific levels of resources (CPU and Memory). Claims can request specific\nsize and access modes (e.g., they can be mounted ReadWriteOnce, ReadOnlyMany,\nReadWriteMany, or ReadWriteOncePod, see [AccessModes](#access-modes)).\n\nWhile PersistentVolumeClaims allow a user to consume abstract storage resources,\nit is common that users need PersistentVolumes with varying properties, such as\nperformance, for different problems. Cluster administrators need to be able to\noffer a variety of PersistentVolumes that differ in more ways than size and access\nmodes, without exposing users to the details of how those volumes are implemented.\nFor these needs, there is the _StorageClass_ resource.\n\nSee the [detailed walkthrough with working examples](/docs/tutorials/configuration/configure-persistent-volume-storage).\n\n## Lifecycle of a volume and claim\n\nPVs are resources in the cluster. PVCs are requests for those resources and also act\nas claim checks to the resource. The interaction between PVs and PVCs follows this lifecycle:\n\n### Provisioning\n\nThere are two ways PVs may be provisioned: statically or dynamically.\n\n#### Static\n\nA cluster administrator creates a number of PVs. They carry the details of the\nreal storage, which is available for use by cluster users. They exist in the\nKubernetes API and are available for consumption.\n\n#### Dynamic\n\nWhen none of the static PVs the administrator created match a user's PersistentVolumeClaim,\nthe cluster may try to dynamically provision a volume specially for the PVC.\nThis provisioning is based on StorageClasses: the PVC must request a\n[storage class](/docs/concepts/storage/storage-classes/) and\nthe administrator must have created and configured that class for dynamic\nprovisioning to occur. Claims that request the class `\"\"` effectively disable\ndynamic provisioning for themselves.\n\nTo enable dynamic storage provisioning based on storage class, the cluster administrator\nneeds to enable the `DefaultStorageClass`\n[admission controller](/docs/reference/access-authn-authz/admission-controllers/#defaultstorageclass)\non the API server. This can be done, for example, by ensuring that `DefaultStorageClass` is\namong the comma-delimited, ordered list of values for the `--enable-admission-plugins` flag of\nthe API server component. For more information on API server command-line flags,\ncheck [kube-apiserver](/docs/reference/command-line-tools-reference/kube-apiserver/) documentation.\n\n### Binding\n\nA user creates, or in the case of dynamic provisioning, has already created,\na PersistentVolumeClaim with a specific amount of storage requested and with\ncertain access modes. A control loop in the control plane watches for new PVCs, finds\na m\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/storage/persistent-volumes.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": null,
          "line_end": null,
          "quote": "Persistent Volumes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:lifecycle-of-a-volume-and-claim",
      "type": "concept",
      "title": "Lifecycle of a volume and claim",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 2145,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:types-of-persistent-volumes",
      "type": "concept",
      "title": "Types of Persistent Volumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 20603,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaims",
      "type": "concept",
      "title": "PersistentVolumeClaims",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 34036,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claims-as-volumes",
      "type": "concept",
      "title": "Claims As Volumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 42300,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:raw-block-volume-support",
      "type": "concept",
      "title": "Raw Block Volume Support",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 43388,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-snapshot-and-restore-volume-from-snapshot-support",
      "type": "concept",
      "title": "Volume Snapshot and Restore Volume from Snapshot Support",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 46244,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-cloning",
      "type": "concept",
      "title": "Volume Cloning",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 47142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-portable-configuration",
      "type": "concept",
      "title": "Writing Portable Configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 48499,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using",
      "type": "concept",
      "title": "Using",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 4840,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storage-object-in-use-protection",
      "type": "concept",
      "title": "Storage Object in Use Protection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 5410,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reclaiming",
      "type": "concept",
      "title": "Reclaiming",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 7248,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolume-deletion-protection-finalizer",
      "type": "concept",
      "title": "PersistentVolume deletion protection finalizer",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 10281,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reserving-a-persistentvolume",
      "type": "concept",
      "title": "Reserving a PersistentVolume",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 13560,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:expanding-persistent-volumes-claims",
      "type": "concept",
      "title": "Expanding Persistent Volumes Claims",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 15192,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:capacity",
      "type": "concept",
      "title": "Capacity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 24277,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-mode",
      "type": "concept",
      "title": "Volume Mode",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 24586,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:access-modes",
      "type": "concept",
      "title": "Access Modes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 25653,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:class",
      "type": "concept",
      "title": "Class",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 29936,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:phase",
      "type": "concept",
      "title": "Phase",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 33175,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-modes",
      "type": "concept",
      "title": "Volume Modes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 34787,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-name",
      "type": "concept",
      "title": "Volume Name",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 34946,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resources",
      "type": "concept",
      "title": "Resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 35286,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selector",
      "type": "concept",
      "title": "Selector",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 35940,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:unused-pvc-tracking",
      "type": "concept",
      "title": "Unused PVC tracking",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 40670,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:a-note-on-namespaces",
      "type": "concept",
      "title": "A Note on Namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 42892,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumes-typed-hostpath",
      "type": "concept",
      "title": "PersistentVolumes typed `hostPath`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 43103,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolume-using-a-raw-block-volume-persistent-volume-using-a-raw-block-volume",
      "type": "concept",
      "title": "PersistentVolume using a Raw Block Volume {#persistent-volume-using-a-raw-block-volume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 43679,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaim-requesting-a-raw-block-volume-persistent-volume-claim-requesting-a-raw-block-volume",
      "type": "concept",
      "title": "PersistentVolumeClaim requesting a Raw Block Volume {#persistent-volume-claim-requesting-a-raw-block-volume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 44055,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-specification-adding-raw-block-device-path-in-container",
      "type": "concept",
      "title": "Pod specification adding Raw Block Device path in container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 44361,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:binding-block-volumes",
      "type": "concept",
      "title": "Binding Block Volumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 44941,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-persistentvolumeclaim-from-a-volume-snapshot-create-persistent-volume-claim-from-volume-snapshot",
      "type": "concept",
      "title": "Create a PersistentVolumeClaim from a Volume Snapshot {#create-persistent-volume-claim-from-volume-snapshot}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 46713,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-persistentvolumeclaim-from-an-existing-pvc-create-persistent-volume-claim-from-an-existing-pvc",
      "type": "concept",
      "title": "Create PersistentVolumeClaim from an existing PVC {#create-persistent-volume-claim-from-an-existing-pvc}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 47265,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-references-reference",
      "type": "concept",
      "title": "API references {#reference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 50476,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/ephemeral-storage",
      "type": "page",
      "title": "Local ephemeral storage",
      "summary": "",
      "body": "Nodes have local ephemeral storage, backed by\nlocally-attached writeable devices or, sometimes, by RAM.\n\"Ephemeral\" means that there is no long-term guarantee about durability.\n\nPods use ephemeral local storage for scratch space, caching, and for logs.\nThe kubelet can provide scratch space to Pods using local ephemeral storage to\nmount [`emptyDir`](/docs/concepts/storage/volumes/#emptydir)\n [volumes](#gloss:volume) into containers.\n\nThe kubelet also uses this kind of storage to hold\n[node-level container logs](/docs/concepts/cluster-administration/logging/#logging-at-the-node-level),\ncontainer images, and the writable layers of running containers.\n\n\n> **Caution:** If a node fails, the data in its ephemeral storage can be lost.\nYour applications cannot expect any performance SLAs (disk IOPS for example)\nfrom local ephemeral storage.\n\n\n\n> **Note:** To make the resource quota work on ephemeral-storage, two things need to be done:\n\n* An admin sets the resource quota for ephemeral-storage in a namespace.\n* A user needs to specify limits for the ephemeral-storage resource in the Pod spec.\n\nIf the user doesn't specify the ephemeral-storage resource limit in the Pod spec,\nthe resource quota is not enforced on ephemeral-storage.\n\n\nKubernetes lets you track, reserve and limit the amount\nof ephemeral local storage a Pod can consume.\n\n## Configurations for local ephemeral storage {#configurations}\n\nKubernetes supports the following ways to configure local ephemeral storage on a\nnode:\n\n\nIn this configuration, you place all different kinds of ephemeral local data\n(`emptyDir` volumes, writeable layers, container images, logs) into one filesystem.\n\nThe kubelet also writes\n[node-level container logs](/docs/concepts/cluster-administration/logging/#logging-at-the-node-level)\nand treats these similarly to ephemeral local storage.\n\nThe kubelet writes logs to files inside its configured log directory (`/var/log`\nby default); and has a base directory for other locally stored data\n(`/var/lib/kubelet` by default).\n\nTypically, both `/var/lib/kubelet` and `/var/log` are on the system root filesystem,\nand the kubelet is designed with that layout in mind.\n\nYour node can have as many other filesystems, not used for Kubernetes,\nas you like.\n\n\nYou use one filesystem on the node for ephemeral data from running Pods, such as\nlogs and `emptyDir` volumes. You can also use this filesystem for other data,\nsuch as system logs that are not related to Kubernetes; it can even be the root\nfilesystem.\n\nThe kubelet also writes\n[node-level container logs](/docs/concepts/cluster-administration/logging/#logging-at-the-node-level)\ninto the first filesystem, and treats these similarly to ephemeral local storage.\n\nYou also use a separate filesystem, backed by a different logical storage device.\nIn this configuration, the container runtime stores both container image layers\nand writeable layers on this second filesystem. Configure this storage location\nin your container runtime, not in the kubelet.\n\nThe first filesystem does not hold any image layers or writeable layers.\n\nYour node can have as many other filesystems, not used for Kubernetes,\nas you like.\n\n\nIn this configuration, container image layers are on a separate filesystem, and\ncontainer writeable layers are on the same filesystem as the kubelet's ephemeral\ndata, such as logs and `emptyDir` volumes.\n\nThis layout requires support for the `containerfs` eviction signals. For details\nabout the feature gate and the container runtimes that support this layout, see\n[node-pressure eviction](/docs/concepts/scheduling-eviction/node-pressure-eviction/#filesystem-signals).\n\n\n\nThe [node-pressure eviction](/docs/concepts/scheduling-eviction/node-pressure-eviction/#filesystem-signals)\npage refers to these observed filesystems as `nodefs`, `imagefs`, and\n`containerfs`. Those names do not always mean separate mount points.\n\nThe kubelet can measure local storage use when you set up the node using one of\nthe supported configurations for lo\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
      "meta": {
        "weight": 95,
        "rel_path": "concepts/storage/ephemeral-storage.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": null,
          "line_end": null,
          "quote": "Local ephemeral storage"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configurations-for-local-ephemeral-storage-configurations",
      "type": "concept",
      "title": "Configurations for local ephemeral storage {#configurations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": 1408,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-requests-and-limits-for-local-ephemeral-storage-requests-limits",
      "type": "concept",
      "title": "Setting requests and limits for local ephemeral storage {#requests-limits}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": 4894,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-pods-with-ephemeral-storage-requests-are-scheduled",
      "type": "concept",
      "title": "How Pods with ephemeral-storage requests are scheduled",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": 6852,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ephemeral-storage-consumption-management-resource-emphemeralstorage-consumption",
      "type": "concept",
      "title": "Ephemeral storage consumption management {#resource-emphemeralstorage-consumption}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": 7331,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/storage-limits",
      "type": "page",
      "title": "Node-specific Volume Limits",
      "summary": "",
      "body": "\n\nThis page describes the maximum number of volumes that can be attached\nto a Node for various cloud providers.\n\nCloud providers like Google, Amazon, and Microsoft typically have a limit on\nhow many volumes can be attached to a Node. It is important for Kubernetes to\nrespect those limits. Otherwise, Pods scheduled on a Node could get stuck\nwaiting for volumes to attach.\n\n\n\n\n\n## Kubernetes default limits\n\nThe Kubernetes scheduler has default limits on the number of volumes\nthat can be attached to a Node:\n\n<table>\n  <tr><th>Cloud service</th><th>Maximum volumes per Node</th></tr>\n  <tr><td><a href=\"https://aws.amazon.com/ebs/\">Amazon Elastic Block Store (EBS)</a></td><td>39</td></tr>\n  <tr><td><a href=\"https://cloud.google.com/persistent-disk/\">Google Persistent Disk</a></td><td>16</td></tr>\n  <tr><td><a href=\"https://azure.microsoft.com/en-us/services/storage/main-disks/\">Microsoft Azure Disk Storage</a></td><td>16</td></tr>\n</table>\n\n## Dynamic volume limits\n\n\n\nDynamic volume limits are supported for following volume types.\n\n- Amazon EBS\n- Google Persistent Disk\n- Azure Disk\n- CSI\n\nFor volumes managed by in-tree volume plugins, Kubernetes automatically determines the Node\ntype and enforces the appropriate maximum number of volumes for the node. For example:\n\n* On\n<a href=\"https://cloud.google.com/compute/\">Google Compute Engine</a>,\nup to 127 volumes can be attached to a node, [depending on the node\ntype](https://cloud.google.com/compute/docs/disks/#pdnumberlimits).\n\n* For Amazon EBS disks on M5,C5,R5,T3 and Z1D instance types, Kubernetes allows only 25\nvolumes to be attached to a Node. For other instance types on\n<a href=\"https://aws.amazon.com/ec2/\">Amazon Elastic Compute Cloud (EC2)</a>,\nKubernetes allows 39 volumes to be attached to a Node.\n\n* On Azure, up to 64 disks can be attached to a node, depending on the node type. For more details, refer to [Sizes for virtual machines in Azure](https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sizes).\n\n* If a CSI storage driver advertises a maximum number of volumes for a Node (using `NodeGetInfo`), the [kube-scheduler](#gloss:kube-scheduler) honors that limit.\nRefer to the [CSI specifications](https://github.com/container-storage-interface/spec/blob/master/spec.md#nodegetinfo) for details.\n\n* For volumes managed by in-tree plugins that have been migrated to a CSI driver, the maximum number of volumes will be the one reported by the CSI driver.\n\n### Mutable CSI Node Allocatable Count\n\n\n\nCSI drivers can dynamically adjust the maximum number of volumes that can be attached to a Node at runtime. This enhances scheduling accuracy and reduces pod scheduling failures due to changes in resource availability.\n\nTo use this feature, you must enable the `MutableCSINodeAllocatableCount` feature gate on the following components:\n\n- `kube-apiserver`\n- `kubelet`\n\n#### Periodic Updates\n\nWhen enabled, CSI drivers can request periodic updates to their volume limits by setting the `nodeAllocatableUpdatePeriodSeconds` field in the `CSIDriver` specification. For example:\n\n```yaml\napiVersion: storage.k8s.io/v1\nkind: CSIDriver\nmetadata:\n  name: hostpath.csi.k8s.io\nspec:\n  nodeAllocatableUpdatePeriodSeconds: 60\n```\n\nKubelet will periodically call the corresponding CSI driver’s `NodeGetInfo` endpoint to refresh the maximum number of attachable volumes, using the interval specified in `nodeAllocatableUpdatePeriodSeconds`. The minimum allowed value for this field is 10 seconds.\n\nIf a volume attachment operation fails with a `ResourceExhausted` error (gRPC code 8), Kubernetes triggers an immediate update to the allocatable volume count for that Node. Additionally, kubelet marks affected pods as Failed, allowing their controllers to handle recreation. This prevents pods from getting stuck indefinitely in the `ContainerCreating` state.\n\n### Preventing Pod placement without CSI driver\n\n\n\nIf `VolumeLimitScaling` [feature gate](/docs/reference/command-line-tools-reference/feature-gates#VolumeLimitSca\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/storage/storage-limits.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": null,
          "line_end": null,
          "quote": "Node-specific Volume Limits"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-default-limits",
      "type": "concept",
      "title": "Kubernetes default limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 409,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dynamic-volume-limits",
      "type": "concept",
      "title": "Dynamic volume limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 979,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutable-csi-node-allocatable-count",
      "type": "concept",
      "title": "Mutable CSI Node Allocatable Count",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 2571,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preventing-pod-placement-without-csi-driver",
      "type": "concept",
      "title": "Preventing Pod placement without CSI driver",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 4032,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csi-volume-attach-limits-and-cluster-autoscaler",
      "type": "concept",
      "title": "CSI volume attach limits and cluster autoscaler",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 4718,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/volumes",
      "type": "page",
      "title": "Volumes",
      "summary": "",
      "body": "\n\nKubernetes _volumes_ provide a way for containers in a [Pod](#gloss:pod)\nto access and share data via the filesystem. There are different kinds of volume that you can use for different purposes,\nsuch as:\n\n- populating a configuration file based on a [ConfigMap](#gloss:configmap)\n  or a [Secret](#gloss:secret)\n- providing some temporary scratch space for a Pod\n- sharing a filesystem between two different containers in the same Pod\n- sharing a filesystem between two different Pods (even if those Pods run on different nodes)\n- durably storing data so that it stays available even if the Pod restarts or is replaced\n- passing configuration information to an app running in a container, based on details of the Pod\n  the container is in\n  (for example: telling a [sidecar container](#gloss:sidecar-container)\n  what namespace the Pod is running in)\n- providing read-only access to data in a different container image\n\nData sharing can be between different local processes within a container, or between different containers,\nor between Pods.\n\n## Why volumes are important\n\n- **Data persistence:** On-disk files in a container are ephemeral, which presents some problems for\n  non-trivial applications when running in containers. One problem occurs when\n  a container crashes or is stopped; the container state is not saved, so all of the\n  files that were created or modified during the lifetime of the container are lost.\n  After a crash, kubelet restarts the container with a clean state.\n\n- **Shared storage:** Another problem occurs when multiple containers are running in a `Pod` and\n  need to share files. It can be challenging to set up\n  and access a shared filesystem across all of the containers.\n\nThe Kubernetes [volume](#gloss:volume) abstraction\ncan help you to solve both of these problems.\n\nBefore you learn about volumes, PersistentVolumes, and PersistentVolumeClaims, you should read up\nabout [Pods](#gloss:Pod) and make sure that you understand how\nKubernetes uses Pods to run containers.\n  \n\n\n## How volumes work\n\nKubernetes supports many types of volumes. A [Pod](#gloss:pod)\ncan use any number of volume types simultaneously.\n[Ephemeral volume](/docs/concepts/storage/ephemeral-volumes/) types have a lifetime linked to a specific Pod,\nbut [persistent volumes](/docs/concepts/storage/persistent-volumes/) exist beyond\nthe lifetime of any individual Pod. When a Pod ceases to exist, Kubernetes destroys ephemeral volumes;\nhowever, Kubernetes does not destroy persistent volumes.\nFor any kind of volume in a given Pod, data is preserved across container restarts.\n\nAt its core, a volume is a directory, possibly with some data in it, which\nis accessible to the containers in a pod. How that directory comes to be, the\nmedium that backs it, and the contents of it are determined by the particular\nvolume type used.\n\nTo use a volume, specify the volumes to provide for the Pod in `.spec.volumes`\nand declare where to mount those volumes into containers in `.spec.containers[*].volumeMounts`.\n\nWhen a Pod is launched, a process in the container sees a filesystem view composed from the initial contents of\nthe [container image](#gloss:image), plus volumes\n(if defined) mounted inside the container.\nThe process sees a root filesystem that initially matches the contents of the container image.\nAny writes to within that filesystem hierarchy, if allowed, affect what that process views\nwhen it performs a subsequent filesystem access.\nVolumes are mounted at [specified paths](#using-subpath) within the container filesystem.\nFor each container defined within a Pod, you must independently specify where\nto mount each volume that the container uses.\n\nVolumes cannot mount within other volumes (but see [Using subPath](#using-subpath)\nfor a related mechanism). Also, a volume cannot contain a hard link to anything in\na different volume.\n\n## Types of volumes {#volume-types}\n\nKubernetes supports several types of volumes.\n\n### configMap\n\nA [ConfigMap](/docs/tasks/configure-pod-contai\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/storage/volumes.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": null,
          "line_end": null,
          "quote": "Volumes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-volumes-are-important",
      "type": "concept",
      "title": "Why volumes are important",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 1192,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-volumes-work",
      "type": "concept",
      "title": "How volumes work",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 2238,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:types-of-volumes-volume-types",
      "type": "concept",
      "title": "Types of volumes {#volume-types}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 4142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-subpath-using-subpath",
      "type": "concept",
      "title": "Using subPath {#using-subpath}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 30635,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:out-of-tree-volume-plugins",
      "type": "concept",
      "title": "Out-of-tree volume plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 33444,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mount-propagation",
      "type": "concept",
      "title": "Mount propagation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 44517,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:read-only-mounts",
      "type": "concept",
      "title": "Read-only mounts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 47359,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmap",
      "type": "concept",
      "title": "configMap",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 4226,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:downwardapi-downwardapi",
      "type": "concept",
      "title": "downwardAPI {#downwardapi}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 5965,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:emptydir-emptydir",
      "type": "concept",
      "title": "emptyDir {#emptydir}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 6531,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fc-fibre-channel-fc",
      "type": "concept",
      "title": "fc (fibre channel) {#fc}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 9273,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:gcepersistentdisk-deprecated-gcepersistentdisk",
      "type": "concept",
      "title": "gcePersistentDisk (deprecated) {#gcepersistentdisk}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 9805,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:gitrepo-disabled-gitrepo",
      "type": "concept",
      "title": "gitRepo (disabled) {#gitrepo}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 10414,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostpath-hostpath",
      "type": "concept",
      "title": "hostPath {#hostpath}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 11422,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:image",
      "type": "concept",
      "title": "image",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 18150,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:iscsi",
      "type": "concept",
      "title": "iscsi",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 22922,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaim-persistentvolumeclaim",
      "type": "concept",
      "title": "persistentVolumeClaim {#persistentvolumeclaim}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 27730,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:portworxvolume-deprecated-portworxvolume",
      "type": "concept",
      "title": "portworxVolume (deprecated) {#portworxvolume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 28180,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:projected",
      "type": "concept",
      "title": "projected",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 29772,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:secret",
      "type": "concept",
      "title": "secret",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 29955,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-subpath-with-expanded-environment-variables-using-subpath-expanded-environment",
      "type": "concept",
      "title": "Using subPath with expanded environment variables {#using-subpath-expanded-environment}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 31761,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csi",
      "type": "concept",
      "title": "csi",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 34429,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flexvolume-deprecated-flexvolume",
      "type": "concept",
      "title": "flexVolume (deprecated)   {#flexvolume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 43269,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:recursive-read-only-mounts",
      "type": "concept",
      "title": "Recursive read-only mounts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 48068,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/dynamic-provisioning",
      "type": "page",
      "title": "Dynamic Volume Provisioning",
      "summary": "",
      "body": "\n\nDynamic volume provisioning allows storage volumes to be created on-demand.\nWithout dynamic provisioning, cluster administrators have to manually make\ncalls to their cloud or storage provider to create new storage volumes, and\nthen create [`PersistentVolume` objects](/docs/concepts/storage/persistent-volumes/)\nto represent them in Kubernetes. The dynamic provisioning feature eliminates\nthe need for cluster administrators to pre-provision storage. Instead, it\nautomatically provisions storage when users create\n[`PersistentVolumeClaim` objects](/docs/concepts/storage/persistent-volumes/).\n\n\n\n## Background\n\nThe implementation of dynamic volume provisioning is based on the API object `StorageClass`\nfrom the API group `storage.k8s.io`. A cluster administrator can define as many\n`StorageClass` objects as needed, each specifying a *volume plugin* (aka\n*provisioner*) that provisions a volume and the set of parameters to pass to\nthat provisioner when provisioning.\nA cluster administrator can define and expose multiple flavors of storage (from\nthe same or different storage systems) within a cluster, each with a custom set\nof parameters. This design also ensures that end users don't have to worry\nabout the complexity and nuances of how storage is provisioned, but still\nhave the ability to select from multiple storage options.\n\nFor more details, see the [Storage Classes](/docs/concepts/storage/storage-classes/) concept.\n\n## Enabling Dynamic Provisioning\n\nTo enable dynamic provisioning, a cluster administrator needs to pre-create\none or more StorageClass objects for users.\nStorageClass objects define which provisioner should be used and what parameters\nshould be passed to that provisioner when dynamic provisioning is invoked.\nThe name of a StorageClass object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\nThe following manifest creates a storage class \"slow\" which provisions standard\ndisk-like persistent disks.\n\n```yaml\napiVersion: storage.k8s.io/v1\nkind: StorageClass\nmetadata:\n  name: slow\nprovisioner: kubernetes.io/gce-pd\nparameters:\n  type: pd-standard\n```\n\nThe following manifest creates a storage class \"fast\" which provisions\nSSD-like persistent disks.\n\n```yaml\napiVersion: storage.k8s.io/v1\nkind: StorageClass\nmetadata:\n  name: fast\nprovisioner: kubernetes.io/gce-pd\nparameters:\n  type: pd-ssd\n```\n\n## Using Dynamic Provisioning\n\nUsers request dynamically provisioned storage by including a storage class in\ntheir `PersistentVolumeClaim`. Before Kubernetes v1.6, this was done via the\n`volume.beta.kubernetes.io/storage-class` annotation. However, this annotation\nis deprecated since v1.9. Users now can and should instead use the\n`storageClassName` field of the `PersistentVolumeClaim` object. The value of\nthis field must match the name of a `StorageClass` configured by the\nadministrator (see [Enabling Dynamic Provisioning](#enabling-dynamic-provisioning)).\n\nTo select the \"fast\" storage class, for example, a user would create the\nfollowing PersistentVolumeClaim:\n\n```yaml\napiVersion: v1\nkind: PersistentVolumeClaim\nmetadata:\n  name: claim1\nspec:\n  accessModes:\n    - ReadWriteOnce\n  storageClassName: fast\n  resources:\n    requests:\n      storage: 30Gi\n```\n\nThis claim results in an SSD-like Persistent Disk being automatically\nprovisioned. When the claim is deleted, the volume is destroyed.\n\n## Defaulting Behavior\n\nDynamic provisioning can be enabled on a cluster such that all claims are\ndynamically provisioned if no storage class is specified. A cluster administrator\ncan enable this behavior by:\n\n- Marking one `StorageClass` object as *default*.\n- Making sure that the [`DefaultStorageClass` admission controller](/docs/reference/access-authn-authz/admission-controllers/#defaultstorageclass)\n  is enabled on the API server.\n\nAn administrator can mark a specific `StorageClass` as default by adding the\n[`storageclass.kubernetes.io/is-default-class` annotation](/docs/reference/labels-annota\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/storage/dynamic-provisioning.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": null,
          "line_end": null,
          "quote": "Dynamic Volume Provisioning"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-dynamic-provisioning",
      "type": "concept",
      "title": "Enabling Dynamic Provisioning",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": 1465,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-dynamic-provisioning",
      "type": "concept",
      "title": "Using Dynamic Provisioning",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": 2425,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defaulting-behavior",
      "type": "concept",
      "title": "Defaulting Behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": 3426,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-awareness",
      "type": "concept",
      "title": "Topology Awareness",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": 4644,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/_index",
      "type": "page",
      "title": "Storage",
      "summary": "Ways to provide both long-term and temporary storage to Pods in your cluster.",
      "body": "Storage management is essential for efficient Kubernetes cluster operation.\n\n**Why it matters**\nProper storage configuration ensures data integrity, availability, and performance.\n\n**Key facts**\n- Kubernetes supports various storage solutions, including Persistent Volumes and StatefulSets.\n\n**Common pitfalls**\n- Insufficient or poorly managed storage can result in data loss and application downtime.\n\n**Related**\nstorage",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/_index/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/storage/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/_index.md",
          "url": "https://kubernetes.io/docs/concepts/storage/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Storage"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:concepts/storage/volume-attributes-classes",
      "type": "page",
      "title": "Volume Attributes Classes",
      "summary": "",
      "body": "\n\n\n\nThis page assumes that you are familiar with [StorageClasses](/docs/concepts/storage/storage-classes/),\n[volumes](/docs/concepts/storage/volumes/) and [PersistentVolumes](/docs/concepts/storage/persistent-volumes/)\nin Kubernetes.\n\n\n\nA VolumeAttributesClass provides a way for administrators to describe the mutable\n\"classes\" of storage they offer. Different classes might map to different quality-of-service levels.\nKubernetes itself is un-opinionated about what these classes represent.\n\nThis feature is generally available (GA) as of version 1.34, and users have the option to disable it.\n\nYou can also only use VolumeAttributesClasses with storage backed by\n[Container Storage Interface](#gloss:csi), and only where the\nrelevant CSI driver implements the `ModifyVolume` API.\n\n## The VolumeAttributesClass API\n\nEach VolumeAttributesClass contains the `driverName` and `parameters`, which are\nused when a PersistentVolume (PV) belonging to the class needs to be dynamically provisioned\nor modified.\n\nThe name of a VolumeAttributesClass object is significant and is how users can request a particular class.\nAdministrators set the name and other parameters of a class when first creating VolumeAttributesClass objects.\nWhile the name of a VolumeAttributesClass object in a `PersistentVolumeClaim` is mutable, the parameters in an existing class are immutable.\n\n```yaml\napiVersion: storage.k8s.io/v1\nkind: VolumeAttributesClass\nmetadata:\n  name: silver\ndriverName: pd.csi.storage.gke.io\nparameters:\n  provisioned-iops: \"3000\"\n  provisioned-throughput: \"50\" \n```\n\n### Provisioner\n\nEach VolumeAttributesClass has a provisioner that determines what volume plugin is used for\nprovisioning PVs. The field `driverName` must be specified.\n\nThe feature support for VolumeAttributesClass is implemented in\n[kubernetes-csi/external-provisioner](https://github.com/kubernetes-csi/external-provisioner).\n\nYou are not restricted to specifying the [kubernetes-csi/external-provisioner](https://github.com/kubernetes-csi/external-provisioner).\nYou can also run and specify external provisioners,\nwhich are independent programs that follow a specification defined by Kubernetes.\nAuthors of external provisioners have full discretion over where their code lives, how\nthe provisioner is shipped, how it needs to be run, what volume plugin it uses, etc.\n\nTo understand how the provisioner works with VolumeAttributesClass, refer to \nthe [CSI external-provisioner documentation](https://kubernetes-csi.github.io/docs/external-provisioner.html).\n\n### Resizer\n\nEach VolumeAttributesClass has a resizer that determines what volume plugin is used\nfor modifying PVs. The field `driverName` must be specified.\n\nThe modifying volume feature support for VolumeAttributesClass is implemented in\n[kubernetes-csi/external-resizer](https://github.com/kubernetes-csi/external-resizer).\n\nFor example, an existing PersistentVolumeClaim is using a VolumeAttributesClass named silver:\n\n```yaml\napiVersion: v1\nkind: PersistentVolumeClaim\nmetadata:\n  name: test-pv-claim\nspec:\n  …\n  volumeAttributesClassName: silver\n  …\n```\n\nA new VolumeAttributesClass gold is available in the cluster:\n\n```yaml\napiVersion: storage.k8s.io/v1\nkind: VolumeAttributesClass\nmetadata:\n  name: gold\ndriverName: pd.csi.storage.gke.io\nparameters:\n  iops: \"4000\"\n  throughput: \"60\"\n```\n\nThe end user can update the PVC with the new VolumeAttributesClass gold and apply:\n\n```yaml\napiVersion: v1\nkind: PersistentVolumeClaim\nmetadata:\n  name: test-pv-claim\nspec:\n  …\n  volumeAttributesClassName: gold\n  …\n```\n\nTo understand how the resizer works with VolumeAttributesClass, refer to \nthe [CSI external-resizer documentation](https://kubernetes-csi.github.io/docs/external-resizer.html).\n\n## Parameters\n\nVolumeAttributeClasses have parameters that describe volumes belonging to them. Different parameters may be accepted\ndepending on the provisioner or the resizer. For example, the value `4000`, for the parameter `iops`,\nand the parameter `throughput` are specif\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/storage/volume-attributes-classes.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/volume-attributes-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/",
          "line_start": null,
          "line_end": null,
          "quote": "Volume Attributes Classes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-volumeattributesclass-api",
      "type": "concept",
      "title": "The VolumeAttributesClass API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-attributes-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/",
          "line_start": 909,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resizer",
      "type": "concept",
      "title": "Resizer",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-attributes-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/",
          "line_start": 2655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/storage/volume-health-monitoring",
      "type": "page",
      "title": "Volume Health Monitoring",
      "summary": "",
      "body": "\n\n\n\n[CSI](#gloss:csi) volume health monitoring allows\nCSI Drivers to detect abnormal volume conditions from the underlying storage systems\nand report them as events on [PVCs](#gloss:persistent-volume-claim)\nor [Pods](#gloss:pod).\n\n\n\n## Volume health monitoring\n\nKubernetes _volume health monitoring_ is part of how Kubernetes implements the\nContainer Storage Interface (CSI). Volume health monitoring feature is implemented\nin two components: an External Health Monitor controller, and the\n[kubelet](#gloss:kubelet).\n\nIf a CSI Driver supports Volume Health Monitoring feature from the controller side,\nan event will be reported on the related\n[PersistentVolumeClaim](#gloss:persistent-volume-claim) (PVC)\nwhen an abnormal volume condition is detected on a CSI volume.\n\nThe External Health Monitor [controller](#gloss:controller)\nalso watches for node failure events. You can enable node failure monitoring by setting\nthe `enable-node-watcher` flag to true. When the external health monitor detects a node\nfailure event, the controller reports an Event will be reported on the PVC to indicate\nthat pods using this PVC are on a failed node.\n\nIf a CSI Driver supports Volume Health Monitoring feature from the node side,\nan Event will be reported on every Pod using the PVC when an abnormal volume\ncondition is detected on a CSI volume. In addition, Volume Health information\nis exposed as Kubelet VolumeStats metrics. A new metric kubelet_volume_stats_health_status_abnormal\nis added. This metric includes two labels: `namespace` and `persistentvolumeclaim`.\nThe count is either 1 or 0. 1 indicates the volume is unhealthy, 0 indicates volume\nis healthy. For more information, please check\n[KEP](https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/1432-volume-health-monitor#kubelet-metrics-changes).\n\n\n> **Note:** You need to enable the `CSIVolumeHealth` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\nto use this feature from the node side.\n\n\n## \n\nSee the [CSI driver documentation](https://kubernetes-csi.github.io/docs/drivers.html)\nto find out which CSI drivers have implemented this feature.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
      "meta": {
        "weight": 100,
        "rel_path": "concepts/storage/volume-health-monitoring.md"
      },
      "provenance": [
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": null,
          "line_end": null,
          "quote": "Volume Health Monitoring"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-health-monitoring",
      "type": "concept",
      "title": "Volume health monitoring",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": 419,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/network-policies",
      "type": "page",
      "title": "Network Policies",
      "summary": "If you want to control traffic flow at the IP address or port level (OSI layer 3 or 4), NetworkPolicies allow you to specify rules for traffic flow within your cluster, and also between Pods and the outside world. Your cluster must use a network plugin that supports NetworkPolicy enforcement.",
      "body": "\n\nIf you want to control traffic flow at the IP address or port level for TCP, UDP, and SCTP protocols,\nthen you might consider using Kubernetes NetworkPolicies for particular applications in your cluster.\nNetworkPolicies are an application-centric construct which allow you to specify how a\n[pod](#gloss:pod) is allowed to communicate with various network\n\"entities\" (we use the word \"entity\" here to avoid overloading the more common terms such as\n\"endpoints\" and \"services\", which have specific Kubernetes connotations) over the network.\nNetworkPolicies apply to a connection with a pod on one or both ends, and are not relevant to\nother connections.\n\nThe entities that a Pod can communicate with are identified through a combination of the following\nthree identifiers:\n\n1. Other pods that are allowed (exception: a pod cannot block access to itself)\n1. Namespaces that are allowed\n1. IP blocks (exception: traffic to and from the node where a Pod is running is always allowed,\n   regardless of the IP address of the Pod or the node)\n\nWhen defining a pod- or namespace-based NetworkPolicy, you use a\n[selector](#gloss:selector) to specify what traffic is allowed to\nand from the Pod(s) that match the selector.\n\nMeanwhile, when IP-based NetworkPolicies are created, we define policies based on IP blocks (CIDR ranges).\n\n\n## Prerequisites\n\nNetwork policies are implemented by the [network plugin](/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/).\nTo use network policies, you must be using a networking solution which supports NetworkPolicy.\nCreating a NetworkPolicy resource without a controller that implements it will have no effect.\n\n## The two sorts of pod isolation\n\nThere are two sorts of isolation for a pod: isolation for egress, and isolation for ingress.\nThey concern what connections may be established. \"Isolation\" here is not absolute, rather it\nmeans \"some restrictions apply\". The alternative, \"non-isolated for $direction\", means that no\nrestrictions apply in the stated direction. The two sorts of isolation (or not) are declared\nindependently, and are both relevant for a connection from one pod to another.\n\nBy default, a pod is non-isolated for egress; all outbound connections are allowed.\nA pod is isolated for egress if there is any NetworkPolicy that both selects the pod and has\n\"Egress\" in its `policyTypes`; we say that such a policy applies to the pod for egress.\nWhen a pod is isolated for egress, the only allowed connections from the pod are those allowed by\nthe `egress` list of some NetworkPolicy that applies to the pod for egress. Reply traffic for those\nallowed connections will also be implicitly allowed.\nThe effects of those `egress` lists combine additively.\n\nBy default, a pod is non-isolated for ingress; all inbound connections are allowed.\nA pod is isolated for ingress if there is any NetworkPolicy that both selects the pod and\nhas \"Ingress\" in its `policyTypes`; we say that such a policy applies to the pod for ingress.\nWhen a pod is isolated for ingress, the only allowed connections into the pod are those from\nthe pod's node and those allowed by the `ingress` list of some NetworkPolicy that applies to\nthe pod for ingress. Reply traffic for those allowed connections will also be implicitly allowed.\nThe effects of those `ingress` lists combine additively.\n\nNetwork policies do not conflict; they are additive. If any policy or policies apply to a given\npod for a given direction, the connections allowed in that direction from that pod is the union of\nwhat the applicable policies allow. Thus, order of evaluation does not affect the policy result.\n\nFor a connection from a source pod to a destination pod to be allowed, both the egress policy on\nthe source pod and the ingress policy on the destination pod need to allow the connection. If\neither side does not allow the connection, it will not happen.\n\n## The NetworkPolicy resource {#networkpolicy-resource}\n\nSee the [NetworkPolicy](/docs/reference/generated/kubernetes\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/services-networking/network-policies.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": null,
          "line_end": null,
          "quote": "Network Policies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prerequisites",
      "type": "concept",
      "title": "Prerequisites",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 1417,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-two-sorts-of-pod-isolation",
      "type": "concept",
      "title": "The two sorts of pod isolation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 1755,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-networkpolicy-resource-networkpolicy-resource",
      "type": "concept",
      "title": "The NetworkPolicy resource {#networkpolicy-resource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 3976,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:behavior-of-to-and-from-selectors",
      "type": "concept",
      "title": "Behavior of `to` and `from` selectors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 7284,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-policies",
      "type": "concept",
      "title": "Default policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 9811,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:network-traffic-filtering",
      "type": "concept",
      "title": "Network traffic filtering",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 12537,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:targeting-a-range-of-ports",
      "type": "concept",
      "title": "Targeting a range of ports",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 13372,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:targeting-multiple-namespaces-by-label",
      "type": "concept",
      "title": "Targeting multiple namespaces by label",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 14575,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:targeting-a-namespace-by-its-name",
      "type": "concept",
      "title": "Targeting a Namespace by its name",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 15577,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-lifecycle",
      "type": "concept",
      "title": "Pod lifecycle",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 15914,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networkpolicy-and-hostnetwork-pods",
      "type": "concept",
      "title": "NetworkPolicy and `hostNetwork` pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 18237,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-you-can-t-do-with-network-policies-at-least-not-yet",
      "type": "concept",
      "title": "What you can't do with network policies (at least, not yet)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 19669,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networkpolicy-s-impact-on-existing-connections",
      "type": "concept",
      "title": "NetworkPolicy's impact on existing connections",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 21491,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-deny-all-ingress-traffic",
      "type": "concept",
      "title": "Default deny all ingress traffic",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 10043,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:allow-all-ingress-traffic",
      "type": "concept",
      "title": "Allow all ingress traffic",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 10518,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-deny-all-egress-traffic",
      "type": "concept",
      "title": "Default deny all egress traffic",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 10949,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:allow-all-egress-traffic",
      "type": "concept",
      "title": "Allow all egress traffic",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 11649,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-deny-all-ingress-and-all-egress-traffic",
      "type": "concept",
      "title": "Default deny all ingress and all egress traffic",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 12120,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/endpoint-slices",
      "type": "page",
      "title": "EndpointSlices",
      "summary": "The EndpointSlice API is the mechanism that Kubernetes uses to let your Service scale to handle large numbers of backends, and allows the cluster to update its list of healthy backends efficiently.",
      "body": "\n\n\n\n[definition:endpoint-slice]\n\n\n\n## EndpointSlice API {#endpointslice-resource}\n\nIn Kubernetes, an EndpointSlice contains references to a set of network\nendpoints. The control plane automatically creates EndpointSlices\nfor any Kubernetes Service that has a [selector](#gloss:selector) specified. These EndpointSlices include\nreferences to all the Pods that match the Service selector. EndpointSlices group\nnetwork endpoints together by unique combinations of IP family, protocol,\nport number, and Service name.\nThe name of a EndpointSlice object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\nAs an example, here's a sample EndpointSlice object, that's owned by the `example`\nKubernetes Service.\n\n```yaml\napiVersion: discovery.k8s.io/v1\nkind: EndpointSlice\nmetadata:\n  name: example-abc\n  labels:\n    kubernetes.io/service-name: example\naddressType: IPv4\nports:\n  - name: http\n    protocol: TCP\n    port: 80\nendpoints:\n  - addresses:\n      - \"10.1.2.3\"\n    conditions:\n      ready: true\n    hostname: pod-1\n    nodeName: node-1\n    zone: us-west2-a\n```\n\nBy default, the control plane creates and manages EndpointSlices to have no\nmore than 100 endpoints each. You can configure this with the\n`--max-endpoints-per-slice`\n[kube-controller-manager](#gloss:kube-controller-manager)\nflag, up to a maximum of 1000.\n\nEndpointSlices act as the source of truth for\n[kube-proxy](#gloss:kube-proxy) when it comes to\nhow to route internal traffic.\n\n### Address types\n\nEndpointSlices support two address types:\n\n* IPv4\n* IPv6\n\nEach `EndpointSlice` object represents a specific IP address type. If you have\na Service that is available via IPv4 and IPv6, there will be at least two\n`EndpointSlice` objects (one for IPv4, and one for IPv6).\n\n### Conditions\n\nThe EndpointSlice API stores conditions about endpoints that may be useful for consumers.\nThe three conditions are `serving`, `terminating`, and `ready`.\n\n#### Serving\n\n\n\nThe `serving` condition indicates that the endpoint is currently serving responses, and\nso it should be used as a target for Service traffic. For endpoints backed by a Pod, this\nmaps to the Pod's `Ready` condition.\n\n#### Terminating\n\n\n\nThe `terminating` condition indicates that the endpoint is\nterminating. For endpoints backed by a Pod, this condition is set when\nthe Pod is first deleted (that is, when it receives a deletion\ntimestamp, but most likely before the Pod's containers exit).\n\nService proxies will normally ignore endpoints that are `terminating`,\nbut they may route traffic to endpoints that are both `serving` and\n`terminating` if all available endpoints are `terminating`. (This\nhelps to ensure that no Service traffic is lost during rolling updates\nof the underlying Pods.)\n\n#### Ready\n\nThe `ready` condition is essentially a shortcut for checking\n\"`serving` and not `terminating`\" (though it will also always be\n`true` for Services with `spec.publishNotReadyAddresses` set to\n`true`).\n\n### Topology information {#topology}\n\nEach endpoint within an EndpointSlice can contain relevant topology information.\nThe topology information includes the location of the endpoint and information\nabout the corresponding Node and zone. These are available in the following\nper endpoint fields on EndpointSlices:\n\n* `nodeName` - The name of the Node this endpoint is on.\n* `zone` - The zone this endpoint is in.\n\n### Management\n\nMost often, the control plane (specifically, the endpoint slice\n[controller](#gloss:controller)) creates and\nmanages EndpointSlice objects. There are a variety of other use cases for\nEndpointSlices, such as service mesh implementations, that could result in other\nentities or controllers managing additional sets of EndpointSlices.\n\nTo ensure that multiple entities can manage EndpointSlices without interfering\nwith each other, Kubernetes defines the\n[label](#gloss:label)\n`endpointslice.kubernetes.io/managed-by`, which indicates the entity managing\nan EndpointSlice.\nThe endpoint sli\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/services-networking/endpoint-slices.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": null,
          "line_end": null,
          "quote": "EndpointSlices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslice-api-endpointslice-resource",
      "type": "concept",
      "title": "EndpointSlice API {#endpointslice-resource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:address-types",
      "type": "concept",
      "title": "Address types",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 1730,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:conditions",
      "type": "concept",
      "title": "Conditions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 2019,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-information-topology",
      "type": "concept",
      "title": "Topology information {#topology}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 3332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:management",
      "type": "concept",
      "title": "Management",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 3745,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ownership",
      "type": "concept",
      "title": "Ownership",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 4613,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:distribution-of-endpointslices",
      "type": "concept",
      "title": "Distribution of EndpointSlices",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 4935,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:duplicate-endpoints",
      "type": "concept",
      "title": "Duplicate endpoints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 6935,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslice-mirroring",
      "type": "concept",
      "title": "EndpointSlice mirroring",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 7669,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/service-traffic-policy",
      "type": "page",
      "title": "Service Internal Traffic Policy",
      "summary": "If two Pods in your cluster want to communicate, and both Pods are actually running on the same node, use _Service Internal Traffic Policy_ to keep network traffic within that node. Avoiding a round trip via the cluster network can help with reliability, performance (network latency and throughput), or cost.",
      "body": "\n\n\n\n_Service Internal Traffic Policy_ enables internal traffic restrictions to only route\ninternal traffic to endpoints within the node the traffic originated from. The\n\"internal\" traffic here refers to traffic originated from Pods in the current\ncluster. This can help to reduce costs and improve performance.\n\n\n\n## Using Service Internal Traffic Policy\n\nYou can enable the internal-only traffic policy for a\n[Service](#gloss:service), by setting its\n`.spec.internalTrafficPolicy` to `Local`. This tells kube-proxy to only use node local\nendpoints for cluster internal traffic.\n\n\n> **Note:** For pods on nodes with no endpoints for a given Service, the Service\nbehaves as if it has zero endpoints (for Pods on this node) even if the service\ndoes have endpoints on other nodes.\n\n\nThe following example shows what a Service looks like when you set\n`.spec.internalTrafficPolicy` to `Local`:\n\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  name: my-service\nspec:\n  selector:\n    app.kubernetes.io/name: MyApp\n  ports:\n    - protocol: TCP\n      port: 80\n      targetPort: 9376\n  internalTrafficPolicy: Local\n```\n\n## How it works\n\nThe kube-proxy filters the endpoints it routes to based on the\n`spec.internalTrafficPolicy` setting. When it's set to `Local`, only node local\nendpoints are considered. When it's `Cluster` (the default), or is not set,\nKubernetes considers all endpoints.\n\n## \n\n* Read about [Topology Aware Routing](/docs/concepts/services-networking/topology-aware-routing)\n* Read about [Service External Traffic Policy](/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip)\n* Follow the [Connecting Applications with Services](/docs/tutorials/services/connect-applications-service/) tutorial\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/service-traffic-policy/",
      "meta": {
        "weight": 120,
        "rel_path": "concepts/services-networking/service-traffic-policy.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/service-traffic-policy.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service-traffic-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Service Internal Traffic Policy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-service-internal-traffic-policy",
      "type": "concept",
      "title": "Using Service Internal Traffic Policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service-traffic-policy.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service-traffic-policy/",
          "line_start": 405,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/ingress-controllers",
      "type": "page",
      "title": "Ingress Controllers",
      "summary": "In order for an [Ingress](/docs/concepts/services-networking/ingress/) to work in your cluster, there must be an _ingress controller_ running. You need to select at least one ingress controller and make sure it is set up in your cluster.   This page lists common ingress controllers that you can deploy.",
      "body": "\n> **Note:** The Kubernetes project recommends using [Gateway](https://gateway-api.sigs.k8s.io/) instead of\n[Ingress](/docs/concepts/services-networking/ingress/).\nThe Ingress API has been frozen.\n\nThis means that:\n* The Ingress API is generally available, and is subject to the [stability guarantees](/docs/reference/using-api/deprecation-policy/#deprecating-parts-of-the-api) for generally available APIs.\n  The Kubernetes project has no plans to remove Ingress from Kubernetes.\n* The Ingress API is no longer being developed, and will have no further changes\n  or updates made to it.\n\n\n\n\n\n\n\n## Ingress controllers\n\nKubernetes as a project supports and maintains [AWS](https://github.com/kubernetes-sigs/aws-load-balancer-controller#readme), and [GCE](https://git.k8s.io/ingress-gce/README.md#readme) ingress controllers.\n\n\n\n## Third party ingress controllers\n\n\n\n* [AKS Application Gateway Ingress Controller](https://docs.microsoft.com/azure/application-gateway/tutorial-ingress-controller-add-on-existing?toc=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Faks%2Ftoc.json&bc=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Fbread%2Ftoc.json) is an ingress controller that configures the [Azure Application Gateway](https://docs.microsoft.com/azure/application-gateway/overview).\n* [Alibaba Cloud API Gateway Ingress](https://www.alibabacloud.com/help/en/api-gateway/cloud-native-api-gateway/user-guide/ingress-managementapig-ngress-management) is an ingress controller that configures the [Alibaba Cloud Native API Gateway](https://www.alibabacloud.com/help/en/api-gateway/cloud-native-api-gateway/product-overview/what-is-cloud-native-api-gateway), which is also the commercial version of [Higress](https://github.com/alibaba/higress).\n* [Apache APISIX ingress controller](https://github.com/apache/apisix-ingress-controller) is an [Apache APISIX](https://github.com/apache/apisix)-based ingress controller.\n* [Avi Kubernetes Operator](https://github.com/vmware/load-balancer-and-ingress-services-for-kubernetes) provides L4-L7 load-balancing using [VMware NSX Advanced Load Balancer](https://avinetworks.com/).\n* [BFE Ingress Controller](https://github.com/bfenetworks/ingress-bfe) is a [BFE](https://www.bfe-networks.net)-based ingress controller.\n* [BunkerWeb Ingress Controller](https://docs.bunkerweb.io/latest/integrations/#kubernetes) is an ingress controller for [BunkerWeb](https://www.bunkerweb.io/), WAF (Web Application Firewall) based on nginx.\n* [Cilium Ingress Controller](https://docs.cilium.io/en/stable/network/servicemesh/ingress/) is an ingress controller powered by [Cilium](https://cilium.io/).\n* The [Citrix ingress controller](https://github.com/citrix/citrix-k8s-ingress-controller#readme) works with\n  Citrix Application Delivery Controller.\n* [Contour](https://projectcontour.io/) is an [Envoy](https://www.envoyproxy.io/) based ingress controller.\n* [Emissary-Ingress](https://www.getambassador.io/products/api-gateway) API Gateway is an [Envoy](https://www.envoyproxy.io)-based ingress\n  controller.\n* [EnRoute](https://getenroute.io/) is an [Envoy](https://www.envoyproxy.io) based API gateway that can run as an ingress controller.\n* F5 BIG-IP [Container Ingress Services for Kubernetes](https://clouddocs.f5.com/containers/latest/userguide/kubernetes/)\n  lets you use an Ingress to configure F5 BIG-IP virtual servers.\n* [FortiADC Ingress Controller](https://docs.fortinet.com/document/fortiadc/7.0.0/fortiadc-ingress-controller/742835/fortiadc-ingress-controller-overview) support the Kubernetes Ingress resources and allows you to manage FortiADC objects from Kubernetes\n* [Gloo](https://gloo.solo.io) is an open-source ingress controller based on [Envoy](https://www.envoyproxy.io),\n  which offers API gateway functionality.\n* [HAProxy Ingress](https://haproxy-ingress.github.io/) is an ingress controller for\n  [HAProxy](https://www.haproxy.org/#desc).\n* [Higress](https://github.com/alibaba/higress) is an [Envoy](https://www.envoyproxy.io) based API ga\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/services-networking/ingress-controllers.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/ingress-controllers.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/",
          "line_start": null,
          "line_end": null,
          "quote": "Ingress Controllers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingress-controllers",
      "type": "concept",
      "title": "Ingress controllers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress-controllers.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/",
          "line_start": 638,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:third-party-ingress-controllers",
      "type": "concept",
      "title": "Third party ingress controllers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress-controllers.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/",
          "line_start": 871,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-multiple-ingress-controllers",
      "type": "concept",
      "title": "Using multiple Ingress controllers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress-controllers.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/",
          "line_start": 6702,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/dual-stack",
      "type": "page",
      "title": "IPv4/IPv6 dual-stack",
      "summary": "Kubernetes lets you configure single-stack IPv4 networking, single-stack IPv6 networking, or dual stack networking with both network families active. This page explains how.",
      "body": "\n\n\n\nIPv4/IPv6 dual-stack networking enables the allocation of both IPv4 and IPv6 addresses to\n[Pods](#gloss:pod) and [Services](#gloss:service).\n\nIPv4/IPv6 dual-stack networking is enabled by default for your Kubernetes cluster starting in\n1.21, allowing the simultaneous assignment of both IPv4 and IPv6 addresses.\n\n\n\n## Supported Features\n\nIPv4/IPv6 dual-stack on your Kubernetes cluster provides the following features:\n\n* Dual-stack Pod networking (a single IPv4 and IPv6 address assignment per Pod)\n* IPv4 and IPv6 enabled Services\n* Pod off-cluster egress routing (eg. the Internet) via both IPv4 and IPv6 interfaces\n\n## Prerequisites\n\nThe following prerequisites are needed in order to utilize IPv4/IPv6 dual-stack Kubernetes clusters:\n\n* Kubernetes 1.20 or later\n\n  For information about using dual-stack services with earlier\n  Kubernetes versions, refer to the documentation for that version\n  of Kubernetes.\n\n* Provider support for dual-stack networking (Cloud provider or otherwise must be able to provide\n  Kubernetes nodes with routable IPv4/IPv6 network interfaces)\n* A [network plugin](/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/) that\n  supports dual-stack networking.\n\n## Configure IPv4/IPv6 dual-stack\n\nTo configure IPv4/IPv6 dual-stack, set dual-stack cluster network assignments:\n\n* kube-apiserver:\n  * `--service-cluster-ip-range=<IPv4 CIDR>,<IPv6 CIDR>`\n* kube-controller-manager:\n  * `--cluster-cidr=<IPv4 CIDR>,<IPv6 CIDR>`\n  * `--service-cluster-ip-range=<IPv4 CIDR>,<IPv6 CIDR>`\n  * `--node-cidr-mask-size-ipv4|--node-cidr-mask-size-ipv6` defaults to /24 for IPv4 and /64 for IPv6\n* kube-proxy:\n  * `--cluster-cidr=<IPv4 CIDR>,<IPv6 CIDR>`\n* kubelet:\n  * `--node-ip=<IPv4 IP>,<IPv6 IP>`\n    * This option is required for bare metal dual-stack nodes (nodes that do not define a\n      cloud provider with the `--cloud-provider` flag). If you are using a cloud provider\n      and choose to override the node IPs chosen by the cloud provider, set the\n      `--node-ip` option.\n    * (The legacy built-in cloud providers do not support dual-stack `--node-ip`.)\n\n\n> **Note:** An example of an IPv4 CIDR: `10.244.0.0/16` (though you would supply your own address range)\n\nAn example of an IPv6 CIDR: `fdXY:IJKL:MNOP:15::/64` (this shows the format but is not a valid\naddress - see [RFC 4193](https://tools.ietf.org/html/rfc4193))\n\n\n## Services\n\nYou can create [Services](#gloss:service) which can use IPv4, IPv6, or both.\n\nThe address family of a Service defaults to the address family of the first service cluster IP\nrange (configured via the `--service-cluster-ip-range` flag to the kube-apiserver).\n\nWhen you define a Service you can optionally configure it as dual stack. To specify the behavior you want, you\nset the `.spec.ipFamilyPolicy` field to one of the following values:\n\n* `SingleStack`: Single-stack service. The control plane allocates a cluster IP for the Service,\n  using the first configured service cluster IP range.\n* `PreferDualStack`: Allocates both IPv4 and IPv6 cluster IPs for the Service when dual-stack is enabled. If dual-stack is not enabled or supported, it falls back to single-stack behavior.\n* `RequireDualStack`: Allocates Service `.spec.clusterIPs` from both IPv4 and IPv6 address ranges when dual-stack is enabled. If dual-stack is not enabled or supported, the Service API object creation fails.\n  * Selects the `.spec.clusterIP` from the list of `.spec.clusterIPs` based on the address family\n    of the first element in the `.spec.ipFamilies` array.\n\nIf you would like to define which IP family to use for single stack or define the order of IP\nfamilies for dual-stack, you can choose the address families by setting an optional field,\n`.spec.ipFamilies`, on the Service.\n\n\n> **Note:** The `.spec.ipFamilies` field is conditionally mutable: you can add or remove a secondary\nIP address family, but you cannot change the primary IP address family of an existing Service.\n\n\nYou can set `.spec.ipFamilies` to any of the\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/services-networking/dual-stack.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": null,
          "line_end": null,
          "quote": "IPv4/IPv6 dual-stack"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:supported-features",
      "type": "concept",
      "title": "Supported Features",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 474,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-ipv4-ipv6-dual-stack",
      "type": "concept",
      "title": "Configure IPv4/IPv6 dual-stack",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 1368,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:services",
      "type": "concept",
      "title": "Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 2545,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:egress-traffic",
      "type": "concept",
      "title": "Egress traffic",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 10771,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dual-stack-service-configuration-scenarios",
      "type": "concept",
      "title": "Dual-stack Service configuration scenarios",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 4407,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:headless-services-without-selector",
      "type": "concept",
      "title": "Headless Services without selector",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 10153,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-type-loadbalancer",
      "type": "concept",
      "title": "Service type LoadBalancer",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 10415,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/gateway",
      "type": "page",
      "title": "Gateway API",
      "summary": "Gateway API is a family of API kinds that provide dynamic infrastructure provisioning and advanced traffic routing.",
      "body": "\n\nMake network services available by using an extensible, role-oriented, protocol-aware configuration\nmechanism. [Gateway API](https://gateway-api.sigs.k8s.io/) is an [add-on](#gloss:addons)\ncontaining API [kinds](https://gateway-api.sigs.k8s.io/references/spec/) that provide dynamic infrastructure\nprovisioning and advanced traffic routing.\n\n\n\n## Design principles\n\nThe following principles shaped the design and architecture of Gateway API:\n\n* __Role-oriented:__ Gateway API kinds are modeled after organizational roles that are\n  responsible for managing Kubernetes service networking:\n  * __Infrastructure Provider:__ Manages infrastructure that allows multiple isolated clusters\n    to serve multiple tenants, e.g. a cloud provider.\n  * __Cluster Operator:__ Manages clusters and is typically concerned with policies, network\n    access, application permissions, etc.\n  * __Application Developer:__ Manages an application running in a cluster and is typically\n    concerned with application-level configuration and [Service](/docs/concepts/services-networking/service/)\n    composition.\n* __Portable:__ Gateway API specifications are defined as [custom resources](/docs/concepts/extend-kubernetes/api-extension/custom-resources)\n  and are supported by many [implementations](https://gateway-api.sigs.k8s.io/implementations/).\n* __Expressive:__ Gateway API kinds support functionality for common traffic routing use cases\n  such as header-based matching, traffic weighting, and others that were only possible in\n  [Ingress](/docs/concepts/services-networking/ingress/) by using custom annotations.\n* __Extensible:__ Gateway allows for custom resources to be linked at various layers of the API.\n  This makes granular customization possible at the appropriate places within the API structure.\n\n## Resource model\n\nGateway API has four stable API kinds:\n\n* __GatewayClass:__ Defines a set of gateways with common configuration and managed by a controller\n  that implements the class.\n\n* __Gateway:__ Defines an instance of traffic handling infrastructure, such as cloud load balancer.\n\n* __HTTPRoute:__ Defines HTTP-specific rules for mapping traffic from a Gateway listener to a\n  representation of backend network endpoints. These endpoints are often represented as a\n  [Service](#gloss:service).\n\n* __GRPCRoute:__ Defines gRPC-specific rules for mapping traffic from a Gateway listener to a\nrepresentation of backend network endpoints. These endpoints are often represented as a\n  [Service](#gloss:service).\n\nGateway API is organized into different API kinds that have interdependent relationships to support\nthe role-oriented nature of organizations. A Gateway object is associated with exactly one GatewayClass;\nthe GatewayClass describes the gateway controller responsible for managing Gateways of this class.\nOne or more route kinds such as HTTPRoute, are then associated to Gateways. A Gateway can filter the routes\nthat may be attached to its `listeners`, forming a bidirectional trust model with routes.\n\nThe following figure illustrates the relationships of the three stable Gateway API kinds:\n\n\n![A figure illustrating the relationships of the three stable Gateway API kinds](/docs/images/gateway-kind-relationships.svg)\n\n\n### GatewayClass {#api-kind-gateway-class}\n\nGateways can be implemented by different controllers, often with different configurations. A Gateway\nmust reference a GatewayClass that contains the name of the controller that implements the\nclass.\n\nA minimal GatewayClass example:\n\n```yaml\napiVersion: gateway.networking.k8s.io/v1\nkind: GatewayClass\nmetadata:\n  name: example-class\nspec:\n  controllerName: example.com/gateway-controller\n```\n\nIn this example, a controller that has implemented Gateway API is configured to manage GatewayClasses\nwith the controller name `example.com/gateway-controller`. Gateways of this class will be managed by\nthe implementation's controller.\n\nSee the [GatewayClass](https://gateway-api.sigs.k8s.io/references/spec/#gateway.networkin\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
      "meta": {
        "weight": 55,
        "rel_path": "concepts/services-networking/gateway.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": null,
          "line_end": null,
          "quote": "Gateway API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:design-principles",
      "type": "concept",
      "title": "Design principles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 407,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-model",
      "type": "concept",
      "title": "Resource model",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 1859,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:request-flow",
      "type": "concept",
      "title": "Request flow",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 8959,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:conformance",
      "type": "concept",
      "title": "Conformance",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 10149,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-from-ingress",
      "type": "concept",
      "title": "Migrating from Ingress",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 10566,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:gatewayclass-api-kind-gateway-class",
      "type": "concept",
      "title": "GatewayClass {#api-kind-gateway-class}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 3402,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:gateway-api-kind-gateway",
      "type": "concept",
      "title": "Gateway {#api-kind-gateway}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 4242,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:httproute-api-kind-httproute",
      "type": "concept",
      "title": "HTTPRoute {#api-kind-httproute}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 5653,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:grpcroute-api-kind-grpcroute",
      "type": "concept",
      "title": "GRPCRoute {#api-kind-grpcroute}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 6918,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/cluster-ip-allocation",
      "type": "page",
      "title": "Service ClusterIP allocation",
      "summary": "",
      "body": "\n\nIn Kubernetes, [Services](/docs/concepts/services-networking/service/) are an abstract way to expose\nan application running on a set of Pods. Services\ncan have a cluster-scoped virtual IP address (using a Service of `type: ClusterIP`).\nClients can connect using that virtual IP address, and Kubernetes then load-balances traffic to that\nService across the different backing Pods.\n\n\n\n## How Service ClusterIPs are allocated?\n\nWhen Kubernetes needs to assign a virtual IP address for a Service,\nthat assignment happens one of two ways:\n\n_dynamically_\n: the cluster's control plane automatically picks a free IP address from within the configured IP range for `type: ClusterIP` Services.\n\n_statically_\n: you specify an IP address of your choice, from within the configured IP range for Services.\n\nAcross your whole cluster, every Service `ClusterIP` must be unique.\nTrying to create a Service with a specific `ClusterIP` that has already\nbeen allocated will return an error.\n\n## Why do you need to reserve Service Cluster IPs?\n\nSometimes you may want to have Services running in well-known IP addresses, so other components and\nusers in the cluster can use them.\n\nThe best example is the DNS Service for the cluster. As a soft convention, some Kubernetes installers assign the 10th IP address from\nthe Service IP range to the DNS service. Assuming you configured your cluster with Service IP range\n10.96.0.0/16 and you want your DNS Service IP to be 10.96.0.10, you'd have to create a Service like\nthis:\n\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  labels:\n    k8s-app: kube-dns\n    kubernetes.io/cluster-service: \"true\"\n    kubernetes.io/name: CoreDNS\n  name: kube-dns\n  namespace: kube-system\nspec:\n  clusterIP: 10.96.0.10\n  ports:\n  - name: dns\n    port: 53\n    protocol: UDP\n    targetPort: 53\n  - name: dns-tcp\n    port: 53\n    protocol: TCP\n    targetPort: 53\n  selector:\n    k8s-app: kube-dns\n  type: ClusterIP\n```\n\nBut, as it was explained before, the IP address 10.96.0.10 has not been reserved.\nIf other Services are created before or in parallel with dynamic allocation, there is a chance they can allocate this IP.\nHence, you will not be able to create the DNS Service because it will fail with a conflict error.\n\n## How can you avoid Service ClusterIP conflicts? {#avoid-ClusterIP-conflict}\n\nThe allocation strategy implemented in Kubernetes to allocate ClusterIPs to Services reduces the\nrisk of collision.\n\nThe `ClusterIP` range is divided, based on the formula `min(max(16, cidrSize / 16), 256)`,\ndescribed as _never less than 16 or more than 256 with a graduated step between them_.\n\nDynamic IP assignment uses the upper band by default, once this has been exhausted it will\nuse the lower range. This will allow users to use static allocations on the lower band with a low\nrisk of collision.\n\n## Examples {#allocation-examples}\n\n### Example 1 {#allocation-example-1}\n\nThis example uses the IP address range: 10.96.0.0/24 (CIDR notation) for the IP addresses\nof Services.\n\nRange Size: 2<sup>8</sup> - 2 = 254  \nBand Offset: `min(max(16, 256/16), 256)` = `min(16, 256)` = 16  \nStatic band start: 10.96.0.1  \nStatic band end: 10.96.0.16  \nRange end: 10.96.0.254   \n\n\n```mermaid\npie showData\n    title 10.96.0.0/24\n    \"Static\" : 16\n    \"Dynamic\" : 238\n```\n\n\n### Example 2 {#allocation-example-2}\n\nThis example uses the IP address range: 10.96.0.0/20 (CIDR notation) for the IP addresses\nof Services.\n\nRange Size: 2<sup>12</sup> - 2 = 4094  \nBand Offset: `min(max(16, 4096/16), 256)` = `min(256, 256)` = 256  \nStatic band start: 10.96.0.1  \nStatic band end: 10.96.1.0  \nRange end: 10.96.15.254  \n\n\n```mermaid\npie showData\n    title 10.96.0.0/20\n    \"Static\" : 256\n    \"Dynamic\" : 3838\n```\n\n\n### Example 3 {#allocation-example-3}\n\nThis example uses the IP address range: 10.96.0.0/16 (CIDR notation) for the IP addresses\nof Services.\n\nRange Size: 2<sup>16</sup> - 2 = 65534  \nBand Offset: `min(max(16, 65536/16), 256)` = `min(4096, 256)` = 256  \nStatic band start: 10.96.0.1  \nStatic \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
      "meta": {
        "weight": 120,
        "rel_path": "concepts/services-networking/cluster-ip-allocation.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": null,
          "line_end": null,
          "quote": "Service ClusterIP allocation"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-service-clusterips-are-allocated",
      "type": "concept",
      "title": "How Service ClusterIPs are allocated?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 416,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-do-you-need-to-reserve-service-cluster-ips",
      "type": "concept",
      "title": "Why do you need to reserve Service Cluster IPs?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 1006,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-can-you-avoid-service-clusterip-conflicts-avoid-clusterip-conflict",
      "type": "concept",
      "title": "How can you avoid Service ClusterIP conflicts? {#avoid-ClusterIP-conflict}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 2261,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:examples-allocation-examples",
      "type": "concept",
      "title": "Examples {#allocation-examples}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 2845,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-1-allocation-example-1",
      "type": "concept",
      "title": "Example 1 {#allocation-example-1}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 2881,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-2-allocation-example-2",
      "type": "concept",
      "title": "Example 2 {#allocation-example-2}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 3323,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-3-allocation-example-3",
      "type": "concept",
      "title": "Example 3 {#allocation-example-3}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 3771,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/service",
      "type": "page",
      "title": "Service",
      "summary": "Expose an application running in your cluster behind a single outward-facing endpoint, even when the workload is split across multiple backends.",
      "body": "\n\n[definition:service]\n\nA key aim of Services in Kubernetes is that you don't need to modify your existing\napplication to use an unfamiliar service discovery mechanism.\nYou can run code in Pods, whether this is a code designed for a cloud-native world, or\nan older app you've containerized. You use a Service to make that set of Pods available\non the network so that clients can interact with it.\n\nIf you use a [deployment](#gloss:deployment) to run your app,\nthat Deployment can create and destroy Pods dynamically. From one moment to the next,\nyou don't know how many of those Pods are working and healthy; you might not even know\nwhat those healthy Pods are named.\nKubernetes [Pods](#gloss:pod) are created and destroyed\nto match the desired state of your cluster. Pods are ephemeral resources (you should not\nexpect that an individual Pod is reliable and durable).\n\nEach Pod gets its own IP address (Kubernetes expects network plugins to ensure this).\nFor a given Deployment in your cluster, the set of Pods running in one moment in\ntime could be different from the set of Pods running that application a moment later.\n\nThis leads to a problem: if some set of Pods (call them \"backends\") provides\nfunctionality to other Pods (call them \"frontends\") inside your cluster,\nhow do the frontends find out and keep track of which IP address to connect\nto, so that the frontend can use the backend part of the workload?\n\nEnter _Services_.\n\n\n\n## Services in Kubernetes\n\nThe Service API, part of Kubernetes, is an abstraction to help you expose groups of\nPods over a network. Each Service object defines a logical set of endpoints (usually\nthese endpoints are Pods) along with a policy about how to make those pods accessible.\n\nFor example, consider a stateless image-processing backend which is running with\n3 replicas.  Those replicas are fungible&mdash;frontends do not care which backend\nthey use.  While the actual Pods that compose the backend set may change, the\nfrontend clients should not need to be aware of that, nor should they need to keep\ntrack of the set of backends themselves.\n\nThe Service abstraction enables this decoupling.\n\nThe set of Pods targeted by a Service is usually determined\nby a [selector](#gloss:selector) that you\ndefine.\nTo learn about other ways to define Service endpoints,\nsee [Services _without_ selectors](#services-without-selectors).\n\nIf your workload speaks HTTP, you might choose to use an\n[Ingress](/docs/concepts/services-networking/ingress/) to control how web traffic\nreaches that workload.\nIngress is not a Service type, but it acts as the entry point for your\ncluster. An Ingress lets you consolidate your routing rules into a single resource, so\nthat you can expose multiple components of your workload, running separately in your\ncluster, behind a single listener.\n\nThe [Gateway](https://gateway-api.sigs.k8s.io/#what-is-the-gateway-api) API for Kubernetes\nprovides extra capabilities beyond Ingress and Service. You can add Gateway to your cluster -\nit is a family of extension APIs, implemented using\n[CustomResourceDefinitions](#gloss:CustomResourceDefinition) -\nand then use these to configure access to network services that are running in your cluster.\n\n### Cloud-native service discovery\n\nIf you're able to use Kubernetes APIs for service discovery in your application,\nyou can query the [API server](#gloss:kube-apiserver)\nfor matching EndpointSlices. Kubernetes updates the EndpointSlices for a Service\nwhenever the set of Pods in a Service changes.\n\nFor non-native applications, Kubernetes offers ways to place a network port or load\nbalancer in between your application and the backend Pods.\n\nEither way, your workload can use these [service discovery](#discovering-services)\nmechanisms to find the target it wants to connect to.\n\n## Defining a Service\n\nA Service is an [object](#gloss:object)\n(the same way that a Pod or a ConfigMap is an object). You can create,\nview or modify Service definitions using the Kubernetes API. Usually\nyou use a\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/services-networking/service.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": null,
          "line_end": null,
          "quote": "Service"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:services-in-kubernetes",
      "type": "concept",
      "title": "Services in Kubernetes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 1594,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defining-a-service",
      "type": "concept",
      "title": "Defining a Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 4039,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-type-publishing-services-service-types",
      "type": "concept",
      "title": "Service type  {#publishing-services-service-types}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 16056,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:headless-services",
      "type": "concept",
      "title": "Headless Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 34735,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:discovering-services",
      "type": "concept",
      "title": "Discovering services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 36986,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:virtual-ip-addressing-mechanism",
      "type": "concept",
      "title": "Virtual IP addressing mechanism",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 40367,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-ips",
      "type": "concept",
      "title": "External IPs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 42186,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-object",
      "type": "concept",
      "title": "API Object",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 43483,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cloud-native-service-discovery",
      "type": "concept",
      "title": "Cloud-native service discovery",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 3425,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:port-definitions-field-spec-ports",
      "type": "concept",
      "title": "Port definitions {#field-spec-ports}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 5548,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:services-without-selectors",
      "type": "concept",
      "title": "Services without selectors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 7043,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslices",
      "type": "concept",
      "title": "EndpointSlices",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 11448,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpoints-deprecated-endpoints",
      "type": "concept",
      "title": "Endpoints (deprecated) {#endpoints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 12265,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:application-protocol",
      "type": "concept",
      "title": "Application protocol",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 14076,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multi-port-services",
      "type": "concept",
      "title": "Multi-port Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 15144,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:type-clusterip-type-clusterip",
      "type": "concept",
      "title": "`type: ClusterIP` {#type-clusterip}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 17981,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:type-nodeport-type-nodeport",
      "type": "concept",
      "title": "`type: NodePort` {#type-nodeport}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 19295,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:type-loadbalancer-loadbalancer",
      "type": "concept",
      "title": "`type: LoadBalancer` {#loadbalancer}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 23939,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:type-externalname-externalname",
      "type": "concept",
      "title": "`type: ExternalName` {#externalname}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 32739,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:with-selectors",
      "type": "concept",
      "title": "With selectors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 36101,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:without-selectors",
      "type": "concept",
      "title": "Without selectors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 36379,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:environment-variables",
      "type": "concept",
      "title": "Environment variables",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 37144,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:traffic-policies",
      "type": "concept",
      "title": "Traffic policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 40574,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:traffic-distribution-control-traffic-distribution",
      "type": "concept",
      "title": "Traffic distribution control {#traffic-distribution}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 40856,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:session-stickiness",
      "type": "concept",
      "title": "Session stickiness",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 41890,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/topology-aware-routing",
      "type": "page",
      "title": "Topology Aware Routing",
      "summary": "_Topology Aware Routing_ provides a mechanism to help keep network traffic within the zone where it originated. Preferring same-zone traffic between Pods in your cluster can help with reliability, performance (network latency and throughput), or cost.",
      "body": "\n\n\n\n\nPrior to Kubernetes 1.27, this feature was known as _Topology Aware Hints_.\n\n\n_Topology Aware Routing_ adjusts routing behavior to prefer keeping traffic in\nthe zone it originated from. In some cases this can help reduce costs or improve\nnetwork performance.\n\n\n\n## Motivation\n\nKubernetes clusters are increasingly deployed in multi-zone environments.\n_Topology Aware Routing_ provides a mechanism to help keep traffic within the\nzone it originated from. When calculating the endpoints for a [Service](#gloss:Service), the EndpointSlice controller considers\nthe topology (region and zone) of each endpoint and populates the hints field to\nallocate it to a zone. Cluster components such as [kube-proxy](#gloss:kube-proxy) can then consume those hints, and use\nthem to influence how the traffic is routed (favoring topologically closer\nendpoints).\n\n## Enabling Topology Aware Routing\n\n\nPrior to Kubernetes 1.27, this behavior was controlled using the\n`service.kubernetes.io/topology-aware-hints` annotation.\n\n\nYou can enable Topology Aware Routing for a Service by setting the\n`service.kubernetes.io/topology-mode` annotation to `Auto`. When there are\nenough endpoints available in each zone, Topology Hints will be populated on\nEndpointSlices to allocate individual endpoints to specific zones, resulting in\ntraffic being routed closer to where it originated from.\n\n## When it works best\n\nThis feature works best when:\n\n### 1. Incoming traffic is evenly distributed\n\nIf a large proportion of traffic is originating from a single zone, that traffic\ncould overload the subset of endpoints that have been allocated to that zone.\nThis feature is not recommended when incoming traffic is expected to originate\nfrom a single zone.\n\n### 2. The Service has 3 or more endpoints per zone {#three-or-more-endpoints-per-zone}\nIn a three zone cluster, this means 9 or more endpoints. If there are fewer than\n3 endpoints per zone, there is a high (≈50%) probability that the EndpointSlice\ncontroller will not be able to allocate endpoints evenly and instead will fall\nback to the default cluster-wide routing approach.\n\n## How It Works\n\nThe \"Auto\" heuristic attempts to proportionally allocate a number of endpoints\nto each zone. Note that this heuristic works best for Services that have a\nsignificant number of endpoints.\n\n### EndpointSlice controller {#implementation-control-plane}\n\nThe EndpointSlice controller is responsible for setting hints on EndpointSlices\nwhen this heuristic is enabled. The controller allocates a proportional amount of\nendpoints to each zone. This proportion is based on the\n[allocatable](/docs/tasks/administer-cluster/reserve-compute-resources/#node-allocatable)\nCPU cores for nodes running in that zone. For example, if one zone had 2 CPU\ncores and another zone only had 1 CPU core, the controller would allocate twice\nas many endpoints to the zone with 2 CPU cores.\n\nThe following example shows what an EndpointSlice looks like when hints have\nbeen populated:\n\n```yaml\napiVersion: discovery.k8s.io/v1\nkind: EndpointSlice\nmetadata:\n  name: example-hints\n  labels:\n    kubernetes.io/service-name: example-svc\naddressType: IPv4\nports:\n  - name: http\n    protocol: TCP\n    port: 80\nendpoints:\n  - addresses:\n      - \"10.1.2.3\"\n    conditions:\n      ready: true\n    hostname: pod-1\n    zone: zone-a\n    hints:\n      forZones:\n        - name: \"zone-a\"\n```\n\n### kube-proxy {#implementation-kube-proxy}\n\nThe kube-proxy component filters the endpoints it routes to based on the hints set by\nthe EndpointSlice controller. In most cases, this means that the kube-proxy is able\nto route traffic to endpoints in the same zone. Sometimes the controller allocates endpoints\nfrom a different zone to ensure more even distribution of endpoints between zones.\nThis would result in some traffic being routed to other zones.\n\n## Safeguards\n\nThe Kubernetes control plane and the kube-proxy on each node apply some\nsafeguard rules before using Topology Aware Hints. If these don't check out,\nthe kub\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
      "meta": {
        "weight": 100,
        "rel_path": "concepts/services-networking/topology-aware-routing.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": null,
          "line_end": null,
          "quote": "Topology Aware Routing"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-topology-aware-routing",
      "type": "concept",
      "title": "Enabling Topology Aware Routing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 1014,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-it-works-best",
      "type": "concept",
      "title": "When it works best",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 1557,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:safeguards",
      "type": "concept",
      "title": "Safeguards",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 4017,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:constraints",
      "type": "concept",
      "title": "Constraints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 5865,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:custom-heuristics",
      "type": "concept",
      "title": "Custom heuristics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 7448,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:1-incoming-traffic-is-evenly-distributed",
      "type": "concept",
      "title": "1. Incoming traffic is evenly distributed",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 1611,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:2-the-service-has-3-or-more-endpoints-per-zone-three-or-more-endpoints-per-zone",
      "type": "concept",
      "title": "2. The Service has 3 or more endpoints per zone {#three-or-more-endpoints-per-zone}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 1917,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslice-controller-implementation-control-plane",
      "type": "concept",
      "title": "EndpointSlice controller {#implementation-control-plane}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 2502,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-proxy-implementation-kube-proxy",
      "type": "concept",
      "title": "kube-proxy {#implementation-kube-proxy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 3562,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/windows-networking",
      "type": "page",
      "title": "Networking on Windows",
      "summary": "",
      "body": "\n\nKubernetes supports running nodes on either Linux or Windows. You can mix both kinds of node\nwithin a single cluster.\nThis page provides an overview to networking specific to the Windows operating system.\n\n\n## Container networking on Windows {#networking}\n\nNetworking for Windows containers is exposed through\n[CNI plugins](/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/).\nWindows containers function similarly to virtual machines in regards to\nnetworking. Each container has a virtual network adapter (vNIC) which is connected\nto a Hyper-V virtual switch (vSwitch). The Host Networking Service (HNS) and the\nHost Compute Service (HCS) work together to create containers and attach container\nvNICs to networks. HCS is responsible for the management of containers whereas HNS\nis responsible for the management of networking resources such as:\n\n* Virtual networks (including creation of vSwitches)\n* Endpoints / vNICs\n* Namespaces\n* Policies including packet encapsulations, load-balancing rules, ACLs, and NAT rules.\n\nThe Windows HNS and vSwitch implement namespacing and can\ncreate virtual NICs as needed for a pod or container. However, many configurations such\nas DNS, routes, and metrics are stored in the Windows registry database rather than as\nfiles inside `/etc`, which is how Linux stores those configurations. The Windows registry for the container\nis separate from that of the host, so concepts like mapping `/etc/resolv.conf` from\nthe host into a container don't have the same effect they would on Linux. These must\nbe configured using Windows APIs run in the context of that container. Therefore\nCNI implementations need to call the HNS instead of relying on file mappings to pass\nnetwork details into the pod or container.\n\n## Network modes\n\nWindows supports five different networking drivers/modes: L2bridge, L2tunnel,\nOverlay (Beta), Transparent, and NAT. In a heterogeneous cluster with Windows and Linux\nworker nodes, you need to select a networking solution that is compatible on both\nWindows and Linux. The following table lists the out-of-tree plugins are supported on Windows,\nwith recommendations on when to use each CNI:\n\n| Network Driver | Description | Container Packet Modifications | Network Plugins | Network Plugin Characteristics |\n| -------------- | ----------- | ------------------------------ | --------------- | ------------------------------ |\n| L2bridge       | Containers are attached to an external vSwitch. Containers are attached to the underlay network, although the physical network doesn't need to learn the container MACs because they are rewritten on ingress/egress. | MAC is rewritten to host MAC, IP may be rewritten to host IP using HNS OutboundNAT policy. | [win-bridge](https://www.cni.dev/plugins/current/main/win-bridge/), [Azure-CNI](https://github.com/Azure/azure-container-networking/blob/master/docs/cni.md), [Flannel host-gateway](https://github.com/flannel-io/flannel/blob/master/Documentation/backends.md#host-gw) uses win-bridge | win-bridge uses L2bridge network mode, connects containers to the underlay of hosts, offering best performance. Requires user-defined routes (UDR) for inter-node connectivity. |\n| L2Tunnel | This is a special case of l2bridge, but only used on Azure. All packets are sent to the virtualization host where SDN policy is applied. | MAC rewritten, IP visible on the underlay network | [Azure-CNI](https://github.com/Azure/azure-container-networking/blob/master/docs/cni.md) | Azure-CNI allows integration of containers with Azure vNET, and allows them to leverage the set of capabilities that [Azure Virtual Network provides](https://azure.microsoft.com/en-us/services/virtual-network/). For example, securely connect to Azure services or use Azure NSGs. See [azure-cni for some examples](https://docs.microsoft.com/azure/aks/concepts-network#azure-cni-advanced-networking) |\n| Overlay | Containers are given a vNIC connected to an external vSwitch. Each overlay network gets its own IP \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
      "meta": {
        "weight": 110,
        "rel_path": "concepts/services-networking/windows-networking.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": null,
          "line_end": null,
          "quote": "Networking on Windows"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-networking-on-windows-networking",
      "type": "concept",
      "title": "Container networking on Windows {#networking}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 240,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:network-modes",
      "type": "concept",
      "title": "Network modes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 1793,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ip-address-management-ipam-ipam",
      "type": "concept",
      "title": "IP address management (IPAM) {#ipam}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 7594,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:direct-server-return-dsr-dsr",
      "type": "concept",
      "title": "Direct Server Return (DSR) {#dsr}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 8049,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:load-balancing-and-services",
      "type": "concept",
      "title": "Load balancing and Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 8730,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/ingress",
      "type": "page",
      "title": "Ingress",
      "summary": "Make your HTTP (or HTTPS) network service available using a protocol-aware configuration mechanism, that understands web concepts like URIs, hostnames, paths, and more. The Ingress concept lets you map traffic to different backends based on rules you define via the Kubernetes API.",
      "body": "\n\n[definition:ingress]\n\n\n> **Note:** The Kubernetes project recommends using [Gateway](https://gateway-api.sigs.k8s.io/) instead of\n[Ingress](/docs/concepts/services-networking/ingress/).\nThe Ingress API has been frozen.\n\nThis means that:\n* The Ingress API is generally available, and is subject to the [stability guarantees](/docs/reference/using-api/deprecation-policy/#deprecating-parts-of-the-api) for generally available APIs.\n  The Kubernetes project has no plans to remove Ingress from Kubernetes.\n* The Ingress API is no longer being developed, and will have no further changes\n  or updates made to it.\n\n\n\n\n\n## Terminology\n\nFor clarity, this guide defines the following terms:\n\n* Node: A worker machine in Kubernetes, part of a cluster.\n* Cluster: A set of Nodes that run containerized applications managed by Kubernetes.\n  For this example, and in most common Kubernetes deployments, nodes in the cluster\n  are not part of the public internet.\n* Edge router: A router that enforces the firewall policy for your cluster. This\n  could be a gateway managed by a cloud provider or a physical piece of hardware.\n* Cluster network: A set of links, logical or physical, that facilitate communication\n  within a cluster according to the Kubernetes [networking model](/docs/concepts/cluster-administration/networking/).\n* Service: A Kubernetes [service](#gloss:service) that identifies\n  a set of Pods using [label](#gloss:label) selectors.\n  Unless mentioned otherwise, Services are assumed to have virtual IPs only routable within the cluster network.\n\n## What is Ingress?\n\n[Ingress](/docs/reference/generated/kubernetes-api//#ingress-v1-networking-k8s-io)\nexposes HTTP and HTTPS routes from outside the cluster to\n within the cluster.\nTraffic routing is controlled by rules defined on the Ingress resource.\n\nHere is a simple example where an Ingress sends all its traffic to one Service:\n\n\n![ingress-diagram](/docs/images/ingress.svg) — Figure. Ingress\n\n\nAn Ingress may be configured to give Services externally-reachable URLs,\nload balance traffic, terminate SSL / TLS, and offer name-based virtual hosting.\nAn [Ingress controller](/docs/concepts/services-networking/ingress-controllers)\nis responsible for fulfilling the Ingress, usually with a load balancer, though\nit may also configure your edge router or additional frontends to help handle the traffic.\n\nAn Ingress does not expose arbitrary ports or protocols. Exposing services other than HTTP and HTTPS to the internet typically\nuses a service of type [Service.Type=NodePort](/docs/concepts/services-networking/service/#type-nodeport) or\n[Service.Type=LoadBalancer](/docs/concepts/services-networking/service/#loadbalancer).\n\n## Prerequisites\n\nYou must have an [Ingress controller](/docs/concepts/services-networking/ingress-controllers)\nto satisfy an Ingress. Only creating an Ingress resource has no effect.\n\nYou can choose from a number of [Ingress controllers](/docs/concepts/services-networking/ingress-controllers).\n\nIdeally, all Ingress controllers should fit the reference specification. In reality, the various Ingress\ncontrollers operate slightly differently.\n\n\n> **Note:** Make sure you review your Ingress controller's documentation to understand the caveats of choosing it.\n\n\n## The Ingress resource\n\nA minimal Ingress resource example:\n\n\n\nAn Ingress needs `apiVersion`, `kind`, `metadata` and `spec` fields.\nThe name of an Ingress object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\nFor general information about working with config files, see\n[deploying applications](/docs/tasks/run-application/run-stateless-application-deployment/),\n[configuring containers](/docs/tasks/configure-pod-container/configure-pod-configmap/),\n[managing resources](/docs/concepts/workloads/management/).\nIngress controllers frequently use [annotations](/docs/concepts/overview/working-with-objects/annotations/) to configure behavior.\nReview the documentation for your choice of\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/services-networking/ingress.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": null,
          "line_end": null,
          "quote": "Ingress"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-is-ingress",
      "type": "concept",
      "title": "What is Ingress?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 1746,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-ingress-resource",
      "type": "concept",
      "title": "The Ingress resource",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 4088,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostname-wildcards",
      "type": "concept",
      "title": "Hostname wildcards",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 12184,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingress-class",
      "type": "concept",
      "title": "Ingress class",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 12996,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:types-of-ingress",
      "type": "concept",
      "title": "Types of Ingress",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 18314,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-an-ingress",
      "type": "concept",
      "title": "Updating an Ingress",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 25642,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:failing-across-availability-zones",
      "type": "concept",
      "title": "Failing across availability zones",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 27749,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingress-rules",
      "type": "concept",
      "title": "Ingress rules",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 5670,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defaultbackend-default-backend",
      "type": "concept",
      "title": "DefaultBackend {#default-backend}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 6795,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-backends-resource-backend",
      "type": "concept",
      "title": "Resource backends {#resource-backend}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 7609,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:path-types",
      "type": "concept",
      "title": "Path types",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 8577,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressclass-scope",
      "type": "concept",
      "title": "IngressClass scope",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 13643,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deprecated-annotation",
      "type": "concept",
      "title": "Deprecated annotation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 16765,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-ingressclass-default-ingress-class",
      "type": "concept",
      "title": "Default IngressClass {#default-ingress-class}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 17463,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingress-backed-by-a-single-service-single-service-ingress",
      "type": "concept",
      "title": "Ingress backed by a single Service {#single-service-ingress}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 18335,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:simple-fanout",
      "type": "concept",
      "title": "Simple fanout",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 19241,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:name-based-virtual-hosting",
      "type": "concept",
      "title": "Name based virtual hosting",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 21463,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tls",
      "type": "concept",
      "title": "TLS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 23068,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:load-balancing-load-balancing",
      "type": "concept",
      "title": "Load balancing {#load-balancing}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 24824,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/_index",
      "type": "page",
      "title": "Services, Load Balancing, and Networking",
      "summary": "Concepts and resources behind networking in Kubernetes.\n",
      "body": "## The Kubernetes network model\n\nThe Kubernetes network model is built out of several pieces:\n\n* Each [pod](/docs/concepts/workloads/pods/) in a cluster gets its\n  own unique cluster-wide IP address.\n\n  * A pod has its own private network namespace which is shared by\n    all of the containers within the pod. Processes running in\n    different containers in the same pod can communicate with each\n    other over `localhost`.\n\n* The _pod network_ (also called a cluster network) handles communication\n  between pods. It ensures that (barring intentional network segmentation):\n\n  * All pods can communicate with all other pods, whether they are\n    on the same [node](/docs/concepts/architecture/nodes/) or on\n    different nodes. Pods can communicate with each other\n    directly, without the use of proxies or address translation (NAT).\n\n    On Windows, this rule does not apply to host-network pods.\n\n  * Agents on a node (such as system daemons, or kubelet) can\n    communicate with all pods on that node.\n\n* The [Service](/docs/concepts/services-networking/service/) API\n  lets you provide a stable (long lived) IP address or hostname for a service implemented\n  by one or more backend pods, where the individual pods making up\n  the service can change over time.\n\n  * Kubernetes automatically manages\n    [EndpointSlice](/docs/concepts/services-networking/endpoint-slices/)\n    objects to provide information about the pods currently backing a Service.\n\n  * A service proxy implementation monitors the set of Service and\n    EndpointSlice objects, and programs the data plane to route\n    service traffic to its backends, by using operating system or\n    cloud provider APIs to intercept or rewrite packets.\n\n* The [Gateway](/docs/concepts/services-networking/gateway/) API\n  (or its predecessor, [Ingress](/docs/concepts/services-networking/ingress/))\n  allows you to make Services accessible to clients that are outside the cluster.\n\n  * A simpler, but less-configurable, mechanism for cluster\n    ingress is available via the Service API's\n    [`type: LoadBalancer`](/docs/concepts/services-networking/service/#loadbalancer),\n    when using a supported [cloud-provider](#gloss:cloud-provider).\n\n* [NetworkPolicy](/docs/concepts/services-networking/network-policies) is a built-in\n  Kubernetes API that allows you to control traffic between pods, or between pods and\n  the outside world.\n\nIn older container systems, there was no automatic connectivity\nbetween containers on different hosts, and so it was often necessary\nto explicitly create links between containers, or to map container\nports to host ports to make them reachable by containers on other\nhosts. This is not needed in Kubernetes; Kubernetes's model is that\npods can be treated much like VMs or physical hosts from the\nperspectives of port allocation, naming, service discovery, load\nbalancing, application configuration, and migration.\n\nOnly a few parts of this model are implemented by Kubernetes itself.\nFor the other parts, Kubernetes defines the APIs, but the\ncorresponding functionality is provided by external components, some\nof which are optional:\n\n* Pod network namespace setup is handled by system-level software implementing the\n  [Container Runtime Interface](/docs/concepts/containers/cri/).\n\n* The pod network itself is managed by a\n  [pod network implementation](/docs/concepts/cluster-administration/addons/#networking-and-network-policy).\n  On Linux, most container runtimes use the\n  [Container Networking Interface (CNI)](#gloss:cni)\n  to interact with the pod network implementation, so these\n  implementations are often called _CNI plugins_.\n\n* Kubernetes provides a default implementation of service proxying,\n  called [kube-proxy](#gloss:kube-proxy), but some pod\n  network implementations instead use their own service proxy that\n  is more tightly integrated with the rest of the implementation.\n\n* NetworkPolicy is generally also implemented by the pod network\n  implementation. (Some simpler pod netw\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/_index/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/services-networking/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/_index.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Services, Load Balancing, and Networking"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-kubernetes-network-model",
      "type": "concept",
      "title": "The Kubernetes network model",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/_index.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/_index/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/services-networking/dns-pod-service",
      "type": "page",
      "title": "DNS for Services and Pods",
      "summary": "Your workload can discover Services within your cluster using DNS; this page explains how that works.",
      "body": "\n\nKubernetes creates DNS records for Services and Pods. You can contact\nServices with consistent DNS names instead of IP addresses.\n\n\n\nKubernetes publishes information about Pods and Services which is used\nto program DNS. kubelet configures Pods' DNS so that running containers\ncan look up Services by name rather than IP.\n\nServices defined in the cluster are assigned DNS names. By default, a\nclient Pod's DNS search list includes the Pod's own namespace and the\ncluster's default domain.\n\n### Namespaces of Services\n\nA DNS query may return different results based on the namespace of the Pod making\nit. DNS queries that don't specify a namespace are limited to the Pod's\nnamespace. Access Services in other namespaces by specifying it in the DNS query.\n\nFor example, consider a Pod in a `test` namespace. A `data` Service is in\nthe `prod` namespace.\n\nA query for `data` returns no results, because it uses the Pod's `test` namespace.\n\nA query for `data.prod` returns the intended result, because it specifies the\nnamespace.\n\nDNS queries may be expanded using the Pod's `/etc/resolv.conf`. kubelet\nconfigures this file for each Pod. For example, a query for just `data` may be\nexpanded to `data.test.svc.cluster.local`. The values of the `search` option\nare used to expand queries. To learn more about DNS queries, see\n[the `resolv.conf` manual page](https://www.man7.org/linux/man-pages/man5/resolv.conf.5.html).\n\n```\nnameserver 10.32.0.10\nsearch <namespace>.svc.cluster.local svc.cluster.local cluster.local\noptions ndots:5\n```\n\nIn summary, a Pod in the _test_ namespace can successfully resolve either\n`data.prod` or `data.prod.svc.cluster.local`.\n\n### DNS Records\n\nWhat objects get DNS records?\n\n1. Services\n1. Pods\n\nThe following sections detail the supported DNS record types and layout that is\nsupported. Any other layout or names or queries that happen to work are\nconsidered implementation details and are subject to change without warning.\nFor more up-to-date specification, see\n[Kubernetes DNS-Based Service Discovery](https://github.com/kubernetes/dns/blob/master/docs/specification.md).\n\n## Services\n\n### A/AAAA records\n\n\"Normal\" (not headless) Services are assigned DNS A and/or AAAA records,\ndepending on the IP family or families of the Service, with a name of the form\n`my-svc.my-namespace.svc.cluster-domain.example`. This resolves to the cluster IP\nof the Service.\n\n[Headless Services](/docs/concepts/services-networking/service/#headless-services)\n(without a cluster IP) are also assigned DNS A and/or AAAA records,\nwith a name of the form `my-svc.my-namespace.svc.cluster-domain.example`. Unlike normal\nServices, this resolves to the set of IPs of all of the Pods selected by the Service.\nClients are expected to consume the set or else use standard round-robin\nselection from the set.\n\n### SRV records\n\nSRV Records are created for named ports that are part of normal or headless\nservices.\n\n- For each named port, the SRV record has the form\n  `_port-name._port-protocol.my-svc.my-namespace.svc.cluster-domain.example`.\n- For a regular Service, this resolves to the port number and the domain name:\n  `my-svc.my-namespace.svc.cluster-domain.example`.\n- For a headless Service, this resolves to multiple answers, one for each Pod\n  that is backing the Service, and contains the port number and the domain name of the Pod\n  of the form `hostname.my-svc.my-namespace.svc.cluster-domain.example`.\n\n## Pods\n\n### A/AAAA records\n\nKube-DNS versions, prior to the implementation of the\n[DNS specification](https://github.com/kubernetes/dns/blob/master/docs/specification.md),\nhad the following DNS resolution:\n\n```\n<pod-IPv4-address>.<namespace>.pod.<cluster-domain>\n```\n\nFor example, if a Pod in the `default` namespace has the IP address 172.17.0.3,\nand the domain name for your cluster is `cluster.local`, then the Pod has a DNS name:\n\n```\n172-17-0-3.default.pod.cluster.local\n```\n\nSome cluster DNS mechanisms, like [CoreDNS](https://coredns.io/), also provide `A` records for:\n\n```\n<\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
      "meta": {
        "weight": 80,
        "rel_path": "concepts/services-networking/dns-pod-service.md"
      },
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": null,
          "line_end": null,
          "quote": "DNS for Services and Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pods",
      "type": "concept",
      "title": "Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 3447,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dns-search-domain-list-limits",
      "type": "concept",
      "title": "DNS search domain list limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 12852,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dns-resolution-on-windows-nodes-dns-windows",
      "type": "concept",
      "title": "DNS resolution on Windows nodes {#dns-windows}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 13599,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespaces-of-services",
      "type": "concept",
      "title": "Namespaces of Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 522,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dns-records",
      "type": "concept",
      "title": "DNS Records",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 1684,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:a-aaaa-records",
      "type": "concept",
      "title": "A/AAAA records",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 2146,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:srv-records",
      "type": "concept",
      "title": "SRV records",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 2840,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-s-hostname-and-subdomain-fields-pod-hostname-and-subdomain-field",
      "type": "concept",
      "title": "Pod's hostname and subdomain fields {#pod-hostname-and-subdomain-field}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 4404,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-s-sethostnameasfqdn-field-pod-sethostnameasfqdn-field",
      "type": "concept",
      "title": "Pod's setHostnameAsFQDN field {#pod-sethostnameasfqdn-field}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 7265,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-s-dns-policy",
      "type": "concept",
      "title": "Pod's DNS Policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 8758,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-s-dns-config-pod-dns-config",
      "type": "concept",
      "title": "Pod's DNS Config {#pod-dns-config}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 10775,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/resource-managers",
      "type": "page",
      "title": "Resource managers",
      "summary": "",
      "body": "\n\nIn order to support latency-critical and high-throughput workloads, Kubernetes\noffers a suite of Resource Managers. The managers aim to co-ordinate and\noptimize the alignment of node's resources for pods configured with a specific\nrequirement for CPUs, devices, and memory (hugepages) resources.\n\n\n\n## Topology manager\n\n\n\n*Topology Manager* is a kubelet component that aims to coordinate the set of\ncomponents that are responsible for these optimizations. To learn more, read\n[Control Topology Management Policies on a Node](/docs/tasks/administer-cluster/topology-manager/).\n\n## CPU manager\n\n\n\n*CPU Manager* is a kubelet component that provides exclusive resource allocation\nfor CPU resources. It consults with the Topology Manager to make resource\nassignment decisions. To learn more, read\n[Control CPU Management Policies on the Node](/docs/tasks/administer-cluster/cpu-management-policies/).\n\n### Policies for assigning CPUs to Pods\n\nOnce a Pod is bound to a Node, the kubelet on that node may need to either multiplex the existing\nhardware (for example, sharing CPUs across multiple Pods) or allocate hardware by dedicating some\nresource (for example, assigning one of more CPUs for a Pod's exclusive use).\n\nBy default, the kubelet uses [CFS quota](https://en.wikipedia.org/wiki/Completely_Fair_Scheduler)\nto enforce pod CPU limits.  When the node runs many CPU-bound pods, the workload can move to\ndifferent CPU cores depending on whether the pod is throttled and which CPU cores are available\nat scheduling time. Many workloads are not sensitive to this migration and thus\nwork fine without any intervention.\n\nHowever, in workloads where CPU cache affinity and scheduling latency significantly affect\nworkload performance, the kubelet allows alternative CPU\nmanagement policies to determine some placement preferences on the node.\nThis is implemented using the _CPU Manager_ and its policy.\nThere are two available policies:\n\n- `none`: the `none` policy explicitly enables the existing default CPU\n  affinity scheme, providing no affinity beyond what the OS scheduler does\n  automatically.  Limits on CPU usage for\n  [Guaranteed pods](/docs/concepts/workloads/pods/pod-qos/) and\n  [Burstable pods](/docs/concepts/workloads/pods/pod-qos/)\n  are enforced using CFS quota.\n- `static`: the `static` policy allows containers in `Guaranteed` pods with integer CPU\n  `requests` access to exclusive CPUs on the node. This exclusivity is enforced\n  using the [cpuset cgroup controller](https://www.kernel.org/doc/Documentation/cgroup-v2.txt).\n\n\n> **Note:** System services such as the container runtime and the kubelet itself can continue to run on\nthese exclusive CPUs.  The exclusivity only extends to other pods.\n\n\nCPU Manager doesn't support offlining and onlining of CPUs at runtime.\n\n#### Static policy\n\nThe static policy enables finer-grained CPU management and exclusive CPU assignment.\nThis policy manages a shared pool of CPUs that initially contains all CPUs in the\nnode. The amount of exclusively allocatable CPUs is equal to the total\nnumber of CPUs in the node minus any CPU reservations set by the kubelet configuration.\nCPUs reserved by these options are taken, in integer quantity, from the initial shared pool in ascending order by physical\ncore ID.  This shared pool is the set of CPUs on which any containers in\n`BestEffort` and `Burstable` pods run. Containers in `Guaranteed` pods with fractional\nCPU `requests` also run on CPUs in the shared pool. Only containers that are\npart of a `Guaranteed` pod and have integer CPU `requests` are assigned\nexclusive CPUs.\n\n\n> **Note:** The kubelet requires a CPU reservation greater than zero when the static policy is enabled.\nThis is because a zero CPU reservation would allow the shared pool to become empty.\n\n\nAs `Guaranteed` pods whose containers fit the requirements for being statically\nassigned are scheduled to the node, CPUs are removed from the shared pool and\nplaced in the cpuset for the container. CFS quota is not used to b\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/workloads/resource-managers.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": null,
          "line_end": null,
          "quote": "Resource managers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-manager",
      "type": "concept",
      "title": "Topology manager",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cpu-manager",
      "type": "concept",
      "title": "CPU manager",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 667,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memory-manager",
      "type": "concept",
      "title": "Memory manager",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 14328,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-manager",
      "type": "concept",
      "title": "Device manager",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 15506,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-level-resource-managers-pod-level-resource-managers",
      "type": "concept",
      "title": "Pod-level resource managers {#pod-level-resource-managers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 16027,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policies-for-assigning-cpus-to-pods",
      "type": "concept",
      "title": "Policies for assigning CPUs to Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 1039,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policies-for-assigning-memory-to-pods-memory-management-policies",
      "type": "concept",
      "title": "Policies for assigning memory to Pods {#memory-management-policies}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 14704,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:glossary",
      "type": "concept",
      "title": "Glossary",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 17824,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-pod-level-resource-managers-work",
      "type": "concept",
      "title": "How pod-level resource managers work",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 18951,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:observability-and-metrics",
      "type": "concept",
      "title": "Observability and metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 25617,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitations-and-caveats",
      "type": "concept",
      "title": "Limitations and caveats",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 26718,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/management",
      "type": "page",
      "title": "Managing Workloads",
      "summary": "",
      "body": "\n\nYou've deployed your application and exposed it via a Service. Now what? Kubernetes provides a\nnumber of tools to help you manage your application deployment, including scaling and updating.\n\n\n\n## Organizing resource configurations\n\nMany applications require multiple resources to be created, such as a Deployment along with a Service.\nManagement of multiple resources can be simplified by grouping them together in the same file\n(separated by `---` in YAML). For example:\n\n\n\nMultiple resources can be created the same way as a single resource:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/nginx-app.yaml\n```\n\n```none\nservice/my-nginx-svc created\ndeployment.apps/my-nginx created\n```\n\nThe resources will be created in the order they appear in the manifest. Therefore, it's best to\nspecify the Service first, since that will ensure the scheduler can spread the pods associated\nwith the Service as they are created by the controller(s), such as Deployment.\n\n`kubectl apply` also accepts multiple `-f` arguments:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/nginx/nginx-svc.yaml \\\n  -f https://k8s.io/examples/application/nginx/nginx-deployment.yaml\n```\n\n\nIt is a recommended practice to put resources related to the same microservice or application tier\ninto the same file, and to group all of the files associated with your application in the same\ndirectory. If the tiers of your application bind to each other using DNS, you can deploy all of\nthe components of your stack together.\n\nA URL can also be specified as a configuration source, which is handy for deploying directly from\nmanifests in your source control system:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/nginx/nginx-deployment.yaml\n```\n\n```none\ndeployment.apps/my-nginx created\n```\n\nIf you need to define more manifests, such as adding a ConfigMap, you can do that too.\n\n### External tools\n\nThis section lists only the most common tools used for managing workloads on Kubernetes. To see a larger list, view\n[Application definition and image build](https://landscape.cncf.io/guide#app-definition-and-development--application-definition-image-build)\nin the [CNCF](#gloss:cncf) Landscape.\n\n#### Helm {#external-tool-helm}\n\n\n\n[Helm](https://helm.sh/) is a tool for managing packages of pre-configured\nKubernetes resources. These packages are known as _Helm charts_.\n\n#### Kustomize {#external-tool-kustomize}\n\n[Kustomize](https://kustomize.io/) traverses a Kubernetes manifest to add, remove or update configuration options.\nIt is available both as a standalone binary and as a [native feature](/docs/tasks/manage-kubernetes-objects/kustomization/)\nof kubectl.\n\n## Bulk operations in kubectl\n\nResource creation isn't the only operation that `kubectl` can perform in bulk. It can also extract\nresource names from configuration files in order to perform other operations, in particular to\ndelete the same resources you created:\n\n```shell\nkubectl delete -f https://k8s.io/examples/application/nginx-app.yaml\n```\n\n```none\ndeployment.apps \"my-nginx\" deleted\nservice \"my-nginx-svc\" deleted\n```\n\nIn the case of two resources, you can specify both resources on the command line using the\nresource/name syntax:\n\n```shell\nkubectl delete deployments/my-nginx services/my-nginx-svc\n```\n\nFor larger numbers of resources, you'll find it easier to specify the selector (label query)\nspecified using `-l` or `--selector`, to filter resources by their labels:\n\n```shell\nkubectl delete deployment,services -l app=nginx\n```\n\n```none\ndeployment.apps \"my-nginx\" deleted\nservice \"my-nginx-svc\" deleted\n```\n\n### Chaining and filtering\n\nBecause `kubectl` outputs resource names in the same syntax it accepts, you can chain operations\nusing `$()` or `xargs`:\n\n```shell\nkubectl get $(kubectl create -f docs/concepts/cluster-administration/nginx/ -o name | grep service/ )\nkubectl create -f docs/concepts/cluster-administration/nginx/ -o name | grep service/ | xargs -i kubectl get '{}'\n```\n\nThe output might be \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/management/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/workloads/management.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": null,
          "line_end": null,
          "quote": "Managing Workloads"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:organizing-resource-configurations",
      "type": "concept",
      "title": "Organizing resource configurations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bulk-operations-in-kubectl",
      "type": "concept",
      "title": "Bulk operations in kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 2833,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-your-application-without-an-outage",
      "type": "concept",
      "title": "Updating your application without an outage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 6730,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:canary-deployments",
      "type": "concept",
      "title": "Canary deployments",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 9361,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-annotations",
      "type": "concept",
      "title": "Updating annotations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 10925,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-your-application",
      "type": "concept",
      "title": "Scaling your application",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 11600,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:in-place-updates-of-resources",
      "type": "concept",
      "title": "In-place updates of resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 12803,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disruptive-updates",
      "type": "concept",
      "title": "Disruptive updates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 14981,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-tools",
      "type": "concept",
      "title": "External tools",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 1974,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:chaining-and-filtering",
      "type": "concept",
      "title": "Chaining and filtering",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 3756,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:recursive-operations-on-local-files",
      "type": "concept",
      "title": "Recursive operations on local files",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 4657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managing-rollouts",
      "type": "concept",
      "title": "Managing rollouts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 8673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-apply",
      "type": "concept",
      "title": "kubectl apply",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 12931,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-edit",
      "type": "concept",
      "title": "kubectl edit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 13834,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-patch",
      "type": "concept",
      "title": "kubectl patch",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 14622,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/autoscaling",
      "type": "page",
      "title": "Autoscaling Workloads",
      "summary": "With autoscaling, you can automatically update your workloads in one way or another. This allows your cluster to react to changes in resource demand more elastically and efficiently.",
      "body": "\n\nIn Kubernetes, you can _scale_ a workload depending on the current demand of resources.\nThis allows your cluster to react to changes in resource demand more elastically and efficiently.\n\nWhen you scale a workload, you can either increase or decrease the number of replicas managed by\nthe workload, or adjust the resources available to the replicas in-place.\n\nThe first approach is referred to as _horizontal scaling_, while the second is referred to as\n_vertical scaling_.\n\nThere are manual and automatic ways to scale your workloads, depending on your use case.\n\n\n\n## Scaling workloads manually\n\nKubernetes supports _manual scaling_ of workloads. Horizontal scaling can be done\nusing the `kubectl` CLI.\nFor vertical scaling, you need to _patch_ the resource definition of your workload.\n\nSee below for examples of both strategies.\n\n- **Horizontal scaling**: [Running multiple instances of your app](/docs/tutorials/kubernetes-basics/scale/scale-intro/)\n- **Vertical scaling**: [Resizing CPU and memory resources assigned to containers](/docs/tasks/configure-pod-container/resize-container-resources)\n\n## Scaling workloads automatically\n\nKubernetes also supports _automatic scaling_ of workloads, which is the focus of this page.\n\nThe concept of _Autoscaling_ in Kubernetes refers to the ability to automatically update an\nobject that manages a set of Pods (for example a\n[Deployment](#gloss:deployment)).\n\n### Scaling workloads horizontally\n\nIn Kubernetes, you can automatically scale a workload horizontally using a [HorizontalPodAutoscaler](/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/) (HPA).\n\nIt is implemented as a Kubernetes API resource and a [controller](#gloss:controller)\nand periodically adjusts the number of [replicas](#gloss:replica)\nin a workload to match observed resource utilization such as CPU or memory usage.\n\nThere is a [walkthrough tutorial](/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough) of configuring a HorizontalPodAutoscaler for a Deployment.\n\n### Scaling workloads vertically\n\n\n\nYou can automatically scale a workload vertically using a [VerticalPodAutoscaler](/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/) (VPA).\nUnlike the HPA, the VPA doesn't come with Kubernetes by default, but is a an add-on that you or a cluster administrator may need to deploy before you can use it.\n\nOnce installed, it allows you to create [CustomResourceDefinitions](#gloss:customresourcedefinition)\n(CRDs) for your workloads which define _how_ and _when_ to scale the resources of the managed replicas.\n\n\n> **Note:** You will need to have the [Metrics Server](https://github.com/kubernetes-sigs/metrics-server)\ninstalled to your cluster for the VPA to work.\n\n\n#### In-place pod vertical scaling\n\n\n\nAs of Kubernetes , VPA does not support resizing pods in-place,\nbut this integration is being worked on.\nFor manually resizing pods in-place, see [Resize Container Resources In-Place](/docs/tasks/configure-pod-container/resize-container-resources/).\n\n### Autoscaling based on cluster size\n\nFor workloads that need to be scaled based on the size of the cluster (for example\n`cluster-dns` or other system components), you can use the\n[_Cluster Proportional Autoscaler_](https://github.com/kubernetes-sigs/cluster-proportional-autoscaler).\nJust like the VPA, it is not part of the Kubernetes core, but hosted as its\nown project on GitHub.\n\nThe Cluster Proportional Autoscaler watches the number of schedulable [nodes](#gloss:node)\nand cores and scales the number of replicas of the target workload accordingly.\n\nIf the number of replicas should stay the same, you can scale your workloads vertically according to the cluster size using\nthe [_Cluster Proportional Vertical Autoscaler_](https://github.com/kubernetes-sigs/cluster-proportional-vertical-autoscaler).\nThe project is **currently in beta** and can be found on GitHub.\n\nWhile the Cluster Proportional Autoscaler scales the number of replicas of a workload,\nthe Cluster Proportional \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/workloads/autoscaling.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": null,
          "line_end": null,
          "quote": "Autoscaling Workloads"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-workloads-manually",
      "type": "concept",
      "title": "Scaling workloads manually",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 599,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-workloads-automatically",
      "type": "concept",
      "title": "Scaling workloads automatically",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 1135,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-cluster-infrastructure",
      "type": "concept",
      "title": "Scaling cluster infrastructure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 5413,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-workloads-horizontally",
      "type": "concept",
      "title": "Scaling workloads horizontally",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 1472,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-workloads-vertically",
      "type": "concept",
      "title": "Scaling workloads vertically",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 2139,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:autoscaling-based-on-cluster-size",
      "type": "concept",
      "title": "Autoscaling based on cluster size",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 3339,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:event-driven-autoscaling",
      "type": "concept",
      "title": "Event driven Autoscaling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 4522,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:autoscaling-based-on-schedules",
      "type": "concept",
      "title": "Autoscaling based on schedules",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 4947,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/_index",
      "type": "page",
      "title": "Workloads",
      "summary": "Understand Pods, the smallest deployable compute object in Kubernetes, and the higher-level abstractions that help you to run them.\n",
      "body": "[definition:workload]\nWhether your workload is a single component or several that work together, on Kubernetes you run\nit inside a set of [_pods_](/docs/concepts/workloads/pods).\nIn Kubernetes, a Pod represents a set of one or more running\n[containers](#gloss:container) on your cluster.\n\nKubernetes pods have a [defined lifecycle](/docs/concepts/workloads/pods/pod-lifecycle/).\nFor example, once a pod is running in your cluster then a critical fault on the\n[node](#gloss:node) where that pod is running means that\nall the pods on that node fail. Kubernetes treats that level of failure as final: you\nwould need to create a new Pod to recover, even if the node later becomes healthy.\n\nHowever, to make life considerably easier, you don't need to manage each Pod directly.\nInstead, you can use _workload resources_ that manage a set of pods on your behalf.\nThese resources configure [controllers](#gloss:controller)\nthat make sure the right number of the right kind of pod are running, to match the state\nyou specified.\n\nKubernetes provides several built-in workload resources:\n\n* [Deployment](/docs/concepts/workloads/controllers/deployment/) and [ReplicaSet](/docs/concepts/workloads/controllers/replicaset/)\n  (replacing the legacy resource\n  [ReplicationController](#gloss:replication-controller)).\n  Deployment is a good fit for managing a stateless application workload on your cluster,\n  where any Pod in the Deployment is interchangeable and can be replaced if needed.\n* [StatefulSet](/docs/concepts/workloads/controllers/statefulset/) lets you\n  run one or more related Pods that do track state somehow. For example, if your workload\n  records data persistently, you can run a StatefulSet that matches each Pod with a\n  [PersistentVolume](/docs/concepts/storage/persistent-volumes/). Your code, running in the\n  Pods for that StatefulSet, can replicate data to other Pods in the same StatefulSet\n  to improve overall resilience.\n* [DaemonSet](/docs/concepts/workloads/controllers/daemonset/) defines Pods that provide\n  facilities that are local to nodes.\n  Every time you add a node to your cluster that matches the specification in a DaemonSet,\n  the control plane schedules a Pod for that DaemonSet onto the new node.\n  Each pod in a DaemonSet performs a job similar to a system daemon on a classic Unix / POSIX\n  server. A DaemonSet might be fundamental to the operation of your cluster, such as\n  a plugin to run [cluster networking](/docs/concepts/cluster-administration/networking/#how-to-implement-the-kubernetes-network-model),\n  it might help you to manage the node,\n  or it could provide optional behavior that enhances the container platform you are running.\n* [Job](/docs/concepts/workloads/controllers/job/) and\n  [CronJob](/docs/concepts/workloads/controllers/cron-jobs/) provide different ways to\n  define tasks that run to completion and then stop.\n  You can use a [Job](/docs/concepts/workloads/controllers/job/)  to\n  define a task that runs to completion, just once. You can use a\n  [CronJob](/docs/concepts/workloads/controllers/cron-jobs/) to run\n  the same Job multiple times according a schedule.\n\nIn the wider Kubernetes ecosystem, you can find third-party workload resources that provide\nadditional behaviors. Using a\n[custom resource definition](/docs/concepts/extend-kubernetes/api-extension/custom-resources/),\nyou can add in a third-party workload resource if you want a specific behavior that's not part\nof Kubernetes' core. For example, if you wanted to run a group of Pods for your application but\nstop work unless _all_ the Pods are available (perhaps for some high-throughput distributed task),\nthen you can implement or install an extension that does provide that feature.\n\n## Workload placement\n\n\n\nWhile standard workload resources (like Deployments and Jobs) manage the lifecycle of Pods,\nyou may have complex scheduling requirements where groups of Pods must be treated as a single unit.\n\nThe [Workload API](/docs/concepts/workloads/workload-api/) allo\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
      "meta": {
        "weight": 55,
        "rel_path": "concepts/workloads/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Workloads"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workload-placement",
      "type": "concept",
      "title": "Workload placement",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
          "line_start": 3888,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/workload-api/policies",
      "type": "page",
      "title": "PodGroup Scheduling Policies",
      "summary": "",
      "body": "\n\n\nEvery [PodGroup](/docs/concepts/workloads/podgroup-api/) must declare a scheduling policy\nin its `spec.schedulingPolicy` field. This policy dictates how the scheduler treats the\ncollection of Pods in the group.\n\n\n\n## Policy types\n\nThe `schedulingPolicy` field supports two policy types: `basic` and `gang`.\nYou must specify exactly one.\n\n### Basic policy\n\nThe `basic` policy instructs the scheduler to evaluate all Pods on a best-effort basis.\nUnlike the `gang` policy, a PodGroup using the `basic` policy is considered feasible\nregardless of how many of its Pods are currently schedulable.\n\nThe primary reason to use the `basic` policy is to organize Pods into a group for better\nobservability and management, while still evaluating them together within a single, atomic\n[PodGroup scheduling cycle](/docs/concepts/scheduling-eviction/podgroup-scheduling/#podgroup-scheduling-cycle).\n\nThis policy is suited for groups that do not require simultaneous startup but logically\nbelong together, or to open the way for group-level constraints that do not imply\n\"all-or-nothing\" placement.\n\n```yaml\nschedulingPolicy:\n  basic: {}\n```\n\n### Gang policy\n\nThe `gang` policy enforces \"all-or-nothing\" scheduling. This is essential for tightly-coupled\nworkloads where partial startup results in deadlocks or wasted resources.\n\nThis can be used for [Jobs](/docs/concepts/workloads/controllers/job/)\nor any other batch process where all workers must run concurrently to make progress.\n\nThe `gang` policy requires a `minCount` field, which is the minimum number of Pods that must be\nschedulable simultaneously for the group to be feasible:\n\n```yaml\nschedulingPolicy:\n  gang:\n    # The number of Pods that must be schedulable simultaneously\n    # for the group to be admitted.\n    minCount: 4\n```\n\n## Setting policies via PodGroupTemplates\n\nWhen using the [Workload API](/docs/concepts/workloads/workload-api/), you define scheduling\npolicies inside `PodGroupTemplates`. The workload controller copies the policy from the\ntemplate into each PodGroup it creates, making the PodGroup self-contained. Changes to the\nWorkload's templates only affect newly created PodGroups, not existing ones.\n\nFor standalone PodGroups (created without a Workload), you set `spec.schedulingPolicy`\ndirectly on the PodGroup itself.\n\n## \n\n* See the [PodGroup API](/docs/concepts/workloads/podgroup-api/) for how policies are carried at runtime.\n* Learn about the [Workload API](/docs/concepts/workloads/workload-api/) that defines PodGroupTemplates.\n* Read about [PodGroup scheduling](/docs/concepts/scheduling-eviction/podgroup-scheduling/).\n* Read about the [gang scheduling](/docs/concepts/scheduling-eviction/gang-scheduling/) algorithm.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/workloads/workload-api/policies.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": null,
          "line_end": null,
          "quote": "PodGroup Scheduling Policies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policy-types",
      "type": "concept",
      "title": "Policy types",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": 305,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-policies-via-podgrouptemplates",
      "type": "concept",
      "title": "Setting policies via PodGroupTemplates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": 1871,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:basic-policy",
      "type": "concept",
      "title": "Basic policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": 429,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:gang-policy",
      "type": "concept",
      "title": "Gang policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": 1218,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/workload-api/topology-aware-scheduling",
      "type": "page",
      "title": "Topology-Aware Workload Scheduling",
      "summary": "",
      "body": "\n\n\n*Topology-Aware Scheduling* (TAS) is a feature of the Workload API that optimizes the placement of\npods within the cluster.\n\nTAS ensures that all pods within a PodGroup are co-located into a specific topology domain,\nsuch as a single server rack or zone. This minimizes inter-pod communication latency and prevents\nworkload fragmentation across the cluster infrastructure.\n\n## Topology-aware scheduling with gang scheduling policy\n\nWhen applied to PodGroups with `gang` scheduling policy, TAS simulates the potential assignment\n(*placement*) of the full group of pods at once. It guarantees that at least the specified\n`minCount` pods can fit together into the same topology domain before committing resources.\nIf no feasible placement is found, the entire PodGroup becomes unschedulable.\n\nThis is the recommended approach for workloads like distributed AI and ML training that strictly\nrequire proximity to minimize inter-pod communication latency.\n\nIf new pods are added to the PodGroup where some pods are already scheduled (for example, if pods\nare recreated), the scheduler will force all new incoming pods to land on the exact same topology\ndomain where the existing pods currently reside. If that specific domain lacks sufficient capacity\nfor the new pods, the pods will remain pending - even if it means that less than `minCount` pods\nare scheduled at this point.\n\n\n> **Note:** As of v1.36 Topology-Aware Scheduling does not trigger workload or pod preemption. If no\nfeasible placement can be found without triggering preemption, the PodGroup becomes unschedulable.\n\n\n## Topology-aware scheduling with basic scheduling policy\n\nUsing TAS with `basic` scheduling policy may exhibit inconsistent behavior. The scheduler may only\nobserve a subset of pods when entering the PodGroup scheduling cycle - therefore placement\nfeasibility is only evaluated for the observed pods, rather than the entire PodGroup. To partially\nmitigate this limitation, you can use scheduling gates to hold off PodGroup scheduling until all\npods within the PodGroup are in the scheduling queue.\n\nIf no feasible placement is found for the entire PodGroup, only a subset of pods may be scheduled,\nand they are guaranteed to meet the scheduling constraints.\n\nIf new pods are added to the PodGroup where some pods are already scheduled, the scheduler will act\nthe same as in case of `gang` policy - forcing the new pods into the same domain, unless there is\ninsufficient capacity (in which case the new pods will remain pending).\n\n## API configuration: scheduling constraints\n\nEvery PodGroup (or PodGroupTemplate) may optionally declare the `schedulingConstraints` field,\nwhich is interpreted by the [placement-based PodGroup scheduling algorithm](/docs/concepts/scheduling-eviction/podgroup-scheduling/#placement-scheduling-algorithm).\nIf constraints are defined in PodGroupTemplate, they will be copied to referencing PodGroups.\n\nAs of Kubernetes v1.36, the API supports topology constraints.\n\n\n> **Note:** As of Kubernetes v1.36, you can specify only a single topology constraint in each PodGroup.\n\n\n### Topology constraint\n\nTo define a topology constraint for a PodGroup you need to set a `key`, which corresponds to\na Kubernetes node label, representing the target topology domain (for example, a rack or a zone).\nThe scheduler strictly enforces that all pods within the PodGroup are placed onto nodes that share\nthe exact same value for this specified label.\n\nHere is an example of a PodGroup configured with a topology constraint:\n\n```yaml\napiVersion: scheduling.k8s.io/v1alpha2\nkind: PodGroup\nmetadata:\n  name: example-podgroup\nspec:\n  schedulingPolicy:\n    gang:\n      minCount: 4\n  schedulingConstraints:\n    topology:\n      - key: topology.example.com/rack\n```\n\n## \n\n* Learn about [pod group policies](/docs/concepts/workloads/workload-api/policies/).\n* Learn about [plugins related Topology-aware Scheduling](/docs/concepts/scheduling-eviction/topology-aware-scheduling/)\n* Read about [gang scheduling](/docs/\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/workloads/workload-api/topology-aware-scheduling.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": null,
          "line_end": null,
          "quote": "Topology-Aware Workload Scheduling"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-aware-scheduling-with-gang-scheduling-policy",
      "type": "concept",
      "title": "Topology-aware scheduling with gang scheduling policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": 468,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-aware-scheduling-with-basic-scheduling-policy",
      "type": "concept",
      "title": "Topology-aware scheduling with basic scheduling policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": 1683,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-configuration-scheduling-constraints",
      "type": "concept",
      "title": "API configuration: scheduling constraints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": 2614,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-constraint",
      "type": "concept",
      "title": "Topology constraint",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": 3199,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/workload-api/disruption-and-priority",
      "type": "page",
      "title": "Pod Group Disruption and Priority",
      "summary": "",
      "body": "\n\n\nPodGroup can declare a disruption mode. This mode dictates how\nthe scheduler can disrupt a running PodGroup, for example to accommodate\na higher priority PodGroup. A PodGroup also has a priority,\nwhich overrides the priority of the individual pods from the group\nfor [workload-aware preemption](/docs/concepts/scheduling-eviction/workload-aware-preemption/) events.\n\n\n\n## Disruption mode types\n\n\n> **Note:** As of 1.36, the `priority` or `disruptionMode` fields of the PodGroup are only respected\nby [workload-aware preemption](/docs/concepts/scheduling-eviction/workload-aware-preemption/).\nDuring the pod scheduling phase, the scheduler does not take into account\nthe `priority` or `disruptionMode` fields of the PodGroup.\n\n\nThe API supports two disruption modes: `Pod` and `PodGroup`.\nThe default one is `Pod`.\n\n### Pod\n\nThe `Pod` mode instructs the scheduler to treat all Pods in the group as separate entities,\nallowing independent disruption of a single pod from a PodGroup.\n\n### PodGroup\n\nThe `PodGroup` mode emphasizes \"all-or-nothing\" semantics for disruption.\nIt instructs the scheduler that all pods from the PodGroup have to be disrupted together.\n\n## Pod group priority\n\nPodGroup uses the same concept of [PriorityClass](/docs/concepts/scheduling-eviction/pod-priority-preemption/#priorityclass) as single Pods.\nOnce you have created one or more PriorityClasses,\nyou can create a PodGroup that specifies one of those PriorityClass names in its specification.\nThe priority admission controller uses the `priorityClassName` field and populates the integer value of the priority.\nIf the priority class is not found, the PodGroup is rejected.\nWhen `priorityClassName` is not set for a PodGroup, Kubernetes looks for a default (a PriorityClass with `globalDefault` set true)\nIf there is no PriorityClass with `globalDefault` set true, a PodGroup with no `priorityClassName` has priority zero.\n\nThe priority of the PodGroup is an authoritative priority for all pods in the group during [workload-aware preemption](/docs/concepts/scheduling-eviction/workload-aware-preemption/) events, even when priorities of individual pods forming this PodGroup differ.\n\nThe following YAML is an example of a PodGroup configuration that uses the `high-priority` PriorityClass,\nwhich maps to the integer priority value of 1000000.\nThe priority admission controller checks the specification and resolves the priority of the PodGroup to 1000000.\n\n```yaml\napiVersion: scheduling.k8s.io/v1alpha2\nkind: PodGroup\nmetadata:\n  namespace: ns-1\n  name: job-1\nspec:\n  priorityClassName: high-priority\n```\n\n## \n\n* Read about [Workload-Aware Preemption](/docs/concepts/scheduling-eviction/workload-aware-preemption/) algorithm.\n* Learn about the [Workload API](/docs/concepts/workloads/workload-api/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/workloads/workload-api/disruption-and-priority.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Group Disruption and Priority"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disruption-mode-types",
      "type": "concept",
      "title": "Disruption mode types",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": 468,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-group-priority",
      "type": "concept",
      "title": "Pod group priority",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": 1273,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod",
      "type": "concept",
      "title": "Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": 927,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroup",
      "type": "concept",
      "title": "PodGroup",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": 1094,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/workload-api/_index",
      "type": "page",
      "title": "Workload API",
      "summary": "",
      "body": "\n\n\nThe `Workload` API resource defines the scheduling requirements and structure of a multi-Pod\napplication. While workload controllers such as [Job](/docs/concepts/workloads/controllers/job/)\nmanage the application's runtime state, the `Workload` specifies how groups of `Pods`\nshould be scheduled. The Job controller is the only built-in controller that creates\n[PodGroup](/docs/concepts/workloads/podgroup-api/) objects from the `Workload`'s\n`PodGroupTemplates` at runtime.\n\n\n\n## What is a Workload?\n\nThe Workload API resource is part of the `scheduling.k8s.io/v1alpha2`\n[API group](#gloss:api-group)\nand your cluster must have that API group enabled, as well as the `GenericWorkload`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/),\nbefore you can use this API.\n\nA `Workload` is a static, long-lived policy template. It defines what scheduling\npolicies should be applied to groups of Pods, but does not track runtime state itself.\nRuntime scheduling state is maintained by [PodGroup](/docs/concepts/workloads/podgroup-api/)\nobjects, which controllers create from the `Workload`'s `PodGroupTemplates`.\n\n## API structure\n\nA `Workload` consists of two fields: a list of `PodGroupTemplates` and an optional controller\nreference. The entire `Workload` spec is immutable after creation: you cannot modify\nexisting templates, add new templates, or remove templates from `podGroupTemplates`.\n\n### PodGroupTemplates\n\nThe `spec.podGroupTemplates` list defines the distinct components of your workload.\nFor example, a machine learning job might have a `driver` template and a `worker` template.\n\nEach entry in `podGroupTemplates` must have:\n1. A unique `name` that will be used to reference the template in the `PodGroup`'s `spec.podGroupTemplateRef`.\n2. A [scheduling policy](/docs/concepts/workloads/workload-api/policies/) (`basic` or `gang`).\n\nIf the [`WorkloadAwarePreemption`](/docs/reference/command-line-tools-reference/feature-gates/#WorkloadAwarePreemption) [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) is enabled each entry in `podGroups` can also have [priority and disruption mode](/docs/concepts/workloads/workload-api/disruption-and-priority/).\n\nThe maximum number of PodGroupTemplates in a single Workload is 8.\n\n```yaml\napiVersion: scheduling.k8s.io/v1alpha2\nkind: Workload\nmetadata:\n  name: training-job-workload\n  namespace: some-ns\nspec:\n  controllerRef:\n    apiGroup: batch\n    kind: Job\n    name: training-job\n  podGroupTemplates:\n  - name: workers\n    schedulingPolicy:\n      gang:\n        # The gang is schedulable only if 4 pods can run at once\n        minCount: 4\n    priorityClassName: high-priority # Only applicable with WorkloadAwarePreemption feature gate\n    disruptionMode: PodGroup # Only applicable with WorkloadAwarePreemption feature gate\n```\n\nWhen a workload controller creates a `PodGroup` from one of these templates, it copies the\n`schedulingPolicy` into the `PodGroup`'s own spec. Changes to the `Workload` only affect\nnewly created `PodGroups`, not existing ones.\n\n### Referencing a workload controlling object\n\nThe `controllerRef` field links the Workload back to the specific high-level object defining the application,\nsuch as a [Job](/docs/concepts/workloads/controllers/job/) or a custom CRD. This is useful for observability and tooling.\nThis data is not used to schedule or manage the Workload.\n\n## Gang scheduling with Jobs\n\n\n\nWhen the\n[`WorkloadWithJob`](/docs/reference/command-line-tools-reference/feature-gates/)\nfeature gate is enabled, the\n[Job](/docs/concepts/workloads/controllers/job/) controller automatically\ncreates Workload and PodGroup objects for parallel indexed Jobs where\n`.spec.parallelism` equals `.spec.completions`. The gang policy's `minCount`\nis set to the Job's parallelism, so all Pods must be schedulable together\nbefore any of them are bound to nodes.\n\nThis is the built-in path for using gang scheduling with Jobs.\nYou do not need to create Workload or PodGroup object\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/workloads/workload-api/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Workload API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-is-a-workload",
      "type": "concept",
      "title": "What is a Workload?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 568,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-structure",
      "type": "concept",
      "title": "API structure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 1254,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:gang-scheduling-with-jobs",
      "type": "concept",
      "title": "Gang scheduling with Jobs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 3518,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgrouptemplates",
      "type": "concept",
      "title": "PodGroupTemplates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 1537,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:referencing-a-workload-controlling-object",
      "type": "concept",
      "title": "Referencing a workload controlling object",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 3180,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/podgroup-api/lifecycle",
      "type": "page",
      "title": "PodGroup Lifecycle",
      "summary": "",
      "body": "\n\n\nA [PodGroup](/docs/concepts/workloads/podgroup-api/) is scheduled as a unit and protected\nfrom premature deletion while its Pods are still running.\n\n\n\n## Ownership and lifecycle\n\n`PodGroups` are owned by the workload controller that created them (for example, a Job)\nvia standard `ownerReferences`. When the owning object is deleted, `PodGroups` are\nautomatically garbage collected.\n\n`PodGroup` names must be unique within a namespace and must be valid\n[DNS subdomains](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\n## Creation ordering\n\nControllers must create objects in this order:\n\n1. `Workload` — the scheduling policy template.\n2. `PodGroup` — the runtime instance.\n3. `Pods` — with `spec.schedulingGroup.podGroupName` pointing to the `PodGroup`.\n\nIf a `PodGroup` includes a `podGroupTemplateRef` that points to a `Workload` that does\nnot exist (or is being deleted), the API server rejects the `PodGroup` creation request.\nThe referenced `Workload` must exist before the `PodGroup` can be created.\n\nIf a `Pod` references a `PodGroup` that does not yet exist, the `Pod` remains pending.\nThe scheduler automatically queues the `Pod` for scheduling once the `PodGroup` is created.\n\n## Deletion protection\n\nA `PodGroup` cannot be fully deleted while any of its Pods are still running.\nA dedicated finalizer ensures that deletion is blocked until all `Pods` referencing the\n`PodGroup` have reached a terminal phase (`Succeeded` or `Failed`).\n\n## Controller-managed and user-managed PodGroups\n\nIn most cases, workload controllers (for example, Job) create `PodGroups` automatically\n(controller-managed). The controller determines the `podGroupName` for each Pod\nat creation time, similar to how a `DaemonSet` sets node affinity per Pod.\n\nIf you need more control over naming and lifecycle, you can create `PodGroup` objects directly and set\n`spec.schedulingGroup.podGroupName` in your Pod templates yourself\n(user-managed). This gives you full control over `PodGroup` creation and naming.\n\n## Limitations\n\n* All Pods in a `PodGroup` must use the same `.spec.schedulerName`.\n  If a mismatch is detected, the scheduler rejects all Pods in the group as unschedulable.\n* The `spec.schedulingPolicy.gang.minCount` field on a PodGroup is immutable.\n  Once created, you cannot change the minimum number of Pods that must be schedulable for the group to be admitted.\n* The `spec.schedulingGroup` field on a Pod is immutable.\n  Once set, a Pod cannot move to a different PodGroup.\n* The maximum number of `PodGroupTemplates` in a single `Workload` is 8.\n* The `PodGroupScheduled` condition reflects the outcome of the initial scheduling\n  attempt only. Once the condition is set to `True`, the scheduler does not update it\n  if Pods later fail, are evicted, or stop running.\n\n## \n\n* Learn about the [PodGroup API](/docs/concepts/workloads/podgroup-api/) overview and structure.\n* Learn about the [Workload API](/docs/concepts/workloads/workload-api/) that provides `PodGroupTemplates`.\n* See how Pods reference their PodGroup via the [scheduling group](/docs/concepts/workloads/pods/scheduling-group/) field.\n* Understand the [gang scheduling](/docs/concepts/scheduling-eviction/gang-scheduling/) algorithm.\n* Read [PodGroup scheduling policies](/docs/concepts/workloads/workload-api/policies/) for details on `basic` and `gang`.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/workloads/podgroup-api/lifecycle.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": null,
          "line_end": null,
          "quote": "PodGroup Lifecycle"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ownership-and-lifecycle",
      "type": "concept",
      "title": "Ownership and lifecycle",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creation-ordering",
      "type": "concept",
      "title": "Creation ordering",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": 635,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deletion-protection",
      "type": "concept",
      "title": "Deletion protection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": 1305,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controller-managed-and-user-managed-podgroups",
      "type": "concept",
      "title": "Controller-managed and user-managed PodGroups",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": 1564,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/podgroup-api/_index",
      "type": "page",
      "title": "PodGroup API",
      "summary": "",
      "body": "\n\n\nA PodGroup is a runtime object that represents a group of Pods scheduled together as a single unit.\nWhile the [Workload API](/docs/concepts/workloads/workload-api/) defines scheduling policy\ntemplates, PodGroups are the runtime counterparts that carry both the policy and the scheduling status\nfor a specific instance of that group.\n\n\n\n## What is a PodGroup?\n\nThe PodGroup API resource is part of the `scheduling.k8s.io/v1alpha2`\n[API group](#gloss:api-group)\nand your cluster must have that API group enabled, as well as the `GenericWorkload`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/),\nbefore you can use this API.\n\nA PodGroup is a self-contained scheduling unit. It defines the group of Pods that should be scheduled together, carries the\nscheduling policy that governs placement, and records the runtime status of that\nscheduling decision.\n\n## API structure\n\nA PodGroup consists of a `spec` that defines the desired scheduling behavior and\na `status` that reflects the current scheduling state.\n\n### Scheduling policy\n\nEach PodGroup carries a [scheduling policy](/docs/concepts/workloads/workload-api/policies/)\n(`basic` or `gang`) in `spec.schedulingPolicy`. When a workload controller creates\nthe PodGroup, this policy is copied from the Workload's PodGroupTemplate at creation time.\nFor standalone PodGroups, you set the policy directly.\n\n```yaml\nspec:\n  schedulingPolicy:\n    gang:\n      minCount: 4\n```\n\n### Template reference\n\nThe optional `spec.podGroupTemplateRef` links the PodGroup back to the PodGroupTemplate\nin the Workload it was created from. This is useful for observability and tooling.\n\n```yaml\nspec:\n  podGroupTemplateRef:\n    workload:\n      workloadName: training-policy\n      podGroupTemplateName: worker\n```\n\n### Requesting DRA devices for a PodGroup\n\n\n\n[Devices](#gloss:device) available through\n[Dynamic Resource Allocation (DRA)](#gloss:dra)\ncan be requested by a PodGroup through its `spec.resourceClaims` field:\n\n```yaml\napiVersion: scheduling.k8s.io/v1alpha2\nkind: PodGroup\nmetadata:\n  name: training-group\n  namespace: some-ns\nspec:\n  ...\n  resourceClaims:\n  - name: pg-claim\n    resourceClaimName: my-pg-claim\n  - name: pg-claim-template\n    resourceClaimTemplateName: my-pg-template\n```\n\n[ResourceClaims](#gloss:resourceclaim)\nassociated with PodGroups can be shared by all Pods belonging to the group. With\nonly a reference to the PodGroup in the ResourceClaim's `status.reservedFor`\ninstead of each individual Pod, any number of Pods in the same PodGroup can\nshare a ResourceClaim. ResourceClaims can also be generated from\n[ResourceClaimTemplates](#gloss:resourceclaimtemplate)\nfor each PodGroup, allowing the devices allocated to each generated\nResourceClaim to be shared by the Pods in each PodGroup.\n\nFor more details and a more complete example, see the\n[DRA documentation](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#workload-resource-claims).\n\n### Status\n\nThe scheduler updates `status.conditions` to report whether the group has been\nsuccessfully scheduled. The primary condition is `PodGroupScheduled`, which is `True`\nwhen all required Pods have been placed and `False` when scheduling fails.\n\n\n> **Note:** The `PodGroupScheduled` condition reflects the initial scheduling decision only.\nThe scheduler does not update it if Pods later fail or are evicted. See\n[Limitations](/docs/concepts/workloads/podgroup-api/lifecycle/#limitations)\nfor details.\n\n\nSee the [PodGroup lifecycle](/docs/concepts/workloads/podgroup-api/lifecycle/#podgroup-status)\npage for the full list of conditions and reasons.\n\n## Creating a PodGroup\n\nA PodGroup API resource is part of the `scheduling.k8s.io/v1alpha2`\n[API group](#gloss:api-group).\n(and your cluster must have that API group enabled, as well as the `GenericWorkload`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/),\nbefore you can use this API).\n\nThe following manifest creates a PodGroup with a gang scheduling policy that requir\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
      "meta": {
        "weight": 25,
        "rel_path": "concepts/workloads/podgroup-api/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "PodGroup API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-is-a-podgroup",
      "type": "concept",
      "title": "What is a PodGroup?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 427,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-podgroup",
      "type": "concept",
      "title": "Creating a PodGroup",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 3929,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-it-fits-together",
      "type": "concept",
      "title": "How it fits together",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 4787,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduling-policy",
      "type": "concept",
      "title": "Scheduling policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 1156,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:template-reference",
      "type": "concept",
      "title": "Template reference",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 1569,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:requesting-dra-devices-for-a-podgroup",
      "type": "concept",
      "title": "Requesting DRA devices for a PodGroup",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 1892,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:status",
      "type": "concept",
      "title": "Status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 3260,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/user-namespaces",
      "type": "page",
      "title": "User Namespaces",
      "summary": "",
      "body": "\n\n\nThis page explains how user namespaces are used in Kubernetes pods. A user\nnamespace isolates the user running inside the container from the one\nin the host.\n\nA process running as root in a container can run as a different (non-root) user\nin the host; in other words, the process has full privileges for operations\ninside the user namespace, but is unprivileged for operations outside the\nnamespace.\n\nYou can use this feature to reduce the damage a compromised container can do to\nthe host or other pods in the same node. There are [several security\nvulnerabilities][KEP-vulns] rated either **HIGH** or **CRITICAL** that were not\nexploitable when user namespaces is active. It is expected user namespace will\nmitigate some future vulnerabilities too.\n\n[KEP-vulns]: https://github.com/kubernetes/enhancements/tree/217d790720c5aef09b8bd4d6ca96284a0affe6c2/keps/sig-node/127-user-namespaces#motivation\n\n\n## \n\n\n\nThis is a Linux-only feature and support is needed in Linux for idmap mounts on\nthe filesystems used. This means:\n\n* On the node, the filesystem you use for `/var/lib/kubelet/pods/`, or the\n  custom directory you configure for this, needs idmap mount support.\n* All the filesystems used in the pod's volumes must support idmap mounts.\n\nIn practice this means you need at least Linux 6.3, as tmpfs started supporting\nidmap mounts in that version. This is usually needed as several Kubernetes\nfeatures use tmpfs (the service account token that is mounted by default uses a\ntmpfs, Secrets use a tmpfs, etc.)\n\nSome popular filesystems that support idmap mounts in Linux 6.3 are: btrfs,\next4, xfs, fat, tmpfs, overlayfs.\n\nIn addition, the container runtime and its underlying OCI runtime must support\nuser namespaces. The following OCI runtimes offer support:\n\n* [crun](https://github.com/containers/crun) version 1.9 or greater (it's recommend version 1.13+).\n* [runc](https://github.com/opencontainers/runc) version 1.2 or greater\n\nTo use user namespaces with Kubernetes, you also need to use a CRI\n[container runtime](#gloss:container-runtime)\nto use this feature with Kubernetes pods:\n\n* containerd: version 2.0 (and later) supports user namespaces for containers.\n* CRI-O: version 1.25 (and later) supports user namespaces for containers.\n\nYou can see the status of user namespaces support in cri-dockerd tracked in an [issue][CRI-dockerd-issue]\non GitHub.\n\n[CRI-dockerd-issue]: https://github.com/Mirantis/cri-dockerd/issues/74\n\n## Introduction\n\nUser namespaces is a Linux feature that allows to map users in the container to\ndifferent users in the host. Furthermore, the capabilities granted to a pod in\na user namespace are valid only in the namespace and void outside of it.\n\nA pod can opt-in to use user namespaces by setting the `pod.spec.hostUsers` field\nto `false`.\n\nThe kubelet will pick host UIDs/GIDs a pod is mapped to, and will do so in a way\nto guarantee that no two pods on the same node use the same mapping.\n\nThe `runAsUser`, `runAsGroup`, `fsGroup`, etc. fields in the `pod.spec` always\nrefer to the user inside the container. These users will be used for volume\nmounts (specified in `pod.spec.volumes`) and therefore the host UID/GID will not\nhave any effect on writes/reads from volumes the pod can mount. In other words,\nthe inodes created/read in volumes mounted by the pod will be the same as if the\npod wasn't using user namespaces.\n\nThis way, a pod can easily enable and disable user namespaces (without affecting\nits volume's file ownerships) and can also share volumes with pods without user\nnamespaces by just setting the appropriate users inside the container\n(`RunAsUser`, `RunAsGroup`, `fsGroup`, etc.). This applies to any volume the pod\ncan mount, including `hostPath` (if the pod is allowed to mount `hostPath`\nvolumes).\n\nBy default, the valid UIDs/GIDs when this feature is enabled is the range 0-65535.\nThis applies to files and processes (`runAsUser`, `runAsGroup`, etc.).\n\nFiles using a UID/GID outside this range will be seen as belonging to the\nover\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
      "meta": {
        "weight": 160,
        "rel_path": "concepts/workloads/pods/user-namespaces.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": null,
          "line_end": null,
          "quote": "User Namespaces"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-user-namespaces-for-pods-pods-and-userns",
      "type": "concept",
      "title": "Understanding user namespaces for pods {#pods-and-userns}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 4689,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-up-a-node-to-support-user-namespaces",
      "type": "concept",
      "title": "Set up a node to support user namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 7043,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:id-count-for-each-of-pods",
      "type": "concept",
      "title": "ID count for each of Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 9847,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:integration-with-pod-security-admission-checks",
      "type": "concept",
      "title": "Integration with Pod security admission checks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 10490,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metrics-and-observability",
      "type": "concept",
      "title": "Metrics and observability",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 13461,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:filesystem-support",
      "type": "concept",
      "title": "Filesystem support",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 12443,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/sidecar-containers",
      "type": "page",
      "title": "Sidecar Containers",
      "summary": "",
      "body": "\n\n\nSidecar containers are the secondary containers that run along with the main\napplication container within the same [Pod](#gloss:pod).\nThese containers are used to enhance or to extend the functionality of the primary _app\ncontainer_ by providing additional services, or functionality such as logging, monitoring,\nsecurity, or data synchronization, without directly altering the primary application code.\n\nTypically, you only have one app container in a Pod. For example, if you have a web\napplication that requires a local webserver, the local webserver is a sidecar and the\nweb application itself is the app container.\n\n\n\n## Sidecar containers in Kubernetes {#pod-sidecar-containers}\n\nKubernetes implements sidecar containers as a special case of\n[init containers](/docs/concepts/workloads/pods/init-containers/); sidecar containers remain\nrunning after Pod startup. This document uses the term _regular init containers_ to clearly\nrefer to containers that only run during Pod startup.\n\nProvided that your cluster has the `SidecarContainers`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/) enabled\n(the feature is active by default since Kubernetes v1.29), you can specify a `restartPolicy`\nfor containers listed in a Pod's `initContainers` field.\nThese restartable _sidecar_ containers are independent from other init containers and from\nthe main application container(s) within the same pod.\nThese can be started, stopped, or restarted without affecting the main application container\nand other init containers.\n\nYou can also run a Pod with multiple containers that are not marked as init or sidecar\ncontainers. This is appropriate if the containers within the Pod are required for the\nPod to work overall, but you don't need to control which containers start or stop first.\nYou could also do this if you need to support older versions of Kubernetes that don't\nsupport a container-level `restartPolicy` field.\n\n### Example application {#sidecar-example}\n\nHere's an example of a Deployment with two containers, one of which is a sidecar:\n\n\n> **Note:** In this example, the sidecar container is intentionally defined under `initContainers`\nwith `restartPolicy: Always`. Kubernetes treats such containers as sidecars that continue\nrunning for the lifetime of the Pod.\n\n\n\n\n## Sidecar containers and Pod lifecycle\n\nIf an init container is created with its `restartPolicy` set to `Always`, it will\nstart and remain running during the entire life of the Pod. This can be helpful for\nrunning supporting services separated from the main application containers.\n\nIf a `readinessProbe` is specified for this init container, its result will be used\nto determine the `ready` state of the Pod.\n\nSince these containers are defined as init containers, they benefit from the same\nordering and sequential guarantees as regular init containers, allowing you to mix\nsidecar containers with regular init containers for complex Pod initialization flows.\n\nCompared to regular init containers, sidecars defined within `initContainers` continue to\nrun after they have started. This is important when there is more than one entry inside\n`.spec.initContainers` for a Pod. After a sidecar-style init container is running (the kubelet\nhas set the `started` status for that init container to true), the kubelet then starts the\nnext init container from the ordered `.spec.initContainers` list.\nThat status either becomes true because there is a process running in the\ncontainer and no startup probe defined, or as a result of its `startupProbe` succeeding.\n\nUpon Pod [termination](/docs/concepts/workloads/pods/pod-lifecycle/#termination-with-sidecars),\nthe kubelet postpones terminating sidecar containers until the main application container has fully stopped.\nThe sidecar containers are then shut down in the opposite order of their appearance in the Pod specification.\nThis approach ensures that the sidecars remain operational, supporting other containers within the Pod,\nuntil their service \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/workloads/pods/sidecar-containers.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": null,
          "line_end": null,
          "quote": "Sidecar Containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sidecar-containers-in-kubernetes-pod-sidecar-containers",
      "type": "concept",
      "title": "Sidecar containers in Kubernetes {#pod-sidecar-containers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 748,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sidecar-containers-and-pod-lifecycle",
      "type": "concept",
      "title": "Sidecar containers and Pod lifecycle",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 2516,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:differences-from-application-containers",
      "type": "concept",
      "title": "Differences from application containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 4617,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:differences-from-init-containers",
      "type": "concept",
      "title": "Differences from init containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 5748,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-sharing-within-containers",
      "type": "concept",
      "title": "Resource sharing within containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 6856,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-application-sidecar-example",
      "type": "concept",
      "title": "Example application {#sidecar-example}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 2067,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobs-with-sidecar-containers",
      "type": "concept",
      "title": "Jobs with sidecar containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 4237,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sidecar-containers-and-linux-cgroups-cgroups",
      "type": "concept",
      "title": "Sidecar containers and Linux cgroups {#cgroups}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 8114,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/downward-api",
      "type": "page",
      "title": "Downward API",
      "summary": "There are two ways to expose Pod and container fields to a running container: environment variables, and as files that are populated by a special volume type. Together, these two ways of exposing Pod and container fields are called the downward API.",
      "body": "\n\nIt is sometimes useful for a container to have information about itself, without\nbeing overly coupled to Kubernetes. The _downward API_ allows containers to consume\ninformation about themselves or the cluster without using the Kubernetes client\nor API server.\n\nAn example is an existing application that assumes a particular well-known\nenvironment variable holds a unique identifier. One possibility is to wrap the\napplication, but that is tedious and error-prone, and it violates the goal of low\ncoupling. A better option would be to use the Pod's name as an identifier, and\ninject the Pod's name into the well-known environment variable.\n\nIn Kubernetes, there are two ways to expose Pod and container fields to a running container:\n\n* as [environment variables](/docs/tasks/inject-data-application/environment-variable-expose-pod-information/)\n* as [files in a `downwardAPI` volume](/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/)\n\nTogether, these two ways of exposing Pod and container fields are called the\n_downward API_.\n\n\n\n## Available fields\n\nOnly some Kubernetes API fields are available through the downward API. This\nsection lists which fields you can make available.\n\nYou can pass information from available Pod-level fields using `fieldRef`.\nAt the API level, the `spec` for a Pod always defines at least one\n[Container](/docs/reference/kubernetes-api/workload-resources/pod-v1/#Container).\nYou can pass information from available Container-level fields using\n`resourceFieldRef`.\n\n### Information available via `fieldRef` {#downwardapi-fieldRef}\n\nFor some Pod-level fields, you can provide them to a container either as\nan environment variable or using a `downwardAPI` volume. The fields available\nvia either mechanism are:\n\n`metadata.name`\n: the pod's name\n\n`metadata.namespace`\n: the pod's [namespace](#gloss:namespace)\n\n`metadata.uid`\n: the pod's unique ID\n\n`metadata.annotations['<KEY>']`\n: the value of the pod's [annotation](#gloss:annotation) named `<KEY>` (for example, `metadata.annotations['myannotation']`)\n\n`metadata.labels['<KEY>']`\n: the text value of the pod's [label](#gloss:label) named `<KEY>` (for example, `metadata.labels['mylabel']`)\n\nThe following information is available through environment variables\n**but not as a downwardAPI volume fieldRef**:\n\n`spec.serviceAccountName`\n: the name of the pod's [service account](#gloss:service-account)\n\n`spec.nodeName`\n: the name of the [node](#gloss:node) where the Pod is executing\n\n`status.hostIP`\n: the primary IP address of the node to which the Pod is assigned\n\n`status.hostIPs`\n: the IP addresses is a dual-stack version of `status.hostIP`, the first is always the same as `status.hostIP`.\n\n`status.podIP`\n: the pod's primary IP address (usually, its IPv4 address)\n\n`status.podIPs`\n: the IP addresses is a dual-stack version of `status.podIP`, the first is always the same as `status.podIP`\n\nThe following information is available through a `downwardAPI` volume \n`fieldRef`, **but not as environment variables**:\n\n`metadata.labels`\n: all of the pod's labels, formatted as `label-key=\"escaped-label-value\"` with one label per line\n\n`metadata.annotations`\n: all of the pod's annotations, formatted as `annotation-key=\"escaped-annotation-value\"` with one annotation per line  \n\n### Information available via `resourceFieldRef` {#downwardapi-resourceFieldRef}\n\nThese container-level fields allow you to provide information about\n[requests and limits](/docs/concepts/configuration/manage-resources-containers/#requests-and-limits)\nfor resources such as CPU and memory.\n\n\n> **Note:** \nContainer CPU and memory resources can be resized while the container is running.\nIf this happens, a downward API volume will be updated,\nbut environment variables will not be updated unless the container restarts.\nSee [Resize CPU and Memory Resources assigned to Containers](/docs/tasks/configure-pod-container/resize-container-resources/)\nfor more details.\n\n\n\n`resource: limits.cpu`\n: A container's CP\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
      "meta": {
        "weight": 170,
        "rel_path": "concepts/workloads/pods/downward-api.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": null,
          "line_end": null,
          "quote": "Downward API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:available-fields",
      "type": "concept",
      "title": "Available fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 1096,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:information-available-via-fieldref-downwardapi-fieldref",
      "type": "concept",
      "title": "Information available via `fieldRef` {#downwardapi-fieldRef}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 1560,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:information-available-via-resourcefieldref-downwardapi-resourcefieldref",
      "type": "concept",
      "title": "Information available via `resourceFieldRef` {#downwardapi-resourceFieldRef}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 3483,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/pod-condition",
      "type": "page",
      "title": "Pod Conditions",
      "summary": "",
      "body": "In Kubernetes, many objects have _conditions_. \nConditions are markers for some aspect of the actual state of the thing the object represents.\nPods have conditions, and Kubernetes Pod conditions are an important aspect of how controllers\n(and people doing troubleshooting) can understand the health of a Pod.\n\nA Pod's [phase](/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase) provides a high-level\nsummary of where the Pod is in its lifecycle, but a single value cannot capture the full\npicture. For example, a Pod may be in the `Running` phase but not yet ready to serve traffic.\nPod conditions complement the phase by tracking multiple aspects of the Pod's state\nindependently, such as whether it has been scheduled, whether its containers are ready,\nwhether a resize is in progress, or whether the Pod is about to be disrupted due to a\n[taint](#gloss:taint).\n\n## Structure of a Pod condition\n\nA Pod's status includes an array of\n[PodConditions](/docs/reference/generated/kubernetes-api//#podcondition-v1-core)\nthat indicate whether the Pod has passed certain checkpoints.\n\nEach element of the PodCondition array has the following fields:\n\n\n| Field name           | Description                                                                                          |\n|:---------------------|:-----------------------------------------------------------------------------------------------------|\n| `type`               | Name of this Pod condition.                                                                          |\n| `status`             | Indicates whether that condition is applicable, with possible values `\"True\"`, `\"False\"`, or `\"Unknown\"`. |\n| `lastProbeTime`      | Timestamp of when the Pod condition was last probed.                                                 |\n| `lastTransitionTime` | Timestamp for when the Pod last transitioned from one status to another.                             |\n| `reason`             | Machine-readable, UpperCamelCase text indicating the reason for the condition's last transition.     |\n| `message`            | Human-readable message indicating details about the last status transition.                          |\n| `observedGeneration` | The `.metadata.generation` of the Pod at the time the condition was recorded. See [Pod generation](/docs/concepts/workloads/pods/#pod-generation). |\n\n\n## Built-in Pod conditions {#built-in-pod-conditions}\n\nKubernetes manages the following Pod conditions:\n\n[Lifecycle conditions](#lifecycle-pod-conditions): set as a Pod progresses through its lifecycle, roughly in this order:\n`PodScheduled`, `PodReadyToStartContainers`, `Initialized`, `ContainersReady`, `Ready`.\n\n[Other conditions](#other-pod-conditions): set in response to specific operations or events:\n`DisruptionTarget`, `PodResizePending`, `PodResizeInProgress`.\n\nIn addition to the built-in conditions above, you can define custom conditions\nusing [Pod readiness gates](#enhanced-pod-readiness).\n\n## Lifecycle Pod conditions {#lifecycle-pod-conditions}\n\nAs a Pod progresses through its lifecycle, the kubelet sets the following conditions roughly in this order:\n\n1. `PodScheduled`: the Pod has been scheduled to a node.\n1. `PodReadyToStartContainers`: the Pod sandbox has been successfully created and networking configured. The sandbox and network are set up by the [container runtime](#gloss:container-runtime) and [CNI](#gloss:cni) plugin.\n1. `Initialized`: all [init containers](/docs/concepts/workloads/pods/init-containers/) have completed successfully. For a Pod without init containers, this is set to `True` before sandbox creation.\n1. `ContainersReady`: all containers in the Pod are ready. A container's readiness is determined by its [readiness probe](/docs/concepts/workloads/pods/probes/#readiness-probe), if configured.\n1. `Ready`: the Pod is able to serve requests and should be added to the load balancing pools of all matching [Services](/docs/concepts/services-networking/service/). Pods that are not `Ready` are remov\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
      "meta": {
        "weight": 35,
        "rel_path": "concepts/workloads/pods/pod-condition.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Conditions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:structure-of-a-pod-condition",
      "type": "concept",
      "title": "Structure of a Pod condition",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 902,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:built-in-pod-conditions-built-in-pod-conditions",
      "type": "concept",
      "title": "Built-in Pod conditions {#built-in-pod-conditions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 2472,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:lifecycle-pod-conditions-lifecycle-pod-conditions",
      "type": "concept",
      "title": "Lifecycle Pod conditions {#lifecycle-pod-conditions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 3078,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:other-pod-conditions-other-pod-conditions",
      "type": "concept",
      "title": "Other Pod conditions {#other-pod-conditions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 7672,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enhanced-pod-readiness",
      "type": "concept",
      "title": "Enhanced Pod readiness",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 11898,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podreadytostartcontainers-pod-ready-to-start-containers",
      "type": "concept",
      "title": "PodReadyToStartContainers {#pod-ready-to-start-containers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 5444,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disruptiontarget-disruption-target",
      "type": "concept",
      "title": "DisruptionTarget {#disruption-target}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 7860,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podresizepending-and-podresizeinprogress-pod-resize-conditions",
      "type": "concept",
      "title": "PodResizePending and PodResizeInProgress {#pod-resize-conditions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 10650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:status-for-pod-readiness",
      "type": "concept",
      "title": "Status for Pod readiness",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 13289,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/static-pods",
      "type": "page",
      "title": "Static Pods",
      "summary": "",
      "body": "_Static Pods_ are managed directly by the kubelet daemon on a specific node,\nwithout the [API server](#gloss:kube-apiserver)\nobserving them.\nUnlike Pods that are managed by the control plane (for example, a\n[Deployment](#gloss:deployment)),\nthe kubelet watches each static Pod and restarts it if it fails.\n\nStatic Pods are always bound to one [kubelet](#gloss:kubelet) on a specific node.\n\nThe main use for static Pods is to run a self-hosted control plane: in other words,\nusing the kubelet to supervise the individual\n[control plane components](/docs/concepts/overview/components/#control-plane-components).\nFor example, [kubeadm](/docs/reference/setup-tools/kubeadm/) uses static Pods to run\n`kube-apiserver`, `kube-controller-manager`, `kube-scheduler`, and `etcd` on control plane nodes.\n\n\n> **Note:** If your cluster runs control plane components as Pods, they are likely\nstatic Pods. You can recognize their mirror Pods in the `kube-system` namespace\nby the `kubernetes.io/config.mirror` annotation.\n\n\n## Mirror Pods {#mirror-pods}\n\nThe kubelet automatically tries to create a\n[mirror Pod](#gloss:mirror-pod)\non the Kubernetes API server for each static Pod.\nThis means that the Pods running on a node are visible on the API server,\nbut cannot be controlled from there.\nThe Pod names will be suffixed with the node hostname with a leading hyphen.\n\nThe kubelet propagates [labels](#gloss:label)\nfrom the static Pod to the mirror Pod. You can use those labels as normal via\n[selectors](#gloss:selector).\n\nIf you try to use `kubectl` to delete the mirror Pod from the API server,\nthe kubelet _does not_ remove the static Pod. The kubelet will recreate\nthe mirror Pod.\n\n## Limitations {#limitations}\n\nThe spec of a static Pod cannot refer to other API objects,\nsuch as [ServiceAccount](#gloss:service-account),\n[ConfigMap](#gloss:configmap), or\n[Secret](#gloss:secret).\n\nStatic Pods do not support [ephemeral containers](/docs/concepts/workloads/pods/ephemeral-containers/).\n\n## Static Pods vs DaemonSets {#static-pods-vs-daemonsets}\n\n\nIf you are running clustered Kubernetes and are using static Pods to run a Pod\non every node, you should probably be using a\n[DaemonSet](#gloss:daemonset) instead.\n\nStatic Pods are not managed by the control plane, so they cannot be rolled out,\nrolled back, or scaled using standard Kubernetes mechanisms. DaemonSets provide\nthese capabilities and are the recommended approach for running node-level workloads.\n\nStatic Pods are started by the kubelet before the API server is available, which\nmakes them suitable for bootstrapping control plane components. DaemonSets require\na running control plane.\n\n## \n\n- Learn how to [create static Pods](/docs/tasks/configure-pod-container/static-pod/).\n- Learn about [Kubernetes components](/docs/concepts/overview/components/) and how the control plane uses static Pods.\n- Learn about [DaemonSets](/docs/concepts/workloads/controllers/daemonset/) as an alternative to static Pods.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
      "meta": {
        "weight": 150,
        "rel_path": "concepts/workloads/pods/static-pods.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": null,
          "line_end": null,
          "quote": "Static Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mirror-pods-mirror-pods",
      "type": "concept",
      "title": "Mirror Pods {#mirror-pods}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 1119,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:static-pods-vs-daemonsets-static-pods-vs-daemonsets",
      "type": "concept",
      "title": "Static Pods vs DaemonSets {#static-pods-vs-daemonsets}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 2281,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/pod-lifecycle",
      "type": "page",
      "title": "Pod Lifecycle",
      "summary": "",
      "body": "\n\nThis page describes the lifecycle of a Pod. Pods follow a defined lifecycle, starting\nin the `Pending` [phase](#pod-phase), moving through `Running` if at least one\nof its primary containers starts OK, and then through either the `Succeeded` or\n`Failed` phases depending on whether any container in the Pod terminated in failure.\n\nWhile a Pod runs, the kubelet manages containers and translates the Pod's spec\nfor the container runtime. The kubelet also manages executing\n[probes](#container-probes) that track the health of your application.\n\nLike individual application containers, Pods are considered to be relatively\nephemeral (rather than durable) entities. Pods are created, assigned a unique\nID ([UID](/docs/concepts/overview/working-with-objects/names/#uids)), and scheduled\nto run on nodes where they remain until termination (according to restart policy) or\ndeletion.\nIf a [node](#gloss:node) dies, the Pods running on (or scheduled\nto run on) that node are [marked for deletion](#pod-garbage-collection). The control\nplane marks the Pods for removal after a timeout period.\n\n\n\n## Pod lifetime\n\nWhile a Pod is running, the kubelet is able to restart containers to handle\nsome kind of faults. Within a Pod, Kubernetes tracks different container\n[states](#container-states) and determines what action to take to make the Pod\nhealthy again. This is done in a [polling\nloop](/docs/reference/node/kubelet-sync-loop/) that periodically reconciles the\ndesired state (a Pod spec) with the actual state of the running containers.\n\nIn the Kubernetes API, Pods have both a specification and an actual status. The\nstatus for a Pod object consists of a set of [Pod conditions](#pod-conditions).\nYou can also inject [custom readiness information](#pod-readiness-gate) into the\ncondition data for a Pod, if that is useful to your application.\n\nPods are only [scheduled](/docs/concepts/scheduling-eviction/) once in their lifetime;\nassigning a Pod to a specific node is called _binding_, and the process of selecting\nwhich node to use is called _scheduling_.\nOnce a Pod has been scheduled and is bound to a node, Kubernetes tries\nto run that Pod on the node. The Pod runs on that node until it stops, or until the Pod\nis [terminated](#pod-termination); if Kubernetes isn't able to start the Pod on the selected\nnode (for example, if the node crashes before the Pod starts), then that particular Pod\nnever starts.\n\nYou can use [Pod Scheduling Readiness](/docs/concepts/scheduling-eviction/pod-scheduling-readiness/)\nto delay scheduling for a Pod until all its _scheduling gates_ are removed. For example,\nyou might want to define a set of Pods but only trigger scheduling once all the Pods\nhave been created.\n\n### Pods and fault recovery {#pod-fault-recovery}\n\nIf one of the containers in the Pod fails, then Kubernetes may try to restart that\nspecific container.\nRead [How Pods handle problems with containers](#container-restarts) to learn more.\n\nPods can however fail in a way that the cluster cannot recover from, and in that case\nKubernetes does not attempt to heal the Pod further; instead, Kubernetes deletes the\nPod and relies on other components to provide automatic healing.\n\nIf a Pod is scheduled to a [node](#gloss:node) and that\nnode then fails, the Pod is treated as unhealthy and Kubernetes eventually deletes the Pod.\nA Pod won't survive an [eviction](#gloss:eviction) due to\na lack of resources or Node maintenance.\n\nKubernetes uses a higher-level abstraction, called a\n[controller](#gloss:controller), that handles the work of\nmanaging the relatively disposable Pod instances.\n\nA given Pod (as defined by a UID) is never \"rescheduled\" to a different node; instead,\nthat Pod can be replaced by a new, near-identical Pod. If you make a replacement Pod, it can\neven have same name (as in `.metadata.name`) that the old Pod had, but the replacement\nwould have a different `.metadata.uid` from the old Pod.\n\nKubernetes does not guarantee that a replacement for an existing Pod would be schedu\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/workloads/pods/pod-lifecycle.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Lifecycle"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-lifetime",
      "type": "concept",
      "title": "Pod lifetime",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 1141,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-phase",
      "type": "concept",
      "title": "Pod phase",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 4978,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-states",
      "type": "concept",
      "title": "Container states",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 8232,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-pods-handle-problems-with-containers-container-restarts",
      "type": "concept",
      "title": "How Pods handle problems with containers {#container-restarts}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 10404,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-conditions",
      "type": "concept",
      "title": "Pod conditions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 29864,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resizing-pods-pod-resize",
      "type": "concept",
      "title": "Resizing Pods {#pod-resize}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 36330,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-probes",
      "type": "concept",
      "title": "Container probes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 39418,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:termination-of-pods-pod-termination",
      "type": "concept",
      "title": "Termination of Pods {#pod-termination}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 42087,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-behavior-during-kubelet-restarts-kubelet-restarts",
      "type": "concept",
      "title": "Pod behavior during kubelet restarts {#kubelet-restarts}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 53377,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pods-and-fault-recovery-pod-fault-recovery",
      "type": "concept",
      "title": "Pods and fault recovery {#pod-fault-recovery}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 2756,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:associated-lifetimes",
      "type": "concept",
      "title": "Associated lifetimes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 4209,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:waiting-container-state-waiting",
      "type": "concept",
      "title": "`Waiting` {#container-state-waiting}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 9050,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-container-state-running",
      "type": "concept",
      "title": "`Running` {#container-state-running}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 9588,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:terminated-container-state-terminated",
      "type": "concept",
      "title": "`Terminated` {#container-state-terminated}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 9943,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-restarts-restart-policy",
      "type": "concept",
      "title": "Container restarts {#restart-policy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 13520,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reduced-container-restart-delay",
      "type": "concept",
      "title": "Reduced container restart delay",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 27586,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configurable-container-restart-delay",
      "type": "concept",
      "title": "Configurable container restart delay",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 28135,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-readiness-pod-readiness-gate",
      "type": "concept",
      "title": "Pod readiness {#pod-readiness-gate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 31856,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:status-for-pod-readiness-pod-readiness-status",
      "type": "concept",
      "title": "Status for Pod readiness {#pod-readiness-status}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 33150,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-readiness-to-start-containers-pod-ready-to-start-containers",
      "type": "concept",
      "title": "Pod readiness to start containers {#pod-ready-to-start-containers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 33982,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:in-place-pod-resize-pod-resize-inplace",
      "type": "concept",
      "title": "In-place Pod resize {#pod-resize-inplace}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 36782,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resizing-by-launching-replacement-pods",
      "type": "concept",
      "title": "Resizing by launching replacement Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 38430,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:startup-probe",
      "type": "concept",
      "title": "Startup probe",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 40229,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:liveness-probe",
      "type": "concept",
      "title": "Liveness probe",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 40805,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:readiness-probe",
      "type": "concept",
      "title": "Readiness probe",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 41401,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stop-signals-pod-termination-stop-signals",
      "type": "concept",
      "title": "Stop Signals {#pod-termination-stop-signals}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 43798,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defining-custom-stop-signals",
      "type": "concept",
      "title": "Defining custom stop signals",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 44129,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-termination-flow-pod-termination-flow",
      "type": "concept",
      "title": "Pod Termination Flow {#pod-termination-flow}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 45105,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:forced-pod-termination-pod-termination-forced",
      "type": "concept",
      "title": "Forced Pod termination {#pod-termination-forced}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 49375,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-shutdown-and-sidecar-containers-termination-with-sidecars",
      "type": "concept",
      "title": "Pod shutdown and sidecar containers {#termination-with-sidecars}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 50852,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:garbage-collection-of-pods-pod-garbage-collection",
      "type": "concept",
      "title": "Garbage collection of Pods {#pod-garbage-collection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 52113,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:detection-of-kubelet-restarts",
      "type": "concept",
      "title": "Detection of kubelet restarts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 53767,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/probes",
      "type": "page",
      "title": "Liveness, Readiness, and Startup Probes",
      "summary": "",
      "body": "\n\nKubernetes lets you define _probes_ to continuously monitor the health\nof containers in a Pod. A probe is a diagnostic performed periodically\nby the [kubelet](#gloss:kubelet) on a container.\nTo perform a diagnostic, the kubelet either executes code within\nthe container or makes a network request.\n\nBased on the probe results, Kubernetes can restart unhealthy containers\nor stop sending traffic to containers that are not ready.\n\n\n\n## Types of probe {#types-of-probe}\n\nThe kubelet can optionally perform and react to three kinds of probes on running\ncontainers, each serving a different purpose:\n\n- [Startup probe](#startup-probe)\n- [Liveness probe](#liveness-probe)\n- [Readiness probe](#readiness-probe)\n\n### Startup probe {#startup-probe}\n\nStartup probes verify whether the application within a container is started.\nIf a startup probe is configured, Kubernetes does not execute liveness or \nreadiness probes until the startup probe succeeds, allowing the application\ntime to finish its initialization.\n\nThis type of probe is only executed at startup, unlike liveness and readiness\nprobes, which are run periodically.\nIf the startup probe fails, the kubelet kills the container, and the container\nis subjected to its [restart policy](/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy).\n\n### Liveness probe {#liveness-probe}\n\nLiveness probes determine when to restart a container.\nFor example, liveness probes could catch a deadlock, where an application is\nrunning, but unable to make progress. Restarting a container in such a state\ncan help to make the application more available despite bugs.\n\nIf a container fails its liveness probe more times than the configured tolerance,\nthe kubelet restarts that container.\nLiveness probes do not wait for readiness probes to succeed. If you want to\nwait before executing a liveness probe, you can either define\n`initialDelaySeconds` or use a [startup probe](#startup-probe).\n\n\n> **Caution:** Liveness probes can be a powerful way to recover from application failures,\nbut they should be used with caution.\nLiveness probes must be configured carefully to ensure that they truly indicate\nunrecoverable application failure, for example a deadlock.\n\nIncorrect implementation of liveness probes can lead to cascading failures.\nThis results in restarting of container under high load; failed client requests\nas your application became less scalable; and increased workload on remaining\npods due to some failed pods. Understand the difference between liveness and\nreadiness probes and when to apply them for your app.\n\n\n### Readiness probe {#readiness-probe}\n\nReadiness probes determine when a container is ready to accept traffic.\nThis is useful when waiting for an application to perform time-consuming initial\ntasks, such as establishing network connections, loading files, and warming\ncaches.\nReadiness probes can also be useful later in the container’s lifecycle,\nfor example, when recovering from temporary faults or overloads.\n\nIf the readiness probe returns a failed state, the\n[EndpointSlice](#gloss:endpoint-slice)\ncontroller removes the Pod's IP address from the EndpointSlices of all Services\nthat match the Pod.\n\nReadiness probes run on the container during its whole lifecycle.\n\n\n> **Note:** If you want to be able to drain requests when the Pod is deleted, you do not\nnecessarily need a readiness probe; when the Pod is deleted, the corresponding\nendpoint in the EndpointSlice will update its [conditions](https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/#conditions): the endpoint ready\ncondition will be set to false, so load balancers will not use the Pod for\nregular traffic. See [Pod termination](/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination)\nfor more information about how the kubelet handles Pod deletion.\n\n\n## When to use each probe {#when-to-use-each-probe}\n\n### When should you use a startup probe? {#when-should-you-use-a-startup-probe}\n\nStartup probes are useful for Pods that have co\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
      "meta": {
        "weight": 65,
        "rel_path": "concepts/workloads/pods/probes.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": null,
          "line_end": null,
          "quote": "Liveness, Readiness, and Startup Probes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:types-of-probe-types-of-probe",
      "type": "concept",
      "title": "Types of probe {#types-of-probe}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 497,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-to-use-each-probe-when-to-use-each-probe",
      "type": "concept",
      "title": "When to use each probe {#when-to-use-each-probe}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 3943,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-mechanisms-check-mechanisms",
      "type": "concept",
      "title": "Check mechanisms {#check-mechanisms}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 6888,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:probe-results-probe-results",
      "type": "concept",
      "title": "Probe results {#probe-results}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 8611,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuration-fields-configure-probes",
      "type": "concept",
      "title": "Configuration fields {#configure-probes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 9501,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:probe-mechanism-details-probe-mechanism-details",
      "type": "concept",
      "title": "Probe mechanism details {#probe-mechanism-details}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 14272,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:startup-probe-startup-probe",
      "type": "concept",
      "title": "Startup probe {#startup-probe}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 771,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:liveness-probe-liveness-probe",
      "type": "concept",
      "title": "Liveness probe {#liveness-probe}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 1364,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:readiness-probe-readiness-probe",
      "type": "concept",
      "title": "Readiness probe {#readiness-probe}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 2649,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-should-you-use-a-startup-probe-when-should-you-use-a-startup-probe",
      "type": "concept",
      "title": "When should you use a startup probe? {#when-should-you-use-a-startup-probe}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 3996,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-should-you-use-a-liveness-probe-when-should-you-use-a-liveness-probe",
      "type": "concept",
      "title": "When should you use a liveness probe? {#when-should-you-use-a-liveness-probe}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 4851,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-should-you-use-a-readiness-probe-when-should-you-use-a-readiness-probe",
      "type": "concept",
      "title": "When should you use a readiness probe? {#when-should-you-use-a-readiness-probe}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 5608,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:probe-level-terminationgraceperiodseconds-probe-level-terminationgraceperiodseconds",
      "type": "concept",
      "title": "Probe-level `terminationGracePeriodSeconds` {#probe-level-terminationgraceperiodseconds}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 12955,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:http-probes-http-probes",
      "type": "concept",
      "title": "HTTP probes {#http-probes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 14327,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tcp-probes-tcp-probes",
      "type": "concept",
      "title": "TCP probes {#tcp-probes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 18965,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:grpc-probes-grpc-probes",
      "type": "concept",
      "title": "gRPC probes {#grpc-probes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 19196,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/scheduling-group",
      "type": "page",
      "title": "Scheduling Group",
      "summary": "",
      "body": "\n\n\nYou can link a `Pod` to a [PodGroup](/docs/concepts/workloads/podgroup-api/) to indicate\nthat the `Pod` belongs to a group of `Pods` scheduled together. This enables the scheduler\nto apply group-level policies such as gang scheduling rather than treating each `Pod` independently.\n\n\n\n## Specifying a scheduling group\n\nWhen the [`GenericWorkload`](/docs/reference/command-line-tools-reference/feature-gates/#GenericWorkload)\nfeature gate is enabled,\nyou can set the `spec.schedulingGroup` field in your `Pod` manifest. This field establishes a link to a specific `PodGroup` object in the same namespace by name.\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: worker-0\n  namespace: some-ns\nspec:\n  schedulingGroup:\n    podGroupName: training-worker-0\n  containers:\n  - name: ml-worker\n    image: training:v1\n```\n\nThe `schedulingGroup` field is immutable. Once set, a `Pod` cannot be moved to a\ndifferent `PodGroup`.\n\n## Behavior\n\nWhen you set `spec.schedulingGroup`, the scheduler looks up the referenced\n[PodGroup](/docs/concepts/workloads/podgroup-api/) and applies the\n[scheduling policy](/docs/concepts/workloads/workload-api/policies/) defined in it:\n\n* If the `PodGroup` uses the `basic` policy, each `Pod` is scheduled independently using\n  standard Kubernetes behavior. The grouping is used as group-level label.\n* If the `PodGroup` uses the `gang` policy, the `Pod` enters an \"all-or-nothing\" scheduling\n  lifecycle. The scheduler tries to place at least `minCount` `Pods` in the group\n  simultaneously; none of them bind to nodes unless the minimum is met.\n\n## Missing PodGroup reference\n\nIf a `Pod` references a `PodGroup` that does not yet exist, the `Pod` remains pending.\nThe scheduler automatically reconsiders the `Pod` once the `PodGroup` is created.\n\nThis applies regardless of whether the eventual policy is `basic` or `gang`,\nbecause the scheduler requires the `PodGroup` to determine the policy.\n\n## \n\n* Learn about the [PodGroup API](/docs/concepts/workloads/podgroup-api/) and its lifecycle.\n* Read about [PodGroup scheduling policies](/docs/concepts/workloads/workload-api/policies/).\n* Understand the [gang scheduling](/docs/concepts/scheduling-eviction/gang-scheduling/) algorithm.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/scheduling-group/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/workloads/pods/scheduling-group.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/scheduling-group.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/scheduling-group/",
          "line_start": null,
          "line_end": null,
          "quote": "Scheduling Group"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specifying-a-scheduling-group",
      "type": "concept",
      "title": "Specifying a scheduling group",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/scheduling-group.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/scheduling-group/",
          "line_start": 375,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:behavior",
      "type": "concept",
      "title": "Behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/scheduling-group.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/scheduling-group/",
          "line_start": 1011,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:missing-podgroup-reference",
      "type": "concept",
      "title": "Missing PodGroup reference",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/scheduling-group.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/scheduling-group/",
          "line_start": 1662,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/disruptions",
      "type": "page",
      "title": "Disruptions",
      "summary": "",
      "body": "\nThis guide is for application owners who want to build\nhighly available applications, and thus need to understand\nwhat types of disruptions can happen to Pods.\n\nIt is also for cluster administrators who want to perform automated\ncluster actions, like upgrading and autoscaling clusters.\n\n\n\n## Voluntary and involuntary disruptions\n\nPods do not disappear until someone (a person or a controller) destroys them, or\nthere is an unavoidable hardware or system software error.\n\nWe call these unavoidable cases *involuntary disruptions* to\nan application.  Examples are:\n\n- a hardware failure of the physical machine backing the node\n- cluster administrator deletes VM (instance) by mistake\n- cloud provider or hypervisor failure makes VM disappear\n- a kernel panic\n- the node disappears from the cluster due to cluster network partition\n- eviction of a pod due to the node being [out-of-resources](/docs/concepts/scheduling-eviction/node-pressure-eviction/).\n\nExcept for the out-of-resources condition, all these conditions\nshould be familiar to most users; they are not specific\nto Kubernetes.\n\nWe call other cases *voluntary disruptions*.  These include both\nactions initiated by the application owner and those initiated by a Cluster\nAdministrator.  Typical application owner actions include:\n\n- deleting the deployment or other controller that manages the pod\n- updating a deployment's pod template causing a restart\n- directly deleting a pod (e.g. by accident)\n\nCluster administrator actions include:\n\n- [Draining a node](/docs/tasks/administer-cluster/safely-drain-node/) for repair or upgrade.\n- Draining a node from a cluster to scale the cluster down (learn about\n[Node Autoscaling](/docs/concepts/cluster-administration/node-autoscaling/)).\n- Removing a pod from a node to permit something else to fit on that node.\n\nThese actions might be taken directly by the cluster administrator, or by automation\nrun by the cluster administrator, or by your cluster hosting provider.\n\nAsk your cluster administrator or consult your cloud provider or distribution documentation\nto determine if any sources of voluntary disruptions are enabled for your cluster.\nIf none are enabled, you can skip creating Pod Disruption Budgets.\n\n\n> **Caution:** Not all voluntary disruptions are constrained by Pod Disruption Budgets. For example,\ndeleting deployments or pods bypasses Pod Disruption Budgets.\n\n\n## Dealing with disruptions\n\nHere are some ways to mitigate involuntary disruptions:\n\n- Ensure your pod [requests the resources](/docs/tasks/configure-pod-container/assign-memory-resource) it needs.\n- Replicate your application if you need higher availability.  (Learn about running replicated\n  [stateless](/docs/tasks/run-application/run-stateless-application-deployment/)\n  and [stateful](/docs/tasks/run-application/run-replicated-stateful-application/) applications.)\n- For even higher availability when running replicated applications,\n  spread applications across racks (using\n  [anti-affinity](/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity))\n  or across zones (if using a\n  [multi-zone cluster](/docs/setup/multiple-zones).)\n\nThe frequency of voluntary disruptions varies.  On a basic Kubernetes cluster, there are\nno automated voluntary disruptions (only user-triggered ones).  However, your cluster administrator or hosting provider\nmay run some additional services which cause voluntary disruptions. For example,\nrolling out node software updates can cause voluntary disruptions. Also, some implementations\nof cluster (node) autoscaling may cause voluntary disruptions to defragment and compact nodes.\nYour cluster administrator or hosting provider should have documented what level of voluntary\ndisruptions, if any, to expect. Certain configuration options, such as\n[using PriorityClasses](/docs/concepts/scheduling-eviction/pod-priority-preemption/)\nin your pod spec can also cause voluntary (and involuntary) disruptions.\n\n\n## Pod disruption budgets\n\n\n\nKubernetes \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/workloads/pods/disruptions.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": null,
          "line_end": null,
          "quote": "Disruptions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:voluntary-and-involuntary-disruptions",
      "type": "concept",
      "title": "Voluntary and involuntary disruptions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 322,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dealing-with-disruptions",
      "type": "concept",
      "title": "Dealing with disruptions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 2436,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-disruption-budgets",
      "type": "concept",
      "title": "Pod disruption budgets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 4007,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:poddisruptionbudget-example-pdb-example",
      "type": "concept",
      "title": "PodDisruptionBudget example {#pdb-example}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 7380,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-disruption-conditions-pod-disruption-conditions",
      "type": "concept",
      "title": "Pod disruption conditions {#pod-disruption-conditions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 11814,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:separating-cluster-owner-and-application-owner-roles",
      "type": "concept",
      "title": "Separating Cluster Owner and Application Owner Roles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 14668,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-perform-disruptive-actions-on-your-cluster",
      "type": "concept",
      "title": "How to perform Disruptive Actions on your Cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 15354,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/advanced-pod-config",
      "type": "page",
      "title": "Advanced Pod Configuration",
      "summary": "",
      "body": "\n\nThis page covers advanced Pod configuration topics including [PriorityClasses](#priorityclasses), [RuntimeClasses](#runtimeclasses),\n[security context](#security-context) within Pods, and introduces aspects of [scheduling](/docs/concepts/scheduling-eviction/#scheduling).\n\n\n\n## PriorityClasses\n\n_PriorityClasses_ allow you to set the importance of Pods relative to other Pods.\nIf you assign a priority class to a Pod, Kubernetes sets the `.spec.priority` field for that Pod\nbased on the PriorityClass you specified (you cannot set `.spec.priority` directly).\nIf or when a Pod cannot be scheduled, and the problem is due to a lack of resources, the [kube-scheduler](#gloss:kube-scheduler)\ntries to [preempt](#gloss:preemption) lower priority\nPods, in order to make scheduling of the higher priority Pod possible.\n\nA PriorityClass is a cluster-scoped API object that maps a priority class name to an integer priority value. Higher numbers indicate higher priority.\n\n### Defining a PriorityClass\n\n```yaml\napiVersion: scheduling.k8s.io/v1\nkind: PriorityClass\nmetadata:\n  name: high-priority\nvalue: 10000\nglobalDefault: false\ndescription: \"Priority class for high-priority workloads\"\n```\n\n### Specify pod priority using a PriorityClass\n\n\napiVersion: v1\nkind: Pod\nmetadata:\n  name: nginx\nspec:\n  containers:\n  - name: nginx\n    image: nginx\n  priorityClassName: high-priority\n\n\n### Built-in PriorityClasses\n\nKubernetes provides two built-in PriorityClasses:\n- `system-cluster-critical`: For system components that are critical to the cluster\n- `system-node-critical`: For system components that are critical to individual nodes. This is the highest priority that Pods can have in Kubernetes.\n\nFor more information, see [Pod Priority and Preemption](/docs/concepts/scheduling-eviction/pod-priority-preemption/).\n\n## RuntimeClasses\n\nA _RuntimeClass_ allows you to specify the low-level container runtime for a Pod. It is useful when you want to specify different container runtimes for different kinds of Pod, such as when you need different isolation levels or runtime features.\n\n### Example Pod {#runtimeclass-pod-example}\n\n\napiVersion: v1\nkind: Pod\nmetadata:\n  name: mypod\nspec:\n  runtimeClassName: myclass\n  containers:\n  - name: mycontainer\n    image: nginx\n\n\nA [RuntimeClass](/docs/concepts/containers/runtime-class/) is a cluster-scoped object that represents a container runtime that is available on some or all of your node.\n\nThe cluster administrator installs and configures the concrete runtimes backing the RuntimeClass.\n\nThey might set up that special container runtime configuration on all nodes, or perhaps just on some of them.\n\nFor more information, see the [RuntimeClass](/docs/concepts/containers/runtime-class/) documentation.\n\n## Pod and container level security context configuration {#security-context}\n\nThe `Security context` field in the Pod specification provides granular control over security settings for Pods and containers.\n\n### Pod-wide `securityContext` {#pod-level-security-context}\n\nSome aspects of security apply to the whole Pod; for other aspects,\nyou might want to set a default, without any container-level overrides.\n\nHere's an example of using `securityContext` at the Pod level:\n\n#### Example Pod {#pod-level-security-context-example}\n\n\napiVersion: v1\nkind: Pod\nmetadata:\n  name: security-context-demo\nspec:\n  securityContext:  # This applies to the entire Pod\n    runAsUser: 1000\n    runAsGroup: 3000\n    fsGroup: 2000\n  containers:\n  - name: sec-ctx-demo\n    image: registry.k8s.io/e2e-test-images/agnhost:2.45\n    command: [\"sh\", \"-c\", \"sleep 1h\"]\n\n\n### Container-level security context {#container-level-security-context}\n\nYou can specify the security context just for a specific container.\nHere's an example:\n\n#### Example Pod {#container-level-security-context-example}\n\n\napiVersion: v1\nkind: Pod\nmetadata:\n  name: security-context-demo-2\nspec:\n  containers:\n  - name: sec-ctx-demo-2\n    image: gcr.io/google-samples/node-hello:1.0\n    securityContext:\n    \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
      "meta": {
        "weight": 180,
        "rel_path": "concepts/workloads/pods/advanced-pod-config.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": null,
          "line_end": null,
          "quote": "Advanced Pod Configuration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:priorityclasses",
      "type": "concept",
      "title": "PriorityClasses",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 308,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:runtimeclasses",
      "type": "concept",
      "title": "RuntimeClasses",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 1956,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-and-container-level-security-context-configuration-security-context",
      "type": "concept",
      "title": "Pod and container level security context configuration {#security-context}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 2943,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:influencing-pod-scheduling-decisions-scheduling",
      "type": "concept",
      "title": "Influencing Pod scheduling decisions {#scheduling}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 5730,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-overhead",
      "type": "concept",
      "title": "Pod overhead",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 8226,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defining-a-priorityclass",
      "type": "concept",
      "title": "Defining a PriorityClass",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 1061,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specify-pod-priority-using-a-priorityclass",
      "type": "concept",
      "title": "Specify pod priority using a PriorityClass",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 1281,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:built-in-priorityclasses",
      "type": "concept",
      "title": "Built-in PriorityClasses",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 1522,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-pod-runtimeclass-pod-example",
      "type": "concept",
      "title": "Example Pod {#runtimeclass-pod-example}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 2223,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-wide-securitycontext-pod-level-security-context",
      "type": "concept",
      "title": "Pod-wide `securityContext` {#pod-level-security-context}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 3151,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-level-security-context-container-level-security-context",
      "type": "concept",
      "title": "Container-level security context {#container-level-security-context}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 3846,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:security-context-options",
      "type": "concept",
      "title": "Security context options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 4494,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-selectors",
      "type": "concept",
      "title": "Node selectors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 5876,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-affinity-and-anti-affinity",
      "type": "concept",
      "title": "Pod affinity and anti-affinity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 6999,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tolerations",
      "type": "concept",
      "title": "Tolerations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 7775,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/pod-hostname",
      "type": "page",
      "title": "Pod Hostname",
      "summary": "",
      "body": "\n\nThis page explains how to set a Pod's hostname, \npotential side effects after configuration, and the underlying mechanics.\n\n\n\n## Default Pod hostname\n\nWhen a Pod is created, its hostname (as observed from within the Pod) \nis derived from the Pod's metadata.name value. \nBoth the hostname and its corresponding fully qualified domain name (FQDN) \nare set to the metadata.name value (from the Pod's perspective)\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: busybox-1\nspec:\n  containers:\n  - image: busybox:1.28\n    command:\n      - sleep\n      - \"3600\"\n    name: busybox\n```\nThe Pod created by this manifest will have its hostname and fully qualified domain name (FQDN) set to `busybox-1`.\n\n## Hostname with pod's hostname and subdomain fields\nThe Pod spec includes an optional `hostname` field. \nWhen set, this value takes precedence over the Pod's `metadata.name` as the \nhostname (observed from within the Pod).\nFor example, a Pod with spec.hostname set to `my-host` will have its hostname set to `my-host`.\n\nThe Pod spec also includes an optional `subdomain` field, \nindicating the Pod belongs to a subdomain within its namespace. \nIf a Pod has `spec.hostname` set to \"foo\" and spec.subdomain set \nto \"bar\" in the namespace `my-namespace`, its hostname becomes `foo` and its \nfully qualified domain name (FQDN) becomes \n`foo.bar.my-namespace.svc.cluster-domain.example` (observed from within the Pod).\n\nWhen both hostname and subdomain are set, the cluster's DNS server will \ncreate A and/or AAAA records based on these fields. \nRefer to: [Pod's hostname and subdomain fields](/docs/concepts/services-networking/dns-pod-service/#pod-hostname-and-subdomain-field).\n\n## Hostname with pod's setHostnameAsFQDN fields\n\n\n\nWhen a Pod is configured to have fully qualified domain name (FQDN), its\nhostname is the short hostname. For example, if you have a Pod with the fully\nqualified domain name `busybox-1.busybox-subdomain.my-namespace.svc.cluster-domain.example`,\nthen by default the `hostname` command inside that Pod returns `busybox-1` and the\n`hostname --fqdn` command returns the FQDN.\n\nWhen both `setHostnameAsFQDN: true` and the subdomain field is set in the Pod spec,\nthe kubelet writes the Pod's FQDN\ninto the hostname for that Pod's namespace. In this case, both `hostname` and `hostname --fqdn`\nreturn the Pod's FQDN.\n\nThe Pod's FQDN is constructed in the same manner as previously defined.\nIt is composed of the Pod's `spec.hostname` (if specified) or `metadata.name` field,\nthe `spec.subdomain`, the `namespace` name, and the cluster domain suffix.\n\n\n> **Note:** In Linux, the hostname field of the kernel (the `nodename` field of `struct utsname`) is limited to 64 characters.\n\nIf a Pod enables this feature and its FQDN is longer than 64 character, it will fail to start.\nThe Pod will remain in `Pending` status (`ContainerCreating` as seen by `kubectl`) generating\nerror events, such as \"Failed to construct FQDN from Pod hostname and cluster domain\".\n\nThis means that when using this field, \nyou must ensure the combined length of the Pod's `metadata.name` (or `spec.hostname`) \nand `spec.subdomain` fields results in an FQDN that does not exceed 64 characters.\n\n\n## Hostname with pod's hostnameOverride\n\n\nSetting a value for `hostnameOverride` in the Pod spec causes the kubelet \nto unconditionally set both the Pod's hostname and fully qualified domain name (FQDN)\nto the `hostnameOverride` value. \n\nThe `hostnameOverride` field has a length limitation of 64 characters \nand must adhere to the DNS subdomain names standard defined in [RFC 1123](https://datatracker.ietf.org/doc/html/rfc1123).\n\nExample:\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: busybox-2-busybox-example-domain\nspec:\n  hostnameOverride: busybox-2.busybox.example.domain\n  containers:\n  - image: busybox:1.28\n    command:\n      - sleep\n      - \"3600\"\n    name: busybox\n```\n\n> **Note:** This only affects the hostname within the Pod; it does not affect the Pod's A or AAAA records in the cluster DNS \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
      "meta": {
        "weight": 85,
        "rel_path": "concepts/workloads/pods/pod-hostname.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-hostname.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Hostname"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-pod-hostname",
      "type": "concept",
      "title": "Default Pod hostname",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-hostname.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostname-with-pod-s-hostname-and-subdomain-fields",
      "type": "concept",
      "title": "Hostname with pod's hostname and subdomain fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-hostname.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
          "line_start": 729,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostname-with-pod-s-sethostnameasfqdn-fields",
      "type": "concept",
      "title": "Hostname with pod's setHostnameAsFQDN fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-hostname.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
          "line_start": 1707,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostname-with-pod-s-hostnameoverride",
      "type": "concept",
      "title": "Hostname with pod's hostnameOverride",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-hostname.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
          "line_start": 3292,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/pod-qos",
      "type": "page",
      "title": "Pod Quality of Service Classes",
      "summary": "",
      "body": "\n\nThis page introduces _Quality of Service (QoS) classes_ in Kubernetes, and explains\nhow Kubernetes assigns a QoS class to each Pod as a consequence of the resource\nconstraints that you specify for the containers in that Pod. Kubernetes relies on this\nclassification to make decisions about which Pods to evict when there are not enough\navailable resources on a Node.\n\n\n\n## Quality of Service classes\n\nKubernetes classifies the Pods that you run and allocates each Pod into a specific\n_quality of service (QoS) class_. Kubernetes uses that classification to influence how different\npods are handled. Kubernetes does this classification based on the\n[resource requests](/docs/concepts/configuration/manage-resources-containers/)\nof the [Containers](#gloss:container) in that Pod, along with\nhow those requests relate to resource limits.\nThis is known as [Quality of Service](#gloss:qos-class)\n(QoS) class. Kubernetes assigns every Pod a QoS class based on the resource requests\nand limits of its component Containers. QoS classes are used by Kubernetes to decide\nwhich Pods to evict from a Node experiencing\n[Node Pressure](/docs/concepts/scheduling-eviction/node-pressure-eviction/). The possible\nQoS classes are `Guaranteed`, `Burstable`, and `BestEffort`. When a Node runs out of resources,\nKubernetes will first evict `BestEffort` Pods running on that Node, followed by `Burstable` and\nfinally `Guaranteed` Pods. When this eviction is due to resource pressure, only Pods exceeding\nresource requests are candidates for eviction.\n\n### Guaranteed\n\nPods that are `Guaranteed` have the strictest resource limits and are least likely\nto face eviction. They are guaranteed not to be killed until they exceed their limits\nor there are no lower-priority Pods that can be preempted from the Node. They may\nnot acquire resources beyond their specified limits. These Pods can also make\nuse of exclusive CPUs using the\n[`static`](/docs/tasks/administer-cluster/cpu-management-policies/#static-policy-configuration) CPU management policy.\n\n#### Criteria\n\nFor a Pod to be given a QoS class of `Guaranteed`:\n\n* Every Container in the Pod must have a memory limit and a memory request, both greater than zero.\n* For every Container in the Pod, the memory limit must equal the memory request.\n* Every Container in the Pod must have a CPU limit and a CPU request, both greater than zero.\n* For every Container in the Pod, the CPU limit must equal the CPU request.\n\nIf instead the Pod uses [Pod-level resources](/docs/concepts/configuration/manage-resources-containers/#pod-level-resource-specification):\n\n\n\n* The Pod must have a Pod-level memory limit and memory request, and their values must be equal.\n* The Pod must have a Pod-level CPU limit and CPU request, and their values must be equal.\n\n### Burstable\n\nPods that are `Burstable` have some lower-bound resource guarantees based on the request, but\ndo not require a specific limit. If a limit is not specified, it defaults to a\nlimit equivalent to the capacity of the Node, which allows the Pods to flexibly increase\ntheir resources if resources are available. In the event of Pod eviction due to Node\nresource pressure, these Pods are evicted only after all `BestEffort` Pods are evicted.\nBecause a `Burstable` Pod can include a Container that has no resource limits or requests, a Pod\nthat is `Burstable` can try to use any amount of node resources.\n\n#### Criteria\n\nA Pod is given a QoS class of `Burstable` if:\n\n* The Pod does not meet the criteria for QoS class `Guaranteed`.\n* At least one Container in the Pod has a memory or CPU request or limit,\n  or the Pod has a Pod-level memory or CPU request or limit.\n\n### BestEffort\n\nPods in the `BestEffort` QoS class can use node resources that aren't specifically assigned\nto Pods in other QoS classes. For example, if you have a node with 16 CPU cores available to the\nkubelet, and you assign 4 CPU cores to a `Guaranteed` Pod, then a Pod in the `BestEffort`\nQoS class can try to use any amount of the remai\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
      "meta": {
        "weight": 85,
        "rel_path": "concepts/workloads/pods/pod-qos.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod Quality of Service Classes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quality-of-service-classes",
      "type": "concept",
      "title": "Quality of Service classes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 403,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memory-qos-with-cgroup-v2",
      "type": "concept",
      "title": "Memory QoS with cgroup v2",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 4768,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:some-behavior-is-independent-of-qos-class-class-independent-behavior",
      "type": "concept",
      "title": "Some behavior is independent of QoS class {#class-independent-behavior}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 6917,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:guaranteed",
      "type": "concept",
      "title": "Guaranteed",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 1628,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:burstable",
      "type": "concept",
      "title": "Burstable",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 2935,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:besteffort",
      "type": "concept",
      "title": "BestEffort",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 3811,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memory-throttling",
      "type": "concept",
      "title": "Memory throttling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 5130,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-memory-reservation",
      "type": "concept",
      "title": "Configuring memory reservation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 5839,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:system-requirements",
      "type": "concept",
      "title": "System requirements",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 6556,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/init-containers",
      "type": "page",
      "title": "Init Containers",
      "summary": "",
      "body": "\nThis page provides an overview of init containers: specialized containers that run\nbefore app containers in a [Pod](#gloss:pod).\nInit containers can contain utilities or setup scripts not present in an app image.\n\nYou can specify init containers in the Pod specification alongside the `containers`\narray (which describes app containers).\n\nIn Kubernetes, a [sidecar container](/docs/concepts/workloads/pods/sidecar-containers/) is a container that\nstarts before the main application container and _continues to run_. This document is about init containers:\ncontainers that run to completion during Pod initialization.\n\n\n\n## Understanding init containers\n\nA [Pod](#gloss:pod) can have multiple containers\nrunning apps within it, but it can also have one or more init containers, which are run\nbefore the app containers are started.\n\nInit containers are exactly like regular containers, except:\n\n* Init containers always run to completion.\n* Each init container must complete successfully before the next one starts.\n\nIf a Pod's init container fails, the kubelet repeatedly restarts that init container until it succeeds.\nHowever, if the Pod has a `restartPolicy` of Never, and an init container fails during startup of that Pod, Kubernetes treats the overall Pod as failed.\n\nTo specify an init container for a Pod, add the `initContainers` field into\nthe [Pod specification](/docs/reference/kubernetes-api/workload-resources/pod-v1/#PodSpec),\nas an array of `container` items (similar to the app `containers` field and its contents).\nSee [Container](/docs/reference/kubernetes-api/workload-resources/pod-v1/#Container) in the\nAPI reference for more details.\n\nThe status of the init containers is returned in `.status.initContainerStatuses`\nfield as an array of the container statuses (similar to the `.status.containerStatuses`\nfield).\n\n### Differences from regular containers\n\nInit containers support all the fields and features of app containers,\nincluding resource limits, [volumes](/docs/concepts/storage/volumes/), and security settings. However, the\nresource requests and limits for an init container are handled differently,\nas documented in [Resource sharing within containers](#resource-sharing-within-containers).\n\nRegular init containers (in other words: excluding sidecar containers) do not support the\n`lifecycle`, `livenessProbe`, `readinessProbe`, or `startupProbe` fields. Init containers\nmust run to completion before the Pod can be ready; sidecar containers continue running\nduring a Pod's lifetime, and _do_ support some probes. See [sidecar container](/docs/concepts/workloads/pods/sidecar-containers/)\nfor further details about sidecar containers.\n\nIf you specify multiple init containers for a Pod, kubelet runs each init\ncontainer sequentially. Each init container must succeed before the next can run.\nWhen all of the init containers have run to completion, kubelet initializes\nthe application containers for the Pod and runs them as usual.\n\n### Differences from sidecar containers\n\nInit containers run and complete their tasks before the main application container starts.\nUnlike [sidecar containers](/docs/concepts/workloads/pods/sidecar-containers),\ninit containers are not continuously running alongside the main containers.\n\nInit containers run to completion sequentially, and the main container does not start\nuntil all the init containers have successfully completed.\n\ninit containers do not support `lifecycle`, `livenessProbe`, `readinessProbe`, or\n`startupProbe` whereas sidecar containers support all these [probes](/docs/concepts/workloads/pods/pod-lifecycle/#types-of-probe) to control their lifecycle.\n\nInit containers share the same resources (CPU, memory, network) with the main application\ncontainers but do not interact directly with them. They can, however, use shared volumes\nfor data exchange.\n\n## Using init containers\n\nBecause init containers have separate images from app containers, they\nhave some advantages for start-up related code:\n\n* Init containe\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/workloads/pods/init-containers.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": null,
          "line_end": null,
          "quote": "Init Containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-init-containers",
      "type": "concept",
      "title": "Understanding init containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 684,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-init-containers",
      "type": "concept",
      "title": "Using init containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 3934,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:detailed-behavior",
      "type": "concept",
      "title": "Detailed behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 10479,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:differences-from-regular-containers",
      "type": "concept",
      "title": "Differences from regular containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 1931,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:differences-from-sidecar-containers",
      "type": "concept",
      "title": "Differences from sidecar containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 3060,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:init-containers-and-linux-cgroups-cgroups",
      "type": "concept",
      "title": "Init containers and Linux cgroups {#cgroups}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 13819,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-restart-reasons",
      "type": "concept",
      "title": "Pod restart reasons",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 14213,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/ephemeral-containers",
      "type": "page",
      "title": "Ephemeral Containers",
      "summary": "",
      "body": "\n\n\n\nThis page provides an overview of ephemeral containers: a special type of container\nthat runs temporarily in an existing [pod](#gloss:pod) to\naccomplish user-initiated actions such as troubleshooting. You use ephemeral\ncontainers to inspect services rather than to build applications.\n\n\n\n## Understanding ephemeral containers\n\n[Pods](#gloss:pod) are the fundamental building\nblock of Kubernetes applications. Since Pods are intended to be disposable and\nreplaceable, you cannot add a container to a Pod once it has been created.\nInstead, you usually delete and replace Pods in a controlled fashion using\n[deployments](#gloss:deployment).\n\nSometimes it's necessary to inspect the state of an existing Pod, however, for\nexample to troubleshoot a hard-to-reproduce bug. In these cases you can run\nan ephemeral container in an existing Pod to inspect its state and run\narbitrary commands.\n\n### What is an ephemeral container?\n\nEphemeral containers differ from other containers in that they lack guarantees\nfor resources or execution, and they will never be automatically restarted, so\nthey are not appropriate for building applications.  Ephemeral containers are\ndescribed using the same `ContainerSpec` as regular containers, but many fields\nare incompatible and disallowed for ephemeral containers.\n\n- Ephemeral containers may not have ports, so fields such as `ports`,\n  `livenessProbe`, `readinessProbe` are disallowed.\n- Pod resource allocations are immutable, so setting `resources` is disallowed.\n- For a complete list of allowed fields, see the [EphemeralContainer reference\n  documentation](/docs/reference/generated/kubernetes-api//#ephemeralcontainer-v1-core).\n\nEphemeral containers are created using a special `ephemeralcontainers` handler\nin the API rather than by adding them directly to `pod.spec`, so it's not\npossible to add an ephemeral container using `kubectl edit`.\n\nLike regular containers, you may not change or remove an ephemeral container\nafter you have added it to a Pod.\n\n\n> **Note:** Ephemeral containers are not supported by [static pods](/docs/tasks/configure-pod-container/static-pod/).\n\n\n## Uses for ephemeral containers\n\nEphemeral containers are useful for interactive troubleshooting when `kubectl\nexec` is insufficient because a container has crashed or a container image\ndoesn't include debugging utilities.\n\nIn particular, [distroless images](https://github.com/GoogleContainerTools/distroless)\nenable you to deploy minimal container images that reduce attack surface\nand exposure to bugs and vulnerabilities. Since distroless images do not include a\nshell or any debugging utilities, it's difficult to troubleshoot distroless\nimages using `kubectl exec` alone.\n\nWhen using ephemeral containers, it's helpful to enable [process namespace\nsharing](/docs/tasks/configure-pod-container/share-process-namespace/) so\nyou can view processes in other containers.\n\n## \n\n* Learn how to [debug pods using ephemeral containers](/docs/tasks/debug/debug-application/debug-running-pod/#ephemeral-container).\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/workloads/pods/ephemeral-containers.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": null,
          "line_end": null,
          "quote": "Ephemeral Containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-ephemeral-containers",
      "type": "concept",
      "title": "Understanding ephemeral containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": 404,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uses-for-ephemeral-containers",
      "type": "concept",
      "title": "Uses for ephemeral containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": 2333,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-is-an-ephemeral-container",
      "type": "concept",
      "title": "What is an ephemeral container?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": 1066,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/pods/_index",
      "type": "page",
      "title": "Pods",
      "summary": "",
      "body": "\n\n_Pods_ are the smallest deployable units of computing that you can create and manage in Kubernetes.\n\nA _Pod_ (as in a pod of whales or pea pod) is a group of one or more\n[containers](#gloss:container), with shared storage and network resources, and a specification for how to run the containers. A Pod's contents are always co-located and\nco-scheduled, and run in a shared context. A Pod models an\napplication-specific \"logical host\": it contains one or more application\ncontainers which are relatively tightly coupled.\nIn non-cloud contexts, applications executed on the same physical or virtual machine are analogous to cloud applications executed on the same logical host.\n\nAs well as application containers, a Pod can contain\n[init containers](#gloss:init-container) that run\nduring Pod startup. You can also inject\n[ephemeral containers](#gloss:ephemeral-container)\nfor debugging a running Pod.\n\n\n\n## What is a Pod?\n\n\n> **Note:** You need to install a [container runtime](/docs/setup/production-environment/container-runtimes/)\ninto each node in the cluster so that Pods can run there.\n\n\nThe shared context of a Pod is a set of Linux namespaces, cgroups, and\npotentially other facets of isolation - the same things that isolate a [container](#gloss:container). Within a Pod's context, the individual applications may have\nfurther sub-isolations applied.\n\nA Pod is similar to a set of containers with shared namespaces and shared filesystem volumes.\n\nPods in a Kubernetes cluster are used in two main ways:\n\n* **Pods that run a single container**. The \"one-container-per-Pod\" model is the\n  most common Kubernetes use case; in this case, you can think of a Pod as a\n  wrapper around a single container; Kubernetes manages Pods rather than managing\n  the containers directly.\n* **Pods that run multiple containers that need to work together**. A Pod can\n  encapsulate an application composed of\n  [multiple co-located containers](#how-pods-manage-multiple-containers) that are\n  tightly coupled and need to share resources. These co-located containers\n  form a single cohesive unit.\n\n  Grouping multiple co-located and co-managed containers in a single Pod is a\n  relatively advanced use case. You should use this pattern only in specific\n  instances in which your containers are tightly coupled.\n\n  You don't need to run multiple containers to provide replication (for resilience\n  or capacity); if you need multiple replicas, see\n  [Workload management](/docs/concepts/workloads/controllers/).\n\n## Using Pods\n\nThe following is an example of a Pod which consists of a container running the image `nginx:1.14.2`.\n\n\n\nTo create the Pod shown above, run the following command:\n```shell\nkubectl apply -f https://k8s.io/examples/pods/simple-pod.yaml\n```\n\nPods are generally not created directly and are created using workload resources.\nSee [Working with Pods](#working-with-pods) for more information on how Pods are used\nwith workload resources.\n\n### Workload resources for managing pods\n\nUsually you don't need to create Pods directly, even singleton Pods. Instead, create them using workload resources such as [Deployment](#gloss:deployment) or [Job](#gloss:job).\nIf your Pods need to track state, consider the\n[StatefulSet](#gloss:statefulset) resource.\n\n\nEach Pod is meant to run a single instance of a given application. If you want to\nscale your application horizontally (to provide more overall resources by running\nmore instances), you should use multiple Pods, one for each instance. In\nKubernetes, this is typically referred to as _replication_.\nReplicated Pods are usually created and managed as a group by a workload resource\nand its [controller](#gloss:controller).\n\nSee [Pods and controllers](#pods-and-controllers) for more information on how\nKubernetes uses workload resources, and their controllers, to implement application\nscaling and auto-healing.\n\nPods natively provide two kinds of shared resources for their constituent containers:\n[networking](#pod-networking) and [storage]\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/workloads/pods/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-is-a-pod",
      "type": "concept",
      "title": "What is a Pod?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 1032,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-pods",
      "type": "concept",
      "title": "Using Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 2674,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:working-with-pods",
      "type": "concept",
      "title": "Working with Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 4365,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-update-and-replacement",
      "type": "concept",
      "title": "Pod update and replacement",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 10556,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-sharing-and-communication",
      "type": "concept",
      "title": "Resource sharing and communication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 15431,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-settings-pod-security",
      "type": "concept",
      "title": "Pod security settings {#pod-security}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 17205,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-requests-and-limits",
      "type": "concept",
      "title": "Resource requests and limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 18505,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:static-pods",
      "type": "concept",
      "title": "Static Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 19947,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pods-with-multiple-containers-how-pods-manage-multiple-containers",
      "type": "concept",
      "title": "Pods with multiple containers {#how-pods-manage-multiple-containers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 20756,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workload-resources-for-managing-pods",
      "type": "concept",
      "title": "Workload resources for managing pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 3168,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-os",
      "type": "concept",
      "title": "Pod OS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 5488,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pods-and-controllers",
      "type": "concept",
      "title": "Pods and controllers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 6659,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-templates",
      "type": "concept",
      "title": "Pod templates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 7959,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-subresources",
      "type": "concept",
      "title": "Pod subresources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 11952,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-generation",
      "type": "concept",
      "title": "Pod generation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 12966,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storage-in-pods-pod-storage",
      "type": "concept",
      "title": "Storage in Pods {#pod-storage}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 15550,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-networking",
      "type": "concept",
      "title": "Pod networking",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 16036,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "type": "page",
      "title": "Horizontal Pod Autoscaling",
      "summary": "",
      "body": "\n\nIn Kubernetes, a _HorizontalPodAutoscaler_ automatically updates a workload resource (such as\na [Deployment](#gloss:deployment) or\n[StatefulSet](#gloss:statefulset)), with the\naim of automatically scaling capacity to match demand.\n\nHorizontal scaling means that the response to increased load is to deploy more\n[Pods](#gloss:pod).\nThis is different from _vertical_ scaling, which for Kubernetes would mean\nassigning more resources (for example: memory or CPU) to the Pods that are already\nrunning for the workload.\n\nIf the load decreases, and the number of Pods is above the configured minimum,\nthe HorizontalPodAutoscaler instructs the workload resource (the Deployment, StatefulSet,\nor other similar resource) to scale back down.\n\nHorizontal pod autoscaling does not apply to objects that can't be scaled (for example:\na [DaemonSet](#gloss:daemonset).)\n\nThe HorizontalPodAutoscaler is implemented as a Kubernetes API resource and a\n[controller](#gloss:controller).\nThe resource determines the behavior of the controller.\nThe horizontal pod autoscaling controller, running within the Kubernetes\n[control plane](#gloss:control-plane), periodically adjusts the\ndesired scale of its target (for example, a Deployment) to match observed metrics such as average\nCPU utilization, average memory utilization, or any other custom metric you specify.\n\nThere is [walkthrough example](/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/) of using\nhorizontal pod autoscaling.\n\n\n\n## How does a HorizontalPodAutoscaler work?\n\n\n```mermaid\ngraph BT\n\nhpa[HorizontalPodAutoscaler] --> scale[Scale]\n\nsubgraph rc[Deployment]\n    scale\nend\n\nscale -.-> pod1[Pod 1]\nscale -.-> pod2[Pod 2]\nscale -.-> pod3[Pod N]\n\nclassDef hpa fill:#D5A6BD,stroke:#1E1E1D,stroke-width:1px,color:#1E1E1D;\nclassDef rc fill:#F9CB9C,stroke:#1E1E1D,stroke-width:1px,color:#1E1E1D;\nclassDef scale fill:#B6D7A8,stroke:#1E1E1D,stroke-width:1px,color:#1E1E1D;\nclassDef pod fill:#9FC5E8,stroke:#1E1E1D,stroke-width:1px,color:#1E1E1D;\nclass hpa hpa;\nclass rc rc;\nclass scale scale;\nclass pod1,pod2,pod3 pod\n```\n\n\nFigure 1. HorizontalPodAutoscaler controls the scale of a Deployment and its ReplicaSet\n\nKubernetes implements horizontal pod autoscaling as a control loop that runs intermittently\n(it is not a continuous process). The interval is set by the\n`--horizontal-pod-autoscaler-sync-period` parameter to the\n[`kube-controller-manager`](/docs/reference/command-line-tools-reference/kube-controller-manager/)\n(and the default interval is 15 seconds).\n\nOnce during each period, the controller manager queries the resource utilization against the\nmetrics specified in each HorizontalPodAutoscaler definition. The controller manager\nfinds the target resource defined by the `scaleTargetRef`,\nthen selects the pods based on the target resource's `.spec.selector` labels,\nand obtains the metrics from either the resource metrics API (for per-pod resource metrics),\nor the custom metrics API (for all other metrics).\n\n- For per-pod resource metrics (like CPU), the controller fetches the metrics\n  from the resource metrics API for each Pod targeted by the HorizontalPodAutoscaler.\n  Then, if a target utilization value is set, the controller calculates the utilization\n  value as a percentage of the equivalent\n  [resource request](/docs/concepts/configuration/manage-resources-containers/#requests-and-limits)\n  on the containers in each Pod. If a target raw value is set, the raw metric values are used directly.\n  The controller then takes the mean of the utilization or the raw value (depending on the type\n  of target specified) across all targeted Pods, and produces a ratio used to scale\n  the number of desired replicas.\n\n  Please note that if some of the Pod's containers do not have the relevant resource request set,\n  CPU utilization for the Pod will not be defined and the autoscaler will\n  not take any action for that metric. See the [algorithm details](#algorithm-details) section below\n  for more information about how \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": null,
          "line_end": null,
          "quote": "Horizontal Pod Autoscaling"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-does-a-horizontalpodautoscaler-work",
      "type": "concept",
      "title": "How does a HorizontalPodAutoscaler work?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 1707,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-readiness-and-autoscaling-metrics",
      "type": "concept",
      "title": "Pod readiness and autoscaling metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 10813,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stability-of-workload-scale-flapping",
      "type": "concept",
      "title": "Stability of workload scale {#flapping}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 13450,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:autoscaling-during-rolling-update",
      "type": "concept",
      "title": "Autoscaling during rolling update",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 13822,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:support-for-resource-metrics",
      "type": "concept",
      "title": "Support for resource metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 14560,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-on-custom-metrics",
      "type": "concept",
      "title": "Scaling on custom metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 17868,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-on-multiple-metrics",
      "type": "concept",
      "title": "Scaling on multiple metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 18436,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:support-for-metrics-apis",
      "type": "concept",
      "title": "Support for metrics APIs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 19065,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configurable-scaling-behavior",
      "type": "concept",
      "title": "Configurable scaling behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 20953,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:support-for-horizontalpodautoscaler-in-kubectl",
      "type": "concept",
      "title": "Support for HorizontalPodAutoscaler in kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 28183,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:implicit-maintenance-mode-deactivation",
      "type": "concept",
      "title": "Implicit maintenance-mode deactivation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 28879,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:algorithm-details",
      "type": "concept",
      "title": "Algorithm details",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 5832,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:key-behaviors-for-pod-readiness-pod-readiness-key-behaviors",
      "type": "concept",
      "title": "Key behaviors for pod readiness {#pod-readiness-key-behaviors}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 12039,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:good-practice-for-pod-readiness-pod-readiness-good-practices",
      "type": "concept",
      "title": "Good practice for pod readiness {#pod-readiness-good-practices}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 12332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-resource-metrics",
      "type": "concept",
      "title": "Container resource metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 15780,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-policies",
      "type": "concept",
      "title": "Scaling policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 21810,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stabilization-window",
      "type": "concept",
      "title": "Stabilization window",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 23683,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tolerance-tolerance",
      "type": "concept",
      "title": "Tolerance {#tolerance}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 24579,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-behavior",
      "type": "concept",
      "title": "Default behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 25692,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-change-downscale-stabilization-window",
      "type": "concept",
      "title": "Example: change downscale stabilization window",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 26972,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-limit-scale-down-rate",
      "type": "concept",
      "title": "Example: limit scale down rate",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 27210,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-disable-scale-down",
      "type": "concept",
      "title": "Example: disable scale down",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 27946,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-deployments-and-statefulsets-to-horizontal-autoscaling",
      "type": "concept",
      "title": "Migrating Deployments and StatefulSets to horizontal autoscaling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 29347,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "type": "page",
      "title": "Vertical Pod Autoscaling",
      "summary": "",
      "body": "\n\nIn Kubernetes, a _VerticalPodAutoscaler_ automatically updates a workload management [resource](#gloss:api-resource) (such as\na [Deployment](#gloss:deployment) or\n[StatefulSet](#gloss:statefulset)), with the\naim of automatically adjusting infrastructure [resource](#gloss:infrastructure-resource)\n[requests and limits](/docs/concepts/configuration/manage-resources-containers/#requests-and-limits) to match actual usage.\n\nVertical scaling means that the response to increased resource demand is to assign more resources (for example: memory or CPU) \nto the [Pods](#gloss:pod) that are already running for the workload.\nThis is also known as _rightsizing_, or sometimes _autopilot_.\nThis is different from horizontal scaling, which for Kubernetes would mean deploying more Pods to distribute the load.\n\nIf the resource usage decreases, and the Pod resource requests are above optimal levels, \nthe VerticalPodAutoscaler instructs the workload resource (the Deployment, StatefulSet, or other similar resource) \nto adjust resource requests back down, preventing resource waste.\n\nThe VerticalPodAutoscaler is implemented as a Kubernetes API resource and a \n[controller](#gloss:controller).\nThe resource determines the behavior of the controller. \nThe vertical pod autoscaling controller, running within the Kubernetes data plane,\nperiodically adjusts the resource requests and limits of its target (for example, a Deployment)\nbased on analysis of historical resource utilization,\nthe amount of resources available in the cluster, and real-time events such as out-of-memory (OOM) conditions.\n\n\n\n## API object\n\nThe VerticalPodAutoscaler is defined as a [Custom Resource Definition](#gloss:customresourcedefinition) (CRD) in Kubernetes. Unlike HorizontalPodAutoscaler, which is part of the core Kubernetes API, VPA must be installed separately in your cluster.\n\nThe current stable API version is `autoscaling.k8s.io/v1`. More details about the VPA installation and API can be found in the [VPA GitHub repository](https://github.com/kubernetes/autoscaler/tree/master/vertical-pod-autoscaler).\n\n## How does a VerticalPodAutoscaler work?\n\n\n![Vertical Pod Autoscaling architecture](/images/docs/concepts/vpa-architecture.svg) — Figure 1. VerticalPodAutoscaler controls the resource requests and limits of Pods in a Deployment\n\n\n\n\nKubernetes implements vertical pod autoscaling through multiple cooperating components that run intermittently (it is not a continuous process). The VPA consists of three main components: \n\n* The _recommender_, which analyzes resource usage and provides recommendations.\n* The _updater_, that Pod resource requests either by evicting Pods or modifying them in place.\n* And the VPA _admission controller_ webhook, which applies resource recommendations to new or recreated Pods.\n\nOnce during each period, the Recommender queries the resource utilization for Pods targeted by each VerticalPodAutoscaler definition. The Recommender finds the target resource defined by the `targetRef`, then selects the pods based on the target resource's `.spec.selector` labels, and obtains the metrics from the resource metrics API to analyze actual CPU and memory consumption.\n\nThe Recommender analyzes both current and historical resource usage data (CPU and memory) for each Pod targeted by the VerticalPodAutoscaler. It examines:\n- Historical consumption patterns over time to identify trends\n- Peak usage and variance to ensure sufficient headroom\n- Out-of-memory (OOM) events and other resource-related incidents\n\nBased on this analysis, the Recommender calculates three types of recommendations:\n- Target recommendation (optimal resources for typical usage)\n- Lower bound (minimum viable resources)\n- Upper bound (maximum reasonable resources).\n\nThese recommendations are stored in the VerticalPodAutoscaler resource's `.status.recommendation` field.\n\n\nThe _updater_ component monitors the VerticalPodAutoscaler resources and compares current Pod resource requests with the recommendations.\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/workloads/autoscaling/vertical-pod-autoscale.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": null,
          "line_end": null,
          "quote": "Vertical Pod Autoscaling"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-does-a-verticalpodautoscaler-work",
      "type": "concept",
      "title": "How does a VerticalPodAutoscaler work?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 2342,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-modes",
      "type": "concept",
      "title": "Update modes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 7015,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-policies",
      "type": "concept",
      "title": "Resource policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 11024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitrange-resources",
      "type": "concept",
      "title": "LimitRange resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 13063,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:off-updatemode-off",
      "type": "concept",
      "title": "Off {#updateMode-Off}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 7553,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:initial-updatemode-initial",
      "type": "concept",
      "title": "Initial {#updateMode-Initial}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 7917,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:recreate-updatemode-recreate",
      "type": "concept",
      "title": "Recreate {#updateMode-Recreate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 8182,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:inplaceorrecreate-updatemode-inplaceorrecreate",
      "type": "concept",
      "title": "InPlaceOrRecreate {#updateMode-InPlaceOrRecreate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 8575,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:inplace-updatemode-inplace",
      "type": "concept",
      "title": "InPlace {#updateMode-InPlace}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 9177,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:auto-deprecated-updatemode-auto",
      "type": "concept",
      "title": "Auto (deprecated) {#updateMode-Auto}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 10617,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controlledvalues",
      "type": "concept",
      "title": "controlledValues",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 12441,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/controllers/ttlafterfinished",
      "type": "page",
      "title": "Automatic Cleanup for Finished Jobs",
      "summary": "A time-to-live mechanism to clean up old Jobs that have finished execution.",
      "body": "\n\n\n\nWhen your Job has finished, it's useful to keep that Job in the API (and not immediately delete the Job)\nso that you can tell whether the Job succeeded or failed.\n\nKubernetes' TTL-after-finished [controller](#gloss:controller) provides a\nTTL (time to live) mechanism to limit the lifetime of Job objects that\nhave finished execution.\n\n\n\n## Cleanup for finished Jobs\n\nThe TTL-after-finished controller is only supported for Jobs. You can use this mechanism to clean\nup finished Jobs (either `Complete` or `Failed`) automatically by specifying the\n`.spec.ttlSecondsAfterFinished` field of a Job, as in this\n[example](/docs/concepts/workloads/controllers/job/#clean-up-finished-jobs-automatically).\n\nThe TTL-after-finished controller assumes that a Job is eligible to be cleaned up\nTTL seconds after the Job has finished. The timer starts once the\nstatus condition of the Job changes to show that the Job is either `Complete` or `Failed`; once the TTL has\nexpired, that Job becomes eligible for\n[cascading](/docs/concepts/architecture/garbage-collection/#cascading-deletion) removal. When the\nTTL-after-finished controller cleans up a job, it will delete it cascadingly, that is to say it will delete\nits dependent objects together with it.\n\nKubernetes honors object lifecycle guarantees on the Job, such as waiting for\n[finalizers](/docs/concepts/overview/working-with-objects/finalizers/).\n\nYou can set the TTL seconds at any time. Here are some examples for setting the\n`.spec.ttlSecondsAfterFinished` field of a Job:\n\n* Specify this field in the Job manifest, so that a Job can be cleaned up\n  automatically some time after it finishes.\n* Manually set this field of existing, already finished Jobs, so that they become eligible\n  for cleanup.\n* Use a\n  [mutating admission webhook](/docs/reference/access-authn-authz/admission-controllers/#mutatingadmissionwebhook)\n  to set this field dynamically at Job creation time. Cluster administrators can\n  use this to enforce a TTL policy for finished jobs.\n* Use a\n  [mutating admission webhook](/docs/reference/access-authn-authz/admission-controllers/#mutatingadmissionwebhook)\n  to set this field dynamically after the Job has finished, and choose\n  different TTL values based on job status, labels. For this case, the webhook needs\n  to detect changes to the `.status` of the Job and only set a TTL when the Job\n  is being marked as completed.\n* Write your own controller to manage the cleanup TTL for Jobs that match a particular\n  [selector](#gloss:selector).\n\n## Caveats\n\n### Updating TTL for finished Jobs\n\nYou can modify the TTL period, e.g. `.spec.ttlSecondsAfterFinished` field of Jobs,\nafter the job is created or has finished. If you extend the TTL period after the\nexisting `ttlSecondsAfterFinished` period has expired, Kubernetes doesn't guarantee\nto retain that Job, even if an update to extend the TTL returns a successful API\nresponse.\n\n### Time skew\n\nBecause the TTL-after-finished controller uses timestamps stored in the Kubernetes jobs to\ndetermine whether the TTL has expired or not, this feature is sensitive to time\nskew in your cluster, which may cause the control plane to clean up Job objects\nat the wrong time.\n\nClocks aren't always correct, but the difference should be\nvery small. Please be aware of this risk when setting a non-zero TTL.\n\n## \n\n* Read [Clean up Jobs automatically](/docs/concepts/workloads/controllers/job/#clean-up-finished-jobs-automatically)\n\n* Refer to the [Kubernetes Enhancement Proposal](https://github.com/kubernetes/enhancements/blob/master/keps/sig-apps/592-ttl-after-finish/README.md)\n  (KEP) for adding this mechanism.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/workloads/controllers/ttlafterfinished.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": null,
          "line_end": null,
          "quote": "Automatic Cleanup for Finished Jobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cleanup-for-finished-jobs",
      "type": "concept",
      "title": "Cleanup for finished Jobs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": 462,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-ttl-for-finished-jobs",
      "type": "concept",
      "title": "Updating TTL for finished Jobs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": 2681,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:time-skew",
      "type": "concept",
      "title": "Time skew",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": 3057,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/controllers/cron-jobs",
      "type": "page",
      "title": "CronJob",
      "summary": "A CronJob starts one-time Jobs on a repeating schedule.",
      "body": "\n\n\n\nA _CronJob_ creates [Jobs](#gloss:job) on a repeating schedule.\n\nCronJob is meant for performing regular scheduled actions such as backups, report generation,\nand so on. One CronJob object is like one line of a _crontab_ (cron table) file on a\nUnix system. It runs a Job periodically on a given schedule, written in\n[Cron](https://en.wikipedia.org/wiki/Cron) format.\n\nCronJobs have limitations and idiosyncrasies.\nFor example, in certain circumstances, a single CronJob can create multiple concurrent Jobs. See the [limitations](#cron-job-limitations) below.\n\nWhen the control plane creates new Jobs and (indirectly) Pods for a CronJob, the `.metadata.name`\nof the CronJob is part of the basis for naming those Pods.  The name of a CronJob must be a valid\n[DNS subdomain](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names)\nvalue, but this can produce unexpected results for the Pod hostnames.  For best compatibility,\nthe name should follow the more restrictive rules for a\n[DNS label](/docs/concepts/overview/working-with-objects/names#dns-label-names).\nEven when the name is a DNS subdomain, the name must be no longer than 52\ncharacters.  This is because the CronJob controller will automatically append\n11 characters to the name you provide and there is a constraint that the\nlength of a Job name is no more than 63 characters.\n\n\n## Example\n\nThis example CronJob manifest prints the current time and a hello message every minute:\n\n\n\n([Running Automated Tasks with a CronJob](/docs/tasks/job/automated-tasks-with-cron-jobs/)\ntakes you through this example in more detail).\n\n## Writing a CronJob spec\n### Schedule syntax\nThe `.spec.schedule` field is required. The value of that field follows the [Cron](https://en.wikipedia.org/wiki/Cron) syntax:\n\n```\n# ┌───────────── minute (0 - 59)\n# │ ┌───────────── hour (0 - 23)\n# │ │ ┌───────────── day of the month (1 - 31)\n# │ │ │ ┌───────────── month (1 - 12)\n# │ │ │ │ ┌───────────── day of the week (0 - 6) (Sunday to Saturday)\n# │ │ │ │ │                                   OR sun, mon, tue, wed, thu, fri, sat\n# │ │ │ │ │\n# │ │ │ │ │\n# * * * * *\n```\n\nFor example, `0 3 * * 1` means this task is scheduled to run weekly on a Monday at 3 AM.\n\nThe format also includes extended \"Vixie cron\" step values. As explained in the\n[FreeBSD manual](https://www.freebsd.org/cgi/man.cgi?crontab%285%29):\n\n> Step values can be used in conjunction with ranges. Following a range\n> with `/<number>` specifies skips of the number's value through the\n> range. For example, `0-23/2` can be used in the hours field to specify\n> command execution every other hour (the alternative in the V7 standard is\n> `0,2,4,6,8,10,12,14,16,18,20,22`). Steps are also permitted after an\n> asterisk, so if you want to say \"every two hours\", just use `*/2`.\n\n\n> **Note:** A question mark (`?`) in the schedule has the same meaning as an asterisk `*`, that is,\nit stands for any of available value for a given field.\n\n\nOther than the standard syntax, some macros like `@monthly` can also be used:\n\n| Entry \t\t\t\t\t\t\t\t\t\t| Description\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t| Equivalent to |\n| ------------- \t\t\t\t\t\t| ------------- \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t|-------------  |\n| @yearly (or @annually)\t\t| Run once a year at midnight of 1 January\t\t\t\t\t\t\t\t\t\t| 0 0 1 1 * \t\t|\n| @monthly \t\t\t\t\t\t\t\t\t| Run once a month at midnight of the first day of the month\t| 0 0 1 * * \t\t|\n| @weekly \t\t\t\t\t\t\t\t\t| Run once a week at midnight on Sunday morning\t\t\t\t\t\t\t\t| 0 0 * * 0 \t\t|\n| @daily (or @midnight)\t\t\t| Run once a day at midnight\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t| 0 0 * * * \t\t|\n| @hourly \t\t\t\t\t\t\t\t\t| Run once an hour at the beginning of the hour\t\t\t\t\t\t\t\t| 0 * * * * \t\t|\n\nTo generate CronJob schedule expressions, you can also use web tools like [crontab.guru](https://crontab.guru/).\n\n### Job template\n\nThe `.spec.jobTemplate` defines a template for the Jobs that the CronJob creates, and it is required.\nIt has exactly the same schema as a [Job](/docs/concepts/workloads/controllers/job/), except that\nit is nested and does\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
      "meta": {
        "weight": 80,
        "rel_path": "concepts/workloads/controllers/cron-jobs.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": null,
          "line_end": null,
          "quote": "CronJob"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-a-cronjob-spec",
      "type": "concept",
      "title": "Writing a CronJob spec",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 1780,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cronjob-limitations-cron-job-limitations",
      "type": "concept",
      "title": "CronJob limitations {#cron-job-limitations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 8838,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:schedule-syntax",
      "type": "concept",
      "title": "Schedule syntax",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 1806,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:job-template",
      "type": "concept",
      "title": "Job template",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 3952,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deadline-for-delayed-job-start-starting-deadline",
      "type": "concept",
      "title": "Deadline for delayed Job start {#starting-deadline}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 4550,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:concurrency-policy",
      "type": "concept",
      "title": "Concurrency policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 5675,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:schedule-suspension",
      "type": "concept",
      "title": "Schedule suspension",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 6640,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobs-history-limits",
      "type": "concept",
      "title": "Jobs history limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 7358,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:time-zones",
      "type": "concept",
      "title": "Time zones",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 8101,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:unsupported-timezone-specification",
      "type": "concept",
      "title": "Unsupported TimeZone specification",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 8886,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:modifying-a-cronjob",
      "type": "concept",
      "title": "Modifying a CronJob",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 9306,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:job-creation",
      "type": "concept",
      "title": "Job creation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 9688,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/controllers/daemonset",
      "type": "page",
      "title": "DaemonSet",
      "summary": "A DaemonSet defines Pods that provide node-local facilities. These might be fundamental to the operation of your cluster, such as a networking helper tool, or be part of an add-on.",
      "body": "\n\nA _DaemonSet_ ensures that all (or some) Nodes run a copy of a Pod.  As nodes are added to the\ncluster, Pods are added to them.  As nodes are removed from the cluster, those Pods are garbage\ncollected.  Deleting a DaemonSet will clean up the Pods it created.\n\nSome typical uses of a DaemonSet are:\n\n- running a cluster storage daemon on every node\n- running a logs collection daemon on every node\n- running a node monitoring daemon on every node\n\nIn a simple case, one DaemonSet, covering all nodes, would be used for each type of daemon.\nA more complex setup might use multiple DaemonSets for a single type of daemon, but with\ndifferent flags and/or different memory and cpu requests for different hardware types.\n\n\n\n## Writing a DaemonSet Spec\n\n### Create a DaemonSet\n\nYou can describe a DaemonSet in a YAML file. For example, the `daemonset.yaml` file below\ndescribes a DaemonSet that runs the fluentd-elasticsearch Docker image:\n\n\n\nCreate a DaemonSet based on the YAML file:\n\n```\nkubectl apply -f https://k8s.io/examples/controllers/daemonset.yaml\n```\n\n### Required Fields\n\nAs with all other Kubernetes config, a DaemonSet needs `apiVersion`, `kind`, and `metadata` fields.  For\ngeneral information about working with config files, see\n[running stateless applications](/docs/tasks/run-application/run-stateless-application-deployment/)\nand [object management using kubectl](/docs/concepts/overview/working-with-objects/object-management/).\n\nThe name of a DaemonSet object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\nA DaemonSet also needs a\n[`.spec`](https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status)\nsection.\n\n### Pod Template\n\nThe `.spec.template` is one of the required fields in `.spec`.\n\nThe `.spec.template` is a [pod template](/docs/concepts/workloads/pods/#pod-templates).\nIt has exactly the same schema as a [Pod](#gloss:pod),\nexcept it is nested and does not have an `apiVersion` or `kind`.\n\nIn addition to required fields for a Pod, a Pod template in a DaemonSet has to specify appropriate\nlabels (see [pod selector](#pod-selector)).\n\nA Pod Template in a DaemonSet must have a [`RestartPolicy`](/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy)\n equal to `Always`, or be unspecified, which defaults to `Always`.\n\n### Pod Selector\n\nThe `.spec.selector` field is a pod selector.  It works the same as the `.spec.selector` of\na [Job](/docs/concepts/workloads/controllers/job/).\n\nYou must specify a pod selector that matches the labels of the\n`.spec.template`.\nAlso, once a DaemonSet is created,\nits `.spec.selector` can not be mutated. Mutating the pod selector can lead to the\nunintentional orphaning of Pods, and it was found to be confusing to users.\n\nThe `.spec.selector` is an object consisting of two fields:\n\n* `matchLabels` - works the same as the `.spec.selector` of a\n  [ReplicationController](/docs/concepts/workloads/controllers/replicationcontroller/).\n* `matchExpressions` - allows to build more sophisticated selectors by specifying key,\n  list of values and an operator that relates the key and values.\n\nWhen the two are specified the result is ANDed.\n\nThe `.spec.selector` must match the `.spec.template.metadata.labels`.\nConfig with these two not matching will be rejected by the API.\n\n### Running Pods on select Nodes\n\nIf you specify a `.spec.template.spec.nodeSelector`, then the DaemonSet controller will\ncreate Pods on nodes which match that [node selector](/docs/concepts/scheduling-eviction/assign-pod-node/).\nLikewise if you specify a `.spec.template.spec.affinity`,\nthen DaemonSet controller will create Pods on nodes which match that\n[node affinity](/docs/concepts/scheduling-eviction/assign-pod-node/).\nIf you do not specify either, then the DaemonSet controller will create Pods on all nodes.\n\n## How Daemon Pods are scheduled\n\nA DaemonSet can be used to ensure that all eligible nodes run a copy of a Pod.\nThe DaemonSet control\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/workloads/controllers/daemonset.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": null,
          "line_end": null,
          "quote": "DaemonSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-a-daemonset-spec",
      "type": "concept",
      "title": "Writing a DaemonSet Spec",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 751,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-daemon-pods-are-scheduled",
      "type": "concept",
      "title": "How Daemon Pods are scheduled",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 3982,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:communicating-with-daemon-pods",
      "type": "concept",
      "title": "Communicating with Daemon Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 9272,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-a-daemonset",
      "type": "concept",
      "title": "Updating a DaemonSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 10210,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alternatives-to-daemonset",
      "type": "concept",
      "title": "Alternatives to DaemonSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 11020,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-daemonset",
      "type": "concept",
      "title": "Create a DaemonSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 780,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:required-fields",
      "type": "concept",
      "title": "Required Fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 1143,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-template",
      "type": "concept",
      "title": "Pod Template",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 1819,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-selector",
      "type": "concept",
      "title": "Pod Selector",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 2475,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-pods-on-select-nodes",
      "type": "concept",
      "title": "Running Pods on select Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 3463,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:taints-and-tolerations",
      "type": "concept",
      "title": "Taints and tolerations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 5612,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:init-scripts",
      "type": "concept",
      "title": "Init scripts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 11050,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bare-pods",
      "type": "concept",
      "title": "Bare Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 11694,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deployments",
      "type": "concept",
      "title": "Deployments",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 12484,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/controllers/deployment",
      "type": "page",
      "title": "Deployments",
      "summary": "A Deployment manages a set of Pods to run an application workload, usually one that doesn't maintain state.",
      "body": "\n\nA _Deployment_ provides declarative updates for [Pods](#gloss:pod) and\n[ReplicaSets](#gloss:replica-set).\n\nYou describe a _desired state_ in a Deployment, and the Deployment [controller](#gloss:controller) changes the actual state to the desired state at a controlled rate. You can define Deployments to create new ReplicaSets, or to remove existing Deployments and adopt all their resources with new Deployments.\n\n\n> **Note:** Do not manage ReplicaSets owned by a Deployment. Consider opening an issue in the main Kubernetes repository if your use case is not covered below.\n\n\n\n\n## Use Case\n\nThe following are typical use cases for Deployments:\n\n* [Create a Deployment to rollout a ReplicaSet](#creating-a-deployment). The ReplicaSet creates Pods in the background. Check the status of the rollout to see if it succeeds or not.\n* [Declare the new state of the Pods](#updating-a-deployment) by updating the PodTemplateSpec of the Deployment. A new ReplicaSet is created, and the Deployment gradually scales it up while scaling down the old ReplicaSet, ensuring Pods are replaced at a controlled rate. Each new ReplicaSet updates the revision of the Deployment.\n* [Rollback to an earlier Deployment revision](#rolling-back-a-deployment) if the current state of the Deployment is not stable. Each rollback updates the revision of the Deployment.\n* [Scale up the Deployment to facilitate more load](#scaling-a-deployment).\n* [Pause the rollout of a Deployment](#pausing-and-resuming-a-deployment) to apply multiple fixes to its PodTemplateSpec and then resume it to start a new rollout.\n* [Use the status of the Deployment](#deployment-status) as an indicator that a rollout has stuck.\n* [Clean up older ReplicaSets](#clean-up-policy) that you don't need anymore.\n\n## Creating a Deployment\n\nThe following is an example of a Deployment. It creates a ReplicaSet to bring up three `nginx` Pods:\n\n\n\nIn this example:\n\n* A Deployment named `nginx-deployment` is created, indicated by the\n  `.metadata.name` field. This name will become the basis for the ReplicaSets\n  and Pods which are created later. See [Writing a Deployment Spec](#writing-a-deployment-spec)\n  for more details.\n* The Deployment creates a ReplicaSet that creates three replicated Pods, indicated by the `.spec.replicas` field.\n* The `.spec.selector` field defines how the created ReplicaSet finds which Pods to manage.\n  In this case, you select a label that is defined in the Pod template (`app: nginx`).\n  However, more sophisticated selection rules are possible,\n  as long as the Pod template itself satisfies the rule.\n\n  \n> **Note:** The `.spec.selector.matchLabels` field is a map of {key,value} pairs.\n  A single {key,value} in the `matchLabels` map is equivalent to an element of `matchExpressions`,\n  whose `key` field is \"key\", the `operator` is \"In\", and the `values` array contains only \"value\".\n  All of the requirements, from both `matchLabels` and `matchExpressions`, must be satisfied in order to match.\n\n\n* The `.spec.template` field contains the following sub-fields:\n  * The Pods are labeled `app: nginx`using the `.metadata.labels` field.\n  * The Pod template's specification, or `.spec` field, indicates that\n    the Pods run one container, `nginx`, which runs the `nginx`\n    [Docker Hub](https://hub.docker.com/) image at version 1.14.2.\n  * Create one container and name it `nginx` using the `.spec.containers[0].name` field.\n\nBefore you begin, make sure your Kubernetes cluster is up and running.\nFollow the steps given below to create the above Deployment:\n\n1. Create the Deployment by running the following command:\n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/controllers/nginx-deployment.yaml\n   ```\n\n2. Run `kubectl get deployments` to check if the Deployment was created.\n\n   If the Deployment is still being created, the output is similar to the following:\n   ```\n   NAME               READY   UP-TO-DATE   AVAILABLE   AGE\n   nginx-deployment   0/3     0            0           1s\n   ```\n   Wh\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/workloads/controllers/deployment.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": null,
          "line_end": null,
          "quote": "Deployments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-case",
      "type": "concept",
      "title": "Use Case",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 704,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-deployment",
      "type": "concept",
      "title": "Creating a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1886,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-a-deployment",
      "type": "concept",
      "title": "Updating a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 8083,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolling-back-a-deployment",
      "type": "concept",
      "title": "Rolling Back a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 18218,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-a-deployment",
      "type": "concept",
      "title": "Scaling a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 29413,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pausing-and-resuming-a-rollout-of-a-deployment-pausing-and-resuming-a-deployment",
      "type": "concept",
      "title": "Pausing and Resuming a rollout of a Deployment {#pausing-and-resuming-a-deployment}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 33135,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deployment-status",
      "type": "concept",
      "title": "Deployment status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 37128,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clean-up-policy",
      "type": "concept",
      "title": "Clean up Policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 45639,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:canary-deployment",
      "type": "concept",
      "title": "Canary Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 46693,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-a-deployment-spec",
      "type": "concept",
      "title": "Writing a Deployment Spec",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 46983,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-template-hash-label",
      "type": "concept",
      "title": "Pod-template-hash label",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 7562,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rollover-aka-multiple-updates-in-flight",
      "type": "concept",
      "title": "Rollover (aka multiple updates in-flight)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 15144,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:label-selector-updates",
      "type": "concept",
      "title": "Label selector updates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 16337,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:checking-rollout-history-of-a-deployment",
      "type": "concept",
      "title": "Checking Rollout History of a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 23958,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolling-back-to-a-previous-revision",
      "type": "concept",
      "title": "Rolling Back to a Previous Revision",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 25550,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:proportional-scaling",
      "type": "concept",
      "title": "Proportional scaling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 30120,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:progressing-deployment",
      "type": "concept",
      "title": "Progressing Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 37387,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:complete-deployment",
      "type": "concept",
      "title": "Complete Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 38136,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:failed-deployment",
      "type": "concept",
      "title": "Failed Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 39478,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:operating-on-a-failed-deployment",
      "type": "concept",
      "title": "Operating on a failed deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 45371,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicas",
      "type": "concept",
      "title": "Replicas",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 48814,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:strategy",
      "type": "concept",
      "title": "Strategy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 50893,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:progress-deadline-seconds",
      "type": "concept",
      "title": "Progress Deadline Seconds",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 55331,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:min-ready-seconds",
      "type": "concept",
      "title": "Min Ready Seconds",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 55898,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:terminating-pods",
      "type": "concept",
      "title": "Terminating Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 56354,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:revision-history-limit",
      "type": "concept",
      "title": "Revision History Limit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 57156,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:paused",
      "type": "concept",
      "title": "Paused",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 58004,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/controllers/statefulset",
      "type": "page",
      "title": "StatefulSets",
      "summary": "A StatefulSet runs a group of Pods, and maintains a sticky identity for each of those Pods. This is useful for managing applications that need persistent storage or a stable, unique network identity.",
      "body": "\n\nStatefulSet is the workload API object used to manage stateful applications.\n\n[definition:statefulset]\n\n\n\n## Using StatefulSets\n\nStatefulSets are valuable for applications that require one or more of the\nfollowing:\n\n* Stable, unique network identifiers.\n* Stable, persistent storage.\n* Ordered, graceful deployment and scaling.\n* Ordered, automated rolling updates.\n\nIn the above, stable is synonymous with persistence across Pod (re)scheduling.\nIf an application doesn't require any stable identifiers or ordered deployment,\ndeletion, or scaling, you should deploy your application using a workload object\nthat provides a set of stateless replicas.\n[Deployment](/docs/concepts/workloads/controllers/deployment/) or\n[ReplicaSet](/docs/concepts/workloads/controllers/replicaset/) may be better suited to your stateless needs.\n\n## Limitations\n\n* The storage for a given Pod must either be provisioned by a\n  [PersistentVolume Provisioner](/docs/concepts/storage/dynamic-provisioning/)\n  based on the requested _storage class_, or pre-provisioned by an admin.\n* Deleting and/or scaling a StatefulSet down will _not_ delete the volumes associated with the\n  StatefulSet. This is done to ensure data safety, which is generally more valuable than an\n  automatic purge of all related StatefulSet resources.\n* StatefulSets currently require a [Headless Service](/docs/concepts/services-networking/service/#headless-services)\n  to be responsible for the network identity of the Pods. You are responsible for creating this\n  Service.\n* StatefulSets do not provide any guarantees on the termination of pods when a StatefulSet is\n  deleted. To achieve ordered and graceful termination of the pods in the StatefulSet, it is\n  possible to scale the StatefulSet down to 0 prior to deletion.\n* When using [Rolling Updates](#rolling-updates) with the default\n  [Pod Management Policy](#pod-management-policies) (`OrderedReady`),\n  it's possible to get into a broken state that requires\n  [manual intervention to repair](#forced-rollback).\n\n## Components\n\nThe example below demonstrates the components of a StatefulSet.\n\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  name: nginx\n  labels:\n    app: nginx\nspec:\n  ports:\n  - port: 80\n    name: web\n  clusterIP: None\n  selector:\n    app: nginx\n---\napiVersion: apps/v1\nkind: StatefulSet\nmetadata:\n  name: web\nspec:\n  selector:\n    matchLabels:\n      app: nginx # has to match .spec.template.metadata.labels\n  serviceName: \"nginx\"\n  replicas: 3 # by default is 1\n  minReadySeconds: 10 # by default is 0\n  template:\n    metadata:\n      labels:\n        app: nginx # has to match .spec.selector.matchLabels\n    spec:\n      terminationGracePeriodSeconds: 10\n      containers:\n      - name: nginx\n        image: registry.k8s.io/nginx-slim:0.24\n        ports:\n        - containerPort: 80\n          name: web\n        volumeMounts:\n        - name: www\n          mountPath: /usr/share/nginx/html\n  volumeClaimTemplates:\n  - metadata:\n      name: www\n    spec:\n      accessModes: [ \"ReadWriteOnce\" ]\n      storageClassName: \"my-storage-class\"\n      resources:\n        requests:\n          storage: 1Gi\n```\n\n\n> **Note:** This example uses the `ReadWriteOnce` access mode, for simplicity. For\nproduction use, the Kubernetes project recommends using the `ReadWriteOncePod`\naccess mode instead.\n\n\nIn the above example:\n\n* A Headless Service, named `nginx`, is used to control the network domain.\n* The StatefulSet, named `web`, has a Spec that indicates that 3 replicas of the nginx container will be launched in unique Pods.\n* The `volumeClaimTemplates` will provide stable storage using\n  [PersistentVolumes](/docs/concepts/storage/persistent-volumes/) provisioned by a\n  PersistentVolume Provisioner.\n\nThe name of a StatefulSet object must be a valid\n[DNS label](/docs/concepts/overview/working-with-objects/names#dns-label-names).\n\n### Pod Selector\n\nYou must set the `.spec.selector` field of a StatefulSet to match the labels of its\n`.spec.template.metadata.labels`. Failing to \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/workloads/controllers/statefulset.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": null,
          "line_end": null,
          "quote": "StatefulSets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-statefulsets",
      "type": "concept",
      "title": "Using StatefulSets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 177,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:components",
      "type": "concept",
      "title": "Components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 2094,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-identity",
      "type": "concept",
      "title": "Pod Identity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 5333,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deployment-and-scaling-guarantees",
      "type": "concept",
      "title": "Deployment and Scaling Guarantees",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 10758,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-strategies",
      "type": "concept",
      "title": "Update strategies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 13574,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolling-updates",
      "type": "concept",
      "title": "Rolling Updates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 14313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:revision-history",
      "type": "concept",
      "title": "Revision history",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 17507,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaim-retention",
      "type": "concept",
      "title": "PersistentVolumeClaim retention",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 19853,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-claim-templates",
      "type": "concept",
      "title": "Volume Claim Templates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 4178,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:minimum-ready-seconds",
      "type": "concept",
      "title": "Minimum ready seconds",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 4688,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ordinal-index",
      "type": "concept",
      "title": "Ordinal Index",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 5547,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:start-ordinal",
      "type": "concept",
      "title": "Start ordinal",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 5877,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stable-network-id",
      "type": "concept",
      "title": "Stable Network ID",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 6343,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stable-storage",
      "type": "concept",
      "title": "Stable Storage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 9228,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-name-label",
      "type": "concept",
      "title": "Pod Name Label",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 9883,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-index-label",
      "type": "concept",
      "title": "Pod index label",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 10173,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-management-policies",
      "type": "concept",
      "title": "Pod Management Policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 12434,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:partitioned-rolling-updates-partitions",
      "type": "concept",
      "title": "Partitioned rolling updates {#partitions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 14931,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:maximum-unavailable-pods",
      "type": "concept",
      "title": "Maximum unavailable Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 15750,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:forced-rollback",
      "type": "concept",
      "title": "Forced rollback",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 16520,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-statefulsets-track-changes-using-controllerrevisions",
      "type": "concept",
      "title": "How StatefulSets track changes using ControllerRevisions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 17788,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managing-revision-history",
      "type": "concept",
      "title": "Managing Revision History",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 18272,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/controllers/replicaset",
      "type": "page",
      "title": "ReplicaSet",
      "summary": "A ReplicaSet's purpose is to maintain a stable set of replica Pods running at any given time. Usually, you define a Deployment and let that Deployment manage ReplicaSets automatically.",
      "body": "\n\nA ReplicaSet's purpose is to maintain a stable set of replica Pods running at any given time. As such, it is often\nused to guarantee the availability of a specified number of identical Pods.\n\n\n\n## How a ReplicaSet works\n\nA ReplicaSet is defined with fields, including a selector that specifies how to identify Pods it can acquire, a number\nof replicas indicating how many Pods it should be maintaining, and a pod template specifying the data of new Pods\nit should create to meet the number of replicas criteria. A ReplicaSet then fulfills its purpose by creating\nand deleting Pods as needed to reach the desired number. When a ReplicaSet needs to create new Pods, it uses its Pod\ntemplate.\n\nA ReplicaSet is linked to its Pods via the Pods' [metadata.ownerReferences](/docs/concepts/architecture/garbage-collection/#owners-dependents)\nfield, which specifies what resource the current object is owned by. All Pods acquired by a ReplicaSet have their owning\nReplicaSet's identifying information within their ownerReferences field. It's through this link that the ReplicaSet\nknows of the state of the Pods it is maintaining and plans accordingly.\n\nA ReplicaSet identifies new Pods to acquire by using its selector. If there is a Pod that has no\nOwnerReference or the OwnerReference is not a [controller](#gloss:controller) and it\nmatches a ReplicaSet's selector, it will be immediately acquired by said ReplicaSet.\n\n## When to use a ReplicaSet\n\nA ReplicaSet ensures that a specified number of pod replicas are running at any given\ntime. However, a Deployment is a higher-level concept that manages ReplicaSets and\nprovides declarative updates to Pods along with a lot of other useful features.\nTherefore, we recommend using Deployments instead of directly using ReplicaSets, unless\nyou require custom update orchestration or don't require updates at all.\n\nThis actually means that you may never need to manipulate ReplicaSet objects:\nuse a Deployment instead, and define your application in the spec section.\n\n## Example\n\n\n\nSaving this manifest into `frontend.yaml` and submitting it to a Kubernetes cluster will\ncreate the defined ReplicaSet and the Pods that it manages.\n\n```shell\nkubectl apply -f https://kubernetes.io/examples/controllers/frontend.yaml\n```\n\nYou can then get the current ReplicaSets deployed:\n\n```shell\nkubectl get rs\n```\n\nAnd see the frontend one you created:\n\n```\nNAME       DESIRED   CURRENT   READY   AGE\nfrontend   3         3         3       6s\n```\n\nYou can also check on the state of the ReplicaSet:\n\n```shell\nkubectl describe rs/frontend\n```\n\nAnd you will see output similar to:\n\n```\nName:         frontend\nNamespace:    default\nSelector:     tier=frontend\nLabels:       app=guestbook\n              tier=frontend\nAnnotations:  <none>\nReplicas:     3 current / 3 desired\nPods Status:  3 Running / 0 Waiting / 0 Succeeded / 0 Failed\nPod Template:\n  Labels:  tier=frontend\n  Containers:\n   php-redis:\n    Image:        us-docker.pkg.dev/google-samples/containers/gke/gb-frontend:v5\n    Port:         <none>\n    Host Port:    <none>\n    Environment:  <none>\n    Mounts:       <none>\n  Volumes:        <none>\nEvents:\n  Type    Reason            Age   From                   Message\n  ----    ------            ----  ----                   -------\n  Normal  SuccessfulCreate  13s   replicaset-controller  Created pod: frontend-gbgfx\n  Normal  SuccessfulCreate  13s   replicaset-controller  Created pod: frontend-rwz57\n  Normal  SuccessfulCreate  13s   replicaset-controller  Created pod: frontend-wkl7w\n```\n\nAnd lastly you can check for the Pods brought up:\n\n```shell\nkubectl get pods\n```\n\nYou should see Pod information similar to:\n\n```\nNAME             READY   STATUS    RESTARTS   AGE\nfrontend-gbgfx   1/1     Running   0          10m\nfrontend-rwz57   1/1     Running   0          10m\nfrontend-wkl7w   1/1     Running   0          10m\n```\n\nYou can also verify that the owner reference of these pods is set to the frontend ReplicaSet.\nTo do this, get the yaml of one of the Pods\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/workloads/controllers/replicaset.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": null,
          "line_end": null,
          "quote": "ReplicaSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-a-replicaset-works",
      "type": "concept",
      "title": "How a ReplicaSet works",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-to-use-a-replicaset",
      "type": "concept",
      "title": "When to use a ReplicaSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 1459,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:non-template-pod-acquisitions",
      "type": "concept",
      "title": "Non-Template Pod acquisitions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 4656,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-a-replicaset-manifest",
      "type": "concept",
      "title": "Writing a ReplicaSet manifest",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 7005,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:working-with-replicasets",
      "type": "concept",
      "title": "Working with ReplicaSets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 9274,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alternatives-to-replicaset",
      "type": "concept",
      "title": "Alternatives to ReplicaSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 15704,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-a-replicaset-and-its-pods",
      "type": "concept",
      "title": "Deleting a ReplicaSet and its Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 9303,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-just-a-replicaset",
      "type": "concept",
      "title": "Deleting just a ReplicaSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 10006,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:isolating-pods-from-a-replicaset",
      "type": "concept",
      "title": "Isolating Pods from a ReplicaSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 11841,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-a-replicaset",
      "type": "concept",
      "title": "Scaling a ReplicaSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 12160,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-deletion-cost",
      "type": "concept",
      "title": "Pod deletion cost",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 13071,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicaset-as-a-horizontal-pod-autoscaler-target",
      "type": "concept",
      "title": "ReplicaSet as a Horizontal Pod Autoscaler Target",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 14878,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deployment-recommended",
      "type": "concept",
      "title": "Deployment (recommended)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 15735,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:job",
      "type": "concept",
      "title": "Job",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 16904,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonset",
      "type": "concept",
      "title": "DaemonSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 17071,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicationcontroller",
      "type": "concept",
      "title": "ReplicationController",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 17493,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/controllers/job",
      "type": "page",
      "title": "Jobs",
      "summary": "Jobs represent one-off tasks that run to completion and then stop.",
      "body": "\n\nA Job creates one or more Pods and will continue to retry execution of the Pods until a specified number of them successfully terminate.\nAs pods successfully complete, the Job tracks the successful completions. When a specified number\nof successful completions is reached, the task (ie, Job) is complete. Deleting a Job will clean up\nthe Pods it created. Suspending a Job will delete its active Pods until the Job\nis resumed again.\n\nA simple case is to create one Job object in order to reliably run one Pod to completion.\nThe Job object will start a new Pod if the first Pod fails or is deleted (for example\ndue to a node hardware failure or a node reboot).\n\nYou can also use a Job to run multiple Pods in parallel.\n\nIf you want to run a Job (either a single task, or several in parallel) on a schedule,\nsee [CronJob](/docs/concepts/workloads/controllers/cron-jobs/).\n\n\n\n## Running an example Job\n\nHere is an example Job config. It computes π to 2000 places and prints it out.\nIt takes around 10s to complete.\n\n\n\nYou can run the example with this command:\n\n```shell\nkubectl apply -f https://kubernetes.io/examples/controllers/job.yaml\n```\n\nThe output is similar to this:\n\n```\njob.batch/pi created\n```\n\nCheck on the status of the Job with `kubectl`:\n\n\n\nName:           pi\nNamespace:      default\nSelector:       batch.kubernetes.io/controller-uid=c9948307-e56d-4b5d-8302-ae2d7b7da67c\nLabels:         batch.kubernetes.io/controller-uid=c9948307-e56d-4b5d-8302-ae2d7b7da67c\n                batch.kubernetes.io/job-name=pi\n                ...\nAnnotations:    batch.kubernetes.io/job-tracking: \"\"\nParallelism:    1\nCompletions:    1\nStart Time:     Mon, 02 Dec 2019 15:20:11 +0200\nCompleted At:   Mon, 02 Dec 2019 15:21:16 +0200\nDuration:       65s\nPods Statuses:  0 Running / 1 Succeeded / 0 Failed\nPod Template:\n  Labels:  batch.kubernetes.io/controller-uid=c9948307-e56d-4b5d-8302-ae2d7b7da67c\n           batch.kubernetes.io/job-name=pi\n  Containers:\n   pi:\n    Image:      perl:5.34.0\n    Port:       <none>\n    Host Port:  <none>\n    Command:\n      perl\n      -Mbignum=bpi\n      -wle\n      print bpi(2000)\n    Environment:  <none>\n    Mounts:       <none>\n  Volumes:        <none>\nEvents:\n  Type    Reason            Age   From            Message\n  ----    ------            ----  ----            -------\n  Normal  SuccessfulCreate  21s   job-controller  Created pod: pi-xf9p4\n  Normal  Completed         18s   job-controller  Job completed\n\n\napiVersion: batch/v1\nkind: Job\nmetadata:\n  annotations: batch.kubernetes.io/job-tracking: \"\"\n             ...  \n  creationTimestamp: \"2022-11-10T17:53:53Z\"\n  generation: 1\n  labels:\n    batch.kubernetes.io/controller-uid: 863452e6-270d-420e-9b94-53a54146c223\n    batch.kubernetes.io/job-name: pi\n  name: pi\n  namespace: default\n  resourceVersion: \"4751\"\n  uid: 204fb678-040b-497f-9266-35ffa8716d14\nspec:\n  backoffLimit: 4\n  completionMode: NonIndexed\n  completions: 1\n  parallelism: 1\n  selector:\n    matchLabels:\n      batch.kubernetes.io/controller-uid: 863452e6-270d-420e-9b94-53a54146c223\n  suspend: false\n  template:\n    metadata:\n      creationTimestamp: null\n      labels:\n        batch.kubernetes.io/controller-uid: 863452e6-270d-420e-9b94-53a54146c223\n        batch.kubernetes.io/job-name: pi\n    spec:\n      containers:\n      - command:\n        - perl\n        - -Mbignum=bpi\n        - -wle\n        - print bpi(2000)\n        image: perl:5.34.0\n        imagePullPolicy: IfNotPresent\n        name: pi\n        resources: {}\n        terminationMessagePath: /dev/termination-log\n        terminationMessagePolicy: File\n      dnsPolicy: ClusterFirst\n      restartPolicy: Never\n      schedulerName: default-scheduler\n      securityContext: {}\n      terminationGracePeriodSeconds: 30\nstatus:\n  active: 1\n  ready: 0\n  startTime: \"2022-11-10T17:53:57Z\"\n  uncountedTerminatedPods: {}\n\n\n\nTo view completed Pods of a Job, use `kubectl get pods`.\n\nTo list all the Pods that belong to a Job in a machine readable form, you can use a command like this:\n\n```shell\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/workloads/controllers/job.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": null,
          "line_end": null,
          "quote": "Jobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-an-example-job",
      "type": "concept",
      "title": "Running an example Job",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 905,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-a-job-spec",
      "type": "concept",
      "title": "Writing a Job spec",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 6817,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:integrate-with-workload-apis",
      "type": "concept",
      "title": "Integrate with Workload APIs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 13849,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:handling-pod-and-container-failures",
      "type": "concept",
      "title": "Handling Pod and container failures",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 17613,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:success-policy-success-policy",
      "type": "concept",
      "title": "Success policy {#success-policy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 30267,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:job-termination-and-cleanup",
      "type": "concept",
      "title": "Job termination and cleanup",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 33185,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clean-up-finished-jobs-automatically",
      "type": "concept",
      "title": "Clean up finished jobs automatically",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 39157,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:job-patterns",
      "type": "concept",
      "title": "Job patterns",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 41758,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:advanced-usage",
      "type": "concept",
      "title": "Advanced usage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 45712,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:job-labels",
      "type": "concept",
      "title": "Job Labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 7642,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:parallel-execution-for-jobs-parallel-jobs",
      "type": "concept",
      "title": "Parallel execution for Jobs {#parallel-jobs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 8561,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:completion-mode",
      "type": "concept",
      "title": "Completion mode",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 11692,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:qualifying-criteria",
      "type": "concept",
      "title": "Qualifying criteria",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 14482,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:opt-out-for-higher-level-controllers",
      "type": "concept",
      "title": "Opt-out for higher-level controllers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 16548,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cronjob-behavior",
      "type": "concept",
      "title": "CronJob behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 16840,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitations-for-alpha-release-workload-integration-limitations",
      "type": "concept",
      "title": "Limitations for Alpha release {#workload-integration-limitations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 17100,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-backoff-failure-policy",
      "type": "concept",
      "title": "Pod backoff failure policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 20334,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:backoff-limit-per-index-backoff-limit-per-index",
      "type": "concept",
      "title": "Backoff limit per index {#backoff-limit-per-index}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 21751,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-failure-policy-pod-failure-policy",
      "type": "concept",
      "title": "Pod failure policy {#pod-failure-policy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 24829,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:terminal-job-conditions",
      "type": "concept",
      "title": "Terminal Job conditions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 35763,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:termination-of-job-pods",
      "type": "concept",
      "title": "Termination of Job pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 37796,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ttl-mechanism-for-finished-jobs",
      "type": "concept",
      "title": "TTL mechanism for finished Jobs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 39553,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:suspending-a-job",
      "type": "concept",
      "title": "Suspending a Job",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 45731,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutable-scheduling-directives",
      "type": "concept",
      "title": "Mutable Scheduling Directives",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 49508,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutable-pod-resources-for-suspended-jobs",
      "type": "concept",
      "title": "Mutable Pod resources for suspended Jobs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 51057,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specifying-your-own-pod-selector",
      "type": "concept",
      "title": "Specifying your own Pod selector",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 51802,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:job-tracking-with-finalizers",
      "type": "concept",
      "title": "Job tracking with finalizers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 54272,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:elastic-indexed-jobs",
      "type": "concept",
      "title": "Elastic Indexed Jobs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 54936,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delayed-creation-of-replacement-pods-pod-replacement-policy",
      "type": "concept",
      "title": "Delayed creation of replacement pods {#pod-replacement-policy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 55816,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delegation-of-managing-a-job-object-to-external-controller",
      "type": "concept",
      "title": "Delegation of managing a Job object to external controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 57588,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replication-controller",
      "type": "concept",
      "title": "Replication Controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 59151,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:single-job-starts-controller-pod",
      "type": "concept",
      "title": "Single Job starts controller Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 59723,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/controllers/_index",
      "type": "page",
      "title": "Workload Management",
      "summary": "",
      "body": "Kubernetes provides several built-in APIs for declarative management of your\n[workloads](#gloss:workload)\nand the components of those workloads.\n\nUltimately, your applications run as containers inside\n[Pods](#gloss:Pod); however, managing individual\nPods would be a lot of effort. For example, if a Pod fails, you probably want to\nrun a new Pod to replace it. Kubernetes can do that for you.\n\nYou use the Kubernetes API to create a workload\n[object](#gloss:object) that represents a higher abstraction level\nthan a Pod, and then the Kubernetes\n[control plane](#gloss:control-plane) automatically manages\nPod objects on your behalf, based on the specification for the workload object you defined.\n\nThe built-in APIs for managing workloads are:\n\n[Deployment](/docs/concepts/workloads/controllers/deployment/) (and, indirectly, [ReplicaSet](/docs/concepts/workloads/controllers/replicaset/)),\nthe most common way to run an application on your cluster.\nDeployment is a good fit for managing a stateless application workload on your cluster, where\nany Pod in the Deployment is interchangeable and can be replaced if needed.\n(Deployments are a replacement for the legacy\n[ReplicationController](#gloss:replication-controller) API).\n\nA [StatefulSet](/docs/concepts/workloads/controllers/statefulset/) lets you\nmanage one or more Pods – all running the same application code – where the Pods rely\non having a distinct identity. This is different from a Deployment where the Pods are\nexpected to be interchangeable.\nThe most common use for a StatefulSet is to be able to make a link between its Pods and\ntheir persistent storage. For example, you can run a StatefulSet that associates each Pod\nwith a [PersistentVolume](/docs/concepts/storage/persistent-volumes/). If one of the Pods\nin the StatefulSet fails, Kubernetes makes a replacement Pod that is connected to the\nsame PersistentVolume.\n\nA [DaemonSet](/docs/concepts/workloads/controllers/daemonset/) defines Pods that provide\nfacilities that are local to a specific [node](#gloss:node);\nfor example, a driver that lets containers on that node access a storage system. You use a DaemonSet\nwhen the driver, or other node-level service, has to run on the node where it's useful.\nEach Pod in a DaemonSet performs a role similar to a system daemon on a classic Unix / POSIX\nserver.\nA DaemonSet might be fundamental to the operation of your cluster,\nsuch as a plugin to let that node access\n[cluster networking](/docs/concepts/cluster-administration/networking/#how-to-implement-the-kubernetes-network-model),\nit might help you to manage the node,\nor it could provide less essential facilities that enhance the container platform you are running.\nYou can run DaemonSets (and their pods) across every node in your cluster, or across just a subset (for example,\nonly install the GPU accelerator driver on nodes that have a GPU installed).\n\nYou can use a [Job](/docs/concepts/workloads/controllers/job/) and / or\na [CronJob](/docs/concepts/workloads/controllers/cron-jobs/) to\ndefine tasks that run to completion and then stop. A Job represents a one-off task,\nwhereas each CronJob repeats according to a schedule.\n\nOther topics in this section:\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/controllers/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/workloads/controllers/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/controllers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Workload Management"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/workloads/controllers/replicationcontroller",
      "type": "page",
      "title": "ReplicationController",
      "summary": "Legacy API for managing workloads that can scale horizontally. Superseded by the Deployment and ReplicaSet APIs.",
      "body": "\n\n\n> **Note:** A [`Deployment`](/docs/concepts/workloads/controllers/deployment/) that configures a [`ReplicaSet`](/docs/concepts/workloads/controllers/replicaset/) is now the recommended way to set up replication.\n\n\nA _ReplicationController_ ensures that a specified number of pod replicas are running at any one\ntime. In other words, a ReplicationController makes sure that a pod or a homogeneous set of pods is\nalways up and available.\n\n\n\n## How a ReplicationController works\n\nIf there are too many pods, the ReplicationController terminates the extra pods. If there are too few, the\nReplicationController starts more pods. Unlike manually created pods, the pods maintained by a\nReplicationController are automatically replaced if they fail, are deleted, or are terminated.\nFor example, your pods are re-created on a node after disruptive maintenance such as a kernel upgrade.\nFor this reason, you should use a ReplicationController even if your application requires\nonly a single pod. A ReplicationController is similar to a process supervisor,\nbut instead of supervising individual processes on a single node, the ReplicationController supervises multiple pods\nacross multiple nodes.\n\nReplicationController is often abbreviated to \"rc\" in discussion, and as a shortcut in\nkubectl commands.\n\nA simple case is to create one ReplicationController object to reliably run one instance of\na Pod indefinitely.  A more complex use case is to run several identical replicas of a replicated\nservice, such as web servers.\n\n## Running an example ReplicationController\n\nThis example ReplicationController config runs three copies of the nginx web server.\n\n\n\nRun the example job by downloading the example file and then running this command:\n\n```shell\nkubectl apply -f https://k8s.io/examples/controllers/replication.yaml\n```\n\nThe output is similar to this:\n\n```\nreplicationcontroller/nginx created\n```\n\nCheck on the status of the ReplicationController using this command:\n\n```shell\nkubectl describe replicationcontrollers/nginx\n```\n\nThe output is similar to this:\n\n```\nName:        nginx\nNamespace:   default\nSelector:    app=nginx\nLabels:      app=nginx\nAnnotations:    <none>\nReplicas:    3 current / 3 desired\nPods Status: 0 Running / 3 Waiting / 0 Succeeded / 0 Failed\nPod Template:\n  Labels:       app=nginx\n  Containers:\n   nginx:\n    Image:              nginx\n    Port:               80/TCP\n    Environment:        <none>\n    Mounts:             <none>\n  Volumes:              <none>\nEvents:\n  FirstSeen       LastSeen     Count    From                        SubobjectPath    Type      Reason              Message\n  ---------       --------     -----    ----                        -------------    ----      ------              -------\n  20s             20s          1        {replication-controller }                    Normal    SuccessfulCreate    Created pod: nginx-qrm3m\n  20s             20s          1        {replication-controller }                    Normal    SuccessfulCreate    Created pod: nginx-3ntk0\n  20s             20s          1        {replication-controller }                    Normal    SuccessfulCreate    Created pod: nginx-4ok8v\n```\n\nHere, three pods are created, but none is running yet, perhaps because the image is being pulled.\nA little later, the same command may show:\n\n```shell\nPods Status:    3 Running / 0 Waiting / 0 Succeeded / 0 Failed\n```\n\nTo list all the pods that belong to the ReplicationController in a machine readable form, you can use a command like this:\n\n```shell\npods=$(kubectl get pods --selector=app=nginx --output=jsonpath={.items..metadata.name})\necho $pods\n```\n\nThe output is similar to this:\n\n```\nnginx-3ntk0 nginx-4ok8v nginx-qrm3m\n```\n\nHere, the selector is the same as the selector for the ReplicationController (seen in the\n`kubectl describe` output), and in a different form in `replication.yaml`.  The `--output=jsonpath` option\nspecifies an expression with the name from each pod in the returned list.\n\n## Writing a ReplicationControlle\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/workloads/controllers/replicationcontroller.md"
      },
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": null,
          "line_end": null,
          "quote": "ReplicationController"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-a-replicationcontroller-works",
      "type": "concept",
      "title": "How a ReplicationController works",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 486,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-an-example-replicationcontroller",
      "type": "concept",
      "title": "Running an example ReplicationController",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 1561,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-a-replicationcontroller-manifest",
      "type": "concept",
      "title": "Writing a ReplicationController Manifest",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 4066,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:working-with-replicationcontrollers",
      "type": "concept",
      "title": "Working with ReplicationControllers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 7957,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:common-usage-patterns",
      "type": "concept",
      "title": "Common usage patterns",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 9719,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-programs-for-replication",
      "type": "concept",
      "title": "Writing programs for Replication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 12788,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:responsibilities-of-the-replicationcontroller",
      "type": "concept",
      "title": "Responsibilities of the ReplicationController",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 13655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alternatives-to-replicationcontroller",
      "type": "concept",
      "title": "Alternatives to ReplicationController",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 15887,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:labels-on-the-replicationcontroller",
      "type": "concept",
      "title": "Labels on the ReplicationController",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 5992,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multiple-replicas",
      "type": "concept",
      "title": "Multiple Replicas",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 7538,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-a-replicationcontroller-and-its-pods",
      "type": "concept",
      "title": "Deleting a ReplicationController and its Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 7997,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-only-a-replicationcontroller",
      "type": "concept",
      "title": "Deleting only a ReplicationController",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 8597,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:isolating-pods-from-a-replicationcontroller",
      "type": "concept",
      "title": "Isolating pods from a ReplicationController",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 9368,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling",
      "type": "concept",
      "title": "Scaling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 10031,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multiple-release-tracks",
      "type": "concept",
      "title": "Multiple release tracks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 11080,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-replicationcontrollers-with-services",
      "type": "concept",
      "title": "Using ReplicationControllers with Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 12071,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicaset",
      "type": "concept",
      "title": "ReplicaSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 15929,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/architecture/cloud-controller",
      "type": "page",
      "title": "Cloud Controller Manager",
      "summary": "",
      "body": "\n\n\n\nCloud infrastructure technologies let you run Kubernetes on public, private, and hybrid clouds.\nKubernetes believes in automated, API-driven infrastructure without tight coupling between\ncomponents.\n\n[definition:cloud-controller-manager]\n\nThe cloud-controller-manager is structured using a plugin\nmechanism that allows different cloud providers to integrate their platforms with Kubernetes.\n\n\n\n## Design\n\n![Kubernetes components](/images/docs/components-of-kubernetes.svg)\n\nThe cloud controller manager runs in the control plane as a replicated set of processes\n(usually, these are containers in Pods). Each cloud-controller-manager implements\nmultiple [controllers](#gloss:controller) in a single\nprocess.\n\n\n\n> **Note:** You can also run the cloud controller manager as a Kubernetes\n rather than as part\nof the control plane.\n\n\n## Cloud controller manager functions {#functions-of-the-ccm}\n\nThe controllers inside the cloud controller manager include:\n\n### Node controller\n\nThe node controller is responsible for updating [Node](#gloss:node) objects\nwhen new servers are created in your cloud infrastructure. The node controller obtains information about the\nhosts running inside your tenancy with the cloud provider. The node controller performs the following functions:\n\n1. Update a Node object with the corresponding server's unique identifier obtained from the cloud provider API.\n1. Annotating and labelling the Node object with cloud-specific information, such as the region the node\n   is deployed into and the resources (CPU, memory, etc) that it has available.\n1. Obtain the node's hostname and network addresses.\n1. Verifying the node's health. In case a node becomes unresponsive, this controller checks with\n   your cloud provider's API to see if the server has been deactivated / deleted / terminated.\n   If the node has been deleted from the cloud, the controller deletes the Node object from your Kubernetes\n   cluster.\n\nSome cloud provider implementations split this into a node controller and a separate node\nlifecycle controller.\n\n### Route controller\n\nThe route controller is responsible for configuring routes in the cloud\nappropriately so that containers on different nodes in your Kubernetes\ncluster can communicate with each other.\n\nDepending on the cloud provider, the route controller might also allocate blocks\nof IP addresses for the Pod network.\n\n### Service controller\n\n[Services](#gloss:service) integrate with cloud\ninfrastructure components such as managed load balancers, IP addresses, network\npacket filtering, and target health checking. The service controller interacts with your\ncloud provider's APIs to set up load balancers and other infrastructure components\nwhen you declare a Service resource that requires them.\n\n## Authorization\n\nThis section breaks down the access that the cloud controller manager requires\non various API objects, in order to perform its operations.\n\n### Node controller {#authorization-node-controller}\n\nThe Node controller only works with Node objects. It requires full access\nto read and modify Node objects.\n\n`v1/Node`:\n\n- get\n- list\n- create\n- update\n- patch\n- watch\n- delete\n\n### Route controller {#authorization-route-controller}\n\nThe route controller listens to Node object creation and configures\nroutes appropriately. It requires Get access to Node objects.\n\n`v1/Node`:\n\n- get\n\n### Service controller {#authorization-service-controller}\n\nThe service controller watches for Service object **create**, **update** and **delete** events and then\nconfigures load balancers for those Services appropriately.\n\nTo access Services, it requires **list**, and **watch** access. To update Services, it requires\n**patch** and **update** access to the `status` subresource.\n\n`v1/Service`:\n\n- list\n- get\n- watch\n- patch\n- update\n\n### Others {#authorization-miscellaneous}\n\nThe implementation of the core of the cloud controller manager requires access to create Event\nobjects, and to ensure secure operation, it requires access to create\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/architecture/cloud-controller.md"
      },
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": null,
          "line_end": null,
          "quote": "Cloud Controller Manager"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:design",
      "type": "concept",
      "title": "Design",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 566,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cloud-controller-manager-functions-functions-of-the-ccm",
      "type": "concept",
      "title": "Cloud controller manager functions {#functions-of-the-ccm}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 1100,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-controller",
      "type": "concept",
      "title": "Node controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 1225,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:route-controller",
      "type": "concept",
      "title": "Route controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 2353,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-controller",
      "type": "concept",
      "title": "Service controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 2679,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-controller-authorization-node-controller",
      "type": "concept",
      "title": "Node controller {#authorization-node-controller}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 3250,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:route-controller-authorization-route-controller",
      "type": "concept",
      "title": "Route controller {#authorization-route-controller}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 3481,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-controller-authorization-service-controller",
      "type": "concept",
      "title": "Service controller {#authorization-service-controller}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 3687,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:others-authorization-miscellaneous",
      "type": "concept",
      "title": "Others {#authorization-miscellaneous}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 4124,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/architecture/control-plane-node-communication",
      "type": "page",
      "title": "Communication between Nodes and the Control Plane",
      "summary": "",
      "body": "\n\nThis document catalogs the communication paths between the [API server](#gloss:kube-apiserver)\nand the Kubernetes [cluster](#gloss:cluster).\nThe intent is to allow users to customize their installation to harden the network configuration\nsuch that the cluster can be run on an untrusted network (or on fully public IPs on a cloud\nprovider).\n\n\n\n## Node to Control Plane\n\nKubernetes has a \"hub-and-spoke\" API pattern. All API usage from nodes (or the pods they run)\nterminates at the API server. None of the other control plane components are designed to expose\nremote services. The API server is configured to listen for remote connections on a secure HTTPS\nport (typically 443) with one or more forms of client\n[authentication](/docs/reference/access-authn-authz/authentication/) enabled.\nOne or more forms of [authorization](/docs/reference/access-authn-authz/authorization/) should be\nenabled, especially if [anonymous requests](/docs/reference/access-authn-authz/authentication/#anonymous-requests)\nor [service account tokens](/docs/reference/access-authn-authz/authentication/#service-account-tokens)\nare allowed.\n\nNodes should be provisioned with the public root [certificate](#gloss:certificate) for the cluster such that they can\nconnect securely to the API server along with valid client credentials. A good approach is that the\nclient credentials provided to the kubelet are in the form of a client certificate. See\n[kubelet TLS bootstrapping](/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/)\nfor automated provisioning of kubelet client certificates.\n\n[Pods](#gloss:pod) that wish to connect to the API server can do so securely by leveraging a service account so\nthat Kubernetes will automatically inject the public root certificate and a valid bearer token\ninto the pod when it is instantiated.\nThe `kubernetes` service (in `default` namespace) is configured with a virtual IP address that is\nredirected (via `[kube-proxy](#gloss:kube-proxy)`) to the HTTPS endpoint on the API server.\n\nThe control plane components also communicate with the API server over the secure port.\n\nAs a result, the default operating mode for connections from the nodes and pod running on the\nnodes to the control plane is secured by default and can run over untrusted and/or public\nnetworks.\n\n## Control plane to node\n\nThere are two primary communication paths from the control plane (the API server) to the nodes.\nThe first is from the API server to the [kubelet](#gloss:kubelet) process which runs on each node in the cluster.\nThe second is from the API server to any node, pod, or service through the API server's _proxy_\nfunctionality.\n\n### API server to kubelet\n\nThe connections from the API server to the kubelet are used for:\n\n* Fetching logs for pods.\n* Attaching (usually through `kubectl`) to running pods.\n* Providing the kubelet's port-forwarding functionality.\n\nThese connections terminate at the kubelet's HTTPS endpoint. By default, the API server does not\nverify the kubelet's serving certificate, which makes the connection subject to man-in-the-middle\nattacks and **unsafe** to run over untrusted and/or public networks.\n\nTo verify this connection, use the `--kubelet-certificate-authority` flag to provide the API\nserver with a root certificate bundle to use to verify the kubelet's serving certificate.\n\nIf that is not possible, use [SSH tunneling](#ssh-tunnels) between the API server and kubelet if\nrequired to avoid connecting over an\nuntrusted or public network.\n\n\nFinally, [Kubelet authentication and/or authorization](/docs/reference/access-authn-authz/kubelet-authn-authz/)\nshould be enabled to secure the kubelet API.\n\n### API server to nodes, pods, and services\n\nThe connections from the API server to a node, pod, or service default to plain HTTP connections\nand are therefore neither authenticated nor encrypted. They can be run over a secure HTTPS\nconnection by prefixing `https:` to the node, pod, or service name in the API URL, but they will\nnot validate the c\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/architecture/control-plane-node-communication.md"
      },
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": null,
          "line_end": null,
          "quote": "Communication between Nodes and the Control Plane"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-to-control-plane",
      "type": "concept",
      "title": "Node to Control Plane",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 454,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-to-node",
      "type": "concept",
      "title": "Control plane to node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 2502,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-server-to-kubelet",
      "type": "concept",
      "title": "API server to kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 2882,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-server-to-nodes-pods-and-services",
      "type": "concept",
      "title": "API server to nodes, pods, and services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 3888,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ssh-tunnels",
      "type": "concept",
      "title": "SSH tunnels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 4490,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:konnectivity-service",
      "type": "concept",
      "title": "Konnectivity service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 5216,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/architecture/mixed-version-proxy",
      "type": "page",
      "title": "Mixed Version Proxy",
      "summary": "",
      "body": "\n\n\n\nKubernetes  includes a beta feature that lets an\n[API Server](#gloss:kube-apiserver)\nproxy resource requests to other _peer_ API servers. It also lets clients get \na holistic view of resources served across the entire cluster through discovery.\nThis is useful when there are multiple\nAPI servers running different versions of Kubernetes in one cluster\n(for example, during a long-lived rollout to a new release of Kubernetes).\n\nThis enables cluster administrators to configure highly available clusters that can be upgraded\nmore safely, by :\n\n1. ensuring that controllers relying on discovery to show a comprehensive list of resources\nfor important tasks always get the complete view of all resources. We call this complete cluster-wide \ndiscovery _Peer-aggregated discovery_.\n1. directing resource requests (made during the upgrade) to the correct kube-apiserver.\nThis proxying prevents users from seeing unexpected 404 Not Found errors that stem\nfrom the upgrade process. This mechanism is called the _Mixed Version Proxy_.\n\n## Enabling Peer-aggregated Discovery and Mixed Version Proxy\n\nEnsure that `UnknownVersionInteroperabilityProxy` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/#UnknownVersionInteroperabilityProxy)\nis enabled when you start the [API Server](#gloss:kube-apiserver):\n\n```shell\nkube-apiserver \\\n--feature-gates=UnknownVersionInteroperabilityProxy=true \\\n# required command line arguments for this feature\n--peer-ca-file=<path to kube-apiserver CA cert>\n--proxy-client-cert-file=<path to aggregator proxy cert>,\n--proxy-client-key-file=<path to aggregator proxy key>,\n--requestheader-client-ca-file=<path to aggregator CA cert>,\n# requestheader-allowed-names can be set to blank to allow any Common Name\n--requestheader-allowed-names=<valid Common Names to verify proxy client cert against>,\n\n# optional flags for this feature\n--peer-advertise-ip=`IP of this kube-apiserver that should be used by peers to proxy requests`\n--peer-advertise-port=`port of this kube-apiserver that should be used by peers to proxy requests`\n\n# …and other flags as usual\n```\n\n### Proxy transport and authentication between API servers {#transport-and-authn}\n\n* The source kube-apiserver reuses the\n  [existing APIserver client authentication flags](/docs/tasks/extend-kubernetes/configure-aggregation-layer/#kubernetes-apiserver-client-authentication)\n  `--proxy-client-cert-file` and `--proxy-client-key-file` to present its identity that\n  will be verified by its peer (the destination kube-apiserver). The destination API server\n  verifies that peer connection based on the configuration you specify using the\n  `--requestheader-client-ca-file` command line argument.\n\n* To authenticate the destination server's serving certs, you must configure a certificate\n  authority bundle by specifying the `--peer-ca-file` command line argument to the **source** API server.\n\n### Configuration for peer API server connectivity\n\nTo set the network location of a kube-apiserver that peers will use to proxy requests, use the\n`--peer-advertise-ip` and `--peer-advertise-port` command line arguments to kube-apiserver or specify\nthese fields in the API server configuration file.\nIf these flags are unspecified, peers will use the value from either `--advertise-address` or\n`--bind-address` command line argument to the kube-apiserver.\nIf those too, are unset, the host's default interface is used.\n\n## Peer-aggregated discovery\n\nWhen you enable the feature, discovery requests are automatically enabled to serve\na comprehensive discovery document (listing all resources served by any apiserver in the cluster)\nby default. \n\nIf you would like to request\na non peer-aggregated discovery document, you can indicate so by adding the following Accept header to the discovery request:\n\n```\napplication/json;g=apidiscovery.k8s.io;v=v2;as=APIGroupDiscoveryList;profile=nopeer\n```\n\n\n> **Note:** Peer-aggregated discovery is only supported\nfor [Aggregated Discovery](/docs/concepts/over\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
      "meta": {
        "weight": 220,
        "rel_path": "concepts/architecture/mixed-version-proxy.md"
      },
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": null,
          "line_end": null,
          "quote": "Mixed Version Proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-peer-aggregated-discovery-and-mixed-version-proxy",
      "type": "concept",
      "title": "Enabling Peer-aggregated Discovery and Mixed Version Proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 1185,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:peer-aggregated-discovery",
      "type": "concept",
      "title": "Peer-aggregated discovery",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 3609,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mixed-version-proxying",
      "type": "concept",
      "title": "Mixed version proxying",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 4397,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:proxy-transport-and-authentication-between-api-servers-transport-and-authn",
      "type": "concept",
      "title": "Proxy transport and authentication between API servers {#transport-and-authn}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 2295,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuration-for-peer-api-server-connectivity",
      "type": "concept",
      "title": "Configuration for peer API server connectivity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 3089,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-it-works-under-the-hood",
      "type": "concept",
      "title": "How it works under the hood",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 5222,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/architecture/self-healing",
      "type": "page",
      "title": "Kubernetes Self-Healing",
      "summary": "",
      "body": "\n\nKubernetes is designed with self-healing capabilities that help maintain the health and availability of workloads. \nIt automatically replaces failed containers, reschedules workloads when nodes become unavailable, and ensures that the desired state of the system is maintained.\n\n\n\n## Self-Healing capabilities {#self-healing-capabilities} \n\n- **Container-level restarts:** If a container inside a Pod fails, Kubernetes restarts it based on the [`restartPolicy`](/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy).\n\n- **Replica replacement:** If a Pod in a [Deployment](/docs/concepts/workloads/controllers/deployment/) or [StatefulSet](/docs/concepts/workloads/controllers/statefulset/) fails, Kubernetes creates a replacement Pod to maintain the specified number of replicas.\n  If a Pod that is part of a [DaemonSet](/docs/concepts/workloads/controllers/daemonset/) fails, the control plane\n  creates a replacement Pod to run on the same node.\n  \n- **Persistent storage recovery:** If a node is running a Pod with a PersistentVolume (PV) attached, and the node fails, Kubernetes can reattach the volume to a new Pod on a different node.\n\n- **Load balancing for Services:** If a Pod behind a [Service](/docs/concepts/services-networking/service/) fails, Kubernetes automatically removes it from the Service's endpoints to route traffic only to healthy Pods.\n\nHere are some of the key components that provide Kubernetes self-healing:\n\n- **[kubelet](/docs/concepts/architecture/#kubelet):** Ensures that containers are running, and restarts those that fail.\n\n- **Deployment (via ReplicaSet), ReplicaSet, StatefulSet and DaemonSet controllers:** Maintain the desired number of Pod replicas.\n\n- **PersistentVolume controller:** Manages volume attachment and detachment for stateful workloads.\n\n## Considerations {#considerations} \n\n- **Storage Failures:** If a persistent volume becomes unavailable, recovery steps may be required.\n\n- **Application Errors:** Kubernetes can restart containers, but underlying application issues must be addressed separately.\n\n##  \n\n- Read more about [Pods](/docs/concepts/workloads/pods/)\n- Learn about [Kubernetes Controllers](/docs/concepts/architecture/controller/)\n- Explore [PersistentVolumes](/docs/concepts/storage/persistent-volumes/)\n- Read about [node autoscaling](/docs/concepts/cluster-administration/node-autoscaling/). Node autoscaling\n  also provides automatic healing if or when nodes fail in your cluster.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/architecture/self-healing/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/architecture/self-healing.md"
      },
      "provenance": [
        {
          "source": "concepts/architecture/self-healing.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/self-healing/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Self-Healing"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:self-healing-capabilities-self-healing-capabilities",
      "type": "concept",
      "title": "Self-Healing capabilities {#self-healing-capabilities}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/self-healing.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/self-healing/",
          "line_start": 314,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:considerations-considerations",
      "type": "concept",
      "title": "Considerations {#considerations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/self-healing.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/self-healing/",
          "line_start": 1833,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/architecture/nodes",
      "type": "page",
      "title": "Nodes",
      "summary": "",
      "body": "\n\nKubernetes runs your [workload](#gloss:workload)\nby placing [containers](#gloss:container) into Pods to run on _Nodes_.\nA node may be a virtual or physical machine, depending on the cluster. Each node\nis managed by the\n[control plane](#gloss:control-plane)\nand contains the services necessary to run\n[Pods](#gloss:pod).\n\nTypically you have several nodes in a cluster; in a learning or resource-limited\nenvironment, you might have only one node.\n\nThe [components](/docs/concepts/architecture/#node-components) on a node include the\n[kubelet](#gloss:kubelet), a\n[container runtime](#gloss:container-runtime), and the\n[kube-proxy](#gloss:kube-proxy).\n\n\n\n## Management\n\nThere are two main ways to have Nodes added to the\n[API server](#gloss:kube-apiserver):\n\n1. The kubelet on a node self-registers to the control plane\n2. You (or another human user) manually add a Node object\n\nAfter you create a Node [object](#gloss:object),\nor the kubelet on a node self-registers, the control plane checks whether the new Node object\nis valid. For example, if you try to create a Node from the following JSON manifest:\n\n```json\n{\n  \"kind\": \"Node\",\n  \"apiVersion\": \"v1\",\n  \"metadata\": {\n    \"name\": \"10.240.79.157\",\n    \"labels\": {\n      \"name\": \"my-first-k8s-node\"\n    }\n  }\n}\n```\n\nKubernetes creates a Node object internally (the representation). Kubernetes checks\nthat a kubelet has registered to the API server that matches the `metadata.name`\nfield of the Node. If the node is healthy (i.e. all necessary services are running),\nthen it is eligible to run a Pod. Otherwise, that node is ignored for any cluster activity\nuntil it becomes healthy.\n\n\n> **Note:** Kubernetes keeps the object for the invalid Node and continues checking to see whether\nit becomes healthy.\n\nYou, or a , must explicitly\ndelete the Node object to stop that health checking.\n\n\nThe name of a Node object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\n### Node name uniqueness\n\nThe [name](/docs/concepts/overview/working-with-objects/names#names) identifies a Node. Two Nodes\ncannot have the same name at the same time. Kubernetes also assumes that a resource with the same\nname is the same object. In the case of a Node, it is implicitly assumed that an instance using the\nsame name will have the same state (e.g. network settings, root disk contents) and attributes like\nnode labels. This may lead to inconsistencies if an instance was modified without changing its name.\nIf the Node needs to be replaced or updated significantly, the existing Node object needs to be\nremoved from API server first and re-added after the update.\n\n### Self-registration of Nodes\n\nWhen the kubelet flag `--register-node` is true (the default), the kubelet will attempt to\nregister itself with the API server. This is the preferred pattern, used by most distros.\n\nFor self-registration, the kubelet is started with the following options:\n\n- `--kubeconfig` - Path to credentials to authenticate itself to the API server.\n- `--cloud-provider` - How to talk to a [cloud provider](#gloss:cloud-provider)\n  to read metadata about itself.\n- `--register-node` - Automatically register with the API server.\n- `--register-with-taints` - Register the node with the given list of\n  [taints](#gloss:taint) (comma separated `<key>=<value>:<effect>`).\n\n  No-op if `register-node` is false.\n- `--node-ip` - Optional comma-separated list of the IP addresses for the node.\n  You can only specify a single address for each address family.\n  For example, in a single-stack IPv4 cluster, you set this value to be the IPv4 address that the\n  kubelet should use for the node.\n  See [configure IPv4/IPv6 dual stack](/docs/concepts/services-networking/dual-stack/#configure-ipv4-ipv6-dual-stack)\n  for details of running a dual-stack cluster.\n\n  If you don't provide this argument, the kubelet uses the node's default IPv4 address, if any;\n  if the node has no IPv4 addresses then the kubelet uses the node's default \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/architecture/nodes.md"
      },
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": null,
          "line_end": null,
          "quote": "Nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-status",
      "type": "concept",
      "title": "Node status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 7652,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-heartbeats",
      "type": "concept",
      "title": "Node heartbeats",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 8161,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-capacity-tracking-node-capacity",
      "type": "concept",
      "title": "Resource capacity tracking {#node-capacity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 12332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-topology",
      "type": "concept",
      "title": "Node topology",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 13439,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-name-uniqueness",
      "type": "concept",
      "title": "Node name uniqueness",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 2371,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:self-registration-of-nodes",
      "type": "concept",
      "title": "Self-registration of Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 3051,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manual-node-administration",
      "type": "concept",
      "title": "Manual Node administration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 5979,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rate-limits-on-eviction",
      "type": "concept",
      "title": "Rate limits on eviction",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 10104,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/architecture/controller",
      "type": "page",
      "title": "Controllers",
      "summary": "",
      "body": "\n\nIn robotics and automation, a _control loop_ is\na non-terminating loop that regulates the state of a system.\n\nHere is one example of a control loop: a thermostat in a room.\n\nWhen you set the temperature, that's telling the thermostat\nabout your *desired state*. The actual room temperature is the\n*current state*. The thermostat acts to bring the current state\ncloser to the desired state, by turning equipment on or off.\n\n[definition:controller]\n\n\n\n\n\n\n## Controller pattern\n\nA controller tracks at least one Kubernetes resource type.\nThese [objects](#gloss:object)\nhave a spec field that represents the desired state. The\ncontroller(s) for that resource are responsible for making the current\nstate come closer to that desired state.\n\nThe controller might carry the action out itself; more commonly, in Kubernetes,\na controller will send messages to the\n[API server](#gloss:kube-apiserver) that have\nuseful side effects. You'll see examples of this below.\n\n\nSome built-in controllers, such as the namespace controller, act on objects\nthat do not have a spec. For simplicity, this page omits explaining that\ndetail.\n\n\n### Control via API server\n\nThe [job](#gloss:job) controller is an example of a\nKubernetes built-in controller. Built-in controllers manage state by\ninteracting with the cluster API server.\n\nJob is a Kubernetes resource that runs a\n[pod](#gloss:pod), or perhaps several Pods, to carry out\na task and then stop.\n\n(Once [scheduled](/docs/concepts/scheduling-eviction/), Pod objects become part of the\ndesired state for a kubelet).\n\nWhen the Job controller sees a new task it makes sure that, somewhere\nin your cluster, the kubelets on a set of Nodes are running the right\nnumber of Pods to get the work done.\nThe Job controller does not run any Pods or containers\nitself. Instead, the Job controller tells the API server to create or remove\nPods.\nOther components in the\n[control plane](#gloss:control-plane)\nact on the new information (there are new Pods to schedule and run),\nand eventually the work is done.\n\nAfter you create a new Job, the desired state is for that Job to be completed.\nThe Job controller makes the current state for that Job be nearer to your\ndesired state: creating Pods that do the work you wanted for that Job, so that\nthe Job is closer to completion.\n\nControllers also update the objects that configure them.\nFor example: once the work is done for a Job, the Job controller\nupdates that Job object to mark it `Finished`.\n\n(This is a bit like how some thermostats turn a light off to\nindicate that your room is now at the temperature you set).\n\n### Direct control\n\nIn contrast with Job, some controllers need to make changes to\nthings outside of your cluster.\n\nFor example, if you use a control loop to make sure there\nare enough [Nodes](#gloss:node)\nin your cluster, then that controller needs something outside the\ncurrent cluster to set up new Nodes when needed.\n\nControllers that interact with external state find their desired state from\nthe API server, then communicate directly with an external system to bring\nthe current state closer in line.\n\n(There actually is a [controller](https://github.com/kubernetes/autoscaler/)\nthat horizontally scales the nodes in your cluster.)\n\nThe important point here is that the controller makes some changes to bring about\nyour desired state, and then reports the current state back to your cluster's API server.\nOther control loops can observe that reported data and take their own actions.\n\nIn the thermostat example, if the room is very cold then a different controller\nmight also turn on a frost protection heater. With Kubernetes clusters, the control\nplane indirectly works with IP address management tools, storage services,\ncloud provider APIs, and other services by\n[extending Kubernetes](/docs/concepts/extend-kubernetes/) to implement that.\n\n## Desired versus current state {#desired-vs-current}\n\nKubernetes takes a cloud-native view of systems, and is able to handle\nconstant change.\n\nYour cluster coul\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/architecture/controller.md"
      },
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": null,
          "line_end": null,
          "quote": "Controllers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controller-pattern",
      "type": "concept",
      "title": "Controller pattern",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 525,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:desired-versus-current-state-desired-vs-current",
      "type": "concept",
      "title": "Desired versus current state {#desired-vs-current}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 4110,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ways-of-running-controllers-running-controllers",
      "type": "concept",
      "title": "Ways of running controllers {#running-controllers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 5847,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-via-api-server",
      "type": "concept",
      "title": "Control via API server",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 1285,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:direct-control",
      "type": "concept",
      "title": "Direct control",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 2827,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/architecture/garbage-collection",
      "type": "page",
      "title": "Garbage Collection",
      "summary": "",
      "body": "\n[definition:garbage-collection] This\nallows the clean up of resources like the following:\n\n* [Terminated pods](/docs/concepts/workloads/pods/pod-lifecycle/#pod-garbage-collection)\n* [Completed Jobs](/docs/concepts/workloads/controllers/ttlafterfinished/)\n* [Objects without owner references](#owners-dependents)\n* [Unused containers and container images](#containers-images)\n* [Dynamically provisioned PersistentVolumes with a StorageClass reclaim policy of Delete](/docs/concepts/storage/persistent-volumes/#delete)\n* [Stale or expired CertificateSigningRequests (CSRs)](/docs/reference/access-authn-authz/certificate-signing-requests/#request-signing-process)\n* [Nodes](#gloss:node) deleted in the following scenarios:\n  * On a cloud when the cluster uses a [cloud controller manager](/docs/concepts/architecture/cloud-controller/)\n  * On-premises when the cluster uses an addon similar to a cloud controller\n    manager\n* [Node Lease objects](/docs/concepts/architecture/nodes/#heartbeats)\n\n## Owners and dependents {#owners-dependents}\n\nMany objects in Kubernetes link to each other through [*owner references*](/docs/concepts/overview/working-with-objects/owners-dependents/).\nOwner references tell the control plane which objects are dependent on others.\nKubernetes uses owner references to give the control plane, and other API\nclients, the opportunity to clean up related resources before deleting an\nobject. In most cases, Kubernetes manages owner references automatically.\n\nOwnership is different from the [labels and selectors](/docs/concepts/overview/working-with-objects/labels/)\nmechanism that some resources also use. For example, consider a\n[Service](#gloss:service) that creates\n`EndpointSlice` objects. The Service uses *labels* to allow the control plane to\ndetermine which `EndpointSlice` objects are used for that Service. In addition\nto the labels, each `EndpointSlice` that is managed on behalf of a Service has\nan owner reference. Owner references help different parts of Kubernetes avoid\ninterfering with objects they don’t control.\n\n\n> **Note:** Cross-namespace owner references are disallowed by design.\nNamespaced dependents can specify cluster-scoped or namespaced owners.\nA namespaced owner **must** exist in the same namespace as the dependent.\nIf it does not, the owner reference is treated as absent, and the dependent\nis subject to deletion once all owners are verified absent.\n\nCluster-scoped dependents can only specify cluster-scoped owners.\nIn v1.20+, if a cluster-scoped dependent specifies a namespaced kind as an owner,\nit is treated as having an unresolvable owner reference, and is not able to be garbage collected.\n\nIn v1.20+, if the garbage collector detects an invalid cross-namespace `ownerReference`,\nor a cluster-scoped dependent with an `ownerReference` referencing a namespaced kind, a warning Event\nwith a reason of `OwnerRefInvalidNamespace` and an `involvedObject` of the invalid dependent is reported.\nYou can check for that kind of Event by running\n`kubectl get events -A --field-selector=reason=OwnerRefInvalidNamespace`.\n\n\n## Cascading deletion {#cascading-deletion}\n\nKubernetes checks for and deletes objects that no longer have owner\nreferences, like the pods left behind when you delete a ReplicaSet. When you\ndelete an object, you can control whether Kubernetes deletes the object's\ndependents automatically, in a process called *cascading deletion*. There are\ntwo types of cascading deletion, as follows:\n\n* Foreground cascading deletion\n* Background cascading deletion\n\nYou can also control how and when garbage collection deletes resources that have\nowner references using Kubernetes [finalizers](#gloss:finalizer).\n\n### Foreground cascading deletion {#foreground-deletion}\n\nIn foreground cascading deletion, the owner object you're deleting first enters\na *deletion in progress* state. In this state, the following happens to the\nowner object:\n\n* The Kubernetes API server sets the object's `metadata.deletionTimestamp`\n  field to th\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/architecture/garbage-collection.md"
      },
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": null,
          "line_end": null,
          "quote": "Garbage Collection"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:owners-and-dependents-owners-dependents",
      "type": "concept",
      "title": "Owners and dependents {#owners-dependents}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 1081,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cascading-deletion-cascading-deletion",
      "type": "concept",
      "title": "Cascading deletion {#cascading-deletion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 3211,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:garbage-collection-of-unused-containers-and-images-containers-images",
      "type": "concept",
      "title": "Garbage collection of unused containers and images {#containers-images}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 6247,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-garbage-collection-configuring-gc",
      "type": "concept",
      "title": "Configuring garbage collection {#configuring-gc}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 9850,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:foreground-cascading-deletion-foreground-deletion",
      "type": "concept",
      "title": "Foreground cascading deletion {#foreground-deletion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 3842,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:background-cascading-deletion-background-deletion",
      "type": "concept",
      "title": "Background cascading deletion {#background-deletion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 5232,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:orphaned-dependents",
      "type": "concept",
      "title": "Orphaned dependents",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 5900,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-image-lifecycle",
      "type": "concept",
      "title": "Container image lifecycle",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 6956,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-garbage-collection-container-image-garbage-collection",
      "type": "concept",
      "title": "Container garbage collection {#container-image-garbage-collection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 8539,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/architecture/leases",
      "type": "page",
      "title": "Leases",
      "summary": "",
      "body": "\n\nDistributed systems often have a need for _leases_, which provide a mechanism to lock shared resources\nand coordinate activity between members of a set.\nIn Kubernetes, the lease concept is represented by [Lease](/docs/reference/kubernetes-api/cluster-resources/lease-v1/)\nobjects in the `coordination.k8s.io` [API Group](#gloss:api-group),\nwhich are used for system-critical capabilities such as node heartbeats and component-level leader election.\n\n\n\n## Node heartbeats {#node-heart-beats}\n\nKubernetes uses the Lease API to communicate kubelet node heartbeats to the Kubernetes API server.\nFor every `Node` , there is a `Lease` object with a matching name in the `kube-node-lease`\nnamespace. Under the hood, every kubelet heartbeat is an **update** request to this `Lease` object, updating\nthe `spec.renewTime` field for the Lease. The Kubernetes control plane uses the time stamp of this field\nto determine the availability of this `Node`.\n\nSee [Node Lease objects](/docs/concepts/architecture/nodes/#node-heartbeats) for more details.\n\n## Leader election\n\nKubernetes also uses Leases to ensure only one instance of a component is running at any given time.\nThis is used by control plane components like `kube-controller-manager` and `kube-scheduler` in\nHA configurations, where only one instance of the component should be actively running while the other\ninstances are on stand-by.\n\nRead [coordinated leader election](/docs/concepts/cluster-administration/coordinated-leader-election)\nto learn about how Kubernetes builds on the Lease API to select which component instance\nacts as leader.\n\n### Kube controller manager lock release on exit\n\n\n\nWhen the `ControllerManagerReleaseLeaderElectionLockOnExit` feature gate is enabled,\nthe `kube-controller-manager` actively releases its leader election lock during\nleader transitions, rather than waiting for the lock's TTL to expire. This allows\na new leader to be elected more quickly, reducing leader transition latency.\n\n## API server identity\n\n\n\nStarting in Kubernetes v1.26, each `kube-apiserver` uses the Lease API to publish its identity to the\nrest of the system. While not particularly useful on its own, this provides a mechanism for clients to\ndiscover how many instances of `kube-apiserver` are operating the Kubernetes control plane.\nExistence of kube-apiserver leases enables future capabilities that may require coordination between\neach kube-apiserver.\n\nYou can inspect Leases owned by each kube-apiserver by checking for lease objects in the `kube-system` namespace\nwith the name `apiserver-<sha256-hash>`. Alternatively you can use the label selector `apiserver.kubernetes.io/identity=kube-apiserver`:\n\n```shell\nkubectl -n kube-system get lease -l apiserver.kubernetes.io/identity=kube-apiserver\n```\n```\nNAME                                        HOLDER                                                                           AGE\napiserver-07a5ea9b9b072c4a5f3d1c3702        apiserver-07a5ea9b9b072c4a5f3d1c3702_0c8914f7-0f35-440e-8676-7844977d3a05        5m33s\napiserver-7be9e061c59d368b3ddaf1376e        apiserver-7be9e061c59d368b3ddaf1376e_84f2a85d-37c1-4b14-b6b9-603e62e4896f        4m23s\napiserver-1dfef752bcb36637d2763d1868        apiserver-1dfef752bcb36637d2763d1868_c5ffa286-8a9a-45d4-91e7-61118ed58d2e        4m43s\n\n```\n\nThe SHA256 hash used in the lease name is based on the OS hostname as seen by that API server. Each kube-apiserver should be\nconfigured to use a hostname that is unique within the cluster. New instances of kube-apiserver that use the same hostname\nwill take over existing Leases using a new holder identity, as opposed to instantiating new Lease objects. You can check the\nhostname used by kube-apiserver by checking the value of the `kubernetes.io/hostname` label:\n\n```shell\nkubectl -n kube-system get lease apiserver-07a5ea9b9b072c4a5f3d1c3702 -o yaml\n```\n```yaml\napiVersion: coordination.k8s.io/v1\nkind: Lease\nmetadata:\n  creationTimestamp: \"2023-07-02T13:16:48Z\"\n  labels:\n    apiserver.kubernete\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/architecture/leases.md"
      },
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": null,
          "line_end": null,
          "quote": "Leases"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-heartbeats-node-heart-beats",
      "type": "concept",
      "title": "Node heartbeats {#node-heart-beats}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 517,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:leader-election",
      "type": "concept",
      "title": "Leader election",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 1104,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-server-identity",
      "type": "concept",
      "title": "API server identity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 2127,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workloads-custom-workload",
      "type": "concept",
      "title": "Workloads {#custom-workload}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 4871,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-controller-manager-lock-release-on-exit",
      "type": "concept",
      "title": "Kube controller manager lock release on exit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 1660,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/architecture/cgroups",
      "type": "page",
      "title": "About cgroup v2",
      "summary": "",
      "body": "\n\nOn Linux, [control groups](#gloss:cgroup)\nconstrain resources that are allocated to processes.\n\nThe [kubelet](#gloss:kubelet) and the\nunderlying container runtime need to interface with cgroups to enforce\n[resource management for pods and containers](/docs/concepts/configuration/manage-resources-containers/) which\nincludes cpu/memory requests and limits for containerized workloads.\n\nThere are two versions of cgroups in Linux: cgroup v1 and cgroup v2. cgroup v2 is\nthe new generation of the `cgroup` API.\n\n\n\n\n## What is cgroup v2? {#cgroup-v2}\n\n\ncgroup v2 is the next version of the Linux `cgroup` API. cgroup v2 provides a\nunified control system with enhanced resource management\ncapabilities.\n\ncgroup v2 offers several improvements over cgroup v1, such as the following:\n\n- Single unified hierarchy design in API\n- Safer sub-tree delegation to containers\n- Newer features like [Pressure Stall Information](https://www.kernel.org/doc/html/latest/accounting/psi.html)\n- Enhanced resource allocation management and isolation across multiple resources\n  - Unified accounting for different types of memory allocations (network memory, kernel memory, etc)\n  - Accounting for non-immediate resource changes such as page cache write backs\n\nSome Kubernetes features exclusively use cgroup v2 for enhanced resource\nmanagement and isolation. For example, the\n[MemoryQoS](/docs/concepts/workloads/pods/pod-qos/#memory-qos-with-cgroup-v2) feature improves memory QoS\nand relies on cgroup v2 primitives.\n\n\n## Using cgroup v2 {#using-cgroupv2}\n\nThe recommended way to use cgroup v2 is to use a Linux distribution that\nenables and uses cgroup v2 by default.\n\nTo check if your distribution uses cgroup v2, refer to [Identify cgroup version on Linux nodes](#check-cgroup-version).\n\n### Requirements\n\ncgroup v2 has the following requirements:\n\n* OS distribution enables cgroup v2\n* Linux Kernel version is 5.8 or later\n* Container runtime supports cgroup v2. For example:\n  * [containerd](https://containerd.io/) v1.4 and later\n  * [cri-o](https://cri-o.io/) v1.20 and later\n* The kubelet and the container runtime are configured to use the [systemd cgroup driver](/docs/setup/production-environment/container-runtimes#systemd-cgroup-driver)\n\n### Linux Distribution cgroup v2 support\n\nFor a list of Linux distributions that use cgroup v2, refer to the [cgroup v2 documentation](https://github.com/opencontainers/runc/blob/main/docs/cgroup-v2.md)\n\n\n* Container Optimized OS (since M97)\n* Ubuntu (since 21.10, 22.04+ recommended)\n* Debian GNU/Linux (since Debian 11 bullseye)\n* Fedora (since 31)\n* Arch Linux (since April 2021)\n* RHEL and RHEL-like distributions (since 9)\n\nTo check if your distribution is using cgroup v2, refer to your distribution's\ndocumentation or follow the instructions in [Identify the cgroup version on Linux nodes](#check-cgroup-version).\n\nYou can also enable cgroup v2 manually on your Linux distribution by modifying\nthe kernel cmdline boot arguments. If your distribution uses GRUB,\n`systemd.unified_cgroup_hierarchy=1` should be added in `GRUB_CMDLINE_LINUX`\nunder `/etc/default/grub`, followed by `sudo update-grub`.  However, the\nrecommended approach is to use a distribution that already enables cgroup v2 by\ndefault.\n\n### Migrating to cgroup v2 {#migrating-cgroupv2}\n\nTo migrate to cgroup v2, ensure that you meet the [requirements](#requirements), then upgrade\nto a kernel version that enables cgroup v2 by default.\n\nThe kubelet automatically detects that the OS is running on cgroup v2 and\nperforms accordingly with no additional configuration required.\n\nThere should not be any noticeable difference in the user experience when\nswitching to cgroup v2, unless users are accessing the cgroup file system\ndirectly, either on the node or from within the containers.\n\ncgroup v2 uses a different API than cgroup v1, so if there are any\napplications that directly access the cgroup file system, they need to be\nupdated to newer versions that support cgroup v2. For example:\n\n* Some t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/architecture/cgroups.md"
      },
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": null,
          "line_end": null,
          "quote": "About cgroup v2"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-is-cgroup-v2-cgroup-v2",
      "type": "concept",
      "title": "What is cgroup v2? {#cgroup-v2}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 609,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-cgroup-v2-using-cgroupv2",
      "type": "concept",
      "title": "Using cgroup v2 {#using-cgroupv2}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 1654,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:identify-the-cgroup-version-on-linux-nodes-check-cgroup-version",
      "type": "concept",
      "title": "Identify the cgroup version on Linux Nodes  {#check-cgroup-version}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 5703,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deprecation-of-cgroup-v1",
      "type": "concept",
      "title": "Deprecation of cgroup v1",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 6130,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:linux-distribution-cgroup-v2-support",
      "type": "concept",
      "title": "Linux Distribution cgroup v2 support",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 2386,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-to-cgroup-v2-migrating-cgroupv2",
      "type": "concept",
      "title": "Migrating to cgroup v2 {#migrating-cgroupv2}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 3506,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/architecture/_index",
      "type": "page",
      "title": "Cluster Architecture",
      "summary": "The architectural concepts behind Kubernetes.",
      "body": "A Kubernetes cluster consists of a control plane plus a set of worker machines, called nodes,\nthat run containerized applications. Every cluster needs at least one worker node in order to run Pods.\n\nThe worker node(s) host the Pods that are the components of the application workload.\nThe control plane manages the worker nodes and the Pods in the cluster. In production\nenvironments, the control plane usually runs across multiple computers and a cluster\nusually runs multiple nodes, providing fault-tolerance and high availability.\n\nThis document outlines the various components you need to have for a complete and working Kubernetes cluster.\n\n\n![The control plane (kube-apiserver, etcd, kube-controller-manager, kube-scheduler) and several nodes. Each node is running a kubelet and kube-proxy.](/images/docs/kubernetes-cluster-architecture.svg) — Figure 1. Kubernetes cluster components.\n\n\n\n<details><summary>About this architecture</summary>\n\nThe diagram in Figure 1 presents an example reference architecture for a Kubernetes cluster.\nThe actual distribution of components can vary based on specific cluster setups and requirements.\n\nIn the diagram, each node runs the [`kube-proxy`](#kube-proxy) component. You need a\nnetwork proxy component on each node to ensure that the\n API and associated behaviors\nare available on your cluster network. However, some network plugins provide their own,\nthird party implementation of proxying. When you use that kind of network plugin,\nthe node does not need to run `kube-proxy`.\n</details>\n\n\n## Control plane components\n\nThe control plane's components make global decisions about the cluster (for example, scheduling),\nas well as detecting and responding to cluster events (for example, starting up a new\n[pod](#gloss:pod) when a Deployment's\n`[replicas](#gloss:replica)` field is unsatisfied).\n\nControl plane components can be run on any machine in the cluster. However, for simplicity, setup scripts\ntypically start all control plane components on the same machine, and do not run user containers on this machine.\nSee [Creating Highly Available clusters with kubeadm](/docs/setup/production-environment/tools/kubeadm/high-availability/)\nfor an example control plane setup that runs across multiple machines.\n\n### kube-apiserver\n\n[definition:kube-apiserver]\n\n### etcd\n\n[definition:etcd]\n\n### kube-scheduler\n\n[definition:kube-scheduler]\n\n### kube-controller-manager\n\n[definition:kube-controller-manager]\n\nThere are many different types of controllers. Some examples of them are:\n\n- Node controller: Responsible for noticing and responding when nodes go down.\n- Job controller: Watches for Job objects that represent one-off tasks, then creates Pods to run those tasks to completion.\n- EndpointSlice controller: Populates EndpointSlice objects (to provide a link between Services and Pods).\n- ServiceAccount controller: Create default ServiceAccounts for new namespaces.\n\nThe above is not an exhaustive list.\n\n### cloud-controller-manager\n\n[definition:cloud-controller-manager]\n\nThe cloud-controller-manager only runs controllers that are specific to your cloud provider.\nIf you are running Kubernetes on your own premises, or in a learning environment inside your\nown PC, the cluster does not have a cloud controller manager.\n\nAs with the kube-controller-manager, the cloud-controller-manager combines several logically\nindependent control loops into a single binary that you run as a single process. You can scale\nhorizontally (run more than one copy) to improve performance or to help tolerate failures.\n\nThe following controllers can have cloud provider dependencies:\n\n- Node controller: For checking the cloud provider to determine if a node has been\n  deleted in the cloud after it stops responding\n- Route controller: For setting up routes in the underlying cloud infrastructure\n- Service controller: For creating, updating and deleting cloud provider load balancers\n\n---\n\n## Node components\n\nNode components run on every node, maintaining running p\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/architecture/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Cluster Architecture"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-components",
      "type": "concept",
      "title": "Node components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 4288,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:addons",
      "type": "concept",
      "title": "Addons",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 4913,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:architecture-variations",
      "type": "concept",
      "title": "Architecture variations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 6840,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-apiserver",
      "type": "concept",
      "title": "kube-apiserver",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 2428,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:etcd",
      "type": "concept",
      "title": "etcd",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 2515,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-controller-manager",
      "type": "concept",
      "title": "kube-controller-manager",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 2669,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cloud-controller-manager",
      "type": "concept",
      "title": "cloud-controller-manager",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 3278,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet",
      "type": "concept",
      "title": "kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 4419,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-proxy-optional-kube-proxy",
      "type": "concept",
      "title": "kube-proxy (optional) {#kube-proxy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 4492,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-runtime",
      "type": "concept",
      "title": "Container runtime",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 4820,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:web-ui-dashboard",
      "type": "concept",
      "title": "Web UI (Dashboard)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 5790,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-resource-monitoring",
      "type": "concept",
      "title": "Container resource monitoring",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 6056,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-level-logging",
      "type": "concept",
      "title": "Cluster-level Logging",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 6302,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:network-plugins",
      "type": "concept",
      "title": "Network plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 6512,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-deployment-options",
      "type": "concept",
      "title": "Control plane deployment options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 7106,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workload-placement-considerations",
      "type": "concept",
      "title": "Workload placement considerations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 7806,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-management-tools",
      "type": "concept",
      "title": "Cluster management tools",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 8323,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customization-and-extensibility",
      "type": "concept",
      "title": "Customization and extensibility",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 8518,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/extend-kubernetes/operator",
      "type": "page",
      "title": "Operator pattern",
      "summary": "",
      "body": "\n\nOperators are software extensions to Kubernetes that make use of\n[custom resources](/docs/concepts/extend-kubernetes/api-extension/custom-resources/)\nto manage applications and their components. Operators follow\nKubernetes principles, notably the [control loop](/docs/concepts/architecture/controller).\n\n\n\n## Motivation\n\nThe _operator pattern_ aims to capture the key aim of a human operator who\nis managing a service or set of services. Human operators who look after\nspecific applications and services have deep knowledge of how the system\nought to behave, how to deploy it, and how to react if there are problems.\n\nPeople who run workloads on Kubernetes often like to use automation to take\ncare of repeatable tasks. The operator pattern captures how you can write\ncode to automate a task beyond what Kubernetes itself provides.\n\n## Operators in Kubernetes\n\nKubernetes is designed for automation. Out of the box, you get lots of\nbuilt-in automation from the core of Kubernetes. You can use Kubernetes\nto automate deploying and running workloads, *and* you can automate how\nKubernetes does that.\n\nKubernetes' [operator pattern](#gloss:operator-pattern)\nconcept lets you extend the cluster's behaviour without modifying the code of Kubernetes\nitself by linking [controllers](#gloss:controller) to\none or more custom resources. Operators are clients of the Kubernetes API that act as\ncontrollers for a [Custom Resource](/docs/concepts/extend-kubernetes/api-extension/custom-resources/).\n\n## An example operator {#example}\n\nSome of the things that you can use an operator to automate include:\n\n* deploying an application on demand\n* taking and restoring backups of that application's state\n* handling upgrades of the application code alongside related changes such\n  as database schemas or extra configuration settings\n* publishing a Service to applications that don't support Kubernetes APIs to\n  discover them\n* simulating failure in all or part of your cluster to test its resilience\n* choosing a leader for a distributed application without an internal\n  member election process\n\nWhat might an operator look like in more detail? Here's an example:\n\n1. A custom resource named SampleDB, that you can configure into the cluster.\n2. A Deployment that makes sure a Pod is running that contains the\n   controller part of the operator.\n3. A container image of the operator code.\n4. Controller code that queries the control plane to find out what SampleDB\n   resources are configured.\n5. The core of the operator is code to tell the API server how to make\n   reality match the configured resources.\n   * If you add a new SampleDB, the operator sets up PersistentVolumeClaims\n     to provide durable database storage, a StatefulSet to run SampleDB and\n     a Job to handle initial configuration.\n   * If you delete it, the operator takes a snapshot, then makes sure that\n     the StatefulSet and Volumes are also removed.\n6. The operator also manages regular database backups. For each SampleDB\n   resource, the operator determines when to create a Pod that can connect\n   to the database and take backups. These Pods would rely on a ConfigMap\n   and / or a Secret that has database connection details and credentials.\n7. Because the operator aims to provide robust automation for the resource\n   it manages, there would be additional supporting code. For this example,\n   code checks to see if the database is running an old version and, if so,\n   creates Job objects that upgrade it for you.\n\n## Deploying operators\n\nThe most common way to deploy an operator is to add the\nCustom Resource Definition and its associated Controller to your cluster.\nThe Controller will normally run outside of the\n[control plane](#gloss:control-plane),\nmuch as you would run any containerized application.\nFor example, you can run the controller in your cluster as a Deployment.\n\n## Using an operator {#using-operators}\n\nOnce you have an operator deployed, you'd use it by adding, modifying or\ndeleting the kind of resou\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/extend-kubernetes/operator.md"
      },
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": null,
          "line_end": null,
          "quote": "Operator pattern"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:operators-in-kubernetes",
      "type": "concept",
      "title": "Operators in Kubernetes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 866,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:an-example-operator-example",
      "type": "concept",
      "title": "An example operator {#example}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 1585,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploying-operators",
      "type": "concept",
      "title": "Deploying operators",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 3587,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-an-operator-using-operators",
      "type": "concept",
      "title": "Using an operator {#using-operators}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 3987,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-your-own-operator-writing-operator",
      "type": "concept",
      "title": "Writing your own operator {#writing-operator}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 4534,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/extend-kubernetes/_index",
      "type": "page",
      "title": "Extending Kubernetes",
      "summary": "Different ways to change the behavior of your Kubernetes cluster.",
      "body": "\n\nKubernetes is highly configurable and extensible. As a result, there is rarely a need to fork or\nsubmit patches to the Kubernetes project code.\n\nThis guide describes the options for customizing a Kubernetes cluster. It is aimed at\n[cluster operators](#gloss:cluster-operator) who want to understand\nhow to adapt their Kubernetes cluster to the needs of their work environment. Developers who are\nprospective [Platform Developers](#gloss:platform-developer) or\nKubernetes Project [Contributors](#gloss:contributor) will also\nfind it useful as an introduction to what extension points and patterns exist, and their\ntrade-offs and limitations.\n\nCustomization approaches can be broadly divided into [configuration](#configuration), which only\ninvolves changing command line arguments, local configuration files, or API resources; and [extensions](#extensions),\nwhich involve running additional programs, additional network services, or both.\nThis document is primarily about _extensions_.\n\n\n\n## Configuration\n\n*Configuration files* and *command arguments* are documented in the [Reference](/docs/reference/) section of the online\ndocumentation, with a page for each binary:\n\n* [`kube-apiserver`](/docs/reference/command-line-tools-reference/kube-apiserver/)\n* [`kube-controller-manager`](/docs/reference/command-line-tools-reference/kube-controller-manager/)\n* [`kube-scheduler`](/docs/reference/command-line-tools-reference/kube-scheduler/)\n* [`kubelet`](/docs/reference/command-line-tools-reference/kubelet/)\n* [`kube-proxy`](/docs/reference/command-line-tools-reference/kube-proxy/)\n\nCommand arguments and configuration files may not always be changeable in a hosted Kubernetes service or a\ndistribution with managed installation. When they are changeable, they are usually only changeable\nby the cluster operator. Also, they are subject to change in future Kubernetes versions, and\nsetting them may require restarting processes. For those reasons, they should be used only when\nthere are no other options.\n\nBuilt-in *policy APIs*, such as [ResourceQuota](/docs/concepts/policy/resource-quotas/),\n[NetworkPolicy](/docs/concepts/services-networking/network-policies/) and Role-based Access Control\n([RBAC](/docs/reference/access-authn-authz/rbac/)), are built-in Kubernetes APIs that provide declaratively configured policy settings.\nAPIs are typically usable even with hosted Kubernetes services and with managed Kubernetes installations.\nThe built-in policy APIs follow the same conventions as other Kubernetes resources such as Pods.\nWhen you use a policy APIs that is [stable](/docs/reference/using-api/#api-versioning), you benefit from a\n[defined support policy](/docs/reference/using-api/deprecation-policy/) like other Kubernetes APIs.\nFor these reasons, policy APIs are recommended over *configuration files* and *command arguments* where suitable.\n\n## Extensions\n\nExtensions are software components that extend and deeply integrate with Kubernetes.\nThey adapt it to support new types and new kinds of hardware.\n\nMany cluster administrators use a hosted or distribution instance of Kubernetes.\nThese clusters come with extensions pre-installed. As a result, most Kubernetes\nusers will not need to install extensions and even fewer users will need to author new ones.\n\n### Extension patterns\n\nKubernetes is designed to be automated by writing client programs. Any\nprogram that reads and/or writes to the Kubernetes API can provide useful\nautomation. *Automation* can run on the cluster or off it. By following\nthe guidance in this doc you can write highly available and robust automation.\nAutomation generally works with any Kubernetes cluster, including hosted\nclusters and managed installations.\n\nThere is a specific pattern for writing client programs that work well with\nKubernetes called the [controller](#gloss:controller)\npattern. Controllers typically read an object's `.spec`, possibly do things, and then\nupdate the object's `.status`.\n\nA controller is a client of the Kubernetes AP\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
      "meta": {
        "weight": 999,
        "rel_path": "concepts/extend-kubernetes/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Extending Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extensions",
      "type": "concept",
      "title": "Extensions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 2986,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:client-extensions",
      "type": "concept",
      "title": "Client extensions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 8428,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-extensions",
      "type": "concept",
      "title": "API extensions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 8930,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-access-extensions",
      "type": "concept",
      "title": "API access extensions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 10694,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:infrastructure-extensions",
      "type": "concept",
      "title": "Infrastructure extensions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 12957,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduling-extensions",
      "type": "concept",
      "title": "Scheduling extensions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 15406,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extension-patterns",
      "type": "concept",
      "title": "Extension patterns",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 3404,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extension-points",
      "type": "concept",
      "title": "Extension points",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 5168,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:custom-resource-definitions",
      "type": "concept",
      "title": "Custom resource definitions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 8949,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-aggregation-layer",
      "type": "concept",
      "title": "API aggregation layer",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 9337,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:combining-new-apis-with-automation",
      "type": "concept",
      "title": "Combining new APIs with automation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 9624,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:changing-built-in-resources",
      "type": "concept",
      "title": "Changing built-in resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 10363,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dynamic-admission-control",
      "type": "concept",
      "title": "Dynamic admission control",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 12196,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storage-plugins",
      "type": "concept",
      "title": "Storage plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 13216,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-image-credential-provider-plugins",
      "type": "concept",
      "title": "Kubelet image credential provider plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 14683,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/extend-kubernetes/compute-storage-net/network-plugins",
      "type": "page",
      "title": "Network Plugins",
      "summary": "",
      "body": "\n\nKubernetes (version 1.3 through to the latest , and likely onwards) lets you use\n[Container Network Interface](https://github.com/containernetworking/cni)\n(CNI) plugins for cluster networking. You must use a CNI plugin that is compatible with your\ncluster and that suits your needs. Different plugins are available (both open- and closed- source)\nin the wider Kubernetes ecosystem.\n\nA CNI plugin is required to implement the\n[Kubernetes network model](/docs/concepts/services-networking/#the-kubernetes-network-model). \n\nYou must use a CNI plugin that is compatible with the \n[v0.4.0](https://github.com/containernetworking/cni/blob/spec-v0.4.0/SPEC.md) or later\nreleases of the CNI specification. The Kubernetes project recommends using a plugin that is\ncompatible with the [v1.0.0](https://github.com/containernetworking/cni/blob/spec-v1.0.0/SPEC.md)\nCNI specification (plugins can be compatible with multiple spec versions).\n\n\n\n## Installation\n\nA Container Runtime, in the networking context, is a daemon on a node configured to provide CRI\nServices for kubelet. In particular, the Container Runtime must be configured to load the CNI\nplugins required to implement the Kubernetes network model.\n\n\n> **Note:** Prior to Kubernetes 1.24, the CNI plugins could also be managed by the kubelet using the\n`cni-bin-dir` and `network-plugin` command-line parameters.\nThese command-line parameters were removed in Kubernetes 1.24, with management of the CNI no\nlonger in scope for kubelet.\n\nSee [Troubleshooting CNI plugin-related errors](/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/)\nif you are facing issues following the removal of dockershim.\n\n\nFor specific information about how a Container Runtime manages the CNI plugins, see the\ndocumentation for that Container Runtime, for example:\n\n- [containerd](https://github.com/containerd/containerd/blob/main/script/setup/install-cni)\n- [CRI-O](https://github.com/cri-o/cri-o/blob/main/contrib/cni/README.md)\n\nFor specific information about how to install and manage a CNI plugin, see the documentation for\nthat plugin or [networking provider](/docs/concepts/cluster-administration/networking/#how-to-implement-the-kubernetes-network-model).\n\n## Network Plugin Requirements\n\n### Loopback CNI\n\nIn addition to the CNI plugin installed on the nodes for implementing the Kubernetes network\nmodel, Kubernetes also requires the container runtimes to provide a loopback interface `lo`, which\nis used for each sandbox (pod sandboxes, vm sandboxes, ...).\nImplementing the loopback interface can be accomplished by re-using the\n[CNI loopback plugin.](https://github.com/containernetworking/plugins/blob/master/plugins/main/loopback/loopback.go)\nor by developing your own code to achieve this (see\n[this example from CRI-O](https://github.com/cri-o/ocicni/blob/release-1.24/pkg/ocicni/util_linux.go#L91)).\n\n### Support hostPort\n\nThe CNI networking plugin supports `hostPort`. You can use the official\n[portmap](https://github.com/containernetworking/plugins/tree/master/plugins/meta/portmap)\nplugin offered by the CNI plugin team or use your own plugin with portMapping functionality.\n\nIf you want to enable `hostPort` support, you must specify `portMappings capability` in your\n`cni-conf-dir`. For example:\n\n```json\n{\n  \"name\": \"k8s-pod-network\",\n  \"cniVersion\": \"0.4.0\",\n  \"plugins\": [\n    {\n      \"type\": \"calico\",\n      \"log_level\": \"info\",\n      \"datastore_type\": \"kubernetes\",\n      \"nodename\": \"127.0.0.1\",\n      \"ipam\": {\n        \"type\": \"host-local\",\n        \"subnet\": \"usePodCidr\"\n      },\n      \"policy\": {\n        \"type\": \"k8s\"\n      },\n      \"kubernetes\": {\n        \"kubeconfig\": \"/etc/cni/net.d/calico-kubeconfig\"\n      }\n    },\n    {\n      \"type\": \"portmap\",\n      \"capabilities\": {\"portMappings\": true},\n      \"externalSetMarkChain\": \"KUBE-MARK-MASQ\"\n    }\n  ]\n}\n```\n\n### Support traffic shaping\n\n**Experimental Feature**\n\nThe CNI networking plugin also supports pod ingress and egress traffic s\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md"
      },
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": null,
          "line_end": null,
          "quote": "Network Plugins"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:installation",
      "type": "concept",
      "title": "Installation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 990,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:network-plugin-requirements",
      "type": "concept",
      "title": "Network Plugin Requirements",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 2313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:loopback-cni",
      "type": "concept",
      "title": "Loopback CNI",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 2345,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:support-hostport",
      "type": "concept",
      "title": "Support hostPort",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 2966,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:support-traffic-shaping",
      "type": "concept",
      "title": "Support traffic shaping",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 3943,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "type": "page",
      "title": "Device Plugins",
      "summary": "Device plugins let you configure your cluster with support for devices or resources that require vendor-specific setup, such as GPUs, NICs, FPGAs, or non-volatile main memory.\n",
      "body": "\n\n\nKubernetes provides a device plugin framework that you can use to advertise system hardware\nresources to the [kubelet](#gloss:kubelet).\n\nInstead of customizing the code for Kubernetes itself, vendors can implement a\ndevice plugin that you deploy either manually or as a [daemonset](#gloss:daemonset).\nThe targeted devices include GPUs, high-performance NICs, FPGAs, InfiniBand adapters,\nand other similar computing resources that may require vendor specific initialization\nand setup.\n\n\n\n## Device plugin registration\n\nThe kubelet exports a `Registration` gRPC service:\n\n```gRPC\nservice Registration {\n\trpc Register(RegisterRequest) returns (Empty) {}\n}\n```\n\nA device plugin can register itself with the kubelet through this gRPC service.\nDuring the registration, the device plugin needs to send:\n\n* The name of its Unix socket.\n* The Device Plugin API version against which it was built.\n* The `ResourceName` it wants to advertise. Here `ResourceName` needs to follow the\n  [extended resource naming scheme](/docs/concepts/configuration/manage-resources-containers/#extended-resources)\n  as `vendor-domain/resourcetype`.\n  (For example, an NVIDIA GPU is advertised as `nvidia.com/gpu`.)\n\nFollowing a successful registration, the device plugin sends the kubelet the\nlist of devices it manages, and the kubelet is then in charge of advertising those\nresources to the API server as part of the kubelet node status update.\nFor example, after a device plugin registers `hardware-vendor.example/foo` with the kubelet\nand reports two healthy devices on a node, the node status is updated\nto advertise that the node has 2 \"Foo\" devices installed and available.\n\nThen, users can request devices as part of a Pod specification\n(see [`container`](/docs/reference/kubernetes-api/workload-resources/pod-v1/#Container)).\nRequesting extended resources is similar to how you manage requests and limits for\nother resources, with the following differences:\n* Extended resources are only supported as integer resources and cannot be overcommitted.\n* Devices cannot be shared between containers.\n\n### Example {#example-pod}\n\nSuppose a Kubernetes cluster is running a device plugin that advertises resource `hardware-vendor.example/foo`\non certain nodes. Here is an example of a pod requesting this resource to run a demo workload:\n\n```yaml\n---\napiVersion: v1\nkind: Pod\nmetadata:\n  name: demo-pod\nspec:\n  containers:\n    - name: demo-container-1\n      image: registry.k8s.io/pause:3.8\n      resources:\n        limits:\n          hardware-vendor.example/foo: 2\n#\n# This Pod needs 2 of the hardware-vendor.example/foo devices\n# and can only schedule onto a Node that's able to satisfy\n# that need.\n#\n# If the Node has more than 2 of those devices available, the\n# remainder would be available for other Pods to use.\n```\n\n## Device plugin implementation\n\nThe general workflow of a device plugin includes the following steps:\n\n1. Initialization. During this phase, the device plugin performs vendor-specific\n   initialization and setup to make sure the devices are in a ready state.\n\n1. The plugin starts a gRPC service, with a Unix socket under the host path\n   `/var/lib/kubelet/device-plugins/` (this path is hardcoded and is not\n   affected by the kubelet's `--root-dir` or any other configuration), that\n   implements the following interfaces:\n\n   ```gRPC\n   service DevicePlugin {\n         // GetDevicePluginOptions returns options to be communicated with Device Manager.\n         rpc GetDevicePluginOptions(Empty) returns (DevicePluginOptions) {}\n\n         // ListAndWatch returns a stream of List of Devices\n         // Whenever a Device state change or a Device disappears, ListAndWatch\n         // returns the new list\n         rpc ListAndWatch(Empty) returns (stream ListAndWatchResponse) {}\n\n         // Allocate is called during container creation so that the Device\n         // Plugin can run device specific operations and instruct Kubelet\n         // of the steps to make the Device available in the contain\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md"
      },
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": null,
          "line_end": null,
          "quote": "Device Plugins"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-plugin-registration",
      "type": "concept",
      "title": "Device plugin registration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 613,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-plugin-implementation",
      "type": "concept",
      "title": "Device plugin implementation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 2923,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-plugin-deployment",
      "type": "concept",
      "title": "Device plugin deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 9440,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-compatibility",
      "type": "concept",
      "title": "API compatibility",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 10204,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:monitoring-device-plugin-resources",
      "type": "concept",
      "title": "Monitoring device plugin resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 11517,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-plugin-integration-with-the-topology-manager",
      "type": "concept",
      "title": "Device plugin integration with the Topology Manager",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 20083,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-plugin-examples-examples",
      "type": "concept",
      "title": "Device plugin examples {#examples}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 21442,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-example-pod",
      "type": "concept",
      "title": "Example {#example-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 2203,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:handling-kubelet-restarts",
      "type": "concept",
      "title": "Handling kubelet restarts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 7308,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-plugin-and-unhealthy-devices",
      "type": "concept",
      "title": "Device plugin and unhealthy devices",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 7709,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-grpc-endpoint-grpc-endpoint-list",
      "type": "concept",
      "title": "`List` gRPC endpoint {#grpc-endpoint-list}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 12768,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:getallocatableresources-grpc-endpoint-grpc-endpoint-getallocatableresources",
      "type": "concept",
      "title": "`GetAllocatableResources` gRPC endpoint {#grpc-endpoint-getallocatableresources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 16032,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-grpc-endpoint-grpc-endpoint-get",
      "type": "concept",
      "title": "`Get` gRPC endpoint {#grpc-endpoint-get}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 19395,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/extend-kubernetes/compute-storage-net/_index",
      "type": "page",
      "title": "Compute, Storage, and Networking Extensions",
      "summary": "",
      "body": "This section covers extensions to your cluster that do not come as part as Kubernetes itself.\nYou can use these extensions to enhance the nodes in your cluster, or to provide the network\nfabric that links Pods together.\n\n* [CSI](/docs/concepts/storage/volumes/#csi) and [FlexVolume](/docs/concepts/storage/volumes/#flexvolume) storage plugins\n\n  [Container Storage Interface](#gloss:csi) (CSI) plugins\n  provide a way to extend Kubernetes with supports for new kinds of volumes. The volumes can\n  be backed by durable external storage, or provide ephemeral storage, or they might offer a\n  read-only interface to information using a filesystem paradigm.\n\n  Kubernetes also includes support for [FlexVolume](/docs/concepts/storage/volumes/#flexvolume)\n  plugins, which are deprecated since Kubernetes v1.23 (in favour of CSI).\n\n  FlexVolume plugins allow users to mount volume types that aren't natively\n  supported by Kubernetes. When you run a Pod that relies on FlexVolume\n  storage, the kubelet calls a binary plugin to mount the volume. The archived\n  [FlexVolume](https://git.k8s.io/design-proposals-archive/storage/flexvolume-deployment.md)\n  design proposal has more detail on this approach.\n\n  The [Kubernetes Volume Plugin FAQ for Storage Vendors](https://github.com/kubernetes/community/blob/main/sig-storage/volume-plugin-faq.md#kubernetes-volume-plugin-faq-for-storage-vendors)\n  includes general information on storage plugins.\n\n* [Device plugins](/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/)\n\n  Device plugins allow a node to discover new Node facilities (in addition to the\n  built-in node resources such as `cpu` and `memory`), and provide these custom node-local\n  facilities to Pods that request them.\n\n* [Network plugins](/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/)\n\n  Network plugins allow Kubernetes to work with different networking topologies and technologies.\n  Your Kubernetes cluster needs a _network plugin_ in order to have a working Pod network\n  and to support other aspects of the Kubernetes network model.\n\n  Kubernetes  is compatible with [CNI](#gloss:cni)\n  network plugins.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/extend-kubernetes/compute-storage-net/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Compute, Storage, and Networking Extensions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "type": "page",
      "title": "Custom Resources",
      "summary": "",
      "body": "\n\n*Custom resources* are extensions of the Kubernetes API. This page discusses when to add a custom\nresource to your Kubernetes cluster and when to use a standalone service. It describes the two\nmethods for adding custom resources and how to choose between them.\n\n\n## Custom resources\n\nA *resource* is an endpoint in the [Kubernetes API](/docs/concepts/overview/kubernetes-api/) that\nstores a collection of [API objects](#gloss:object)\nof a certain kind; for example, the built-in *pods* resource contains a collection of Pod objects.\n\nA *custom resource* is an extension of the Kubernetes API that is not necessarily available in a default\nKubernetes installation. It represents a customization of a particular Kubernetes installation. However,\nmany core Kubernetes functions are now built using custom resources, making Kubernetes more modular.\n\nCustom resources can appear and disappear in a running cluster through dynamic registration,\nand cluster admins can update custom resources independently of the cluster itself.\nOnce a custom resource is installed, users can create and access its objects using\n[kubectl](#gloss:kubectl), just as they do for built-in resources\nlike *Pods*.\n\n## Custom controllers\n\nOn their own, custom resources let you store and retrieve structured data.\nWhen you combine a custom resource with a *custom controller*, custom resources\nprovide a true _declarative API_.\n\nThe Kubernetes [declarative API](/docs/concepts/overview/kubernetes-api/)\nenforces a separation of responsibilities. You declare the desired state of\nyour resource. The Kubernetes controller keeps the current state of Kubernetes\nobjects in sync with your declared desired state. This is in contrast to an\nimperative API, where you *instruct* a server what to do.\n\nYou can deploy and update a custom controller on a running cluster, independently\nof the cluster's lifecycle. Custom controllers can work with any kind of resource,\nbut they are especially effective when combined with custom resources. The\n[Operator pattern](/docs/concepts/extend-kubernetes/operator/) combines custom\nresources and custom controllers. You can use custom controllers to encode domain knowledge\nfor specific applications into an extension of the Kubernetes API.\n\n## Should I add a custom resource to my Kubernetes cluster?\n\nWhen creating a new API, consider whether to\n[aggregate your API with the Kubernetes cluster APIs](/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/)\nor let your API stand alone.\n\n| Consider API aggregation if: | Prefer a stand-alone API if: |\n| ---------------------------- | ---------------------------- |\n| Your API is [Declarative](#declarative-apis). | Your API does not fit the [Declarative](#declarative-apis) model. |\n| You want your new types to be readable and writable using `kubectl`.| `kubectl` support is not required |\n| You want to view your new types in a Kubernetes UI, such as dashboard, alongside built-in types. | Kubernetes UI support is not required. |\n| You are developing a new API. | You already have a program that serves your API and works well. |\n| You are willing to accept the format restriction that Kubernetes puts on REST resource paths, such as API Groups and Namespaces. (See the [API Overview](/docs/concepts/overview/kubernetes-api/).) | You need to have specific REST paths to be compatible with an already defined REST API. |\n| Your resources are naturally scoped to a cluster or namespaces of a cluster. | Cluster or namespace scoped resources are a poor fit; you need control over the specifics of resource paths. |\n| You want to reuse [Kubernetes API support features](#common-features).  | You don't need those features. |\n\n### Declarative APIs\n\nIn a Declarative API, typically:\n\n- Your API consists of a relatively small number of relatively small objects (resources).\n- The objects define configuration of applications or infrastructure.\n- The objects are updated relatively infrequently.\n- Humans often need to read and write th\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/extend-kubernetes/api-extension/custom-resources.md"
      },
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": null,
          "line_end": null,
          "quote": "Custom Resources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:custom-resources",
      "type": "concept",
      "title": "Custom resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 296,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:custom-controllers",
      "type": "concept",
      "title": "Custom controllers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 1283,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:should-i-add-a-custom-resource-to-my-kubernetes-cluster",
      "type": "concept",
      "title": "Should I add a custom resource to my Kubernetes cluster?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 2339,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:should-i-use-a-configmap-or-a-custom-resource",
      "type": "concept",
      "title": "Should I use a ConfigMap or a custom resource?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 5148,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adding-custom-resources",
      "type": "concept",
      "title": "Adding custom resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 6607,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcedefinitions",
      "type": "concept",
      "title": "CustomResourceDefinitions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 8359,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-server-aggregation",
      "type": "concept",
      "title": "API server aggregation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 9637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:choosing-a-method-for-adding-custom-resources",
      "type": "concept",
      "title": "Choosing a method for adding custom resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 10336,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preparing-to-install-a-custom-resource",
      "type": "concept",
      "title": "Preparing to install a custom resource",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 17349,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-a-custom-resource",
      "type": "concept",
      "title": "Accessing a custom resource",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 19178,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:custom-resource-field-selectors",
      "type": "concept",
      "title": "Custom resource field selectors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 19781,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:declarative-apis",
      "type": "concept",
      "title": "Declarative APIs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 3788,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:comparing-ease-of-use",
      "type": "concept",
      "title": "Comparing ease of use",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 10691,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:advanced-features-and-flexibility",
      "type": "concept",
      "title": "Advanced features and flexibility",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 11628,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:common-features",
      "type": "concept",
      "title": "Common Features",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 15711,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:third-party-code-and-new-points-of-failure",
      "type": "concept",
      "title": "Third party code and new points of failure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 17482,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storage",
      "type": "concept",
      "title": "Storage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 17940,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authentication-authorization-and-auditing",
      "type": "concept",
      "title": "Authentication, authorization, and auditing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 18562,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selectable-fields-for-custom-resources-crd-selectable-fields",
      "type": "concept",
      "title": "Selectable fields for custom resources {#crd-selectable-fields}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 20393,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/extend-kubernetes/api-extension/apiserver-aggregation",
      "type": "page",
      "title": "Kubernetes API Aggregation Layer",
      "summary": "",
      "body": "\n\nThe aggregation layer allows Kubernetes to be extended with additional APIs, beyond what is\noffered by the core Kubernetes APIs.\nThe additional APIs can either be ready-made solutions such as a\n[metrics server](https://github.com/kubernetes-sigs/metrics-server), or APIs that you develop yourself.\n\nThe aggregation layer is different from\n[Custom Resource Definitions](/docs/concepts/extend-kubernetes/api-extension/custom-resources/),\nwhich are a way to make the [kube-apiserver](#gloss:kube-apiserver)\nrecognise new kinds of object.\n\n\n\n## Aggregation layer\n\nThe aggregation layer runs in-process with the kube-apiserver. Until an extension resource is\nregistered, the aggregation layer will do nothing. To register an API, you add an _APIService_\nobject, which \"claims\" the URL path in the Kubernetes API. At that point, the aggregation layer\nwill proxy anything sent to that API path (e.g. `/apis/myextension.mycompany.io/v1/…`) to the\nregistered APIService.\n\nThe most common way to implement the APIService is to run an *extension API server* in Pod(s) that\nrun in your cluster. If you're using the extension API server to manage resources in your cluster,\nthe extension API server (also written as \"extension-apiserver\") is typically paired with one or\nmore [controllers](#gloss:controller). The apiserver-builder\nlibrary provides a skeleton for both extension API servers and the associated controller(s).\n\n### Response latency\n\nExtension API servers should have low latency networking to and from the kube-apiserver.\nDiscovery requests are required to round-trip from the kube-apiserver in five seconds or less.\n\nIf your extension API server cannot achieve that latency requirement, consider making changes that\nlet you meet it.\n\n## \n\n* To get the aggregator working in your environment, [configure the aggregation layer](/docs/tasks/extend-kubernetes/configure-aggregation-layer/).\n* Then, [setup an extension api-server](/docs/tasks/extend-kubernetes/setup-extension-api-server/) to work with the aggregation layer.\n* Read about [APIService](/docs/reference/kubernetes-api/cluster-resources/api-service-v1/) in the API reference\n* Learn about [Declarative Validation Concepts](/docs/reference/using-api/declarative-validation/),\n  an internal mechanism for defining validation rules that in the future will help support validation for extension API server development.\n\nAlternatively: learn how to extend the Kubernetes API using\n[Custom Resource Definitions](/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/extend-kubernetes/api-extension/apiserver-aggregation.md"
      },
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/apiserver-aggregation.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes API Aggregation Layer"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aggregation-layer",
      "type": "concept",
      "title": "Aggregation layer",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/apiserver-aggregation.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/",
          "line_start": 603,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:response-latency",
      "type": "concept",
      "title": "Response latency",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/apiserver-aggregation.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/",
          "line_start": 1510,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/extend-kubernetes/api-extension/_index",
      "type": "page",
      "title": "Extending the Kubernetes API",
      "summary": "",
      "body": "Custom resources are extensions of the Kubernetes API. Kubernetes provides two ways to add custom resources to your cluster:\n\n- The [CustomResourceDefinition](/docs/concepts/extend-kubernetes/api-extension/custom-resources/)\n  (CRD) mechanism allows you to declaratively define a new custom API with an API group, kind, and\n  schema that you specify.\n  The Kubernetes control plane serves and handles the storage of your custom resource. CRDs allow you to\n  create new types of resources for your cluster without writing and running a custom API server. \n- The [aggregation layer](/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/)\n  sits behind the primary API server, which acts as a proxy.\n  This arrangement is called API Aggregation (AA), which allows you to provide\n  specialized implementations for your custom resources by writing and\n  deploying your own API server.\n  The main API server delegates requests to your API server for the custom APIs that you specify,\n  making them available to all of its clients.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/extend-kubernetes/api-extension/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Extending the Kubernetes API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/containers/images",
      "type": "page",
      "title": "Images",
      "summary": "",
      "body": "\n\nA container image represents binary data that encapsulates an application and all its\nsoftware dependencies. Container images are executable software bundles that can run\nstandalone and that make very well-defined assumptions about their runtime environment.\n\nYou typically create a container image of your application and push it to a registry\nbefore referring to it in a [Pod](#gloss:pod).\n\nThis page provides an outline of the container image concept.\n\n\n> **Note:** If you are looking for the container images for a Kubernetes\nrelease (such as v, the latest minor release),\nvisit [Download Kubernetes](https://kubernetes.io/releases/download/).\n\n\n\n\n## Image names\n\nContainer images are usually given a name such as `pause`, `example/mycontainer`, or `kube-apiserver`.\nImages can also include a registry hostname; for example: `fictional.registry.example/imagename`,\nand possibly a port number as well; for example: `fictional.registry.example:10443/imagename`.\n\nIf you don't specify a registry hostname, Kubernetes assumes that you mean the [Docker public registry](https://hub.docker.com/).\nYou can change this behavior by setting a default image registry in the\n[container runtime](/docs/setup/production-environment/container-runtimes/) configuration.\n\nAfter the image name part you can add a _tag_ or _digest_ (in the same way you would when using with commands\nlike `docker` or `podman`). Tags let you identify different versions of the same series of images.\nDigests are a unique identifier for a specific version of an image. Digests are hashes of the image's content,\nand are immutable. Tags can be moved to point to different images, but digests are fixed.\n\nImage tags consist of lowercase and uppercase letters, digits, underscores (`_`),\nperiods (`.`), and dashes (`-`). A tag can be up to 128 characters long, and must\nconform to the following regex pattern: `[a-zA-Z0-9_][a-zA-Z0-9._-]{0,127}`.\nYou can read more about it and find the validation regex in the\n[OCI Distribution Specification](https://github.com/opencontainers/distribution-spec/blob/master/spec.md#workflow-categories).\nIf you don't specify a tag, Kubernetes assumes you mean the tag `latest`.\n\nImage digests consists of a hash algorithm (such as `sha256`) and a hash value. For example:\n`sha256:1ff6c18fbef2045af6b9c16bf034cc421a29027b800e4f9b68ae9b1cb3e9ae07`.\nYou can find more information about the digest format in the\n[OCI Image Specification](https://github.com/opencontainers/image-spec/blob/master/descriptor.md#digests).\n\nSome image name examples that Kubernetes can use are:\n\n- `busybox` &mdash; Image name only, no tag or digest. Kubernetes will use the Docker\n    public registry and latest tag. Equivalent to `docker.io/library/busybox:latest`.\n- `busybox:1.32.0` &mdash; Image name with tag. Kubernetes will use the Docker\n    public registry. Equivalent to `docker.io/library/busybox:1.32.0`.\n- `registry.k8s.io/pause:latest` &mdash; Image name with a custom registry and latest tag.\n- `registry.k8s.io/pause:3.5` &mdash; Image name with a custom registry and non-latest tag.\n- `registry.k8s.io/pause@sha256:1ff6c18fbef2045af6b9c16bf034cc421a29027b800e4f9b68ae9b1cb3e9ae07` &mdash;\n    Image name with digest.\n- `registry.k8s.io/pause:3.5@sha256:1ff6c18fbef2045af6b9c16bf034cc421a29027b800e4f9b68ae9b1cb3e9ae07` &mdash;\n    Image name with tag and digest. Only the digest will be used for pulling.\n\n## Updating images\n\nWhen you first create a [Deployment](#gloss:deployment),\n[StatefulSet](#gloss:statefulset), Pod, or other\nobject that includes a PodTemplate, and a pull policy was not explicitly specified,\nthen by default the pull policy of all containers in that Pod will be set to\n`IfNotPresent`. This policy causes the\n[kubelet](#gloss:kubelet) to skip pulling an\nimage if it already exists.\n\n### Image pull policy\n\nThe `imagePullPolicy` for a container and the tag of the image both affect _when_ the\n[kubelet](/docs/reference/command-line-tools-reference/kubelet/) attempts to pull\n(download)\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/containers/images/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/containers/images.md"
      },
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": null,
          "line_end": null,
          "quote": "Images"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:image-names",
      "type": "concept",
      "title": "Image names",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 756,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-images",
      "type": "concept",
      "title": "Updating images",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 3501,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serial-and-parallel-image-pulls",
      "type": "concept",
      "title": "Serial and parallel image pulls",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 10344,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multi-architecture-images-with-image-indexes",
      "type": "concept",
      "title": "Multi-architecture images with image indexes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 12655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-a-private-registry",
      "type": "concept",
      "title": "Using a private registry",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 13741,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:legacy-built-in-kubelet-credential-provider",
      "type": "concept",
      "title": "Legacy built-in kubelet credential provider",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 27652,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:image-pull-policy",
      "type": "concept",
      "title": "Image pull policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 3997,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepullbackoff",
      "type": "concept",
      "title": "ImagePullBackOff",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 8914,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:image-pull-per-runtime-class",
      "type": "concept",
      "title": "Image pull per runtime class",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 9638,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:maximum-parallel-image-pulls",
      "type": "concept",
      "title": "Maximum parallel image pulls",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 11640,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specifying-imagepullsecrets-on-a-pod",
      "type": "concept",
      "title": "Specifying `imagePullSecrets` on a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 14960,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-nodes-to-authenticate-to-a-private-registry",
      "type": "concept",
      "title": "Configuring nodes to authenticate to a private registry",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 15406,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-credential-provider-for-authenticated-image-pulls-kubelet-credential-provider",
      "type": "concept",
      "title": "Kubelet credential provider for authenticated image pulls {#kubelet-credential-provider}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 15901,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:interpretation-of-config-json-config-json",
      "type": "concept",
      "title": "Interpretation of config.json {#config-json}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 16852,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pre-pulled-images",
      "type": "concept",
      "title": "Pre-pulled images",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 18906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ensure-image-pull-credential-verification-ensureimagepullcredentialverification",
      "type": "concept",
      "title": "Ensure image pull credential verification {#ensureimagepullcredentialverification}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 20142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-secret-with-a-docker-config",
      "type": "concept",
      "title": "Creating a Secret with a Docker config",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 23216,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/containers/runtime-class",
      "type": "page",
      "title": "Runtime Class",
      "summary": "",
      "body": "\n\n\n\nThis page describes the RuntimeClass resource and runtime selection mechanism.\n\nRuntimeClass is a feature for selecting the container runtime configuration. The container runtime\nconfiguration is used to run a Pod's containers.\n\n\n\n## Motivation\n\nYou can set a different RuntimeClass between different Pods to provide a balance of\nperformance versus security. For example, if part of your workload deserves a high\nlevel of information security assurance, you might choose to schedule those Pods so\nthat they run in a container runtime that uses hardware virtualization. You'd then\nbenefit from the extra isolation of the alternative runtime, at the expense of some\nadditional overhead.\n\nYou can also use RuntimeClass to run different Pods with the same container runtime\nbut with different settings.\n\n## Setup\n\n1. Configure the CRI implementation on nodes (runtime dependent)\n2. Create the corresponding RuntimeClass resources\n\n### 1. Configure the CRI implementation on nodes\n\nThe configurations available through RuntimeClass are Container Runtime Interface (CRI)\nimplementation dependent. See the corresponding documentation ([below](#cri-configuration)) for your\nCRI implementation for how to configure.\n\n\n> **Note:** RuntimeClass assumes a homogeneous node configuration across the cluster by default (which means\nthat all nodes are configured the same way with respect to container runtimes). To support\nheterogeneous node configurations, see [Scheduling](#scheduling) below.\n\n\nThe configurations have a corresponding `handler` name, referenced by the RuntimeClass. The\nhandler must be a valid [DNS label name](/docs/concepts/overview/working-with-objects/names/#dns-label-names).\n\n### 2. Create the corresponding RuntimeClass resources\n\nThe configurations setup in step 1 should each have an associated `handler` name, which identifies\nthe configuration. For each handler, create a corresponding RuntimeClass object.\n\nThe RuntimeClass resource currently only has 2 significant fields: the RuntimeClass name\n(`metadata.name`) and the handler (`handler`). The object definition looks like this:\n\n```yaml\n# RuntimeClass is defined in the node.k8s.io API group\napiVersion: node.k8s.io/v1\nkind: RuntimeClass\nmetadata:\n  # The name the RuntimeClass will be referenced by.\n  # RuntimeClass is a non-namespaced resource.\n  name: myclass \n# The name of the corresponding CRI configuration\nhandler: myconfiguration \n```\n\nThe name of a RuntimeClass object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\n\n> **Note:** It is recommended that RuntimeClass write operations (create/update/patch/delete) be\nrestricted to the cluster administrator. This is typically the default. See\n[Authorization Overview](/docs/reference/access-authn-authz/authorization/) for more details.\n\n\n## Usage\n\nOnce RuntimeClasses are configured for the cluster, you can specify a\n`runtimeClassName` in the Pod spec to use it. For example:\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: mypod\nspec:\n  runtimeClassName: myclass\n  # ...\n```\n\nThis will instruct the kubelet to use the named RuntimeClass to run this pod. If the named\nRuntimeClass does not exist, or the CRI cannot run the corresponding handler, the pod will enter the\n`Failed` terminal [phase](/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase). Look for a\ncorresponding [event](/docs/tasks/debug/debug-application/debug-running-pod/) for an\nerror message.\n\nIf no `runtimeClassName` is specified, the default RuntimeHandler will be used, which is equivalent\nto the behavior when the RuntimeClass feature is disabled.\n\n### CRI Configuration\n\nFor more details on setting up CRI runtimes, see [CRI installation](/docs/setup/production-environment/container-runtimes/).\n\n#### [containerd](#gloss:containerd)\n\nRuntime handlers are configured through containerd's configuration at\n`/etc/containerd/config.toml`. Valid handlers are configured under the runtimes section:\n\n```\n[plugins.\"io.container\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/containers/runtime-class.md"
      },
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": null,
          "line_end": null,
          "quote": "Runtime Class"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:1-configure-the-cri-implementation-on-nodes",
      "type": "concept",
      "title": "1. Configure the CRI implementation on nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 1022,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:2-create-the-corresponding-runtimeclass-resources",
      "type": "concept",
      "title": "2. Create the corresponding RuntimeClass resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 1795,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cri-configuration",
      "type": "concept",
      "title": "CRI Configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 3744,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/containers/container-environment",
      "type": "page",
      "title": "Container Environment",
      "summary": "",
      "body": "\n\nThis page describes the resources available to Containers in the Container environment. \n\n\n\n\n\n\n## Container environment\n\nThe Kubernetes Container environment provides several important resources to Containers:\n\n* A filesystem, which is a combination of an [image](/docs/concepts/containers/images/) and one or more [volumes](/docs/concepts/storage/volumes/).\n* Information about the Container itself.\n* Information about other objects in the cluster.\n\n### Container information\n\nThe *hostname* of a Container is the name of the Pod in which the Container is running.\nIt is available through the `hostname` command or the\n[`gethostname`](https://man7.org/linux/man-pages/man2/gethostname.2.html)\nfunction call in libc.\n\nThe Pod name and namespace are available as environment variables through the\n[downward API](/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/).\n\nUser-defined environment variables from the Pod definition are also available to the Container,\nas are any environment variables specified statically in the container image.\n\n### Cluster information\n\nA list of all services that were running when a Container was created is available to that Container as environment variables.\nThis list is limited to services within the same namespace as the new Container's Pod and Kubernetes control plane services.\n\nFor a service named *foo* that exposes a set of Pods, each running a container named *bar*,\nthe following variables are defined:\n\n```shell\nFOO_SERVICE_HOST=<the host the service is running on>\nFOO_SERVICE_PORT=<the port the service is running on>\n```\n\nServices have dedicated IP addresses and are available to the Container via DNS,\nif [DNS addon](https://releases.k8s.io/v/cluster/addons/dns/) is enabled. \n\n\n\n## \n\n\n* Learn more about [Container lifecycle hooks](/docs/concepts/containers/container-lifecycle-hooks/).\n* Get hands-on experience\n  [attaching handlers to Container lifecycle events](/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/).\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/containers/container-environment/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/containers/container-environment.md"
      },
      "provenance": [
        {
          "source": "concepts/containers/container-environment.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-environment/",
          "line_start": null,
          "line_end": null,
          "quote": "Container Environment"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-environment",
      "type": "concept",
      "title": "Container environment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/container-environment.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-environment/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-information",
      "type": "concept",
      "title": "Container information",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/container-environment.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-environment/",
          "line_start": 485,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-information",
      "type": "concept",
      "title": "Cluster information",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/container-environment.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-environment/",
          "line_start": 1103,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/containers/container-lifecycle-hooks",
      "type": "page",
      "title": "Container Lifecycle Hooks",
      "summary": "",
      "body": "\n\nThis page describes how kubelet managed Containers can use the Container lifecycle hook framework\nto run code triggered by events during their management lifecycle.\n\n\n\n## Overview\n\nAnalogous to many programming language frameworks that have component lifecycle hooks, such as Angular,\nKubernetes provides Containers with lifecycle hooks.\nThe hooks enable Containers to be aware of events in their management lifecycle\nand run code implemented in a handler when the corresponding lifecycle hook is executed.\n\n## Container hooks\n\nThere are two hooks that are exposed to Containers:\n\n`PostStart`\n\nThis hook is executed immediately after a container is created.\nIt runs **concurrently** with the container's `ENTRYPOINT` (main process),\nmeaning the hook may run before, during, or after the main process starts.\n\nNo parameters are passed to the handler.\n\n\n> **Note:** While the hook runs concurrently with the container process,\nit can delay container status updates;\nthe container may not transition to `Running` until the hook completes.\n\n\n`PreStop`\n\nThis hook is called immediately before a container is terminated due to an API request or management\nevent such as a liveness/startup probe failure, preemption, resource contention and others. A call\nto the `PreStop` hook fails if the container is already in a terminated or completed state and the\nhook must complete before the TERM signal to stop the container can be sent. The Pod's termination\ngrace period countdown begins before the `PreStop` hook is executed, so regardless of the outcome of\nthe handler, the container will eventually terminate within the Pod's termination grace period. No\nparameters are passed to the handler.\n\nA more detailed description of the termination behavior can be found in\n[Termination of Pods](/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination).\n\n`StopSignal`\n\nThe StopSignal lifecycle can be used to define a stop signal which would be sent to the container when it is\nstopped. If you set this, it overrides any `STOPSIGNAL` instruction defined within the container image.\n\nA more detailed description of termination behaviour with custom stop signals can be found in\n[Stop Signals](/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination-stop-signals).\n\n### Hook handler implementations\n\nContainers can access a hook by implementing and registering a handler for that hook.\nThere are three types of hook handlers that can be implemented for Containers:\n\n* Exec - Executes a specific command, such as `pre-stop.sh`, inside the cgroups and namespaces of the Container.\nResources consumed by the command are counted against the Container.\n* HTTP - Executes an HTTP request against a specific endpoint on the Container.\n* Sleep - Pauses the container for a specified duration. \n\n### Hook handler execution\n\nWhen a Container lifecycle management hook is called,\nthe Kubernetes management system executes the handler according to the hook action,\n`httpGet`, `tcpSocket` ([deprecated](/docs/reference/generated/kubernetes-api/v1.35/#lifecyclehandler-v1-core))\nand `sleep` are executed by the kubelet process, and `exec` is executed in the container.\n\nThe `PostStart` hook handler call is initiated when a container is created,\nmeaning the container ENTRYPOINT and the `PostStart` hook are triggered simultaneously. \n(This means it generally doesn't make sense to use an HTTP hook for `PostStart`, since\nthere is no guarantee that the container's process will have fully started up when the\nhook runs.)\nIf the `PostStart` hook takes too long to execute or if it hangs,\nit can prevent the container from transitioning to a `running` state.\n\n`PreStop` hooks are not executed asynchronously from the signal to stop the Container; the hook must\ncomplete its execution before the TERM signal can be sent. If a `PreStop` hook hangs during\nexecution, the Pod's phase will be `Terminating` and remain there until the Pod is killed after its\n`terminationGracePeriodSeconds` expires. This grace period applies to\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/containers/container-lifecycle-hooks.md"
      },
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": null,
          "line_end": null,
          "quote": "Container Lifecycle Hooks"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-hooks",
      "type": "concept",
      "title": "Container hooks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 541,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hook-handler-implementations",
      "type": "concept",
      "title": "Hook handler implementations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 2304,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hook-handler-execution",
      "type": "concept",
      "title": "Hook handler execution",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 2825,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hook-delivery-guarantees",
      "type": "concept",
      "title": "Hook delivery guarantees",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 4769,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-hook-handlers",
      "type": "concept",
      "title": "Debugging Hook handlers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 5360,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/containers/_index",
      "type": "page",
      "title": "Containers",
      "summary": "Technology for packaging an application along with its runtime dependencies.",
      "body": "\n\nThis page will discuss containers and container images, as well as their use in operations and solution development.\n\nThe word _container_ is an overloaded term. Whenever you use the word, check whether your audience uses the same definition.\n\nEach container that you run is repeatable; the standardization from having\ndependencies included means that you get the same behavior wherever you\nrun it.\n\nContainers decouple applications from the underlying host infrastructure.\nThis makes deployment easier in different cloud or OS environments.\n\nEach [node](#gloss:node) in a Kubernetes\ncluster runs the containers that form the\n[Pods](/docs/concepts/workloads/pods/) assigned to that node.\nContainers in a Pod are co-located and co-scheduled to run on the same node.\n\n\n\n\n## Container images\nA [container image](/docs/concepts/containers/images/) is a ready-to-run\nsoftware package containing everything needed to run an application:\nthe code and any runtime it requires, application and system libraries,\nand default values for any essential settings.\n\nContainers are intended to be stateless and\n[immutable](https://glossary.cncf.io/immutable-infrastructure/):\nyou should not change\nthe code of a container that is already running. If you have a containerized\napplication and want to make changes, the correct process is to build a new\nimage that includes the change, then recreate the container to start from the\nupdated image.\n\n## Container runtimes\n\n[definition:container-runtime]\n\nUsually, you can allow your cluster to pick the default container runtime\nfor a Pod. If you need to use more than one container runtime in your cluster,\nyou can specify the [RuntimeClass](/docs/concepts/containers/runtime-class/)\nfor a Pod to make sure that Kubernetes runs those containers using a\nparticular container runtime.\n\nYou can also use RuntimeClass to run different Pods with the same container\nruntime but with different settings.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/containers/_index/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/containers/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/containers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/containers/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/containers/cri",
      "type": "page",
      "title": "Container Runtime Interface (CRI)",
      "summary": "",
      "body": "\n\nThe CRI is a plugin interface which enables the kubelet to use a wide variety of\ncontainer runtimes, without having a need to recompile the cluster components.\n\nYou need a working\n[container runtime](#gloss:container-runtime) on\neach Node in your cluster, so that the\n[kubelet](#gloss:kubelet) can launch\n[Pods](#gloss:pod) and their containers.\n\n[definition:cri]\n\n\n\n## The API {#api}\n\n\n\nThe kubelet acts as a client when connecting to the container runtime via gRPC.\nThe runtime and image service endpoints have to be available in the container\nruntime, which can be configured separately within the kubelet by using the\n`--container-runtime-endpoint`\n[command line flag](/docs/reference/command-line-tools-reference/kubelet/).\n\nFor Kubernetes v1.26 and later, the kubelet requires that the container runtime\nsupports the `v1` CRI API. If a container runtime does not support the `v1` API,\nthe kubelet will not register the node.\n\n## Upgrading\n\nWhen upgrading the Kubernetes version on a node, the kubelet restarts. If the\ncontainer runtime does not support the `v1` CRI API, the kubelet will fail to\nregister and report an error. If a gRPC re-dial is required because the container\nruntime has been upgraded, the runtime must support the `v1` CRI API for the\nconnection to succeed. This might require a restart of the kubelet after the\ncontainer runtime is correctly configured.\n\n## List streaming {#list-streaming}\n\n\n\nThe standard CRI list RPCs (`ListContainers`, `ListPodSandbox`, `ListImages`) return\nall results in a single unary response. On nodes with a large number of containers\n(for example, more than roughly 10,000 including both running and stopped), these\nresponses can exceed gRPC's default 16 MiB message size limit, causing the kubelet\nto fail when reconciling state with the container runtime.\n\nWith the `CRIListStreaming` feature gate enabled, the kubelet uses server-side\nstreaming RPCs (such as `StreamContainers`, `StreamPodSandboxes`,\n`StreamImages`) that allow the container runtime to divide results across\nmultiple response messages, bypassing the per-message size limit. This is\nparticularly useful for:\n\n- High container churn environments (CI/CD systems)\n- Large-scale batch processing workloads\n\nIf the container runtime does not support streaming RPCs, the kubelet\nautomatically falls back to the standard unary RPCs for backward\ncompatibility.\n\n## \n\n- Learn more about the CRI [protocol definition](https://github.com/kubernetes/cri-api/blob/v0.33.1/pkg/apis/runtime/v1/api.proto)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/containers/cri/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/containers/cri.md"
      },
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": null,
          "line_end": null,
          "quote": "Container Runtime Interface (CRI)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-api-api",
      "type": "concept",
      "title": "The API {#api}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": 583,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrading",
      "type": "concept",
      "title": "Upgrading",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": 1208,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-streaming-list-streaming",
      "type": "concept",
      "title": "List streaming {#list-streaming}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": 1658,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/windows/intro",
      "type": "page",
      "title": "Windows containers in Kubernetes",
      "summary": "",
      "body": "\n\nWindows applications constitute a large portion of the services and applications that\nrun in many organizations. [Windows containers](https://aka.ms/windowscontainers)\nprovide a way to encapsulate processes and package dependencies, making it easier\nto use DevOps practices and follow cloud native patterns for Windows applications.\n\nOrganizations with investments in Windows-based applications and Linux-based\napplications don't have to look for separate orchestrators to manage their workloads,\nleading to increased operational efficiencies across their deployments, regardless\nof operating system.\n\n\n\n## Windows nodes in Kubernetes\n\nTo enable the orchestration of Windows containers in Kubernetes, include Windows nodes\nin your existing Linux cluster. Scheduling Windows containers in\n[Pods](#gloss:pod) on Kubernetes is similar to\nscheduling Linux-based containers.\n\nIn order to run Windows containers, your Kubernetes cluster must include\nmultiple operating systems.\nWhile you can only run the [control plane](#gloss:control-plane) on Linux,\nyou can deploy worker nodes running either Windows or Linux.\n\nWindows [nodes](#gloss:node) are\n[supported](#windows-os-version-support) provided that the operating system is\nWindows Server 2022 or Windows Server 2025.\n\nThis document uses the term *Windows containers* to mean Windows containers with\nprocess isolation. Kubernetes does not support running Windows containers with\n[Hyper-V isolation](https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-containers/hyperv-container).\n\n## Compatibility and limitations {#limitations}\n\nSome node features are only available if you use a specific\n[container runtime](#container-runtime); others are not available on Windows nodes,\nincluding:\n\n* HugePages: not supported for Windows containers\n* Privileged containers: not supported for Windows containers.\n  [HostProcess Containers](/docs/tasks/configure-pod-container/create-hostprocess-pod/) offer similar functionality.\n* TerminationGracePeriod: requires containerD\n\nNot all features of shared namespaces are supported. See [API compatibility](#api)\nfor more details.\n\nSee [Windows OS version compatibility](#windows-os-version-support) for details on\nthe Windows versions that Kubernetes is tested against.\n\nFrom an API and kubectl perspective, Windows containers behave in much the same\nway as Linux-based containers. However, there are some notable differences in key\nfunctionality which are outlined in this section.\n\n### Comparison with Linux {#compatibility-linux-similarities}\n\nKey Kubernetes elements work the same way in Windows as they do in Linux. This\nsection refers to several key workload abstractions and how they map to Windows.\n\n* [Pods](/docs/concepts/workloads/pods/)\n\n  A Pod is the basic building block of Kubernetes–the smallest and simplest unit in\n  the Kubernetes object model that you create or deploy. You may not deploy Windows and\n  Linux containers in the same Pod. All containers in a Pod are scheduled onto a single\n  Node where each Node represents a specific platform and architecture. The following\n  Pod capabilities, properties and events are supported with Windows containers:\n\n  * Single or multiple containers per Pod with process isolation and volume sharing\n  * Pod `status` fields\n  * Readiness, liveness, and startup probes\n  * postStart & preStop container lifecycle hooks\n  * ConfigMap, Secrets: as environment variables or volumes\n  * `emptyDir` volumes\n  * Named pipe host mounts\n  * Resource limits\n  * OS field: \n\n    The `.spec.os.name` field should be set to `windows` to indicate that the current Pod uses Windows containers.\n\n    If you set the `.spec.os.name` field to `windows`,\n    you must not set the following fields in the `.spec` of that Pod:\n\n    * `spec.hostPID`\n    * `spec.hostIPC`\n    * `spec.securityContext.seLinuxOptions`\n    * `spec.securityContext.seccompProfile`\n    * `spec.securityContext.fsGroup`\n    * `spec.securityContext.fsGroupChangePolicy`\n    * `spec\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/windows/intro/",
      "meta": {
        "weight": 65,
        "rel_path": "concepts/windows/intro.md"
      },
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": null,
          "line_end": null,
          "quote": "Windows containers in Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:windows-nodes-in-kubernetes",
      "type": "concept",
      "title": "Windows nodes in Kubernetes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:compatibility-and-limitations-limitations",
      "type": "concept",
      "title": "Compatibility and limitations {#limitations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 1679,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-problem-detector",
      "type": "concept",
      "title": "Node problem detector",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 13501,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pause-container",
      "type": "concept",
      "title": "Pause container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 13791,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-runtimes-container-runtime",
      "type": "concept",
      "title": "Container runtimes {#container-runtime}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 15238,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:windows-os-version-compatibility-windows-os-version-support",
      "type": "concept",
      "title": "Windows OS version compatibility {#windows-os-version-support}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 16423,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hardware-recommendations-and-considerations-windows-hardware-recommendations",
      "type": "concept",
      "title": "Hardware recommendations and considerations {#windows-hardware-recommendations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 16904,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:getting-help-and-troubleshooting-troubleshooting",
      "type": "concept",
      "title": "Getting help and troubleshooting {#troubleshooting}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 19095,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deployment-tools",
      "type": "concept",
      "title": "Deployment tools",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 20936,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:windows-distribution-channels",
      "type": "concept",
      "title": "Windows distribution channels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 21237,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:comparison-with-linux-compatibility-linux-similarities",
      "type": "concept",
      "title": "Comparison with Linux {#compatibility-linux-similarities}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 2616,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:command-line-options-for-the-kubelet-kubelet-compatibility",
      "type": "concept",
      "title": "Command line options for the kubelet {#kubelet-compatibility}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 5984,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-compatibility-api",
      "type": "concept",
      "title": "API compatibility {#api}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 7063,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reporting-issues-and-feature-requests",
      "type": "concept",
      "title": "Reporting issues and feature requests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 19716,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validating-the-windows-cluster-operability",
      "type": "concept",
      "title": "Validating the Windows cluster operability",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 20329,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/windows/user-guide",
      "type": "page",
      "title": "Guide for Running Windows Containers in Kubernetes",
      "summary": "",
      "body": "\n\nThis page provides a walkthrough for some steps you can follow to run\nWindows containers using Kubernetes.\nThe page also highlights some Windows specific functionality within Kubernetes.\n\nIt is important to note that creating and deploying services and workloads on Kubernetes\nbehaves in much the same way for Linux and Windows containers.\nThe [kubectl commands](/docs/reference/kubectl/) to interface with the cluster are identical.\nThe examples in this page are provided to jumpstart your experience with Windows containers.\n\n\n\n\n## Objectives\n\nConfigure an example deployment to run Windows containers on a Windows node.\n\n## \n\nYou should already have access to a Kubernetes cluster that includes a\nworker node running Windows Server.\n\n\n## Getting Started: Deploying a Windows workload\n\nThe example YAML file below deploys a simple webserver application running inside a Windows container.\n\nCreate a manifest named `win-webserver.yaml` with the contents below:\n\n```yaml\n---\napiVersion: v1\nkind: Service\nmetadata:\n  name: win-webserver\n  labels:\n    app: win-webserver\nspec:\n  ports:\n    # the port that this service should serve on\n    - port: 80\n      targetPort: 80\n  selector:\n    app: win-webserver\n  type: NodePort\n---\napiVersion: apps/v1\nkind: Deployment\nmetadata:\n  labels:\n    app: win-webserver\n  name: win-webserver\nspec:\n  replicas: 2\n  selector:\n    matchLabels:\n      app: win-webserver\n  template:\n    metadata:\n      labels:\n        app: win-webserver\n      name: win-webserver\n    spec:\n     containers:\n      - name: windowswebserver\n        image: mcr.microsoft.com/windows/servercore:ltsc2019\n        command:\n        - powershell.exe\n        - -command\n        - \"<#code used from https://gist.github.com/19WAS85/5424431#> ; $$listener = New-Object System.Net.HttpListener ; $$listener.Prefixes.Add('http://*:80/') ; $$listener.Start() ; $$callerCounts = @{} ; Write-Host('Listening at http://*:80/') ; while ($$listener.IsListening) { ;$$context = $$listener.GetContext() ;$$requestUrl = $$context.Request.Url ;$$clientIP = $$context.Request.RemoteEndPoint.Address ;$$response = $$context.Response ;Write-Host '' ;Write-Host('> {0}' -f $$requestUrl) ;  ;$$count = 1 ;$$k=$$callerCounts.Get_Item($$clientIP) ;if ($$k -ne $$null) { $$count += $$k } ;$$callerCounts.Set_Item($$clientIP, $$count) ;$$ip=(Get-NetAdapter | Get-NetIpAddress); $$header='<html><body><H1>Windows Container Web Server</H1>' ;$$callerCountsString='' ;$$callerCounts.Keys | % { $$callerCountsString+='<p>IP {0} callerCount {1} ' -f $$ip[1].IPAddress,$$callerCounts.Item($$_) } ;$$footer='</body></html>' ;$$content='{0}{1}{2}' -f $$header,$$callerCountsString,$$footer ;Write-Output $$content ;$$buffer = [System.Text.Encoding]::UTF8.GetBytes($$content) ;$$response.ContentLength64 = $$buffer.Length ;$$response.OutputStream.Write($$buffer, 0, $$buffer.Length) ;$$response.Close() ;$$responseStatus = $$response.StatusCode ;Write-Host('< {0}' -f $$responseStatus)  } ; \"\n     nodeSelector:\n      kubernetes.io/os: windows\n```\n\n\n> **Note:** Port mapping is also supported, but for simplicity this example exposes\nport 80 of the container directly to the Service.\n\n\n1. Check that all nodes are healthy:\n\n    ```bash\n    kubectl get nodes\n    ```\n\n1. Deploy the service and watch for pod updates:\n\n    ```bash\n    kubectl apply -f win-webserver.yaml\n    kubectl get pods -o wide -w\n    ```\n\n    When the service is deployed correctly both Pods are marked as Ready. To exit the watch command, press Ctrl+C.\n\n1. Check that the deployment succeeded. To verify:\n\n    * Several pods listed from the Linux control plane node, use `kubectl get pods`\n    * Node-to-pod communication across the network, `curl` port 80 of your pod IPs from the Linux control plane node\n      to check for a web server response\n    * Pod-to-pod communication, ping between pods (and across hosts, if you have more than one Windows node)\n      using `kubectl exec`\n    * Service-to-pod communication, `curl` the virtual service IP (seen\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
      "meta": {
        "weight": 75,
        "rel_path": "concepts/windows/user-guide.md"
      },
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": null,
          "line_end": null,
          "quote": "Guide for Running Windows Containers in Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:getting-started-deploying-a-windows-workload",
      "type": "concept",
      "title": "Getting Started: Deploying a Windows workload",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 802,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-container-user",
      "type": "concept",
      "title": "Configuring container user",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 5875,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:capturing-logs-from-workloads",
      "type": "concept",
      "title": "Capturing logs from workloads",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 4780,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-configurable-container-usernames",
      "type": "concept",
      "title": "Using configurable Container usernames",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 5906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managing-workload-identity-with-group-managed-service-accounts",
      "type": "concept",
      "title": "Managing Workload Identity with Group Managed Service Accounts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 6167,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ensuring-os-specific-workloads-land-on-the-appropriate-container-host",
      "type": "concept",
      "title": "Ensuring OS-specific workloads land on the appropriate container host",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 8333,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:handling-multiple-windows-versions-in-the-same-cluster",
      "type": "concept",
      "title": "Handling multiple Windows versions in the same cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 10182,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:simplifying-with-runtimeclass",
      "type": "concept",
      "title": "Simplifying with RuntimeClass",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 11049,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/windows/_index",
      "type": "page",
      "title": "Windows in Kubernetes",
      "summary": "Kubernetes supports nodes that run Microsoft Windows.",
      "body": "Kubernetes supports worker [nodes](#gloss:node)\nrunning either Linux or Microsoft Windows.\n\n\n\nThe CNCF and its parent the Linux Foundation take a vendor-neutral approach\ntowards compatibility. It is possible to join your [Windows server](https://www.microsoft.com/en-us/windows-server)\nas a worker node to a Kubernetes cluster.\n\nYou can [install and set up kubectl on Windows](/docs/tasks/tools/install-kubectl-windows/)\nno matter what operating system you use within your cluster.\n\nIf you are using Windows nodes, you can read:\n\n* [Networking On Windows](/docs/concepts/services-networking/windows-networking/)\n* [Windows Storage In Kubernetes](/docs/concepts/storage/windows-storage/)\n* [Resource Management for Windows Nodes](/docs/concepts/configuration/windows-resource-management/)\n* [Configure RunAsUserName for Windows Pods and Containers](/docs/tasks/configure-pod-container/configure-runasusername/)\n* [Create A Windows HostProcess Pod](/docs/tasks/configure-pod-container/create-hostprocess-pod/)\n* [Configure Group Managed Service Accounts for Windows Pods and Containers](/docs/tasks/configure-pod-container/configure-gmsa/)\n* [Security For Windows Nodes](/docs/concepts/security/windows-security/)\n* [Windows Debugging Tips](/docs/tasks/debug/debug-cluster/windows/)\n* [Guide for Scheduling Windows Containers in Kubernetes](/docs/concepts/windows/user-guide)\n\nor, for an overview, read:\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/windows/_index/",
      "meta": {
        "weight": 200,
        "rel_path": "concepts/windows/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/windows/_index.md",
          "url": "https://kubernetes.io/docs/concepts/windows/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Windows in Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/kubernetes-api",
      "type": "page",
      "title": "The Kubernetes API",
      "summary": "The Kubernetes API lets you query and manipulate the state of objects in Kubernetes. The core of Kubernetes' control plane is the API server and the HTTP API that it exposes. Users, the different parts of your cluster, and external components all communicate with one another through the API server.\n",
      "body": "\n\nThe core of Kubernetes' [control plane](#gloss:control-plane)\nis the [API server](#gloss:kube-apiserver). The API server\nexposes an HTTP API that lets end users, different parts of your cluster, and\nexternal components communicate with one another.\n\nThe Kubernetes API lets you query and manipulate the state of API objects in Kubernetes\n(for example: Pods, Namespaces, ConfigMaps, and Events).\n\nMost operations can be performed through the [kubectl](/docs/reference/kubectl/)\ncommand-line interface or other command-line tools, such as\n[kubeadm](/docs/reference/setup-tools/kubeadm/), which in turn use the API.\nHowever, you can also access the API directly using REST calls. Kubernetes\nprovides a set of [client libraries](/docs/reference/using-api/client-libraries/)\nfor those looking to\nwrite applications using the Kubernetes API.\n\nEach Kubernetes cluster publishes the specification of the APIs that the cluster serves.\nThere are two mechanisms that Kubernetes uses to publish these API specifications; both are useful\nto enable automatic interoperability. For example, the `kubectl` tool fetches and caches the API\nspecification for enabling command-line completion and other features.\nThe two supported mechanisms are as follows:\n\n- [The Discovery API](#discovery-api) provides information about the Kubernetes APIs:\n  API names, resources, versions, and supported operations. This is a Kubernetes\n  specific term as it is a separate API from the Kubernetes OpenAPI.\n  It is intended to be a brief summary of the available resources and it does not\n  detail specific schema for the resources. For reference about resource schemas,\n  please refer to the OpenAPI document.\n\n- The [Kubernetes OpenAPI Document](#openapi-interface-definition) provides (full)\n  [OpenAPI v2.0 and 3.0 schemas](https://www.openapis.org/) for all Kubernetes API\nendpoints.\n  The OpenAPI v3 is the preferred method for accessing OpenAPI as it\nprovides\n  a more comprehensive and accurate view of the API. It includes all the available\n  API paths, as well as all resources consumed and produced for every operations\n  on every endpoints. It also includes any extensibility components that a cluster supports.\n  The data is a complete specification and is significantly larger than that from the\n  Discovery API.\n\n## Discovery API\n\nKubernetes publishes a list of all group versions and resources supported via\nthe Discovery API. This includes the following for each resource:\n\n- Name\n- Cluster or namespaced scope\n- Endpoint URL and supported verbs\n- Alternative names\n- Group, version, kind\n\nThe API is available in both aggregated and unaggregated form. The aggregated\ndiscovery serves two endpoints, while the unaggregated discovery serves a\nseparate endpoint for each group version.\n\n### Aggregated discovery\n\n\n\nKubernetes offers stable support for _aggregated discovery_, publishing\nall resources supported by a cluster through two endpoints (`/api` and\n`/apis`). Requesting this\nendpoint drastically reduces the number of requests sent to fetch the\ndiscovery data from the cluster. You can access the data by\nrequesting the respective endpoints with an `Accept` header indicating\nthe aggregated discovery resource:\n`Accept: application/json;v=v2;g=apidiscovery.k8s.io;as=APIGroupDiscoveryList`.\n\nWithout indicating the resource type using the `Accept` header, the default\nresponse for the `/api` and `/apis` endpoint is an unaggregated discovery\ndocument.\n\nThe [discovery document](https://github.com/kubernetes/kubernetes/blob/release-/api/discovery/aggregated_v2.json)\nfor the built-in resources can be found in the Kubernetes GitHub repository.\nThis Github document can be used as a reference of the base set of the available resources\nif a Kubernetes cluster is not available to query.\n\nThe endpoint also supports ETag and protobuf encoding.\n\n### Unaggregated discovery\n\nWithout discovery aggregation, discovery is published in levels, with the root\nendpoints publishing discovery information for downstrea\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/overview/kubernetes-api.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": null,
          "line_end": null,
          "quote": "The Kubernetes API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:discovery-api",
      "type": "concept",
      "title": "Discovery API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 2380,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:openapi-interface-definition",
      "type": "concept",
      "title": "OpenAPI interface definition",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 5318,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistence",
      "type": "concept",
      "title": "Persistence",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 10391,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-groups-and-versioning",
      "type": "concept",
      "title": "API groups and versioning",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 10520,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-extension",
      "type": "concept",
      "title": "API Extension",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 13898,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aggregated-discovery",
      "type": "concept",
      "title": "Aggregated discovery",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 2854,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:unaggregated-discovery",
      "type": "concept",
      "title": "Unaggregated discovery",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 4015,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:openapi-v2",
      "type": "concept",
      "title": "OpenAPI V2",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 5818,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:openapi-v3",
      "type": "concept",
      "title": "OpenAPI V3",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 7229,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protobuf-serialization",
      "type": "concept",
      "title": "Protobuf serialization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 9936,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-changes",
      "type": "concept",
      "title": "API changes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 11991,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/kubectl",
      "type": "page",
      "title": "The kubectl command-line tool",
      "summary": "kubectl is the primary command-line tool for communicating with a Kubernetes cluster. This page provides an overview of kubectl and its role in the Kubernetes ecosystem.\n",
      "body": "\n\n[definition:kubectl]\n\nThe `kubectl` tool communicates with your cluster through the [Kubernetes API](/docs/concepts/overview/kubernetes-api/).\nFor configuration, `kubectl` looks for a file named `config` in the `$HOME/.kube` directory.\nYou can specify other [kubeconfig](/docs/concepts/configuration/organize-cluster-access-kubeconfig/)\nfiles by setting the `KUBECONFIG` environment variable or by setting the\n[`--kubeconfig`](/docs/concepts/configuration/organize-cluster-access-kubeconfig/) flag.\n\n\n\n## Role of kubectl\n\nThe `kubectl` tool is the primary interface for creating, inspecting, updating, and deleting Kubernetes objects.\nIt complements the [Kubernetes Components](/docs/concepts/overview/components/) that run inside your cluster\nand the [Kubernetes API](/docs/concepts/overview/kubernetes-api/) that those components implement.\nWhether you run `kubectl` from your laptop or from a Pod inside the cluster, it sends requests to the API server.\nOther clients, such as [client libraries](/docs/reference/using-api/client-libraries/) and web dashboards\nlike [Headlamp](https://headlamp.dev/), also communicate through the same API.\n\n## How kubectl works\n\nThe `kubectl` tool connects to the API server and authenticates using the cluster, user, and context defined in your\n[kubeconfig](/docs/concepts/configuration/organize-cluster-access-kubeconfig/) file.\nWhen you run `kubectl` from outside a cluster, it uses the kubeconfig file to find the API server address and credentials.\nWhen `kubectl` runs inside a Pod (for example, in a CI/CD pipeline), it can use in-cluster authentication\nbased on the ServiceAccount token mounted in the Pod.\n\nWhen you run a command, `kubectl` translates your intent into one or more HTTP requests to the\n[Kubernetes API](/docs/concepts/overview/kubernetes-api/). The API server validates each request,\napplies it to the cluster state stored in [etcd](#gloss:etcd), and\nreturns the result. This means every `kubectl` action, whether creating a Deployment or reading logs,\nfollows the same API-driven path.\n\nBecause your kubeconfig can define multiple clusters, users, and contexts, you can use `kubectl` to\nswitch between clusters without reconfiguring your environment. Run `kubectl config use-context` to\nchange the active context.\n\n## What you can do with kubectl\n\nThe `kubectl` tool supports many operations, which fall into these broad categories:\n\n* **Manage resources** – Create, update, and delete objects such as Pods, Deployments, and Services.\n  Use `kubectl apply` for declarative management from configuration files.\n* **Inspect cluster state** – List and describe objects, view events, and check resource usage.\n* **Debug** – View logs from containers, execute commands inside a running container, or port-forward to a Pod.\n* **Cluster operations** – Drain nodes for maintenance, cordon nodes to prevent new workloads, and manage cluster configuration.\n* **Script and automate** – Format output as JSON, YAML, or custom columns using [JSONPath](/docs/reference/kubectl/jsonpath/) for use in scripts and pipelines.\n\nFor syntax, command reference, and examples, see the [kubectl reference documentation](/docs/reference/kubectl/).\n\n## Declarative vs imperative\n\nFor production workloads, prefer [declarative object management](/docs/concepts/overview/working-with-objects/object-management/)\nusing `kubectl apply` with version-controlled configuration files.\nDeclarative management helps you track changes, collaborate, and integrate with GitOps workflows.\nImperative commands (such as `kubectl create` or `kubectl run`) are useful for development and experimentation,\nbut are harder to reproduce and audit.\n\n## Extending kubectl with plugins\n\nYou can extend `kubectl` with [plugins](/docs/tasks/extend-kubectl/kubectl-plugins/) that add new\nsub-commands. Plugins are standalone binaries that follow the `kubectl-<plugin-name>` naming convention.\nThe Kubernetes community maintains many plugins, and you can manage them with the\n[Krew](https://k\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/overview/kubectl.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": "The kubectl command-line tool"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:role-of-kubectl",
      "type": "concept",
      "title": "Role of kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 607,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-kubectl-works",
      "type": "concept",
      "title": "How kubectl works",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 1248,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-you-can-do-with-kubectl",
      "type": "concept",
      "title": "What you can do with kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 2413,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:declarative-vs-imperative",
      "type": "concept",
      "title": "Declarative vs imperative",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 3322,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extending-kubectl-with-plugins",
      "type": "concept",
      "title": "Extending kubectl with plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 3799,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:version-compatibility",
      "type": "concept",
      "title": "Version compatibility",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 4170,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/components",
      "type": "page",
      "title": "Kubernetes Components",
      "summary": "An overview of the key components that make up a Kubernetes cluster.\n",
      "body": "\n\nThis page provides a high-level overview of the essential components that make up a Kubernetes cluster.\n\n\n![Components of Kubernetes](/images/docs/components-of-kubernetes.svg) — The components of a Kubernetes cluster\n\n\n\n\n## Core Components\n\nA Kubernetes cluster consists of a control plane and one or more worker nodes.\nHere's a brief overview of the main components:\n\n### Control Plane Components\n\nManage the overall state of the cluster:\n\n[kube-apiserver](/docs/concepts/architecture/#kube-apiserver)\n: The core component server that exposes the Kubernetes HTTP API.\n\n[etcd](/docs/concepts/architecture/#etcd)\n: Consistent and highly-available key value store for all API server data.\n\n[kube-scheduler](/docs/concepts/architecture/#kube-scheduler)\n: Looks for Pods not yet bound to a node, and assigns each Pod to a suitable node.\n\n[kube-controller-manager](/docs/concepts/architecture/#kube-controller-manager)\n: Runs [controllers](#gloss:controller) to implement Kubernetes API behavior.\n\n[cloud-controller-manager](/docs/concepts/architecture/#cloud-controller-manager) (optional)\n: Integrates with underlying cloud provider(s).\n\n### Node Components\n\nRun on every node, maintaining running pods and providing the Kubernetes runtime environment:\n\n[kubelet](/docs/concepts/architecture/#kubelet)\n: Ensures that Pods are running, including their containers.\n\n[kube-proxy](/docs/concepts/architecture/#kube-proxy) (optional)\n: Maintains network rules on nodes to implement [Services](#gloss:service).\n\n[Container runtime](/docs/concepts/architecture/#container-runtime)\n: Software responsible for running containers. Read\n  [Container Runtimes](/docs/setup/production-environment/container-runtimes/) to learn more.\n\n\n\nYour cluster may require additional software on each node; for example, you might also\nrun [systemd](https://systemd.io/) on a Linux node to supervise local components.\n\n## Addons\n\nAddons extend the functionality of Kubernetes. A few important examples include:\n\n[DNS](/docs/concepts/architecture/#dns)\n: For cluster-wide DNS resolution.\n\n[Web UI](/docs/concepts/architecture/#web-ui-dashboard) (Dashboard)\n: For cluster management via a web interface.\n\n[Container Resource Monitoring](/docs/concepts/architecture/#container-resource-monitoring)\n: For collecting and storing container metrics.\n\n[Cluster-level Logging](/docs/concepts/architecture/#cluster-level-logging)\n: For saving container logs to a central log store.\n\n## Flexibility in Architecture\n\nKubernetes allows for flexibility in how these components are deployed and managed.\nThe architecture can be adapted to various needs, from small development environments\nto large-scale production deployments.\n\nFor more detailed information about each component and various ways to configure your\ncluster architecture, see the [Cluster Architecture](/docs/concepts/architecture/) page.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/components/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/overview/components.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/components.md",
          "url": "https://kubernetes.io/docs/concepts/overview/components/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Components"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:core-components",
      "type": "concept",
      "title": "Core Components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/components.md",
          "url": "https://kubernetes.io/docs/concepts/overview/components/",
          "line_start": 325,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flexibility-in-architecture",
      "type": "concept",
      "title": "Flexibility in Architecture",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/components.md",
          "url": "https://kubernetes.io/docs/concepts/overview/components/",
          "line_start": 2652,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/_index",
      "type": "page",
      "title": "Overview",
      "summary": "Kubernetes is a portable, extensible, open source platform for managing containerized workloads and services that facilitate both declarative configuration and automation. It has a large, rapidly growing ecosystem. Kubernetes services, support, and tools are widely available.\n",
      "body": "\nThis page is an overview of Kubernetes.\n\n\n\n\nThe name Kubernetes originates from Greek, meaning helmsman or pilot. K8s as an abbreviation\nresults from counting the eight letters between the \"K\" and the \"s\". Google open sourced the\nKubernetes project in 2014. Kubernetes combines\n[over 15 years of Google's experience](/blog/2015/04/borg-predecessor-to-kubernetes/) running\nproduction workloads at scale with best-of-breed ideas and practices from the community.\n\n## Why you need Kubernetes and what it can do {#why-you-need-kubernetes-and-what-can-it-do}\n\nContainers are a good way to bundle and run your applications. In a production\nenvironment, you need to manage the containers that run the applications and\nensure that there is no downtime. For example, if a container goes down, another\ncontainer needs to start. Wouldn't it be easier if this behavior was handled by a system?\n\nThat's how Kubernetes comes to the rescue! Kubernetes provides you with a framework\nto run distributed systems resiliently. It takes care of scaling and failover for\nyour application, provides deployment patterns, and more. For example: Kubernetes\ncan easily manage a canary deployment for your system.\n\nKubernetes provides you with:\n\n* **Service discovery and load balancing**\n  Kubernetes can expose a container using a DNS name or its own IP address.\n  If traffic to a container is high, Kubernetes is able to load balance and distribute\n  the network traffic so that the deployment is stable.\n* **Storage orchestration**\n  Kubernetes allows you to automatically mount a storage system of your choice, such as\n  local storage, public cloud providers, and more.\n* **Automated rollouts and rollbacks**\n  You can describe the desired state for your deployed containers using Kubernetes,\n  and it can change the actual state to the desired state at a controlled rate.\n  For example, you can automate Kubernetes to create new containers for your\n  deployment, remove existing containers and adopt all their resources to the new container.\n* **Automatic bin packing**\n  You provide Kubernetes with a cluster of nodes that it can use to run containerized tasks.\n  You tell Kubernetes how much CPU and memory (RAM) each container needs. Kubernetes can fit\n  containers onto your nodes to make the best use of your resources.\n* **Self-healing**\n  Kubernetes restarts containers that fail, replaces containers, kills containers that don't\n  respond to your user-defined health check, and doesn't advertise them to clients until they\n  are ready to serve.\n* **Secret and configuration management**\n  Kubernetes lets you store and manage sensitive information, such as passwords, OAuth tokens,\n  and SSH keys. You can deploy and update secrets and application configuration without\n  rebuilding your container images, and without exposing secrets in your stack configuration.\n* **Batch execution**\n  In addition to services, Kubernetes can manage your batch and CI workloads, replacing containers that fail, if desired.\n* **Horizontal scaling**\n  Scale your application up and down with a simple command, with a UI, or automatically based on CPU usage.\n* **IPv4/IPv6 dual-stack**\n  Allocation of IPv4 and IPv6 addresses to Pods and Services.\n* **Designed for extensibility**\n  Add features to your Kubernetes cluster without changing upstream source code.\n\n## What Kubernetes is not\n\nKubernetes is not a traditional, all-inclusive PaaS (Platform as a Service) system.\nSince Kubernetes operates at the container level rather than at the hardware level,\nit provides some generally applicable features common to PaaS offerings, such as\ndeployment, scaling, load balancing, and lets users integrate their logging, monitoring,\nand alerting solutions. However, Kubernetes is not monolithic, and these default solutions\nare optional and pluggable. Kubernetes provides the building blocks for building developer\nplatforms, but preserves user choice and flexibility where it is important.\n\nKubernetes:\n\n* Does not limit the types of a\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/overview/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Overview"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-you-need-kubernetes-and-what-it-can-do-why-you-need-kubernetes-and-what-can-it-do",
      "type": "concept",
      "title": "Why you need Kubernetes and what it can do {#why-you-need-kubernetes-and-what-can-it-do}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/_index/",
          "line_start": 494,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-kubernetes-is-not",
      "type": "concept",
      "title": "What Kubernetes is not",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/_index/",
          "line_start": 3363,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:historical-context-for-kubernetes-going-back-in-time",
      "type": "concept",
      "title": "Historical context for Kubernetes {#going-back-in-time}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/_index/",
          "line_start": 6014,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/names",
      "type": "page",
      "title": "Object Names and IDs",
      "summary": "",
      "body": "\n\nEach [object](#gloss:object) in your cluster has a [_Name_](#names) that is unique for that type of resource.\nEvery Kubernetes object also has a [_UID_](#uids) that is unique across your whole cluster.\n\nFor example, you can only have one Pod named `myapp-1234` within the same [namespace](/docs/concepts/overview/working-with-objects/namespaces/), but you can have one Pod and one Deployment that are each named `myapp-1234`.\n\nFor non-unique user-provided attributes, Kubernetes provides [labels](/docs/concepts/overview/working-with-objects/labels/) and [annotations](/docs/concepts/overview/working-with-objects/annotations/).\n\n\n\n\n\n## Names\n\n[definition:name]\n\nNames must be unique across all [API versions](/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning) of the same resource. \n\nKubernetes uniquely identifies objects using a combination of four attributes:\n* **API group** (e.g., `apps`)\n* **Resource type** (e.g., `deployments`)\n* **Namespace** (for namespaced resources)\n* **Name**\n\nWhile you can access a resource through different API versions (such as `v1` or `v1beta1`), the version is simply a different representation of the same underlying object. Because the version is not part of the unique identification, you cannot create two objects with the same name and resource type in the same namespace by using different API versions.\n\n\n> **Note:** In cases when objects represent a physical entity, like a Node representing a physical host, when the host is re-created under the same name without deleting and re-creating the Node, Kubernetes treats the new host as the old one, which may lead to inconsistencies.\n\n\nThe server may generate a name when `generateName` is provided instead of `name` in a resource create request.\nWhen `generateName` is used, the provided value is used as a name prefix, which server appends a generated suffix\nto. Even though the name is generated, it may conflict with existing names resulting in an HTTP 409 response. This\nbecame far less likely to happen in Kubernetes v1.31 and later, since the server will make up to 8 attempts to generate a\nunique name before returning an HTTP 409 response.\n\nBelow are four types of commonly used name constraints for resources.\n\n### DNS Subdomain Names\n\nMost resource types require a name that can be used as a DNS subdomain name\nas defined in [RFC 1123](https://tools.ietf.org/html/rfc1123).\nThis means the name must:\n\n- contain no more than 253 characters\n- contain only lowercase alphanumeric characters, '-' or '.'\n- start with an alphanumeric character\n- end with an alphanumeric character\n\n### RFC 1123 Label Names {#dns-label-names}\n\nSome resource types require their names to follow the DNS\nlabel standard as defined in [RFC 1123](https://tools.ietf.org/html/rfc1123).\nThis means the name must:\n\n- contain at most 63 characters\n- contain only lowercase alphanumeric characters or '-'\n- start with an alphabetic character\n- end with an alphanumeric character\n\n\n> **Note:** When the `RelaxedServiceNameValidation` feature gate is enabled,\nService object names are allowed to start with a digit.\n\n\n### RFC 1035 Label Names\n\nSome resource types require their names to follow the DNS\nlabel standard as defined in [RFC 1035](https://tools.ietf.org/html/rfc1035).\nThis means the name must:\n\n- contain at most 63 characters\n- contain only lowercase alphanumeric characters or '-'\n- start with an alphabetic character\n- end with an alphanumeric character\n\n\n> **Note:** While RFC 1123 technically allows labels to start with digits, the current\nKubernetes implementation requires both RFC 1035 and RFC 1123 labels to start\nwith an alphabetic character. The exception is when the `RelaxedServiceNameValidation`\nfeature gate is enabled for Service objects, which allows Service names to start with digits.\n\n\n### Path Segment Names\n\nSome resource types require their names to be able to be safely encoded as a\npath segment. In other words, the name may not be \".\" or \"..\" and the name may\nnot contain \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/overview/working-with-objects/names.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": null,
          "line_end": null,
          "quote": "Object Names and IDs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:names",
      "type": "concept",
      "title": "Names",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 699,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uids",
      "type": "concept",
      "title": "UIDs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 4467,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dns-subdomain-names",
      "type": "concept",
      "title": "DNS Subdomain Names",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 2347,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rfc-1123-label-names-dns-label-names",
      "type": "concept",
      "title": "RFC 1123 Label Names {#dns-label-names}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 2714,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rfc-1035-label-names",
      "type": "concept",
      "title": "RFC 1035 Label Names",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 3234,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:path-segment-names",
      "type": "concept",
      "title": "Path Segment Names",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 3948,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/field-selectors",
      "type": "page",
      "title": "Field Selectors",
      "summary": "",
      "body": "_Field selectors_ let you select Kubernetes [objects](#gloss:object) based on the\nvalue of one or more resource fields. Here are some examples of field selector queries:\n\n* `metadata.name=my-service`\n* `metadata.namespace!=default`\n* `status.phase=Pending`\n\nThis `kubectl` command selects all Pods for which the value of the [`status.phase`](/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase) field is `Running`:\n\n```shell\nkubectl get pods --field-selector status.phase=Running\n```\n\n\n> **Note:** Field selectors are essentially resource *filters*. By default, no selectors/filters are applied, meaning that all resources of the specified type are selected. This makes the `kubectl` queries `kubectl get pods` and `kubectl get pods --field-selector \"\"` equivalent.\n\n\n## Supported fields\n\nSupported field selectors vary by Kubernetes resource type. All resource types support the `metadata.name` and `metadata.namespace` fields. Using unsupported field selectors produces an error. For example:\n\n```shell\nkubectl get ingress --field-selector foo.bar=baz\n```\n```\nError from server (BadRequest): Unable to find \"ingresses\" that match label selector \"\", field selector \"foo.bar=baz\": \"foo.bar\" is not a known field selector: only \"metadata.name\", \"metadata.namespace\"\n```\n\n### List of supported fields\n\n| Kind                      | Fields                                                                                                                                                                                                                                                          |\n| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Pod                       | `spec.nodeName`<br>`spec.restartPolicy`<br>`spec.schedulerName`<br>`spec.serviceAccountName`<br>`spec.hostNetwork`<br>`status.phase`<br>`status.podIP`<br>`status.podIPs`<br>`status.nominatedNodeName`                                                                            |\n| Event                     | `involvedObject.kind`<br>`involvedObject.namespace`<br>`involvedObject.name`<br>`involvedObject.uid`<br>`involvedObject.apiVersion`<br>`involvedObject.resourceVersion`<br>`involvedObject.fieldPath`<br>`reason`<br>`reportingComponent`<br>`source`<br>`type` |\n| Secret                    | `type`                                                                                                                                                                                                                                                          |\n| Service                   | `spec.clusterIP`<br>`spec.type`                                                                                                                                                                                                                                 |\n| Namespace                 | `status.phase`                                                                                                                                                                                                                                                  |\n| ReplicaSet                | `status.replicas`                                                                                                                                                                                                                                               |\n| ReplicationController     | `status.replicas`                                                                                                                                                                                                                                               |\n| Job                       | `status.successful`                                     \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/overview/working-with-objects/field-selectors.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": null,
          "line_end": null,
          "quote": "Field Selectors"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:supported-fields",
      "type": "concept",
      "title": "Supported fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 817,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:supported-operators",
      "type": "concept",
      "title": "Supported operators",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 5411,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:chained-selectors",
      "type": "concept",
      "title": "Chained selectors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 5937,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multiple-resource-types",
      "type": "concept",
      "title": "Multiple resource types",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 6359,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-of-supported-fields",
      "type": "concept",
      "title": "List of supported fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 1319,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:custom-resources-fields",
      "type": "concept",
      "title": "Custom resources fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 4825,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/finalizers",
      "type": "page",
      "title": "Finalizers",
      "summary": "",
      "body": "\n\n[definition:finalizer]\n\nYou can use finalizers to control [garbage collection](#gloss:garbage-collection)\nof [objects](#gloss:object) by alerting [controllers](#gloss:controller)\nto perform specific cleanup tasks before deleting the target resource.\n\nFinalizers don't usually specify the code to execute. Instead, they are\ntypically lists of keys on a specific resource similar to annotations.\nKubernetes specifies some finalizers automatically, but you can also specify\nyour own.\n\n## How finalizers work\n\nWhen you create a resource using a manifest file, you can specify finalizers in\nthe `metadata.finalizers` field. When you attempt to delete the resource, the\nAPI server handling the delete request notices the values in the `finalizers` field\nand does the following: \n\n  * Modifies the object to add a `metadata.deletionTimestamp` field with the\n    time you started the deletion.\n  * Prevents the object from being removed until all items are removed from its `metadata.finalizers` field\n  * Returns a `202` status code (HTTP \"Accepted\")\n\nThe controller managing that finalizer notices the update to the object setting the\n`metadata.deletionTimestamp`, indicating deletion of the object has been requested.\nThe controller then attempts to satisfy the requirements of the finalizers\nspecified for that resource. Each time a finalizer condition is satisfied, the\ncontroller removes that key from the resource's `finalizers` field. When the\n`finalizers` field is emptied, an object with a `deletionTimestamp` field set\nis automatically deleted. You can also use finalizers to prevent deletion of unmanaged resources.\n\nA common example of a finalizer is `kubernetes.io/pv-protection`, which prevents\naccidental deletion of `PersistentVolume` objects. When a `PersistentVolume`\nobject is in use by a Pod, Kubernetes adds the `pv-protection` finalizer. If you\ntry to delete the `PersistentVolume`, it enters a `Terminating` status, but the\ncontroller can't delete it because the finalizer exists. When the Pod stops\nusing the `PersistentVolume`, Kubernetes clears the `pv-protection` finalizer,\nand the controller deletes the volume.\n\n\n* When you `DELETE` an object, Kubernetes adds the deletion timestamp for that object and then\nimmediately starts to restrict changes to the `.metadata.finalizers` field for the object that is\nnow pending deletion. You can remove existing finalizers (deleting an entry from the `finalizers`\nlist) but you cannot add a new finalizer. You also cannot modify the `deletionTimestamp` for an\nobject once it is set.\n\n* After the deletion is requested, you can not resurrect this object. The only way is to delete it and make a new similar object.\n\n\n\nCustom finalizer names **must** be publicly qualified finalizer names, such as `example.com/finalizer-name`.\nKubernetes enforces this format; the API server rejects writes to objects where the change does not use qualified finalizer names for any custom finalizer.\n\n\n## Owner references, labels, and finalizers {#owners-labels-finalizers}\n\nLike [labels](#gloss:label),\n[owner references](/docs/concepts/overview/working-with-objects/owners-dependents/)\ndescribe the relationships between objects in Kubernetes, but are used for a\ndifferent purpose. When a\n[controller](#gloss:controller) manages objects\nlike Pods, it uses labels to track changes to groups of related objects. For\nexample, when a [Job](#gloss:job) creates one or\nmore Pods, the Job controller applies labels to those pods and tracks changes to\nany Pods in the cluster with the same label.\n\nThe Job controller also adds *owner references* to those Pods, pointing at the\nJob that created the Pods. If you delete the Job while these Pods are running,\nKubernetes uses the owner references (not labels) to determine which Pods in the\ncluster need cleanup.\n\nKubernetes also processes finalizers when it identifies owner references on a\nresource targeted for deletion. \n\nIn some situations, finalizers can block the deletion of dependent objects,\nwhich can c\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
      "meta": {
        "weight": 80,
        "rel_path": "concepts/overview/working-with-objects/finalizers.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": null,
          "line_end": null,
          "quote": "Finalizers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-finalizers-work",
      "type": "concept",
      "title": "How finalizers work",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 631,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:owner-references-labels-and-finalizers-owners-labels-finalizers",
      "type": "concept",
      "title": "Owner references, labels, and finalizers {#owners-labels-finalizers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 3138,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/namespaces",
      "type": "page",
      "title": "Namespaces",
      "summary": "",
      "body": "\n\nIn Kubernetes, _namespaces_ provide a mechanism for isolating groups of resources within a single cluster. Names of resources need to be unique within a namespace, but not across namespaces. Namespace-based scoping is applicable only for namespaced [objects](#gloss:object) _(e.g. Deployments, Services, etc.)_ and not for cluster-wide objects _(e.g. StorageClass, Nodes, PersistentVolumes, etc.)_.\n\n\n\n## When to Use Multiple Namespaces\n\nNamespaces are intended for use in environments with many users spread across multiple\nteams, or projects.  For clusters with a few to tens of users, you should not\nneed to create or think about namespaces at all.  Start using namespaces when you\nneed the features they provide.\n\nNamespaces provide a scope for names.  Names of resources need to be unique within a namespace,\nbut not across namespaces. Namespaces cannot be nested inside one another and each Kubernetes \nresource can only be in one namespace.\n\nNamespaces are a way to divide cluster resources between multiple users (via [resource quota](/docs/concepts/policy/resource-quotas/)).\n\nIt is not necessary to use multiple namespaces to separate slightly different\nresources, such as different versions of the same software: use\n[labels](#gloss:label) to distinguish\nresources within the same namespace.\n\n\n> **Note:** For a production cluster, consider _not_ using the `default` namespace. Instead, make other namespaces and use those.\n\n\n## Initial namespaces\n\nKubernetes starts with four initial namespaces:\n\n`default`\n: Kubernetes includes this namespace so that you can start using your new cluster without first creating a namespace.\n\n`kube-node-lease`\n: This namespace holds [Lease](/docs/concepts/architecture/leases/) objects associated with each node. Node leases allow the kubelet to send [heartbeats](/docs/concepts/architecture/nodes/#node-heartbeats) so that the control plane can detect node failure.\n\n`kube-public`\n: This namespace is readable by *all* clients (including those not authenticated). This namespace is mostly reserved for cluster usage, in case that some resources should be visible and readable publicly throughout the whole cluster. The public aspect of this namespace is only a convention, not a requirement.\n\n`kube-system`\n: The namespace for objects created by the Kubernetes system.\n\n## Working with Namespaces\n\nCreation and deletion of namespaces are described in the\n[Admin Guide documentation for namespaces](/docs/tasks/administer-cluster/namespaces).\n\n\n> **Note:** Avoid creating namespaces with the prefix `kube-`, since it is reserved for Kubernetes system namespaces.\n\n\n### Viewing namespaces\n\nYou can list the current namespaces in a cluster using:\n\n```shell\nkubectl get namespace\n```\n```\nNAME              STATUS   AGE\ndefault           Active   1d\nkube-node-lease   Active   1d\nkube-public       Active   1d\nkube-system       Active   1d\n```\n\n\n### Setting the namespace for a request\n\nTo set the namespace for a current request, use the `--namespace` flag.\n\nFor example:\n\n```shell\nkubectl run nginx --image=nginx --namespace=<insert-namespace-name-here>\nkubectl get pods --namespace=<insert-namespace-name-here>\n```\n\n### Setting the namespace preference\n\nYou can permanently save the namespace for all subsequent kubectl commands in that\ncontext.\n\n```shell\nkubectl config set-context --current --namespace=<insert-namespace-name-here>\n# Validate it\nkubectl config view --minify | grep namespace:\n```\n\n## Namespaces and DNS\n\nWhen you create a [Service](/docs/concepts/services-networking/service/),\nit creates a corresponding [DNS entry](/docs/concepts/services-networking/dns-pod-service/).\nThis entry is of the form `<service-name>.<namespace-name>.svc.cluster.local`, which means\nthat if a container only uses `<service-name>`, it will resolve to the service which\nis local to a namespace.  This is useful for using the same configuration across\nmultiple namespaces such as Development, Staging and Production.  If you want to reach\nacross namespaces, \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
      "meta": {
        "weight": 45,
        "rel_path": "concepts/overview/working-with-objects/namespaces.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": null,
          "line_end": null,
          "quote": "Namespaces"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-to-use-multiple-namespaces",
      "type": "concept",
      "title": "When to Use Multiple Namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 467,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:initial-namespaces",
      "type": "concept",
      "title": "Initial namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 1547,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:working-with-namespaces",
      "type": "concept",
      "title": "Working with Namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 2427,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespaces-and-dns",
      "type": "concept",
      "title": "Namespaces and DNS",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 3568,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:not-all-objects-are-in-a-namespace",
      "type": "concept",
      "title": "Not all objects are in a namespace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 5145,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:automatic-labelling",
      "type": "concept",
      "title": "Automatic labelling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 5717,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-the-namespace-for-a-request",
      "type": "concept",
      "title": "Setting the namespace for a request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 3011,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-the-namespace-preference",
      "type": "concept",
      "title": "Setting the namespace preference",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 3284,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/common-labels",
      "type": "page",
      "title": "Recommended Labels",
      "summary": "",
      "body": "\nYou can visualize and manage Kubernetes objects with more tools than kubectl and\nthe dashboard. A common set of labels allows tools to work interoperably, describing\nobjects in a common manner that all tools can understand.\n\nIn addition to supporting tooling, the recommended labels describe applications\nin a way that can be queried.\n\n\n\nThe metadata is organized around the concept of an _application_. Kubernetes is not\na platform as a service (PaaS) and doesn't have or enforce a formal notion of an application.\nInstead, applications are informal and described with metadata. The definition of\nwhat an application contains is loose.\n\n\n> **Note:** These are recommended labels. They make it easier to manage applications\nbut aren't required for any core tooling.\n\n\nShared labels and annotations share a common prefix: `app.kubernetes.io`. Labels\nwithout a prefix are private to users. The shared prefix ensures that shared labels\ndo not interfere with custom user labels.\n\n## Labels\n\nIn order to take full advantage of using these labels, they should be applied\non every resource object.\n\n| Key                                 | Description           | Example  | Type |\n| ----------------------------------- | --------------------- | -------- | ---- |\n| `app.kubernetes.io/name`            | The name of the application | `mysql` | string |\n| `app.kubernetes.io/instance`        | A unique name identifying the instance of an application | `mysql-abcxyz` | string |\n| `app.kubernetes.io/version`         | The current version of the application (e.g., a [SemVer 1.0](https://semver.org/spec/v1.0.0.html), revision hash, etc.) | `5.7.21` | string |\n| `app.kubernetes.io/component`       | The component within the architecture | `database` | string |\n| `app.kubernetes.io/part-of`         | The name of a higher level application this one is part of | `wordpress` | string |\n| `app.kubernetes.io/managed-by`      | The tool being used to manage the operation of an application | `Helm` | string |\n\nTo illustrate these labels in action, consider the following [StatefulSet](#gloss:statefulset) object:\n\n```yaml\n# This is an excerpt\napiVersion: apps/v1\nkind: StatefulSet\nmetadata:\n  labels:\n    app.kubernetes.io/name: mysql\n    app.kubernetes.io/instance: mysql-abcxyz\n    app.kubernetes.io/version: \"5.7.21\"\n    app.kubernetes.io/component: database\n    app.kubernetes.io/part-of: wordpress\n    app.kubernetes.io/managed-by: Helm\n```\n\n## Applications And Instances Of Applications\n\nAn application can be installed one or more times into a Kubernetes cluster and,\nin some cases, the same namespace. For example, WordPress can be installed more\nthan once where different websites are different installations of WordPress.\n\nThe name of an application and the instance name are recorded separately. For\nexample, WordPress has a `app.kubernetes.io/name` of `wordpress` while it has\nan instance name, represented as `app.kubernetes.io/instance` with a value of\n`wordpress-abcxyz`. This enables the application and instance of the application\nto be identifiable. Every instance of an application must have a unique name.\n\n## Examples\n\nTo illustrate different ways to use these labels the following examples have varying complexity.\n\n### A Simple Stateless Service\n\nConsider the case for a simple stateless service deployed using `Deployment` and `Service` objects. The following two snippets represent how the labels could be used in their simplest form.\n\nThe `Deployment` is used to oversee the pods running the application itself.\n```yaml\napiVersion: apps/v1\nkind: Deployment\nmetadata:\n  labels:\n    app.kubernetes.io/name: myservice\n    app.kubernetes.io/instance: myservice-abcxyz\n...\n```\n\nThe `Service` is used to expose the application.\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  labels:\n    app.kubernetes.io/name: myservice\n    app.kubernetes.io/instance: myservice-abcxyz\n...\n```\n\n### Web Application With A Database\n\nConsider a slightly more complicated application: a web application (W\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
      "meta": {
        "weight": 100,
        "rel_path": "concepts/overview/working-with-objects/common-labels.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/common-labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
          "line_start": null,
          "line_end": null,
          "quote": "Recommended Labels"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applications-and-instances-of-applications",
      "type": "concept",
      "title": "Applications And Instances Of Applications",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/common-labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
          "line_start": 2515,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:a-simple-stateless-service",
      "type": "concept",
      "title": "A Simple Stateless Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/common-labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
          "line_start": 3306,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:web-application-with-a-database",
      "type": "concept",
      "title": "Web Application With A Database",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/common-labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
          "line_start": 3969,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/annotations",
      "type": "page",
      "title": "Annotations",
      "summary": "",
      "body": "\nYou can use Kubernetes annotations to attach arbitrary non-identifying metadata\nto [objects](#gloss:object).\nClients such as tools and libraries can retrieve this metadata.\n\n\n## Attaching metadata to objects\n\nYou can use either labels or annotations to attach metadata to Kubernetes\nobjects. Labels can be used to select objects and to find\ncollections of objects that satisfy certain conditions. In contrast, annotations\nare not used to identify and select objects. The metadata\nin an annotation can be small or large, structured or unstructured, and can\ninclude characters not permitted by labels. It is possible to use labels as \nwell as annotations in the metadata of the same object.\n\nAnnotations, like labels, are key/value maps:\n\n```json\n\"metadata\": {\n  \"annotations\": {\n    \"key1\" : \"value1\",\n    \"key2\" : \"value2\"\n  }\n}\n```\n\n\nThe keys and the values in the map must be strings. In other words, you cannot use\nnumeric, boolean, list or other types for either the keys or the values.\n\n\nHere are some examples of information that could be recorded in annotations:\n\n* Fields managed by a declarative configuration layer. Attaching these fields\n  as annotations distinguishes them from default values set by clients or\n  servers, and from auto-generated fields and fields set by\n  auto-sizing or auto-scaling systems.\n\n* Build, release, or image information like timestamps, release IDs, git branch,\n  PR numbers, image hashes, and registry address.\n\n* Pointers to logging, monitoring, analytics, or audit repositories.\n\n* Client library or tool information that can be used for debugging purposes:\n  for example, name, version, and build information.\n\n* User or tool/system provenance information, such as URLs of related objects\n  from other ecosystem components.\n\n* Lightweight rollout tool metadata: for example, config or checkpoints.\n\n* Phone or pager numbers of persons responsible, or directory entries that\n  specify where that information can be found, such as a team web site.\n\n* Directives from the end-user to the implementations to modify behavior or\n  engage non-standard features.\n\nInstead of using annotations, you could store this type of information in an\nexternal database or directory, but that would make it much harder to produce\nshared client libraries and tools for deployment, management, introspection,\nand the like.\n\n## Syntax and character set\n\n_Annotations_ are key/value pairs. Valid annotation keys have two segments: an optional prefix and name, separated by a slash (`/`). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character (`[a-z0-9A-Z]`) with dashes (`-`), underscores (`_`), dots (`.`), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (`.`), not longer than 253 characters in total, followed by a slash (`/`).\n\nIf the prefix is omitted, the annotation Key is presumed to be private to the user. Automated system components (e.g. `kube-scheduler`, `kube-controller-manager`, `kube-apiserver`, `kubectl`, or other third-party automation) which add annotations to end-user objects must specify a prefix.\n\nThe `kubernetes.io/` and `k8s.io/` prefixes are reserved for Kubernetes core components.\n\nValid annotation values have no character set restrictions — unlike label values, annotation values may contain any string, including special characters, whitespace, and structured data such as JSON or YAML.\nIf you plan to store binary data (such as [CBOR](https://cbor.io/)),\nthe Kubernetes project recommends that you base64 encode it.\nHowever, the total size of **all** annotations on a single object (keys and values combined) must not exceed 256 KiB.\n\nFor example, here's a manifest for a Pod that has the annotation `imageregistry: https://hub.docker.com/` :\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: annotations-demo\n  annotations:\n    imageregistry: \"https://hub.docker.com/\"\nspec:\n  conta\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/overview/working-with-objects/annotations.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/annotations.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/",
          "line_start": null,
          "line_end": null,
          "quote": "Annotations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:attaching-metadata-to-objects",
      "type": "concept",
      "title": "Attaching metadata to objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/annotations.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:syntax-and-character-set",
      "type": "concept",
      "title": "Syntax and character set",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/annotations.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/",
          "line_start": 2434,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/storage-version",
      "type": "page",
      "title": "Storage Versions",
      "summary": "",
      "body": "\nThe Kubernetes API server stores objects, relying on an etcd-compatible backing\nstore (often, the backing storage is etcd itself). Each object is serialized\nusing a particular version of that API type; for example, the v1 representation\nof a ConfigMap. Kubernetes uses the term _storage version_ to describe how an\nobject is stored in your cluster.\n\nThe Kubernetes API also relies on automatic conversion; for example, if you have\na HorizontalPodAutoscaler, then you can interact with that\nHorizontalPodAutoscaler using any mix of the v1 and v2 versions of the\nHorizontalPodAutoscaler API. Kubernetes is responsible for converting each API\ncall so that clients do not see what version is actually serialized. \n\nFor cluster administrators, object storage version is an important concept to\nunderstand since it is what links the API representation of the object to the\nactual encoding in the storage backend. This can be important for when the\nunderlying binary encodings of the object matter, such as for encryption at\nrest, or API deprecation.\n\nThe same API may have multiple storage versions that the API Server can then\nconvert to an object schema. A single object that is part of that resource must\nonly have one storage version at any time. This means that the API Server is\naware of the binary encodings of the objects and is able to convert between all\nthe stored versions to the API Representation of the object dynamically.\n\nThe version of an object is separate from the storage version entirely. For\nexample, a `v1alpha1` and `v1beta1` API Object for the same Resource will be\nencoded the same in storage as long as the storage version has not been updated\nbetween the two objects.\n\n\n\n## Storage version to resource mapping\n\nEvery resource will have 1 active storage version at any point in time, meaning\nthat any write to an object will store the object at that storage version. The\nstorage version can be updated however, making it so that objects can be stored\nat differing versions. One object will only be stored at one storage version at\nany time.\n\nReads from the API Server will convert the stored data to the API representation\nof the object. This makes it so that old storage versions can sit indefinitely\nas long as no updates occur to the object. Writes, on the other hand, will\nconvert the stored object to the new representation upon update. \n\n## Storage versions for custom resources {#CustomResourceDefinition-storage-version}\n\n[Custom\nresources](/docs/concepts/extend-kubernetes/api-extension/custom-resources/#storage) are\ndefined dynamically, and as such differ from built in Kubernetes types with\ntheir storage version. Builtin objects generally have their storage encoding\ndefined separately from their API types, where the stored object acts as a hub\nand the specific version of the resource does not matter apart from being a\nfield in the object schema. \n\nHowever, for custom resources, a certain version of the resource must be set as\nthe storage version. The schema defined by that specific version of the custom\nresource will be used as the encoding of the resource in the storage layer. See\nthe [advanced CRD\nfeatureset](/docs/concepts/extend-kubernetes/api-extension/custom-resources/#advanced-features-and-flexibility)\nfor more detailed information on the API setup and versioning.\n\nFor example see this CustomResourceDefinition for _crontabs_:\n\n```yaml\napiVersion: apiextensions.k8s.io/v1\nkind: CustomResourceDefinition\nmetadata:\n  name: crontabs.example.com\nspec:\n  group: example.com\n  # list of versions supported by this CustomResourceDefinition\n  versions:\n  - name: v1beta1\n    # Each version can be enabled/disabled by Served flag.\n    served: true\n    # One and only one version must be marked as the storage version.\n    storage: true\n    schema:\n      openAPIV3Schema:\n        type: object\n        properties:\n          host:\n            type: string\n          port:\n            type: string\n  - name: v1\n    served: true\n    storage: false\n    schema\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/storage-version/",
      "meta": {
        "weight": 110,
        "rel_path": "concepts/overview/working-with-objects/storage-version.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/storage-version.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/storage-version/",
          "line_start": null,
          "line_end": null,
          "quote": "Storage Versions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storage-version-to-resource-mapping",
      "type": "concept",
      "title": "Storage version to resource mapping",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/storage-version.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/storage-version/",
          "line_start": 1726,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storage-versions-for-custom-resources-customresourcedefinition-storage-version",
      "type": "concept",
      "title": "Storage versions for custom resources {#CustomResourceDefinition-storage-version}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/storage-version.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/storage-version/",
          "line_start": 2398,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-storage-versions-are-relevant-to-encryption-at-rest",
      "type": "concept",
      "title": "How storage versions are relevant to encryption at rest",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/storage-version.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/storage-version/",
          "line_start": 5361,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-to-a-different-storage-version",
      "type": "concept",
      "title": "Migrating to a different storage version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/storage-version.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/storage-version/",
          "line_start": 6078,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/owners-dependents",
      "type": "page",
      "title": "Owners and Dependents",
      "summary": "",
      "body": "\n\nIn Kubernetes, some [objects](#gloss:object) are\n*owners* of other objects. For example, a\n[ReplicaSet](#gloss:replica-set) is the owner\nof a set of Pods. These owned objects are *dependents* of their owner.\n\nOwnership is different from the [labels and selectors](/docs/concepts/overview/working-with-objects/labels/)\nmechanism that some resources also use. For example, consider a Service that\ncreates `EndpointSlice` objects. The Service uses [labels](#gloss:label) to allow the control plane to\ndetermine which `EndpointSlice` objects are used for that Service. In addition\nto the labels, each `EndpointSlice` that is managed on behalf of a Service has\nan owner reference. Owner references help different parts of Kubernetes avoid\ninterfering with objects they don’t control.\n\n## Owner references in object specifications\n\nDependent objects have a `metadata.ownerReferences` field that references their\nowner object. A valid owner reference consists of the object name and a [UID](#gloss:uid) \nwithin the same [namespace](#gloss:namespace) as the dependent object. Kubernetes sets the value of\nthis field automatically for objects that are dependents of other objects like\nReplicaSets, DaemonSets, Deployments, Jobs and CronJobs, and ReplicationControllers.\nYou can also configure these relationships manually by changing the value of\nthis field. However, you usually don't need to and can allow Kubernetes to\nautomatically manage the relationships.\n\nDependent objects also have an `ownerReferences.blockOwnerDeletion` field that\ntakes a boolean value and controls whether specific dependents can block garbage\ncollection from deleting their owner object. Kubernetes automatically sets this\nfield to `true` if a [controller](#gloss:controller) \n(for example, the Deployment controller) sets the value of the\n`metadata.ownerReferences` field. You can also set the value of the\n`blockOwnerDeletion` field manually to control which dependents block garbage\ncollection.\n\nA Kubernetes admission controller controls user access to change this field for\ndependent resources, based on the delete permissions of the owner. This control\nprevents unauthorized users from delaying owner object deletion.\n\n\n> **Note:** Cross-namespace owner references are disallowed by design.\nNamespaced dependents can specify cluster-scoped or namespaced owners.\nA namespaced owner **must** exist in the same namespace as the dependent.\nIf it does not, the owner reference is treated as absent, and the dependent\nis subject to deletion once all owners are verified absent.\n\nCluster-scoped dependents can only specify cluster-scoped owners.\nIn v1.20+, if a cluster-scoped dependent specifies a namespaced kind as an owner,\nit is treated as having an unresolvable owner reference, and is not able to be garbage collected.\n\nIn v1.20+, if the garbage collector detects an invalid cross-namespace `ownerReference`,\nor a cluster-scoped dependent with an `ownerReference` referencing a namespaced kind, a warning Event \nwith a reason of `OwnerRefInvalidNamespace` and an `involvedObject` of the invalid dependent is reported.\nYou can check for that kind of Event by running\n`kubectl get events -A --field-selector=reason=OwnerRefInvalidNamespace`.\n\n\n## Ownership and finalizers\n\nWhen you tell Kubernetes to delete a resource, the API server allows the\nmanaging controller to process any [finalizer rules](/docs/concepts/overview/working-with-objects/finalizers/)\nfor the resource. [Finalizers](#gloss:finalizer)\nprevent accidental deletion of resources your cluster may still need to function\ncorrectly. For example, if you try to delete a [PersistentVolume](/docs/concepts/storage/persistent-volumes/) that is still\nin use by a Pod, the deletion does not happen immediately because the\n`PersistentVolume` has the `kubernetes.io/pv-protection` finalizer on it.\nInstead, the [volume](/docs/concepts/storage/volumes/) remains in the `Terminating` status until Kubernetes clears\nthe finalizer, which only happens after the `Persiste\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/overview/working-with-objects/owners-dependents.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": null,
          "line_end": null,
          "quote": "Owners and Dependents"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:owner-references-in-object-specifications",
      "type": "concept",
      "title": "Owner references in object specifications",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 892,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ownership-and-finalizers",
      "type": "concept",
      "title": "Ownership and finalizers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 3434,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/labels",
      "type": "page",
      "title": "Labels and Selectors",
      "summary": "",
      "body": "\n\n_Labels_ are key/value pairs that are attached to\n[objects](#gloss:object) such as Pods.\nLabels are intended to be used to specify identifying attributes of objects\nthat are meaningful and relevant to users, but do not directly imply semantics\nto the core system. Labels can be used to organize and to select subsets of\nobjects. Labels can be attached to objects at creation time and subsequently\nadded and modified at any time. Each object can have a set of key/value labels\ndefined. Each Key must be unique for a given object.\n\n```json\n\"metadata\": {\n  \"labels\": {\n    \"key1\" : \"value1\",\n    \"key2\" : \"value2\"\n  }\n}\n```\n\nLabels allow for efficient queries and watches and are ideal for use in UIs\nand CLIs. Non-identifying information should be recorded using\n[annotations](/docs/concepts/overview/working-with-objects/annotations/).\n\n\n\n## Motivation\n\nLabels enable users to map their own organizational structures onto system objects\nin a loosely coupled fashion, without requiring clients to store these mappings.\n\nService deployments and batch processing pipelines are often multi-dimensional entities\n(e.g., multiple partitions or deployments, multiple release tracks, multiple tiers,\nmultiple micro-services per tier). Management often requires cross-cutting operations,\nwhich breaks encapsulation of strictly hierarchical representations, especially rigid\nhierarchies determined by the infrastructure rather than by users.\n\nExample labels:\n\n* `\"release\" : \"stable\"`, `\"release\" : \"canary\"`\n* `\"environment\" : \"dev\"`, `\"environment\" : \"qa\"`, `\"environment\" : \"production\"`\n* `\"tier\" : \"frontend\"`, `\"tier\" : \"backend\"`, `\"tier\" : \"cache\"`\n* `\"partition\" : \"customerA\"`, `\"partition\" : \"customerB\"`\n* `\"track\" : \"daily\"`, `\"track\" : \"weekly\"`\n\nThese are examples of\n[commonly used labels](/docs/concepts/overview/working-with-objects/common-labels/);\nyou are free to develop your own conventions.\nKeep in mind that label Key must be unique for a given object.\n\n## Syntax and character set\n\n_Labels_ are key/value pairs. Valid label keys have two segments: an optional\nprefix and name, separated by a slash (`/`). The name segment is required and\nmust be 63 characters or less, beginning and ending with an alphanumeric\ncharacter (`[a-z0-9A-Z]`) with dashes (`-`), underscores (`_`), dots (`.`),\nand alphanumerics between. The prefix is optional. If specified, the prefix\nmust be a DNS subdomain: a series of DNS labels separated by dots (`.`),\nnot longer than 253 characters in total, followed by a slash (`/`).\n\nIf the prefix is omitted, the label Key is presumed to be private to the user.\nAutomated system components (e.g. `kube-scheduler`, `kube-controller-manager`,\n`kube-apiserver`, `kubectl`, or other third-party automation) which add labels\nto end-user objects must specify a prefix.\n\nThe `kubernetes.io/` and `k8s.io/` prefixes are\n[reserved](/docs/reference/labels-annotations-taints/) for Kubernetes core components.\n\nValid label value:\n\n* must be 63 characters or less (can be empty),\n* unless empty, must begin and end with an alphanumeric character (`[a-z0-9A-Z]`),\n* could contain dashes (`-`), underscores (`_`), dots (`.`), and alphanumerics between.\n\nFor example, here's a manifest for a Pod that has two labels\n`environment: production` and `app: nginx`:\n\n```yaml\napiVersion: v1\nkind: Pod\nmetadata:\n  name: label-demo\n  labels:\n    environment: production\n    app: nginx\nspec:\n  containers:\n  - name: nginx\n    image: nginx:1.14.2\n    ports:\n    - containerPort: 80\n```\n\n## Label selectors\n\nUnlike [names and UIDs](/docs/concepts/overview/working-with-objects/names/), labels\ndo not provide uniqueness. In general, we expect many objects to carry the same label(s).\n\nVia a _label selector_, the client/user can identify a set of objects.\nThe label selector is the core grouping primitive in Kubernetes.\n\nThe API currently supports two types of selectors: _equality-based_ and _set-based_.\nA label selector can be made of multiple _requirements_ which are comma-separated.\nI\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/overview/working-with-objects/labels.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": null,
          "line_end": null,
          "quote": "Labels and Selectors"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:label-selectors",
      "type": "concept",
      "title": "Label selectors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 3561,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-labels-effectively",
      "type": "concept",
      "title": "Using labels effectively",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 11145,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-labels",
      "type": "concept",
      "title": "Updating labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 13707,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:equality-based-requirement",
      "type": "concept",
      "title": "_Equality-based_ requirement",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 4795,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-based-requirement",
      "type": "concept",
      "title": "_Set-based_ requirement",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 6129,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-and-watch-filtering",
      "type": "concept",
      "title": "LIST and WATCH filtering",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 7493,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-references-in-api-objects",
      "type": "concept",
      "title": "Set references in API objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 8835,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/object-management",
      "type": "page",
      "title": "Kubernetes Object Management",
      "summary": "",
      "body": "\nThe `kubectl` command-line tool supports several different ways to create and manage\nKubernetes [objects](#gloss:object). This document provides an overview of the different\napproaches. Read the [Kubectl book](https://kubectl.docs.kubernetes.io) for\ndetails of managing objects by Kubectl.\n\n\n\n## Management techniques\n\n\n> **Warning:** A Kubernetes object should be managed using only one technique. Mixing\nand matching techniques for the same object results in undefined behavior.\n\n\n| Management technique             | Operates on          |Recommended environment | Supported writers  | Learning curve |\n|----------------------------------|----------------------|------------------------|--------------------|----------------|\n| Imperative commands              | Live objects         | Development projects   | 1+                 | Lowest         |\n| Imperative object configuration  | Individual files     | Production projects    | 1                  | Moderate       |\n| Declarative object configuration | Directories of files | Production projects    | 1+                 | Highest        |\n\n## Imperative commands\n\nWhen using imperative commands, a user operates directly on live objects\nin a cluster. The user provides operations to\nthe `kubectl` command as arguments or flags.\n\nThis is the recommended way to get started or to run a one-off task in\na cluster. Because this technique operates directly on live\nobjects, it provides no history of previous configurations.\n\n### Examples\n\nRun an instance of the nginx container by creating a Deployment object:\n\n```sh\nkubectl create deployment nginx --image nginx\n```\n\n### Trade-offs\n\nAdvantages compared to object configuration:\n\n- Commands are expressed as a single action word.\n- Commands require only a single step to make changes to the cluster.\n\nDisadvantages compared to object configuration:\n\n- Commands do not integrate with change review processes.\n- Commands do not provide an audit trail associated with changes.\n- Commands do not provide a source of records except for what is live.\n- Commands do not provide a template for creating new objects.\n\n## Imperative object configuration\n\nIn imperative object configuration, the kubectl command specifies the\noperation (create, replace, etc.), optional flags and at least one file\nname. The file specified must contain a full definition of the object\nin YAML or JSON format.\n\nSee the [API reference](/docs/reference/generated/kubernetes-api//)\nfor more details on object definitions.\n\n\n> **Warning:** The imperative `replace` command replaces the existing\nspec with the newly provided one, dropping all changes to the object missing from\nthe configuration file.  This approach should not be used with resource\ntypes whose specs are updated independently of the configuration file.\nServices of type `LoadBalancer`, for example, have their `externalIPs` field updated\nindependently from the configuration by the cluster.\n\n\n### Examples\n\nCreate the objects defined in a configuration file:\n\n```sh\nkubectl create -f nginx.yaml\n```\n\nDelete the objects defined in two configuration files:\n\n```sh\nkubectl delete -f nginx.yaml -f redis.yaml\n```\n\nUpdate the objects defined in a configuration file by overwriting\nthe live configuration:\n\n```sh\nkubectl replace -f nginx.yaml\n```\n\n### Trade-offs\n\nAdvantages compared to imperative commands:\n\n- Object configuration can be stored in a source control system such as Git.\n- Object configuration can integrate with processes such as reviewing changes before push and audit trails.\n- Object configuration provides a template for creating new objects.\n\nDisadvantages compared to imperative commands:\n\n- Object configuration requires basic understanding of the object schema.\n- Object configuration requires the additional step of writing a YAML file.\n\nAdvantages compared to declarative object configuration:\n\n- Imperative object configuration behavior is simpler and easier to understand.\n- As of Kubernetes version 1.5, imperative object configuration \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/overview/working-with-objects/object-management.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Object Management"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:management-techniques",
      "type": "concept",
      "title": "Management techniques",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 357,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imperative-commands",
      "type": "concept",
      "title": "Imperative commands",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 1179,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imperative-object-configuration",
      "type": "concept",
      "title": "Imperative object configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 2195,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:declarative-object-configuration",
      "type": "concept",
      "title": "Declarative object configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 4387,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/overview/working-with-objects/_index",
      "type": "page",
      "title": "Objects In Kubernetes",
      "summary": "Kubernetes objects are persistent entities in the Kubernetes system. Kubernetes uses these entities to represent the state of your cluster. Learn about the Kubernetes object model and how to work with these objects.\n",
      "body": "\n\nThis page explains how Kubernetes objects are represented in the Kubernetes API, and how you can\nexpress them in `.yaml` format.\n\n\n\n## Understanding Kubernetes objects {#kubernetes-objects}\n\n*Kubernetes objects* are persistent entities in the Kubernetes system. Kubernetes uses these\nentities to represent the state of your cluster. Specifically, they can describe:\n\n* What containerized applications are running (and on which nodes)\n* The resources available to those applications\n* The policies around how those applications behave, such as restart policies, upgrades, and fault-tolerance\n\nA Kubernetes object is a \"record of intent\"--once you create the object, the Kubernetes system\nwill constantly work to ensure that the object exists. By creating an object, you're effectively\ntelling the Kubernetes system what you want your cluster's workload to look like; this is your\ncluster's *desired state*.\n\nTo work with Kubernetes objects—whether to create, modify, or delete them—you'll need to use the\n[Kubernetes API](/docs/concepts/overview/kubernetes-api/). When you use the `kubectl` command-line\ninterface, for example, the CLI makes the necessary Kubernetes API calls for you. You can also use\nthe Kubernetes API directly in your own programs using one of the\n[Client Libraries](/docs/reference/using-api/client-libraries/).\n\n### Object spec and status\n\nAlmost every Kubernetes object includes two nested object fields that govern\nthe object's configuration: the object *`spec`* and the object *`status`*.\nFor objects that have a `spec`, you have to set this when you create the object,\nproviding a description of the characteristics you want the resource to have:\nits _desired state_.\n\nThe `status` describes the _current state_ of the object, supplied and updated\nby the Kubernetes system and its components. The Kubernetes\n[control plane](#gloss:control-plane) continually\nand actively manages every object's actual state to match the desired state you\nsupplied.\n\nFor example: in Kubernetes, a Deployment is an object that can represent an\napplication running on your cluster. When you create the Deployment, you\nmight set the Deployment `spec` to specify that you want three replicas of\nthe application to be running. The Kubernetes system reads the Deployment\nspec and starts three instances of your desired application--updating\nthe status to match your spec. If any of those instances should fail\n(a status change), the Kubernetes system responds to the difference\nbetween spec and status by making a correction--in this case, starting\na replacement instance.\n\nFor more information on the object spec, status, and metadata, see the\n[Kubernetes API Conventions](https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md).\n\n### Describing a Kubernetes object\n\nWhen you create an object in Kubernetes, you must provide the object spec that describes its\ndesired state, as well as some basic information about the object (such as a name). When you use\nthe Kubernetes API to create the object (either directly or via `kubectl`), that API request must\ninclude that information as JSON in the request body.\nMost often, you provide the information to `kubectl` in a file known as a _manifest_.\nBy convention, manifests are YAML (you could also use JSON format).\nTools such as `kubectl` convert the information from a manifest into JSON or another supported\nserialization format when making the API request over HTTP.\n\nHere's an example manifest that shows the required fields and object spec for a Kubernetes\nDeployment:\n\n\n\nOne way to create a Deployment using a manifest file like the one above is to use the\n[`kubectl apply`](/docs/reference/generated/kubectl/kubectl-commands#apply) command\nin the `kubectl` command-line interface, passing the `.yaml` file as an argument. Here's an example:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/deployment.yaml\n```\n\nThe output is similar to this:\n\n```\ndeployment.apps/nginx-deployment created\n```\n\n### \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "concepts/overview/working-with-objects/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Objects In Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-kubernetes-objects-kubernetes-objects",
      "type": "concept",
      "title": "Understanding Kubernetes objects {#kubernetes-objects}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 165,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:server-side-field-validation",
      "type": "concept",
      "title": "Server side field validation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 5985,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:object-spec-and-status",
      "type": "concept",
      "title": "Object spec and status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 1367,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:describing-a-kubernetes-object",
      "type": "concept",
      "title": "Describing a Kubernetes object",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 2828,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/policy/limit-range",
      "type": "page",
      "title": "Limit Ranges",
      "summary": "",
      "body": "\n\nBy default, containers run with unbounded\n[compute resources](/docs/concepts/configuration/manage-resources-containers/) on a Kubernetes cluster.\nUsing  Kubernetes [resource quotas](/docs/concepts/policy/resource-quotas/),\nadministrators (also termed _cluster operators_) can restrict consumption and creation\nof cluster resources (such as CPU time, memory, and persistent storage) within a specified\n[namespace](#gloss:namespace).\nWithin a namespace, a [Pod](#gloss:Pod) can consume as much CPU and memory as is allowed by the ResourceQuotas that apply to that namespace.\nAs a cluster operator, or as a namespace-level administrator, you might also be concerned\nabout making sure that a single object cannot monopolize all available resources within a namespace.\n\nA LimitRange is a policy to constrain the resource allocations (limits and requests) that you can specify for\neach applicable object kind (such as Pod or [PersistentVolumeClaim](#gloss:persistent-volume-claim)) in a namespace.\n\n\n\nA _LimitRange_ provides constraints that can:\n\n- Enforce minimum and maximum compute resources usage per Pod or Container in a namespace.\n- Enforce minimum and maximum storage request per\n  [PersistentVolumeClaim](#gloss:persistent-volume-claim) in a namespace.\n- Enforce a ratio between request and limit for a resource in a namespace.\n- Set default request/limit for compute resources in a namespace and automatically\n  inject them to Containers at runtime.\n\nKubernetes constrains resource allocations to Pods in a particular namespace\nwhenever there is at least one LimitRange object in that namespace.\n\nThe name of a LimitRange object must be a valid\n[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).\n\n## Constraints on resource limits and requests\n\n- The administrator creates a LimitRange in a namespace.\n- Users create (or try to create) objects in that namespace, such as Pods or\n  PersistentVolumeClaims.\n- First, the LimitRange admission controller applies default request and limit values\n  for all Pods (and their containers) that do not set compute resource requirements.\n- Second, the LimitRange tracks usage to ensure it does not exceed resource minimum,\n  maximum and ratio defined in any LimitRange present in the namespace.\n- If you attempt to create or update an object (Pod or PersistentVolumeClaim) that violates\n  a LimitRange constraint, your request to the API server will fail with an HTTP status\n  code `403 Forbidden` and a message explaining the constraint that has been violated.\n- If you add a LimitRange in a namespace that applies to compute-related resources\n  such as `cpu` and `memory`, you must specify requests or limits for those values.\n  Otherwise, the system may reject Pod creation.\n- LimitRange validations occur only at Pod admission stage, not on running Pods.\n  If you add or modify a LimitRange, the Pods that already exist in that namespace\n  continue unchanged.\n- If two or more LimitRange objects exist in the namespace, it is not deterministic\n  which default value will be applied.\n\n## LimitRange and admission checks for Pods\n\nA LimitRange does **not** check the consistency of the default values it applies.\nThis means that a default value for the _limit_ that is set by LimitRange may be\nless than the _request_ value specified for the container in the spec that a client\nsubmits to the API server. If that happens, the final Pod will not be schedulable.\n\nFor example, you define a LimitRange with below manifest:\n\n> **Note:** The following examples operate within the default namespace of your cluster, as the namespace\nparameter is undefined and the LimitRange scope is limited to the namespace level.\nThis implies that any references or operations within these examples will interact\nwith elements within the default namespace of your cluster. You can override the\noperating namespace by configuring namespace in the `metadata.namespace` field.\n\n\n\n\nalong with a Pod that declares a CPU resource reques\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/policy/limit-range.md"
      },
      "provenance": [
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": null,
          "line_end": null,
          "quote": "Limit Ranges"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:constraints-on-resource-limits-and-requests",
      "type": "concept",
      "title": "Constraints on resource limits and requests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": 1906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitrange-and-admission-checks-for-pods",
      "type": "concept",
      "title": "LimitRange and admission checks for Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": 3235,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-resource-constraints",
      "type": "concept",
      "title": "Example resource constraints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": 4851,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/policy/resource-quotas",
      "type": "page",
      "title": "Resource Quotas",
      "summary": "",
      "body": "\n\nWhen several users or teams share a cluster with a fixed number of nodes,\nthere is a concern that one team could use more than its fair share of resources.\n\n_Resource quotas_ are a tool for administrators to address this concern.\n\nA resource quota, defined by a ResourceQuota object, provides constraints that limit\naggregate resource consumption per [namespace](#gloss:namespace). A ResourceQuota can also\nlimit the [quantity of objects that can be created in a namespace](#quota-on-object-count) by API kind, as well as the total\namount of [infrastructure resources](#gloss:infrastructure-resource) that may be consumed by\nAPI objects found in that namespace.\n\n\n> **Caution:** Neither contention nor changes to quota will affect already created resources.\n\n\n\n\n## How Kubernetes ResourceQuotas work\n\nResourceQuotas work like this:\n\n- Different teams work in different namespaces. This separation can be enforced with\n  [RBAC](/docs/reference/access-authn-authz/rbac/) or any other [authorization](/docs/reference/access-authn-authz/authorization/)\n  mechanism.\n\n- A cluster administrator creates at least one ResourceQuota for each namespace.\n  - To make sure the enforcement stays enforced, the cluster administrator should also restrict access to delete or update\n    that ResourceQuota; for example, by defining a [ValidatingAdmissionPolicy](/docs/reference/access-authn-authz/validating-admission-policy/).\n\n- Users create resources (pods, services, etc.) in the namespace, and the quota system\n  tracks usage to ensure it does not exceed hard resource limits defined in a ResourceQuota.\n\n  You can apply a [scope](#quota-scopes) to a ResourceQuota to limit where it applies,\n\n- If creating or updating a resource violates a quota constraint, the control plane rejects that request with HTTP\n  status code `403 Forbidden`. The error includes a message explaining the constraint that would have been violated.\n\n- If quotas are enabled in a namespace for [resource](#gloss:infrastructure-resource)\n  such as `cpu` and `memory`, users must specify requests or limits for those values when they define a Pod; otherwise,\n  the quota system may reject pod creation.\n\n  The resource quota [walkthrough](/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/)\n  shows an example of how to avoid this problem.\n\n\n> **Note:** * You can define a [LimitRange](/docs/concepts/policy/limit-range/)\n  to force defaults on pods that make no compute resource requirements (so that users don't have to remember to do that).\n\n\nYou often do not create Pods directly; for example, you more usually create a [workload management](/docs/concepts/workloads/controllers/)\nobject such as a [deployment](#gloss:deployment). If you create a Deployment that tries to use more\nresources than are available, the creation of the Deployment (or other workload management object) **succeeds**, but\nthe Deployment may not be able to get all of the Pods it manages to exist. In that case you can check the status of\nthe Deployment, for example with `kubectl describe`, to see what has happened.\n\n- For `cpu` and `memory` resources, ResourceQuotas enforce that **every**\n  (new) pod in that namespace sets a limit for that resource.\n  If you enforce a resource quota in a namespace for either `cpu` or `memory`,\n  you and other clients, **must** specify either `requests` or `limits` for that resource,\n  for every new Pod you submit. If you don't, the control plane may reject admission\n  for that Pod.\n- For other resources: ResourceQuota works and will ignore pods in the namespace without\n  setting a limit or request for that resource. It means that you can create a new pod\n  without limit/request for ephemeral storage if the resource quota limits the ephemeral\n  storage of this namespace.\n\nYou can use a [LimitRange](/docs/concepts/policy/limit-range/) to automatically set\na default request for these resources.\n\nThe name of a ResourceQuota object must be a valid\n[DNS subdomain name](/docs/concepts/\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/policy/resource-quotas.md"
      },
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": null,
          "line_end": null,
          "quote": "Resource Quotas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-kubernetes-resourcequotas-work",
      "type": "concept",
      "title": "How Kubernetes ResourceQuotas work",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 875,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-resource-quota",
      "type": "concept",
      "title": "Enabling Resource Quota",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 4804,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:types-of-resource-quota",
      "type": "concept",
      "title": "Types of resource quota",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 5188,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:viewing-and-setting-quotas",
      "type": "concept",
      "title": "Viewing and Setting Quotas",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 14378,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quota-and-cluster-capacity",
      "type": "concept",
      "title": "Quota and Cluster Capacity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 17034,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quota-scopes",
      "type": "concept",
      "title": "Quota scopes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 17987,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quota-for-infrastructure-resources-compute-resource-quota",
      "type": "concept",
      "title": "Quota for infrastructure resources {#compute-resource-quota}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 5353,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quota-for-extended-resources",
      "type": "concept",
      "title": "Quota for extended resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 6359,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quota-for-dra-resource-claims",
      "type": "concept",
      "title": "Quota for DRA resource claims",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 7126,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quota-for-storage",
      "type": "concept",
      "title": "Quota for storage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 8366,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quota-on-object-count",
      "type": "concept",
      "title": "Quota on object count",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 10626,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:best-effort-pods-scope-quota-scope-best-effort",
      "type": "concept",
      "title": "Best effort Pods scope {#quota-scope-best-effort}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 20369,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:not-best-effort-pods-scope-quota-scope-non-best-effort",
      "type": "concept",
      "title": "Not-best-effort Pods scope {#quota-scope-non-best-effort}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 20681,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:non-terminating-pods-scope-quota-scope-non-terminating",
      "type": "concept",
      "title": "Non-terminating Pods scope {#quota-scope-non-terminating}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 21065,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:terminating-pods-scope-quota-scope-terminating",
      "type": "concept",
      "title": "Terminating Pods scope {#quota-scope-terminating}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 21529,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cross-namespace-pod-affinity-scope",
      "type": "concept",
      "title": "Cross-namespace pod affinity scope",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 22005,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:priorityclass-scope-resource-quota-per-priorityclass",
      "type": "concept",
      "title": "PriorityClass scope {#resource-quota-per-priorityclass}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 24166,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeattributesclass-scope-quota-scope-volume-attributes-class",
      "type": "concept",
      "title": "VolumeAttributesClass scope {#quota-scope-volume-attributes-class}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 29060,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/policy/pid-limiting",
      "type": "page",
      "title": "Process ID Limits And Reservations",
      "summary": "",
      "body": "\n\n\n\nKubernetes allow you to limit the number of process IDs (PIDs) that a\n[Pod](#gloss:Pod) can use.\nYou can also reserve a number of allocatable PIDs for each [node](#gloss:node)\nfor use by the operating system and daemons (rather than by Pods).\n\n\n\nProcess IDs (PIDs) are a fundamental resource on nodes. It is trivial to hit the\ntask limit without hitting any other resource limits, which can then cause\ninstability to a host machine.\n\nCluster administrators require mechanisms to ensure that Pods running in the\ncluster cannot induce PID exhaustion that prevents host daemons (such as the\n[kubelet](#gloss:kubelet) or\n[kube-proxy](#gloss:kube-proxy),\nand potentially also the container runtime) from running.\nIn addition, it is important to ensure that PIDs are limited among Pods in order\nto ensure they have limited impact on other workloads on the same node.\n\n\n> **Note:** On certain Linux installations, the operating system sets the PIDs limit to a low default,\nsuch as `32768`. Consider raising the value of `/proc/sys/kernel/pid_max`.\n\n\nYou can configure a kubelet to limit the number of PIDs a given Pod can consume.\nFor example, if your node's host OS is set to use a maximum of `262144` PIDs and\nexpect to host less than `250` Pods, one can give each Pod a budget of `1000`\nPIDs to prevent using up that node's overall number of available PIDs. If the\nadmin wants to overcommit PIDs similar to CPU or memory, they may do so as well\nwith some additional risks. Either way, a single Pod will not be able to bring\nthe whole machine down. This kind of resource limiting helps to prevent simple\nfork bombs from affecting operation of an entire cluster.\n\nPer-Pod PID limiting allows administrators to protect one Pod from another, but\ndoes not ensure that all Pods scheduled onto that host are unable to impact the node overall.\nPer-Pod limiting also does not protect the node agents themselves from PID exhaustion.\n\nYou can also reserve an amount of PIDs for node overhead, separate from the\nallocation to Pods. This is similar to how you can reserve CPU, memory, or other\nresources for use by the operating system and other facilities outside of Pods\nand their containers.\n\nPID limiting is an important sibling to [compute\nresource](/docs/concepts/configuration/manage-resources-containers/) requests\nand limits. However, you specify it in a different way: rather than defining a\nPod's resource limit in the `.spec` for a Pod, you configure the limit as a\nsetting on the kubelet. Pod-defined PID limits are not currently supported.\n\n\n> **Caution:** This means that the limit that applies to a Pod may be different depending on\nwhere the Pod is scheduled. To make things simple, it's easiest if all Nodes use\nthe same PID resource limits and reservations.\n\n\n## Node PID limits\n\nKubernetes allows you to reserve a number of process IDs for the system use. To\nconfigure the reservation, use the parameter `pid=<number>` in the\n`--system-reserved` and `--kube-reserved` command line options to the kubelet.\nThe value you specified declares that the specified number of process IDs will\nbe reserved for the system as a whole and for Kubernetes system daemons\nrespectively.\n\n## Pod PID limits\n\nKubernetes allows you to limit the number of processes running in a Pod. You\nspecify this limit at the node level, rather than configuring it as a resource\nlimit for a particular Pod. Each Node can have a different PID limit.  \nTo configure the limit, you can specify the command line parameter `--pod-max-pids`\nto the kubelet, or set `PodPidsLimit` in the kubelet\n[configuration file](/docs/tasks/administer-cluster/kubelet-config-file/).\n\n## PID based eviction\n\nYou can configure kubelet to start terminating a Pod when it is misbehaving and consuming abnormal amount of resources.\nThis feature is called eviction. You can\n[Configure Out of Resource Handling](/docs/concepts/scheduling-eviction/node-pressure-eviction/)\nfor various eviction signals.\nUse `pid.available` eviction signal to configure th\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
      "meta": {
        "weight": 40,
        "rel_path": "concepts/policy/pid-limiting.md"
      },
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": null,
          "line_end": null,
          "quote": "Process ID Limits And Reservations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-pid-limits",
      "type": "concept",
      "title": "Node PID limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": 3014,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-pid-limits",
      "type": "concept",
      "title": "Pod PID limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": 3426,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pid-based-eviction",
      "type": "concept",
      "title": "PID based eviction",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": 3886,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/policy/_index",
      "type": "page",
      "title": "Policies",
      "summary": "Manage security and best-practices with policies.",
      "body": "\n\nKubernetes policies are configurations that manage other configurations or runtime behaviors. Kubernetes offers various forms of policies, described below:\n\n\n\n## Apply policies using API objects\n\n Some API objects act as policies. Here are some examples:\n* [NetworkPolicies](/docs/concepts/services-networking/network-policies/) can be used to restrict ingress and egress traffic for a workload.\n* [LimitRanges](/docs/concepts/policy/limit-range/) manage resource allocation constraints across different object kinds.\n* [ResourceQuotas](/docs/concepts/policy/resource-quotas/) limit resource consumption for a [namespace](#gloss:namespace).\n\n## Apply policies using admission controllers\n\nAn [admission controller](#gloss:admission-controller)\nruns in the API server\nand can validate or mutate API requests. Some admission controllers act to apply policies.\nFor example, the [AlwaysPullImages](/docs/reference/access-authn-authz/admission-controllers/#alwayspullimages) admission controller modifies a new Pod to set the image pull policy to `Always`.\n\nKubernetes has several built-in admission controllers that are configurable via the API server `--enable-admission-plugins` flag.\n\nDetails on admission controllers, with the complete list of available admission controllers, are documented in a dedicated section:\n\n* [Admission Controllers](/docs/reference/access-authn-authz/admission-controllers/)\n\n## Apply policies using ValidatingAdmissionPolicy\n\nValidating admission policies allow configurable validation checks to be executed in the API server using the Common Expression Language (CEL). For example, a `ValidatingAdmissionPolicy` can be used to disallow use of the `latest` image tag.\n\nA `ValidatingAdmissionPolicy` operates on an API request and can be used to block, audit, and warn users about non-compliant configurations.\n\nDetails on the `ValidatingAdmissionPolicy` API, with examples, are documented in a dedicated section:\n* [Validating Admission Policy](/docs/reference/access-authn-authz/validating-admission-policy/)\n\n\n## Apply policies using dynamic admission control\n\nDynamic admission controllers (or admission webhooks) run outside the API server as separate applications that register to receive webhooks requests to perform validation or mutation of API requests. \n\nDynamic admission controllers can be used to apply policies on API requests and trigger other policy-based workflows. A dynamic admission controller can perform complex checks including those that require retrieval of other cluster resources and external data. For example, an image verification check can lookup data from OCI registries to validate the container image signatures and attestations.\n\nDetails on dynamic admission control are documented in a dedicated section:\n* [Dynamic Admission Control](/docs/reference/access-authn-authz/extensible-admission-controllers/)\n\n### Implementations {#implementations-admission-control}\n\n\n\nDynamic Admission Controllers that act as flexible policy engines are being developed in the Kubernetes ecosystem, such as:\n- [Kubewarden](https://github.com/kubewarden)\n- [Kyverno](https://kyverno.io)\n- [OPA Gatekeeper](https://github.com/open-policy-agent/gatekeeper)\n- [Polaris](https://polaris.docs.fairwinds.com/admission-controller/)\n\n## Apply policies using Kubelet configurations\n\nKubernetes allows configuring the Kubelet on each worker node.  Some Kubelet configurations act as policies:\n* [Process ID limits and reservations](/docs/concepts/policy/pid-limiting/) are used to limit and reserve allocatable PIDs.\n* [Node Resource Managers](/docs/concepts/policy/node-resource-managers/) can manage compute, memory, and device resources for latency-critical and high-throughput workloads. \n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/policy/_index/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/policy/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Policies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apply-policies-using-api-objects",
      "type": "concept",
      "title": "Apply policies using API objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apply-policies-using-admission-controllers",
      "type": "concept",
      "title": "Apply policies using admission controllers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 707,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apply-policies-using-validatingadmissionpolicy",
      "type": "concept",
      "title": "Apply policies using ValidatingAdmissionPolicy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 1500,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apply-policies-using-dynamic-admission-control",
      "type": "concept",
      "title": "Apply policies using dynamic admission control",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 2137,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apply-policies-using-kubelet-configurations",
      "type": "concept",
      "title": "Apply policies using Kubelet configurations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 3394,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:implementations-implementations-admission-control",
      "type": "concept",
      "title": "Implementations {#implementations-admission-control}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 2967,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/swap-memory-management",
      "type": "page",
      "title": "Swap memory management",
      "summary": "",
      "body": "\n\nKubernetes can be configured to use swap memory on a [node](#gloss:node),\nallowing the kernel to free up physical memory by swapping out pages to backing storage.\nThis is useful for multiple use-cases.\nFor example, nodes running workloads that can benefit from using swap,\nsuch as those that have large memory footprints but only access a portion of that memory at any given time.\nIt also helps prevent Pods from being terminated during memory pressure spikes, \nshields nodes from system-level memory spikes that might compromise its stability,\nallows for more flexible memory management on the node, and much more.\n\nTo learn about configuring swap in your cluster, read\n[Configuring swap memory on Kubernetes nodes](/docs/tutorials/cluster-management/provision-swap-memory/).\n\n\n\n## Operating system support\n\n* Linux nodes support swap; you need to configure each node to enable it.\n  By default, the kubelet will **not** start on a Linux node that has swap enabled.\n* Windows nodes require swap space.\n  By default, the kubelet does **not** start on a Windows node that has swap disabled.\n\n## How does it work?\n\nThere are a number of possible ways that one could envision swap use on a node.\nIf kubelet is already running on a node, it would need to be restarted after swap is provisioned in order to identify it.\n\nWhen kubelet starts on a node in which swap is provisioned and available\n(with the `failSwapOn: false` configuration), kubelet will:\n- Be able to start on this swap-enabled node.\n- Direct the Container Runtime Interface (CRI) implementation, often referred to as the container runtime,\nto allocate zero swap memory to Kubernetes workloads by default.\n\nSwap configuration on a node is exposed to a cluster admin via the\n[`memorySwap` in the KubeletConfiguration](/docs/reference/config-api/kubelet-config.v1).\nAs a cluster administrator, you can specify the node's behaviour in the\npresence of swap memory by setting `memorySwap.swapBehavior`.\n\n### Swap behaviors\n\nYou need to pick a [swap behavior](/docs/reference/node/swap-behavior/) to\nuse. Different nodes in your cluster can use different swap behaviors.\n\nThe swap behaviors you can choose for Linux nodes are:\n\n`NoSwap` (default)\n: Workloads running as Pods on this node do not and cannot use swap.\n\n`LimitedSwap`\n: Kubernetes workloads can utilize swap memory.\n\n\n> **Note:** If you choose the NoSwap behavior, and you configure the kubelet to tolerate\nswap space (`failSwapOn: false`), then your workloads don't use any swap.\n\nHowever, processes outside of Kubernetes-managed containers, such as systemd\nservices (and even the kubelet itself!) **can** utilize swap.\n\n\nYou can read [configuring swap memory on Kubernetes nodes](/docs/tutorials/cluster-management/provision-swap-memory/) to learn about enabling swap for your cluster.\n\n### Container runtime integration\n\nThe kubelet uses the container runtime API, and directs the container runtime to\napply specific configuration (for example, in the cgroup v2 case, `memory.swap.max`) in a manner that will\nenable the desired swap configuration for a container. For runtimes that use control groups, or cgroups,\nthe container runtime is then responsible for writing these settings to the container-level cgroup.\n\n## Observability for swap use\n\n### Node and container level metric statistics\n\nKubelet now collects node and container level metric statistics,\nwhich can be accessed at the `/metrics/resource` (which is used mainly by monitoring\ntools like Prometheus) and `/stats/summary` (which is used mainly by Autoscalers) kubelet HTTP endpoints.\nThis allows clients who can directly request the kubelet to\nmonitor swap usage and remaining swap memory when using `LimitedSwap`.\nAdditionally, a `machine_swap_bytes` metric has been added to cadvisor to show\nthe total physical swap capacity of the machine.\nSee [this page](/docs/reference/instrumentation/node-metrics/) for more info.\n\nFor example, these `/metrics/resource` are supported:\n- `node_swap_usage_bytes`: Current \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/cluster-administration/swap-memory-management.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": null,
          "line_end": null,
          "quote": "Swap memory management"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:operating-system-support",
      "type": "concept",
      "title": "Operating system support",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 845,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-does-it-work",
      "type": "concept",
      "title": "How does it work?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 1156,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:observability-for-swap-use",
      "type": "concept",
      "title": "Observability for swap use",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 3314,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:risks-and-caveats",
      "type": "concept",
      "title": "Risks and caveats",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 7814,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:good-practice-for-using-swap-in-a-kubernetes-cluster",
      "type": "concept",
      "title": "Good practice for using swap in a Kubernetes cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 13945,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:swap-behavior-details",
      "type": "concept",
      "title": "Swap behavior details",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 17506,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:swap-behaviors",
      "type": "concept",
      "title": "Swap behaviors",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 2025,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-runtime-integration",
      "type": "concept",
      "title": "Container runtime integration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 2885,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-and-container-level-metric-statistics",
      "type": "concept",
      "title": "Node and container level metric statistics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 3345,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-kubectl-top-show-swap",
      "type": "concept",
      "title": "Using `kubectl top --show-swap`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 4280,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodes-to-report-swap-capacity-as-part-of-node-status",
      "type": "concept",
      "title": "Nodes to report swap capacity as part of node status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 6107,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:swap-discovery-using-node-feature-discovery-nfd-node-feature-discovery",
      "type": "concept",
      "title": "Swap discovery using Node Feature Discovery (NFD) {#node-feature-discovery}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 6980,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memory-backed-volumes",
      "type": "concept",
      "title": "Memory-backed volumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 9342,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:evictions",
      "type": "concept",
      "title": "Evictions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 11219,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:unutilized-swap-space",
      "type": "concept",
      "title": "Unutilized swap space",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 12922,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disable-swap-for-system-critical-daemons",
      "type": "concept",
      "title": "Disable swap for system-critical daemons",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 14002,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protect-system-critical-daemons-for-i-o-latency",
      "type": "concept",
      "title": "Protect system-critical daemons for I/O latency",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 14427,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:swap-and-control-plane-nodes",
      "type": "concept",
      "title": "Swap and control plane nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 15175,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-of-a-dedicated-disk-for-swap",
      "type": "concept",
      "title": "Use of a dedicated disk for swap",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 15507,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:swap-aware-scheduling",
      "type": "concept",
      "title": "Swap-aware scheduling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 16155,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selecting-storage-for-optimal-performance",
      "type": "concept",
      "title": "Selecting storage for optimal performance",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 16971,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-is-the-swap-limit-being-determined-with-limitedswap",
      "type": "concept",
      "title": "How is the swap limit being determined with LimitedSwap?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 17532,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/dra",
      "type": "page",
      "title": "Good practices for Dynamic Resource Allocation as a Cluster Admin",
      "summary": "",
      "body": "\nThis page describes good practices when configuring a Kubernetes cluster\nutilizing Dynamic Resource Allocation (DRA). These instructions are for cluster\nadministrators.\n\n\n## Separate permissions to DRA related APIs\n\nDRA is orchestrated through a number of different APIs. Use authorization tools\n(like RBAC, or another solution) to control access to the right APIs depending\non the persona of your user.\n\nIn general, DeviceClasses and ResourceSlices should be restricted to admins and\nthe DRA drivers. Cluster operators that will be deploying Pods with claims will\nneed access to ResourceClaim and ResourceClaimTemplate APIs; both of these APIs\nare namespace scoped.\n\n## DRA driver deployment and maintenance\n\nDRA drivers are third-party applications that run on each node of your cluster\nto interface with the hardware of that node and Kubernetes' native DRA\ncomponents. The installation procedure depends on the driver you choose, but is\nlikely deployed as a DaemonSet to all or a selection of the nodes (using node\nselectors or similar mechanisms) in your cluster.\n\n### Use drivers with seamless upgrade if available\n\nDRA drivers implement the [`kubeletplugin` package\ninterface](https://pkg.go.dev/k8s.io/dynamic-resource-allocation/kubeletplugin).\nYour driver may support _seamless upgrades_ by implementing a property of this\ninterface that allows two versions of the same DRA driver to coexist for a short\ntime. This is only available for kubelet versions 1.33 and above and may not be\nsupported by your driver for heterogeneous clusters with attached nodes running\nolder versions of Kubernetes - check your driver's documentation to be sure.\n\nIf seamless upgrades are available for your situation, consider using it to\nminimize scheduling delays when your driver updates.\n\nIf you cannot use seamless upgrades, during driver downtime for upgrades you may\nobserve that:\n* Pods cannot start unless the claims they depend on were already prepared for\n  use.\n* Cleanup after the last pod which used a claim gets delayed until the driver is\n  available again. The pod is not marked as terminated. This prevents reusing\n  the resources used by the pod for other pods.\n* Running pods will continue to run.\n\n### Confirm your DRA driver exposes a liveness probe and utilize it\n\nYour DRA driver likely implements a gRPC socket for healthchecks as part of DRA\ndriver good practices. The easiest way to utilize this grpc socket is to\nconfigure it as a liveness probe for the DaemonSet deploying your DRA driver.\nYour driver's documentation or deployment tooling may already include this, but\nif you are building your configuration separately or not running your DRA driver\nas a Kubernetes pod, be sure that your orchestration tooling restarts the DRA\ndriver on failed healthchecks to this grpc socket. Doing so will minimize any\naccidental downtime of the DRA driver and give it more opportunities to self\nheal, reducing scheduling delays or troubleshooting time.\n\n### When draining a node, drain the DRA driver as late as possible\n\nThe DRA driver is responsible for unpreparing any devices that were allocated to\nPods, and if the DRA driver is [drained](#gloss:drain) before Pods with claims have been deleted, it will not be\nable to finalize its cleanup. If you implement custom drain logic for nodes,\nconsider checking that there are no allocated/reserved ResourceClaim or\nResourceClaimTemplates before terminating the DRA driver itself.\n\n\n## Monitor and tune components for higher load, especially in high scale environments\n\nControl plane component [kube-scheduler](#gloss:kube-scheduler) and the internal ResourceClaim controller\norchestrated by the component [kube-controller-manager](#gloss:kube-controller-manager) do the\nheavy lifting during scheduling of Pods with claims based on metadata stored in\nthe DRA APIs. Compared to non-DRA scheduled Pods, the number of API server\ncalls, memory, and CPU utilization needed by these components is increased for\nPods using DRA claims. In addition, nod\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/cluster-administration/dra.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": null,
          "line_end": null,
          "quote": "Good practices for Dynamic Resource Allocation as a Cluster Admin"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:separate-permissions-to-dra-related-apis",
      "type": "concept",
      "title": "Separate permissions to DRA related APIs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dra-driver-deployment-and-maintenance",
      "type": "concept",
      "title": "DRA driver deployment and maintenance",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 700,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:monitor-and-tune-components-for-higher-load-especially-in-high-scale-environments",
      "type": "concept",
      "title": "Monitor and tune components for higher load, especially in high scale environments",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 3502,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-drivers-with-seamless-upgrade-if-available",
      "type": "concept",
      "title": "Use drivers with seamless upgrade if available",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 1101,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:confirm-your-dra-driver-exposes-a-liveness-probe-and-utilize-it",
      "type": "concept",
      "title": "Confirm your DRA driver exposes a liveness probe and utilize it",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 2239,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-draining-a-node-drain-the-dra-driver-as-late-as-possible",
      "type": "concept",
      "title": "When draining a node, drain the DRA driver as late as possible",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 2992,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-controller-manager-metrics",
      "type": "concept",
      "title": "`kube-controller-manager` metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 6198,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-metrics",
      "type": "concept",
      "title": "`kube-scheduler` metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 7745,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-metrics",
      "type": "concept",
      "title": "`kubelet` metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 8565,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dra-kubeletplugin-operations",
      "type": "concept",
      "title": "DRA kubeletplugin operations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 9298,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/proxies",
      "type": "page",
      "title": "Proxies in Kubernetes",
      "summary": "",
      "body": "\nThis page explains proxies used with Kubernetes.\n\n\n\n\n## Proxies\n\nThere are several different proxies you may encounter when using Kubernetes:\n\n1.  The [kubectl proxy](/docs/tasks/access-application-cluster/access-cluster/#directly-accessing-the-rest-api):\n\n    - runs on a user's desktop or in a pod\n    - proxies from a localhost address to the Kubernetes apiserver\n    - client to proxy uses HTTP\n    - proxy to apiserver uses HTTPS\n    - locates apiserver\n    - adds authentication headers\n\n1.  The [apiserver proxy](/docs/tasks/access-application-cluster/access-cluster-services/#discovering-builtin-services):\n\n    - is a bastion built into the apiserver\n    - connects a user outside of the cluster to cluster IPs which otherwise might not be reachable\n    - runs in the apiserver processes\n    - client to proxy uses HTTPS (or http if apiserver so configured)\n    - proxy to target may use HTTP or HTTPS as chosen by proxy using available information\n    - can be used to reach a Node, Pod, or Service\n    - does load balancing when used to reach a Service\n\n1.  The [kube proxy](/docs/concepts/services-networking/service/#ips-and-vips):\n\n    - runs on each node\n    - proxies UDP, TCP and SCTP\n    - does not understand HTTP\n    - provides load balancing\n    - is only used to reach services\n\n1.  A Proxy/Load-balancer in front of apiserver(s):\n\n    - existence and implementation varies from cluster to cluster (e.g. nginx)\n    - sits between all clients and one or more apiservers\n    - acts as load balancer if there are several apiservers.\n\n1.  Cloud Load Balancers on external services:\n\n    - are provided by some cloud providers (e.g. AWS ELB, Google Cloud Load Balancer)\n    - are created automatically when the Kubernetes service has type `LoadBalancer`\n    - usually supports UDP/TCP only\n    - SCTP support is up to the load balancer implementation of the cloud provider\n    - implementation varies by cloud provider.\n\nKubernetes users will typically not need to worry about anything other than the first two types.  The cluster admin\nwill typically ensure that the latter types are set up correctly.\n\n## Requesting redirects\n\nProxies have replaced redirect capabilities.  Redirects have been deprecated.\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/proxies/",
      "meta": {
        "weight": 100,
        "rel_path": "concepts/cluster-administration/proxies.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/proxies.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/proxies/",
          "line_start": null,
          "line_end": null,
          "quote": "Proxies in Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:proxies",
      "type": "concept",
      "title": "Proxies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/proxies.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/proxies/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "type": "page",
      "title": "Admission Webhook Good Practices",
      "summary": "Recommendations for designing and deploying admission webhooks in Kubernetes.\n",
      "body": "\n\nThis page provides good practices and considerations when designing\n_admission webhooks_ in Kubernetes. This information is intended for\ncluster operators who run admission webhook servers or third-party applications\nthat modify or validate your API requests.\n\nBefore reading this page, ensure that you're familiar with the following\nconcepts:\n\n* [Admission controllers](/docs/reference/access-authn-authz/admission-controllers/)\n* [Admission webhooks](/docs/reference/access-authn-authz/extensible-admission-controllers/#what-are-admission-webhooks)\n\n\n\n## Importance of good webhook design {#why-good-webhook-design-matters}\n\nAdmission control occurs when any create, update, or delete request\nis sent to the Kubernetes API. Admission controllers intercept requests that\nmatch specific criteria that you define. These requests are then sent to\nmutating admission webhooks or validating admission webhooks. These webhooks are\noften written to ensure that specific fields in object specifications exist or\nhave specific allowed values.\n\nWebhooks are a powerful mechanism to extend the Kubernetes API. Badly-designed\nwebhooks often result in workload disruptions because of how much control\nthe webhooks have over objects in the cluster. Like other API extension\nmechanisms, webhooks are challenging to test at scale for compatibility with\nall of your workloads, other webhooks, add-ons, and plugins. \n\nAdditionally, with every release, Kubernetes adds or modifies the API with new\nfeatures, feature promotions to beta or stable status, and deprecations. Even\nstable Kubernetes APIs are likely to change. For example, the `Pod` API changed\nin v1.29 to add the\n[Sidecar containers](/docs/concepts/workloads/pods/sidecar-containers/) feature.\nWhile it's rare for a Kubernetes object to enter a broken state because of a new\nKubernetes API, webhooks that worked as expected with earlier versions of an API\nmight not be able to reconcile more recent changes to that API. This can result\nin unexpected behavior after you upgrade your clusters to newer versions.\n\nThis page describes common webhook failure scenarios and how to avoid them by\ncautiously and thoughtfully designing and implementing your webhooks. \n\n## Identify whether you use admission webhooks {#identify-admission-webhooks}\n\nEven if you don't run your own admission webhooks, some third-party applications\nthat you run in your clusters might use mutating or validating admission\nwebhooks.\n\nTo check whether your cluster has any mutating admission webhooks, run the\nfollowing command:\n\n```shell\nkubectl get mutatingwebhookconfigurations\n```\nThe output lists any mutating admission controllers in the cluster. \n\nTo check whether your cluster has any validating admission webhooks, run the\nfollowing command:\n\n```shell\nkubectl get validatingwebhookconfigurations\n```\nThe output lists any validating admission controllers in the cluster. \n\n## Choose an admission control mechanism {#choose-admission-mechanism}\n\nKubernetes includes multiple admission control and policy enforcement options.\nKnowing when to use a specific option can help you to improve latency and\nperformance, reduce management overhead, and avoid issues during version\nupgrades. The following table describes the mechanisms that let you mutate or\nvalidate resources during admission:\n\n\n<table>\n  <caption>Mutating and validating admission control in Kubernetes</caption>\n  <thead>\n    <tr>\n      <th>Mechanism</th>\n      <th>Description</th>\n      <th>Use cases</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <td><a href=\"/docs/reference/access-authn-authz/extensible-admission-controllers/\">Mutating admission webhook</a></td>\n      <td>Intercept API requests before admission and modify as needed using\n        custom logic.</td>\n      <td><ul>\n        <li>Make critical modifications that must happen before resource\n          admission.</li>\n        <li>Make complex modifications that require advanced logic, like calling\n          external APIs.</li>\n      </ul><\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/cluster-administration/admission-webhooks-good-practices.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": null,
          "line_end": null,
          "quote": "Admission Webhook Good Practices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:importance-of-good-webhook-design-why-good-webhook-design-matters",
      "type": "concept",
      "title": "Importance of good webhook design {#why-good-webhook-design-matters}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 587,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:identify-whether-you-use-admission-webhooks-identify-admission-webhooks",
      "type": "concept",
      "title": "Identify whether you use admission webhooks {#identify-admission-webhooks}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 2239,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:choose-an-admission-control-mechanism-choose-admission-mechanism",
      "type": "concept",
      "title": "Choose an admission control mechanism {#choose-admission-mechanism}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 2929,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:performance-and-latency-performance-latency",
      "type": "concept",
      "title": "Performance and latency {#performance-latency}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 6523,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:request-filtering-request-filtering",
      "type": "concept",
      "title": "Request filtering {#request-filtering}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 10229,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutation-scope-and-field-considerations-mutation-scope-considerations",
      "type": "concept",
      "title": "Mutation scope and field considerations {#mutation-scope-considerations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 13134,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutating-webhook-ordering-and-idempotence-ordering-idempotence",
      "type": "concept",
      "title": "Mutating webhook ordering and idempotence {#ordering-idempotence}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 20808,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutation-testing-and-validation-mutation-testing-validation",
      "type": "concept",
      "title": "Mutation testing and validation {#mutation-testing-validation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 24517,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutating-webhook-deployment-mutating-webhook-deployment",
      "type": "concept",
      "title": "Mutating webhook deployment {#mutating-webhook-deployment}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 27402,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:examples-of-good-implementations-example-good-implementations",
      "type": "concept",
      "title": "Examples of good implementations {#example-good-implementations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 29239,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-built-in-validation-and-defaulting-for-customresourcedefinitions-no-crd-validation-defaulting",
      "type": "concept",
      "title": "Use built-in validation and defaulting for CustomResourceDefinitions {#no-crd-validation-defaulting}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 5817,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:design-admission-webhooks-for-low-latency-design-admission-webhooks-low-latency",
      "type": "concept",
      "title": "Design admission webhooks for low latency {#design-admission-webhooks-low-latency}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 6996,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prevent-loops-caused-by-competing-controllers-prevent-loops-competing-controllers",
      "type": "concept",
      "title": "Prevent loops caused by competing controllers {#prevent-loops-competing-controllers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 7975,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-a-small-timeout-value-small-timeout",
      "type": "concept",
      "title": "Set a small timeout value {#small-timeout}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 8866,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-a-load-balancer-to-ensure-webhook-availability-load-balancer-webhook",
      "type": "concept",
      "title": "Use a load balancer to ensure webhook availability {#load-balancer-webhook}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 9184,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-a-high-availability-deployment-model-ha-deployment",
      "type": "concept",
      "title": "Use a high-availability deployment model {#ha-deployment}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 9504,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limit-the-scope-of-each-webhook-webhook-limit-scope",
      "type": "concept",
      "title": "Limit the scope of each webhook {#webhook-limit-scope}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 10621,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:filter-for-specific-requests-by-using-match-conditions-filter-match-conditions",
      "type": "concept",
      "title": "Filter for specific requests by using match conditions {#filter-match-conditions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 11838,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:match-all-versions-of-an-api-match-all-versions",
      "type": "concept",
      "title": "Match all versions of an API {#match-all-versions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 12631,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:patch-only-required-fields-patch-required-fields",
      "type": "concept",
      "title": "Patch only required fields {#patch-required-fields}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 13683,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:don-t-overwrite-array-values-dont-overwrite-arrays",
      "type": "concept",
      "title": "Don't overwrite array values {#dont-overwrite-arrays}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 14388,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:avoid-side-effects-avoid-side-effects",
      "type": "concept",
      "title": "Avoid side effects {#avoid-side-effects}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 15426,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:avoid-self-mutations-avoid-self-mutation",
      "type": "concept",
      "title": "Avoid self-mutations {#avoid-self-mutation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 16184,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:avoid-dependency-loops-avoid-dependency-loops",
      "type": "concept",
      "title": "Avoid dependency loops {#avoid-dependency-loops}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 17076,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fail-open-and-validate-the-final-state-fail-open-validate-final-state",
      "type": "concept",
      "title": "Fail open and validate the final state {#fail-open-validate-final-state}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 18178,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:plan-for-future-updates-to-fields-plan-future-field-updates",
      "type": "concept",
      "title": "Plan for future updates to fields {#plan-future-field-updates}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 19214,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prevent-your-webhook-from-triggering-itself-prevent-webhook-self-trigger",
      "type": "concept",
      "title": "Prevent your webhook from triggering itself {#prevent-webhook-self-trigger}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 19568,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:don-t-change-immutable-objects-dont-change-immutable-objects",
      "type": "concept",
      "title": "Don't change immutable objects {#dont-change-immutable-objects}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 20111,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:don-t-rely-on-mutating-webhook-invocation-order-dont-rely-webhook-order",
      "type": "concept",
      "title": "Don't rely on mutating webhook invocation order {#dont-rely-webhook-order}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 21247,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ensure-that-the-mutating-webhooks-in-your-cluster-are-idempotent-ensure-mutating-webhook-idempotent",
      "type": "concept",
      "title": "Ensure that the mutating webhooks in your cluster are idempotent {#ensure-mutating-webhook-idempotent}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 21983,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:test-webhooks-in-staging-environments-test-in-staging-environments",
      "type": "concept",
      "title": "Test webhooks in staging environments {#test-in-staging-environments}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 24916,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ensure-that-mutations-don-t-violate-validations-ensure-mutations-dont-violate-validations",
      "type": "concept",
      "title": "Ensure that mutations don't violate validations {#ensure-mutations-dont-violate-validations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 25391,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:test-minor-version-upgrades-to-ensure-consistent-behavior-test-minor-version-upgrades",
      "type": "concept",
      "title": "Test minor version upgrades to ensure consistent behavior {#test-minor-version-upgrades}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 25884,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validate-mutations-before-admission-validate-mutations",
      "type": "concept",
      "title": "Validate mutations before admission {#validate-mutations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 26355,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-and-enable-a-mutating-webhook-install-enable-mutating-webhook",
      "type": "concept",
      "title": "Install and enable a mutating webhook {#install-enable-mutating-webhook}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 27827,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limit-edit-access-to-mutating-webhooks-limit-edit-access",
      "type": "concept",
      "title": "Limit edit access to mutating webhooks {#limit-edit-access}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 28645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/coordinated-leader-election",
      "type": "page",
      "title": "Coordinated Leader Election",
      "summary": "",
      "body": "\n\n\n\nKubernetes  includes a beta feature that allows [control plane](#gloss:control-plane) components to\ndeterministically select a leader via _coordinated leader election_.\nThis is useful to satisfy Kubernetes version skew constraints during cluster upgrades.\nCurrently, the only builtin selection strategy is `OldestEmulationVersion`,\npreferring the leader with the lowest emulation version, followed by binary\nversion, followed by creation timestamp.\n\n## Enabling coordinated leader election\n\nEnsure that `CoordinatedLeaderElection` [feature\ngate](/docs/reference/command-line-tools-reference/feature-gates/) is enabled\nwhen you start the [API Server](#gloss:kube-apiserver): and that the `coordination.k8s.io/v1beta1` API group is\nenabled.\n\nThis can be done by setting flags `--feature-gates=\"CoordinatedLeaderElection=true\"` and\n`--runtime-config=\"coordination.k8s.io/v1beta1=true\"`.\n\n## Component configuration\n\nProvided that you have enabled the `CoordinatedLeaderElection` feature gate _and_  \nhave the `coordination.k8s.io/v1beta1` API group enabled, compatible control plane  \ncomponents automatically use the LeaseCandidate and Lease APIs to elect a leader  \nas needed.  \n\nFor Kubernetes , two control plane components  \n(kube-controller-manager and kube-scheduler) automatically use coordinated  \nleader election when the feature gate and API group are enabled.\n\n## Leader selection for Kubernetes components\n\nKubernetes uses the [Lease API](/docs/concepts/architecture/leases/) to perform leader election among multiple instances of the same control-plane component in a high-availability cluster, such as `kube-controller-manager` or `kube-scheduler`.\n\nA [Lease](/docs/concepts/architecture/leases/) acts as a lightweight distributed lock. stored by the [Kubernetes API server](/docs/reference/command-line-tools-reference/kube-apiserver/).\nAll running instances of a component watch or periodically read the relevant Lease object\nto determine which instance is currently acting as the leader.\n\nThe [Lease API](/docs/reference/kubernetes-api/cluster-resources/lease-v1/) defines fields\nsuch as:\n\n`holderIdentity`\n: the identity (for example: pod name or hostname-based string) of the current leader.\n\n`acquireTime`\n: timestamp when leadership was acquired.\n\n`renewTime`\n: timestamp of the most recent renewal by the leader.\n\n`leaseDurationSeconds`\n: the validity period of the lease (candidates should wait this long plus a small grace period before attempting to acquire an expired lease).\n\n`leaseTransitions`\n: counter of how many times leadership has changed hands.\n\nThese fields indicate which instance holds leadership and how long that leadership remains valid.\n\nWhen the [Lease](/docs/concepts/architecture/leases/) does not exist or has expired (current time > `renewTime` + `leaseDurationSeconds`), candidate instances attempt to update the Lease with their identity. Kubernetes relies on _optimistic concurrency control_ via the object's `resourceVersion`: only one update succeeds due to version mismatch on concurrent attempts. The instance whose update is accepted becomes the _leader_.\n\nKubernetes uses the [LeaseCandidate](/docs/reference/kubernetes-api/cluster-resources/lease-candidate-v1beta1/) \nAPI to manage leader elections. Control plane components such as `kube-controller-manager` and `kube-scheduler` register their role as a candidate by creating LeaseCandidate objects, which track all instances competing for leadership and carry metadata including the candidate's identity, binary version, and emulation version.\n\nDuring an election, candidates coordinate through a shared [Lease](/docs/concepts/architecture/leases/). \nThe Kubernetes control plane guarantees that only one candidate successfully acquires the [Lease](/docs/concepts/architecture/leases/) and assumes the role of _leader_, while all others remain as followers. If the current _leader_ fails to renew the [Lease](/docs/concepts/architecture/leases/) within the selected timeout period, the rem\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/coordinated-leader-election/",
      "meta": {
        "weight": 200,
        "rel_path": "concepts/cluster-administration/coordinated-leader-election.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/coordinated-leader-election.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/coordinated-leader-election/",
          "line_start": null,
          "line_end": null,
          "quote": "Coordinated Leader Election"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-coordinated-leader-election",
      "type": "concept",
      "title": "Enabling coordinated leader election",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/coordinated-leader-election.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/coordinated-leader-election/",
          "line_start": 598,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:component-configuration",
      "type": "concept",
      "title": "Component configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/coordinated-leader-election.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/coordinated-leader-election/",
          "line_start": 1065,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:leader-selection-for-kubernetes-components",
      "type": "concept",
      "title": "Leader selection for Kubernetes components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/coordinated-leader-election.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/coordinated-leader-election/",
          "line_start": 1577,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/networking",
      "type": "page",
      "title": "Cluster Networking",
      "summary": "",
      "body": "\nNetworking is a central part of Kubernetes, but it can be challenging to\nunderstand exactly how it is expected to work.  There are 4 distinct networking\nproblems to address:\n\n1. Highly-coupled container-to-container communications: this is solved by\n   [Pods](#gloss:pod) and `localhost` communications.\n2. Pod-to-Pod communications: this is the primary focus of this document.\n3. Pod-to-Service communications: this is covered by [Services](/docs/concepts/services-networking/service/).\n4. External-to-Service communications: this is also covered by Services.\n\n\n\nKubernetes is all about sharing machines among applications.  Typically,\nsharing machines requires ensuring that two applications do not try to use the\nsame ports.  Coordinating ports across multiple developers is very difficult to\ndo at scale and exposes users to cluster-level issues outside of their control.\n\nDynamic port allocation brings a lot of complications to the system - every\napplication has to take ports as flags, the API servers have to know how to\ninsert dynamic port numbers into configuration blocks, services have to know\nhow to find each other, etc.  Rather than deal with this, Kubernetes takes a\ndifferent approach.\n\nTo learn about the Kubernetes networking model, see [here](/docs/concepts/services-networking/).\n\n## Kubernetes IP address ranges\n\nKubernetes clusters require to allocate non-overlapping IP addresses for Pods, Services and Nodes,\nfrom a range of available addresses configured in the following components:\n\n- The network plugin is configured to assign IP addresses to Pods.\n- The kube-apiserver is configured to assign IP addresses to Services.\n- The kubelet or the cloud-controller-manager is configured to assign IP addresses to Nodes.\n\n\n![A figure illustrating the different network ranges in a kubernetes cluster](/docs/images/kubernetes-cluster-network.svg)\n\n\n## Cluster networking types {#cluster-network-ipfamilies}\n\nKubernetes clusters, attending to the IP families configured, can be categorized into:\n\n- IPv4 only: The network plugin, kube-apiserver and kubelet/cloud-controller-manager are configured to assign only IPv4 addresses.\n- IPv6 only: The network plugin, kube-apiserver and kubelet/cloud-controller-manager are configured to assign only IPv6 addresses.\n- IPv4/IPv6 or IPv6/IPv4 [dual-stack](/docs/concepts/services-networking/dual-stack/):\n  - The network plugin is configured to assign IPv4 and IPv6 addresses.\n  - The kube-apiserver is configured to assign IPv4 and IPv6 addresses.\n  - The kubelet or cloud-controller-manager is configured to assign IPv4 and IPv6 address.\n  - All components must agree on the configured primary IP family.\n\nKubernetes clusters only consider the IP families present on the Pods, Services and Nodes objects,\nindependently of the existing IPs of the represented objects. For example, a server or a pod can have multiple\nIP addresses assigned to its interfaces, but only the IP addresses in `node.status.addresses` or `pod.status.ips` are\nconsidered when implementing the Kubernetes network model and defining the cluster type.\n\n## How to implement the Kubernetes network model\n\nThe network model is implemented by the container runtime on each node. The most common container\nruntimes use [Container Network Interface](https://github.com/containernetworking/cni) (CNI)\nplugins to manage their network and security capabilities. Many different CNI plugins exist from\nmany different vendors. Some of these provide only basic features of adding and removing network\ninterfaces, while others provide more sophisticated solutions, such as integration with other\ncontainer orchestration systems, running multiple CNI plugins, advanced IPAM features etc.\n\nSee [this page](/docs/concepts/cluster-administration/addons/#networking-and-network-policy)\nfor a non-exhaustive list of networking addons supported by Kubernetes.\n\n## \n\nThe early design of the networking model and its rationale are described in more detail in the\n[networking design documen\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/networking/",
      "meta": {
        "weight": 50,
        "rel_path": "concepts/cluster-administration/networking.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/networking.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/networking/",
          "line_start": null,
          "line_end": null,
          "quote": "Cluster Networking"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-ip-address-ranges",
      "type": "concept",
      "title": "Kubernetes IP address ranges",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/networking.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/networking/",
          "line_start": 1366,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-networking-types-cluster-network-ipfamilies",
      "type": "concept",
      "title": "Cluster networking types {#cluster-network-ipfamilies}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/networking.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/networking/",
          "line_start": 1977,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-implement-the-kubernetes-network-model",
      "type": "concept",
      "title": "How to implement the Kubernetes network model",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/networking.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/networking/",
          "line_start": 3194,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/kube-state-metrics",
      "type": "page",
      "title": "Metrics for Kubernetes Object States",
      "summary": "kube-state-metrics, an add-on agent to generate and expose cluster-level metrics.",
      "body": "The state of Kubernetes objects in the Kubernetes API can be exposed as metrics.\nAn add-on agent called [kube-state-metrics](https://github.com/kubernetes/kube-state-metrics) can connect to the Kubernetes API server and expose a HTTP endpoint with metrics generated from the state of individual objects in the cluster.\nIt exposes various information about the state of objects like labels and annotations, startup and termination times, status or the phase the object currently is in.\nFor example, containers running in pods create a `kube_pod_container_info` metric.\nThis includes the name of the container, the name of the pod it is part of, the [namespace](#gloss:namespace) the pod is running in, the name of the container image, the ID of the image, the image name from the spec of the container, the ID of the running container and the ID of the pod as labels.\n\n\n\nAn external component that is able and capable to scrape the endpoint of kube-state-metrics (for example via Prometheus) can now be used to enable the following use cases.\n\n## Example: using metrics from kube-state-metrics to query the cluster state {#example-kube-state-metrics-query-1}\n\nMetric series generated by kube-state-metrics are helpful to gather further insights into the cluster, as they can be used for querying.\n\nIf you use Prometheus or another tool that uses the same query language, the following PromQL query returns the number of pods that are not ready:\n\n```\ncount(kube_pod_status_ready{condition=\"false\"}) by (namespace, pod)\n```\n\n## Example: alerting based on from kube-state-metrics {#example-kube-state-metrics-alert-1}\n\nMetrics generated from kube-state-metrics also allow for alerting on issues in the cluster.\n\nIf you use Prometheus or a similar tool that uses the same alert rule language, the following alert will fire if there are pods that have been in a `Terminating` state for more than 5 minutes:\n\n```yaml\ngroups:\n- name: Pod state\n  rules:\n  - alert: PodsBlockedInTerminatingState\n    expr: count(kube_pod_deletion_timestamp) by (namespace, pod) * count(kube_pod_status_reason{reason=\"NodeLost\"} == 0) by (namespace, pod) > 0\n    for: 5m\n    labels:\n      severity: page\n    annotations:\n      summary: Pod {{$labels.namespace}}/{{$labels.pod}} blocked in Terminating state.\n```\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/kube-state-metrics/",
      "meta": {
        "weight": 75,
        "rel_path": "concepts/cluster-administration/kube-state-metrics.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/kube-state-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/kube-state-metrics/",
          "line_start": null,
          "line_end": null,
          "quote": "Metrics for Kubernetes Object States"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-using-metrics-from-kube-state-metrics-to-query-the-cluster-state-example-kube-state-metrics-query-1",
      "type": "concept",
      "title": "Example: using metrics from kube-state-metrics to query the cluster state {#example-kube-state-metrics-query-1}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/kube-state-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/kube-state-metrics/",
          "line_start": 1116,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-alerting-based-on-from-kube-state-metrics-example-kube-state-metrics-alert-1",
      "type": "concept",
      "title": "Example: alerting based on from kube-state-metrics {#example-kube-state-metrics-alert-1}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/kube-state-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/kube-state-metrics/",
          "line_start": 1595,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/system-metrics",
      "type": "page",
      "title": "Metrics For Kubernetes System Components",
      "summary": "",
      "body": "\n\nSystem component metrics can give a better look into what is happening inside them. Metrics are\nparticularly useful for building dashboards and alerts.\n\nKubernetes components emit metrics in [Prometheus format](https://prometheus.io/docs/instrumenting/exposition_formats/).\nThis format is structured plain text, designed so that people and machines can both read it.\n\n\n\n## Metrics in Kubernetes\n\nIn most cases metrics are available on `/metrics` endpoint of the HTTP server. For components that\ndon't expose endpoint by default, it can be enabled using `--bind-address` flag.\n\nExamples of those components:\n\n* [kube-controller-manager](#gloss:kube-controller-manager)\n* [kube-proxy](#gloss:kube-proxy)\n* [kube-apiserver](#gloss:kube-apiserver)\n* [kube-scheduler](#gloss:kube-scheduler)\n* [kubelet](#gloss:kubelet)\n\nIn a production environment you may want to configure [Prometheus Server](https://prometheus.io/)\nor some other metrics scraper to periodically gather these metrics and make them available in some\nkind of time series database.\n\nNote that [kubelet](#gloss:kubelet) also exposes metrics in\n`/metrics/cadvisor`, `/metrics/resource` and `/metrics/probes` endpoints. Those metrics do not\nhave the same lifecycle.\n\nIf your cluster uses [RBAC](#gloss:rbac), reading metrics requires\nauthorization via a user, group or ServiceAccount with a ClusterRole that allows accessing\n`/metrics`. For example:\n\n```yaml\napiVersion: rbac.authorization.k8s.io/v1\nkind: ClusterRole\nmetadata:\n  name: prometheus\nrules:\n  - nonResourceURLs:\n      - \"/metrics\"\n    verbs:\n      - get\n```\n\n## Metric lifecycle\n\nAlpha metric → Beta metric → Stable metric →  Deprecated metric →  Hidden metric → Deleted metric\n\nAlpha metrics have no stability guarantees. These metrics can be modified or deleted at any time.\n\nBeta metrics observe a looser API contract than its stable counterparts. No labels can be removed from beta metrics during their lifetime, however, labels can be added while the metric is in the beta stage.\n\nStable metrics are guaranteed to not change. This means:\n\n* A stable metric without a deprecated signature will not be deleted or renamed\n* A stable metric's type will not be modified\n\nDeprecated metrics are slated for deletion, but are still available for use.\nThese metrics include an annotation about the version in which they became deprecated.\n\nFor example:\n\n* Before deprecation\n\n  ```\n  # HELP some_counter this counts things\n  # TYPE some_counter counter\n  some_counter 0\n  ```\n\n* After deprecation\n\n  ```\n  # HELP some_counter (Deprecated since 1.15.0) this counts things\n  # TYPE some_counter counter\n  some_counter 0\n  ```\n\nHidden metrics are no longer published for scraping, but are still available for use.\nA deprecated metric becomes a hidden metric after a period of time, based on its stability level:\n* **STABLE** metrics become hidden after a minimum of 3 releases or 9 months, whichever is longer.\n* **BETA** metrics become hidden after a minimum of 1 release or 4 months, whichever is longer.\n* **ALPHA** metrics can be hidden or removed in the same release in which they are deprecated.\n\nTo use a hidden metric, you must enable it. For more details, refer to the [Show hidden metrics](#show-hidden-metrics) section. \n\nDeleted metrics are no longer published and cannot be used.\n\n## Show hidden metrics\n\nAs described above, admins can enable hidden metrics through a command-line flag on a specific\nbinary. This intends to be used as an escape hatch for admins if they missed the migration of the\nmetrics deprecated in the last release.\n\nThe flag `show-hidden-metrics-for-version` takes a version for which you want to show metrics\ndeprecated in that release. The version is expressed as x.y, where x is the major version, y is\nthe minor version. The patch version is not needed even though a metrics can be deprecated in a\npatch release, the reason for that is the metrics deprecation policy runs against the minor release.\n\nThe flag can only take the previous minor ver\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/cluster-administration/system-metrics.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": null,
          "line_end": null,
          "quote": "Metrics For Kubernetes System Components"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metrics-in-kubernetes",
      "type": "concept",
      "title": "Metrics in Kubernetes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 403,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metric-lifecycle",
      "type": "concept",
      "title": "Metric lifecycle",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 1836,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:show-hidden-metrics",
      "type": "concept",
      "title": "Show hidden metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 3564,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:component-metrics",
      "type": "concept",
      "title": "Component metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 5126,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disabling-metrics",
      "type": "concept",
      "title": "Disabling metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 12575,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metric-cardinality-enforcement",
      "type": "concept",
      "title": "Metric cardinality enforcement",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 12843,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-pressure-stall-information-psi-metrics",
      "type": "concept",
      "title": "kubelet Pressure Stall Information (PSI) metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 7971,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/node-autoscaling",
      "type": "page",
      "title": "Node Autoscaling",
      "summary": "Automatically provision and consolidate the Nodes in your cluster to adapt to demand and optimize cost.",
      "body": "In order to run workloads in your cluster, you need\n[Nodes](#gloss:node). Nodes in your cluster can be _autoscaled_ -\ndynamically [_provisioned_](#provisioning), or [_consolidated_](#consolidation) to provide needed\ncapacity while optimizing cost. Autoscaling is performed by Node [_autoscalers_](#autoscalers).\n\n## Node provisioning {#provisioning}\n\nIf there are Pods in a cluster that can't be scheduled on existing Nodes, new Nodes can be\nautomatically added to the cluster&mdash;_provisioned_&mdash;to accommodate the Pods. This is\nespecially useful if the number of Pods changes over time, for example as a result of\n[combining horizontal workload with Node autoscaling](#horizontal-workload-autoscaling).\n\nAutoscalers provision the Nodes by creating and deleting cloud provider resources backing them. Most\ncommonly, the resources backing the Nodes are Virtual Machines.\n\nThe main goal of provisioning is to make all Pods schedulable. This goal is not always attainable\nbecause of various limitations, including reaching configured provisioning limits, provisioning\nconfiguration not being compatible with a particular set of pods, or the lack of cloud provider\ncapacity. While provisioning, Node autoscalers often try to achieve additional goals (for example\nminimizing the cost of the provisioned Nodes or balancing the number of Nodes between failure\ndomains).\n\nThere are two main inputs to a Node autoscaler when determining Nodes to\nprovision&mdash;[Pod scheduling constraints](#provisioning-pod-constraints),\nand [Node constraints imposed by autoscaler configuration](#provisioning-node-constraints).\n\nAutoscaler configuration may also include other Node provisioning triggers (for example the number\nof Nodes falling below a configured minimum limit).\n\n\n> **Note:** Provisioning was formerly known as _scale-up_ in Cluster Autoscaler.\n\n\n### Pod scheduling constraints {#provisioning-pod-constraints}\n\nPods can express [scheduling constraints](/docs/concepts/scheduling-eviction/assign-pod-node/) to\nimpose limitations on the kind of Nodes they can be scheduled on. Node autoscalers take these\nconstraints into account to ensure that the pending Pods can be scheduled on the provisioned Nodes.\n\nThe most common kind of scheduling constraints are the resource requests specified by Pod\ncontainers. Autoscalers will make sure that the provisioned Nodes have enough resources to satisfy\nthe requests. However, they don't directly take into account the real resource usage of the Pods\nafter they start running. In order to autoscale Nodes based on actual workload resource usage, you\ncan combine [horizontal workload autoscaling](#horizontal-workload-autoscaling) with Node\nautoscaling.\n\nOther common Pod scheduling constraints include\n[Node affinity](/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity),\n[inter-Pod affinity](/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity),\nor a requirement for a particular [storage volume](/docs/concepts/storage/volumes/).\n\n### Node constraints imposed by autoscaler configuration {#provisioning-node-constraints}\n\nThe specifics of the provisioned Nodes (for example the amount of resources, the presence of a given\nlabel) depend on autoscaler configuration. Autoscalers can either choose them from a pre-defined set\nof Node configurations, or use [auto-provisioning](#autoprovisioning).\n\n### Auto-provisioning {#autoprovisioning}\n\nNode auto-provisioning is a mode of provisioning in which a user doesn't have to fully configure the\nspecifics of the Nodes that can be provisioned. Instead, the autoscaler dynamically chooses the Node\nconfiguration based on the pending Pods it's reacting to, as well as pre-configured constraints (for\nexample, the minimum amount of resources or the need for a given label).\n\n## Node consolidation {#consolidation}\n\nThe main consideration when running a cluster is ensuring that all schedulable pods are running,\nwhilst keeping the cost of the cluster as low as pos\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
      "meta": {
        "weight": 15,
        "rel_path": "concepts/cluster-administration/node-autoscaling.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": null,
          "line_end": null,
          "quote": "Node Autoscaling"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-provisioning-provisioning",
      "type": "concept",
      "title": "Node provisioning {#provisioning}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 346,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-consolidation-consolidation",
      "type": "concept",
      "title": "Node consolidation {#consolidation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 3857,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:autoscalers-autoscalers",
      "type": "concept",
      "title": "Autoscalers {#autoscalers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 6539,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:combine-workload-and-node-autoscaling",
      "type": "concept",
      "title": "Combine workload and Node autoscaling",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 11537,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:related-components",
      "type": "concept",
      "title": "Related components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 14095,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-scheduling-constraints-provisioning-pod-constraints",
      "type": "concept",
      "title": "Pod scheduling constraints {#provisioning-pod-constraints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 1896,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-constraints-imposed-by-autoscaler-configuration-provisioning-node-constraints",
      "type": "concept",
      "title": "Node constraints imposed by autoscaler configuration {#provisioning-node-constraints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 3072,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:auto-provisioning-autoprovisioning",
      "type": "concept",
      "title": "Auto-provisioning {#autoprovisioning}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 3437,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:autoscaler-implementations",
      "type": "concept",
      "title": "Autoscaler implementations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 7469,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:horizontal-workload-autoscaling-horizontal-workload-autoscaling",
      "type": "concept",
      "title": "Horizontal workload autoscaling {#horizontal-workload-autoscaling}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 11579,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:vertical-workload-autoscaling-vertical-workload-autoscaling",
      "type": "concept",
      "title": "Vertical workload autoscaling {#vertical-workload-autoscaling}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 12963,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:descheduler",
      "type": "concept",
      "title": "Descheduler",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 14206,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workload-autoscalers-based-on-cluster-size",
      "type": "concept",
      "title": "Workload autoscalers based on cluster size",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 14488,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/logging",
      "type": "page",
      "title": "Logging Architecture",
      "summary": "",
      "body": "\n\nApplication logs can help you understand what is happening inside your application. The\nlogs are particularly useful for debugging problems and monitoring cluster activity. Most\nmodern applications have some kind of logging mechanism. Likewise, container engines\nare designed to support logging. The easiest and most adopted logging method for\ncontainerized applications is writing to standard output and standard error streams.\n\nHowever, the native functionality provided by a container engine or runtime is usually\nnot enough for a complete logging solution.\n\nFor example, you may want to access your application's logs if a container crashes,\na pod gets evicted, or a node dies.\n\nIn a cluster, logs should have a separate storage and lifecycle independent of nodes,\npods, or containers. This concept is called\n[cluster-level logging](#cluster-level-logging-architectures).\n\nCluster-level logging architectures require a separate backend to store, analyze, and\nquery logs. Kubernetes does not provide a native storage solution for log data. Instead,\nthere are many logging solutions that integrate with Kubernetes. The following sections\ndescribe how to handle and store logs on nodes.\n\n\n\n## Pod and container logs {#basic-logging-in-kubernetes}\n\nKubernetes captures logs from each container in a running Pod.\n\nThis example uses a manifest for a `Pod` with a container\nthat writes text to the standard output stream, once per second.\n\n\n\nTo run this pod, use the following command:\n\n```shell\nkubectl apply -f https://k8s.io/examples/debug/counter-pod.yaml\n```\n\nThe output is:\n\n```console\npod/counter created\n```\n\nTo fetch the logs, use the `kubectl logs` command, as follows:\n\n```shell\nkubectl logs counter\n```\n\nThe output is similar to:\n\n```console\n0: Fri Apr  1 11:42:23 UTC 2022\n1: Fri Apr  1 11:42:24 UTC 2022\n2: Fri Apr  1 11:42:25 UTC 2022\n```\n\nYou can use `kubectl logs --previous` to retrieve logs from a previous instantiation of a container.\nIf your pod has multiple containers, specify which container's logs you want to access by\nappending a container name to the command, with a `-c` flag, like so:\n\n```shell\nkubectl logs counter -c count\n```\n\n\n### Container log streams\n\n\n\nAs an alpha feature, the kubelet can split out the logs from the two standard streams produced\nby a container: [standard output](https://en.wikipedia.org/wiki/Standard_streams#Standard_output_(stdout))\nand [standard error](https://en.wikipedia.org/wiki/Standard_streams#Standard_error_(stderr)).\nTo use this behavior, you must enable the `PodLogsQuerySplitStreams`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/).\nWith that feature gate enabled, Kubernetes  allows access to these\nlog streams directly via the Pod API. You can fetch a specific stream by specifying the stream name (either `Stdout` or `Stderr`),\nusing the `stream` query string. You must have access to read the `log` subresource of that Pod.\n\nTo demonstrate this feature, you can create a Pod that periodically writes text to both the standard output and error stream.\n\n\n\nTo run this pod, use the following command:\n\n```shell\nkubectl apply -f https://k8s.io/examples/debug/counter-pod-err.yaml\n```\n\nTo fetch only the stderr log stream, you can run:\n\n```shell\nkubectl get --raw \"/api/v1/namespaces/default/pods/counter-err/log?stream=Stderr\"\n```\n\n\nSee the [`kubectl logs` documentation](/docs/reference/generated/kubectl/kubectl-commands#logs)\nfor more details.\n\n### How nodes handle container logs\n\n![Node level logging](/images/docs/user-guide/logging/logging-node-level.png)\n\nA container runtime handles and redirects any output generated to a containerized\napplication's `stdout` and `stderr` streams.\nDifferent container runtimes implement this in different ways; however, the integration\nwith the kubelet is standardized as the _CRI logging format_.\n\nBy default, if a container restarts, the kubelet keeps one terminated container with its logs.\nIf a pod is evicted from the node, all corresponding containers \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
      "meta": {
        "weight": 60,
        "rel_path": "concepts/cluster-administration/logging.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": null,
          "line_end": null,
          "quote": "Logging Architecture"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-and-container-logs-basic-logging-in-kubernetes",
      "type": "concept",
      "title": "Pod and container logs {#basic-logging-in-kubernetes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 1224,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:system-component-logs",
      "type": "concept",
      "title": "System component logs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 6247,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-level-logging-architectures",
      "type": "concept",
      "title": "Cluster-level logging architectures",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 10620,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-log-streams",
      "type": "concept",
      "title": "Container log streams",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 2241,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-nodes-handle-container-logs",
      "type": "concept",
      "title": "How nodes handle container logs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 3673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:log-rotation",
      "type": "concept",
      "title": "Log rotation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 4417,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:log-locations-log-location-node",
      "type": "concept",
      "title": "Log locations {#log-location-node}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 6924,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-a-node-logging-agent",
      "type": "concept",
      "title": "Using a node logging agent",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 11013,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-a-sidecar-container-with-the-logging-agent-sidecar-container-with-logging-agent",
      "type": "concept",
      "title": "Using a sidecar container with the logging agent {#sidecar-container-with-logging-agent}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 11837,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exposing-logs-directly-from-the-application",
      "type": "concept",
      "title": "Exposing logs directly from the application",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 16542,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/node-shutdown",
      "type": "page",
      "title": "Node Shutdowns",
      "summary": "",
      "body": "\n\nIn a Kubernetes cluster, a [node](#gloss:node)\ncan be shut down in a planned graceful way or unexpectedly because of reasons such\nas a power outage or something else external. A node shutdown could lead to workload\nfailure if the node is not drained before the shutdown. A node shutdown can be\neither **graceful** or **non-graceful**.\n\n\n> **Caution:** The `unattended-upgrades` package from Debian conflicts with node graceful shutdown in\nits normal configuration.\nIf you use the default configuration of `unattended-upgrades`, which customizes the server shutdown\ngrace period, then the kubelet fails to obtain the necessary lock to handle shutdown events properly.\n\nThis happens if the `shutdownGracePeriod` value is greater than 30 seconds.\nTo avoid this, you can suppress part of the `unattended-upgrades` configuration,\nby making `/etc/systemd/logind.conf.d/unattended-upgrades-logind-maxdelay.conf` be a symbolic link\nto `/dev/null`.\n\nFor more details, refer to the\n[`logind.conf` documentation](https://www.freedesktop.org/software/systemd/man/latest/logind.conf.html).\n\n\n\n\n## Graceful node shutdown {#graceful-node-shutdown}\n\nThe kubelet attempts to detect node system shutdown and terminates pods running on the node.\n\nKubelet ensures that pods follow the normal\n[pod termination process](/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination)\nduring the node shutdown. During node shutdown, the kubelet does not accept new\nPods (even if those Pods are already bound to the node).\n\n### Enabling graceful node shutdown\n\n\n\n\n\nOn Linux, the graceful node shutdown feature is controlled with the `GracefulNodeShutdown`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/) which is\nenabled by default in 1.21.\n\n\nThe graceful node shutdown feature depends on systemd since it takes advantage of\n[systemd inhibitor locks](https://www.freedesktop.org/wiki/Software/systemd/inhibit/) to\ndelay the node shutdown with a given duration.\n\n\n\n\n\n\nOn Windows, the graceful node shutdown feature is controlled with the `WindowsGracefulNodeShutdown`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\nwhich is introduced in 1.32 as an alpha feature. In Kubernetes 1.34 the feature is Beta\nand is enabled by default.\n\n\nThe Windows graceful node shutdown feature depends on kubelet running as a Windows service,\nit will then have a registered [service control handler](https://learn.microsoft.com/en-us/windows/win32/services/service-control-handler-function)\nto delay the preshutdown event with a given duration.\n\n\nWindows graceful node shutdown can not be cancelled.\n\nIf kubelet is not running as a Windows service, it will not be able to set and monitor\nthe [Preshutdown](https://learn.microsoft.com/en-us/windows/win32/api/winsvc/ns-winsvc-service_preshutdown_info) event,\nthe node will have to go through the [Non-Graceful Node Shutdown](#non-graceful-node-shutdown) procedure mentioned above.\n\nIn the case where the Windows graceful node shutdown feature is enabled, but the kubelet is not\nrunning as a Windows service, the kubelet will continue running instead of failing. However,\nit will log an error indicating that it needs to be run as a Windows service.\n\n\n\n\n### Configuring graceful node shutdown\n\nNote that by default, both configuration options described below,\n`shutdownGracePeriod` and `shutdownGracePeriodCriticalPods`, are set to zero,\nthus not activating the graceful node shutdown functionality.\nTo activate the feature, both options should be configured appropriately and\nset to non-zero values.\n\nOnce the kubelet is notified of a node shutdown, it sets a `NotReady` condition on\nthe Node, with the `reason` set to `\"node is shutting down\"`. The kube-scheduler honors this condition\nand does not schedule any Pods onto the affected node; other third-party schedulers are\nexpected to follow the same logic. This means that new Pods won't be scheduled onto that node\nand therefore none will start.\n\nThe kubelet **also** rejects Pods dur\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
      "meta": {
        "weight": 10,
        "rel_path": "concepts/cluster-administration/node-shutdown.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": null,
          "line_end": null,
          "quote": "Node Shutdowns"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:graceful-node-shutdown-graceful-node-shutdown",
      "type": "concept",
      "title": "Graceful node shutdown {#graceful-node-shutdown}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 1162,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:non-graceful-node-shutdown-handling-non-graceful-node-shutdown",
      "type": "concept",
      "title": "Non-graceful node shutdown handling {#non-graceful-node-shutdown}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 11218,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-graceful-node-shutdown",
      "type": "concept",
      "title": "Enabling graceful node shutdown",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 1579,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-graceful-node-shutdown",
      "type": "concept",
      "title": "Configuring graceful node shutdown",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 3602,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-priority-based-graceful-node-shutdown-pod-priority-graceful-node-shutdown",
      "type": "concept",
      "title": "Pod Priority based graceful node shutdown {#pod-priority-graceful-node-shutdown}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 6899,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:forced-storage-detach-on-timeout-storage-force-detach-on-timeout",
      "type": "concept",
      "title": "Forced storage detach on timeout {#storage-force-detach-on-timeout}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 13863,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/certificates",
      "type": "page",
      "title": "Certificates",
      "summary": "Certificates are used to authenticate and authorize entities in Kubernetes.",
      "body": "Certificates are used to authenticate and authorize entities in Kubernetes.\n\n**Why it matters**\nProperly configured certificates ensure the security and integrity of cluster communications.\n\n**Key facts**\n- Certificates are issued by a Certificate Authority (CA)\n- Certificates contain identifying information such as subject, issuer, and public key\n\n**Common pitfalls**\n- Using self-signed certificates can lead to trust issues\n- Expired or revoked certificates can cause communication failures\n\n**Related**\nCluster Administration, Security",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/certificates/",
      "meta": {
        "weight": 20,
        "rel_path": "concepts/cluster-administration/certificates.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/certificates.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/certificates/",
          "line_start": null,
          "line_end": null,
          "quote": "Certificates"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:concepts/cluster-administration/observability",
      "type": "page",
      "title": "Observability",
      "summary": "Understand how to gain end-to-end visibility of a Kubernetes cluster through the collection of metrics, logs, and traces.\n",
      "body": "\n\nIn Kubernetes, observability is the process of collecting and analyzing metrics, logs, and traces—often referred to as the three pillars of observability—in order to obtain a better understanding of the internal state, performance, and health of the cluster.\n\nKubernetes control plane components, as well as many add-ons, generate and emit these signals. By aggregating and correlating them, you can gain a unified picture of the control plane, add-ons, and applications across the cluster.\n\nFigure 1 outlines how cluster components emit the three primary signal types.\n\n\n```mermaid\nflowchart LR\n    A[Cluster components] --> M[Metrics pipeline]\n    A --> L[Log pipeline]\n    A --> T[Trace pipeline]\n    M --> S[(Storage and analysis)]\n    L --> S\n    T --> S\n    S --> O[Operators and automation]\n```\n\n\n*Figure 1. High-level signals emitted by cluster components and their consumers.*\n\n\n## Metrics\n\nKubernetes components emit metrics in [Prometheus format](https://prometheus.io/docs/instrumenting/exposition_formats/) from their `/metrics` endpoints, including:\n\n- kube-controller-manager\n- kube-proxy\n- kube-apiserver\n- kube-scheduler\n- kubelet\n\nThe kubelet also exposes metrics at `/metrics/cadvisor`, `/metrics/resource`, and `/metrics/probes`, and add-ons such as [kube-state-metrics](/docs/concepts/cluster-administration/kube-state-metrics/) enrich those control plane signals with Kubernetes object status.\n\nA typical Kubernetes metrics pipeline periodically scrapes these endpoints and stores the samples in a time series database (for example with Prometheus).\n\nSee the [system metrics guide](/docs/concepts/cluster-administration/system-metrics/) for details and configuration options.\n\nFigure 2 outlines a common Kubernetes metrics pipeline.\n\n\n```mermaid\nflowchart LR\n    C[Cluster components] --> P[Prometheus scraper]\n    P --> TS[(Time series storage)]\n    TS --> D[Dashboards and alerts]\n    TS --> A[Automated actions]\n```\n\n\n*Figure 2. Components of a typical Kubernetes metrics pipeline.*\n\nFor multi-cluster or multi-cloud visibility, distributed time series databases (for example Thanos or Cortex) can complement Prometheus.\n\nSee [Common observability tools - metrics tools](#metrics-tools) for metrics scrapers and time series databases.\n\n#### \n\n- [System metrics for Kubernetes components](/docs/concepts/cluster-administration/system-metrics/)\n- [Resource usage monitoring with metrics-server](/docs/tasks/debug/debug-cluster/resource-usage-monitoring/)\n- [kube-state-metrics concept](/docs/concepts/cluster-administration/kube-state-metrics/)\n- [Resource metrics pipeline overview](/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/)\n\n## Logs\n\nLogs provide a chronological record of events inside applications, Kubernetes system components, and security-related activities such as audit logging.\n\nContainer runtimes capture a containerized application’s output from standard output (`stdout`) and standard error (`stderr`) streams. While runtimes implement this differently, the integration with the kubelet is standardized through the _CRI logging format_, and the kubelet makes these logs available through `kubectl logs`.\n\n![Node-level logging](/images/docs/user-guide/logging/logging-node-level.png)\n\n*Figure 3a. Node-level logging architecture.*\n\nSystem component logs capture events from the cluster and are often useful for debugging and troubleshooting. These components are classified in two different ways: those that run in a container and those that do not. For example, the `kube-scheduler` and `kube-proxy` usually run in containers, whereas the `kubelet` and the container runtime run directly on the host.\n\n- On machines with `systemd`, the kubelet and container runtime write to journald. Otherwise, they write to `.log` files in the `/var/log` directory.\n- System components that run inside containers always write to `.log` files in `/var/log`, bypassing the default container logging mechanism.\n\nSystem component and container logs stored under \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
      "meta": {
        "weight": 55,
        "rel_path": "concepts/cluster-administration/observability.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": null,
          "line_end": null,
          "quote": "Observability"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:logs",
      "type": "concept",
      "title": "Logs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 2758,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:traces",
      "type": "concept",
      "title": "Traces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 5551,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:common-observability-tools",
      "type": "concept",
      "title": "Common observability tools",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 7180,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metrics-tools",
      "type": "concept",
      "title": "Metrics tools",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 7579,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:logging-tools",
      "type": "concept",
      "title": "Logging tools",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 8092,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tracing-tools",
      "type": "concept",
      "title": "Tracing tools",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 8648,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/system-traces",
      "type": "page",
      "title": "Traces For Kubernetes System Components",
      "summary": "",
      "body": "\n\n\n\nSystem component traces record the latency of and relationships between operations in the cluster.\n\nKubernetes components emit traces using the\n[OpenTelemetry Protocol](https://opentelemetry.io/docs/specs/otlp/)\nwith the gRPC exporter and can be collected and routed to tracing backends using an\n[OpenTelemetry Collector](https://github.com/open-telemetry/opentelemetry-collector#-opentelemetry-collector).\n\n\n\n## Trace Collection\n\nKubernetes components have built-in gRPC exporters for OTLP to export traces, either with an OpenTelemetry Collector, \nor without an OpenTelemetry Collector.\n\nFor a complete guide to collecting traces and using the collector, see\n[Getting Started with the OpenTelemetry Collector](https://opentelemetry.io/docs/collector/getting-started/).\nHowever, there are a few things to note that are specific to Kubernetes components.\n\nBy default, Kubernetes components export traces using the grpc exporter for OTLP on the\n[IANA OpenTelemetry port](https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml?search=opentelemetry), 4317.\nAs an example, if the collector is running as a sidecar to a Kubernetes component,\nthe following receiver configuration will collect spans and log them to standard output:\n\n```yaml\nreceivers:\n  otlp:\n    protocols:\n      grpc:\nexporters:\n  # Replace this exporter with the exporter for your backend\n  exporters:\n    debug:\n      verbosity: detailed\nservice:\n  pipelines:\n    traces:\n      receivers: [otlp]\n      exporters: [debug]\n```\n\nTo directly emit traces to a backend without utilizing a collector, \nspecify the endpoint field in the Kubernetes tracing configuration file with the desired trace backend address. \nThis method negates the need for a collector and simplifies the overall structure.\n\nFor trace backend header configuration, including authentication details, environment variables can be used with `OTEL_EXPORTER_OTLP_HEADERS`, \nsee [OTLP Exporter Configuration](https://opentelemetry.io/docs/languages/sdk-configuration/otlp-exporter/).\n\nAdditionally, for trace resource attribute configuration such as Kubernetes cluster name, namespace, Pod name, etc., \nenvironment variables can also be used with `OTEL_RESOURCE_ATTRIBUTES`, see [OTLP Kubernetes Resource](https://opentelemetry.io/docs/specs/semconv/resource/k8s/).\n\n## Component traces\n\n### kube-apiserver traces\n\nThe kube-apiserver generates spans for incoming HTTP requests, and for outgoing requests\nto webhooks, etcd, and re-entrant requests. It propagates the\n[W3C Trace Context](https://www.w3.org/TR/trace-context/) with outgoing requests\nbut does not make use of the trace context attached to incoming requests,\nas the kube-apiserver is often a public endpoint.\n\n#### Enabling tracing in the kube-apiserver\n\nTo enable tracing, provide the kube-apiserver with a tracing configuration file\nwith `--tracing-config-file=<path-to-config>`. This is an example config that records\nspans for 1 in 10000 requests, and uses the default OpenTelemetry endpoint:\n\n```yaml\napiVersion: apiserver.config.k8s.io/v1\nkind: TracingConfiguration\n# default value\n#endpoint: localhost:4317\nsamplingRatePerMillion: 100\n```\n\nFor more information about the `TracingConfiguration` struct, see\n[API server config API (v1)](/docs/reference/config-api/apiserver-config.v1/#apiserver-k8s-io-v1-TracingConfiguration).\n\n### kubelet traces\n\n\n\nThe kubelet CRI interface and authenticated http servers are instrumented to generate\ntrace spans. As with the apiserver, the endpoint and sampling rate are configurable.\nTrace context propagation is also configured. A parent span's sampling decision is always respected.\nA provided tracing configuration sampling rate will apply to spans without a parent.\nEnabled without a configured endpoint, the default OpenTelemetry Collector receiver address of \"localhost:4317\" is set.\n\n#### Enabling tracing in the kubelet\n\nTo enable tracing, apply the [tracing configuration](https://github.com/kubernetes/component-base/\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
      "meta": {
        "weight": 90,
        "rel_path": "concepts/cluster-administration/system-traces.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": null,
          "line_end": null,
          "quote": "Traces For Kubernetes System Components"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:trace-collection",
      "type": "concept",
      "title": "Trace Collection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 503,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:component-traces",
      "type": "concept",
      "title": "Component traces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 2424,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stability",
      "type": "concept",
      "title": "Stability",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 5519,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-apiserver-traces",
      "type": "concept",
      "title": "kube-apiserver traces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 2445,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-traces",
      "type": "concept",
      "title": "kubelet traces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 3453,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/flow-control",
      "type": "page",
      "title": "API Priority and Fairness",
      "summary": "",
      "body": "\n\n\n\nControlling the behavior of the Kubernetes API server in an overload situation\nis a key task for cluster administrators. The [kube-apiserver](#gloss:kube-apiserver) has some controls available\n(i.e. the `--max-requests-inflight` and `--max-mutating-requests-inflight`\ncommand-line flags) to limit the amount of outstanding work that will be\naccepted, preventing a flood of inbound requests from overloading and\npotentially crashing the API server, but these flags are not enough to ensure\nthat the most important requests get through in a period of high traffic.\n\nThe API Priority and Fairness feature (APF) is an alternative that improves upon\naforementioned max-inflight limitations. APF classifies\nand isolates requests in a more fine-grained way. It also introduces\na limited amount of queuing, so that no requests are rejected in cases\nof very brief bursts. Requests are dispatched from queues using a\nfair queuing technique so that, for example, a poorly-behaved\n[controller](#gloss:controller) need not\nstarve others (even at the same priority level).\n\nThis feature is designed to work well with standard controllers, which\nuse informers and react to failures of API requests with exponential\nback-off, and other clients that also work this way.\n\n\n> **Caution:** Some requests classified as \"long-running\"&mdash;such as remote\ncommand execution or log tailing&mdash;are not subject to the API\nPriority and Fairness filter. This is also true for the\n`--max-requests-inflight` flag without the API Priority and Fairness\nfeature enabled. API Priority and Fairness _does_ apply to **watch**\nrequests. When API Priority and Fairness is disabled, **watch** requests\nare not subject to the `--max-requests-inflight` limit.\n\n\n\n\n## Enabling/Disabling API Priority and Fairness\n\nThe API Priority and Fairness feature is controlled by a command-line flag\nand is enabled by default. See \n[Options](/docs/reference/command-line-tools-reference/kube-apiserver/#options)\nfor a general explanation of the available kube-apiserver command-line \noptions and how to enable and disable them. The name of the \ncommand-line option for APF is \"--enable-priority-and-fairness\". This feature\nalso involves an [API Group](#gloss:api-group) \nwith: (a) a stable `v1` version, introduced in 1.29, and \nenabled by default (b) a `v1beta3` version, enabled by default, and\ndeprecated in v1.29. You can\ndisable the API group beta version `v1beta3` by adding the\nfollowing command-line flags to your `kube-apiserver` invocation:\n\n```shell\nkube-apiserver \\\n--runtime-config=flowcontrol.apiserver.k8s.io/v1beta3=false \\\n # …and other flags as usual\n```\n\nThe command-line flag `--enable-priority-and-fairness=false` will disable the\nAPI Priority and Fairness feature.\n\n## Recursive server scenarios\n\nAPI Priority and Fairness must be used carefully in recursive server\nscenarios. These are scenarios in which some server A, while serving\na request, issues a subsidiary request to some server B. Perhaps\nserver B might even make a further subsidiary call back to server\nA. In situations where Priority and Fairness control is applied to\nboth the original request and some subsidiary ones(s), no matter how\ndeep in the recursion, there is a danger of priority inversions and/or\ndeadlocks.\n\nOne example of recursion is when the `kube-apiserver` issues an\nadmission webhook call to server B, and while serving that call,\nserver B makes a further subsidiary request back to the\n`kube-apiserver`. Another example of recursion is when an `APIService`\nobject directs the `kube-apiserver` to delegate requests about a\ncertain API group to a custom external server B (this is one of the\nthings called \"aggregation\").\n\nWhen the original request is known to belong to a certain priority\nlevel, and the subsidiary controlled requests are classified to higher\npriority levels, this is one possible solution. When the original\nrequests can belong to any priority level, the subsidiary controlled\nrequests have to be exempt from Priority and \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
      "meta": {
        "weight": 110,
        "rel_path": "concepts/cluster-administration/flow-control.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": null,
          "line_end": null,
          "quote": "API Priority and Fairness"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-disabling-api-priority-and-fairness",
      "type": "concept",
      "title": "Enabling/Disabling API Priority and Fairness",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 1903,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:recursive-server-scenarios",
      "type": "concept",
      "title": "Recursive server scenarios",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 2946,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defaults",
      "type": "concept",
      "title": "Defaults",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 18539,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:health-check-concurrency-exemption",
      "type": "concept",
      "title": "Health check concurrency exemption",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 24576,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:good-practices-for-using-api-priority-and-fairness",
      "type": "concept",
      "title": "Good practices for using API Priority and Fairness",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 35569,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:priority-levels",
      "type": "concept",
      "title": "Priority Levels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 5218,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:seats-occupied-by-a-request",
      "type": "concept",
      "title": "Seats Occupied by a Request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 6416,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execution-time-tweaks-for-watch-requests",
      "type": "concept",
      "title": "Execution time tweaks for watch requests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 7291,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:queuing",
      "type": "concept",
      "title": "Queuing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 8337,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exempt-requests",
      "type": "concept",
      "title": "Exempt requests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 9954,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prioritylevelconfiguration",
      "type": "concept",
      "title": "PriorityLevelConfiguration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 10823,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flowschema",
      "type": "concept",
      "title": "FlowSchema",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 16607,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mandatory-configuration-objects",
      "type": "concept",
      "title": "Mandatory Configuration Objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 18648,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:suggested-configuration-objects",
      "type": "concept",
      "title": "Suggested Configuration Objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 19907,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:maintenance-of-the-mandatory-and-suggested-configuration-objects",
      "type": "concept",
      "title": "Maintenance of the Mandatory and Suggested Configuration Objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 21623,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workload-modifications-good-practice-workload-modifications",
      "type": "concept",
      "title": "Workload modifications {#good-practice-workload-modifications}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 36533,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:priority-and-fairness-settings-good-practice-apf-settings",
      "type": "concept",
      "title": "Priority and fairness settings {#good-practice-apf-settings}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 38489,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/system-logs",
      "type": "page",
      "title": "System Logs",
      "summary": "",
      "body": "\n\nSystem component logs record events happening in cluster, which can be very useful for debugging.\nYou can configure log verbosity to see more or less detail.\nLogs can be as coarse-grained as showing errors within a component, or as fine-grained as showing\nstep-by-step traces of events (like HTTP access logs, pod state changes, controller actions, or\nscheduler decisions).\n\n\n\n\n> **Warning:** In contrast to the command line flags described here, the *log\noutput* itself does *not* fall under the Kubernetes API stability guarantees:\nindividual log entries and their formatting may change from one release\nto the next!\n\n\n## Klog\n\nklog is the Kubernetes logging library. [klog](https://github.com/kubernetes/klog)\ngenerates log messages for the Kubernetes system components.\n\nKubernetes is in the process of simplifying logging in its components.\nThe following klog command line flags\n[are deprecated](https://github.com/kubernetes/enhancements/tree/master/keps/sig-instrumentation/2845-deprecate-klog-specific-flags-in-k8s-components)\nstarting with Kubernetes v1.23 and removed in Kubernetes v1.26:\n\n- `--add-dir-header`\n- `--alsologtostderr`\n- `--log-backtrace-at`\n- `--log-dir`\n- `--log-file`\n- `--log-file-max-size`\n- `--logtostderr`\n- `--one-output`\n- `--skip-headers`\n- `--skip-log-headers`\n- `--stderrthreshold`\n\nOutput will always be written to stderr, regardless of the output format. Output redirection is\nexpected to be handled by the component which invokes a Kubernetes component. This can be a POSIX\nshell or a tool like systemd.\n\nIn some cases, for example a distroless container or a Windows system service, those options are\nnot available. Then the\n[`kube-log-runner`](https://github.com/kubernetes/kubernetes/blob/d2a8a81639fcff8d1221b900f66d28361a170654/staging/src/k8s.io/component-base/logs/kube-log-runner/README.md)\nbinary can be used as wrapper around a Kubernetes component to redirect\noutput. A prebuilt binary is included in several Kubernetes base images under\nits traditional name as `/go-runner` and as `kube-log-runner` in server and\nnode release archives.\n\nThis table shows how `kube-log-runner` invocations correspond to shell redirection:\n\n| Usage                                    | POSIX shell (such as bash) | `kube-log-runner <options> <cmd>`                           |\n| -----------------------------------------|----------------------------|-------------------------------------------------------------|\n| Merge stderr and stdout, write to stdout | `2>&1`                     | `kube-log-runner` (default behavior)                        |\n| Redirect both into log file              | `1>>/tmp/log 2>&1`         | `kube-log-runner -log-file=/tmp/log`                        |\n| Copy into log file and to stdout         | `2>&1 \\| tee -a /tmp/log`  | `kube-log-runner -log-file=/tmp/log -also-stdout`           |\n| Redirect only stdout into log file       | `>/tmp/log`                | `kube-log-runner -log-file=/tmp/log -redirect-stderr=false` |\n\n### Klog output\n\nAn example of the traditional klog native format:\n\n```\nI1025 00:15:15.525108       1 httplog.go:79] GET /api/v1/namespaces/kube-system/pods/metrics-server-v0.3.1-57c75779f-9p8wg: (1.512ms) 200 [pod_nanny/v0.0.0 (linux/amd64) kubernetes/$Format 10.56.1.19:51756]\n```\n\nThe message string may contain line breaks:\n\n```\nI1025 00:15:15.525108       1 example.go:79] This is a message\nwhich has a line break.\n```\n\n### Structured Logging\n\n\n\n\n> **Warning:** Migration to structured log messages is an ongoing process. Not all log messages are structured in\nthis version. When parsing log files, you must also handle unstructured log messages.\n\nLog formatting and value serialization are subject to change.\n\n\nStructured logging introduces a uniform structure in log messages allowing for programmatic\nextraction of information. You can store and process structured logs with less effort and cost.\nThe code which generates a log message determines whether it uses the traditional unstructured\nklog out\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
      "meta": {
        "weight": 80,
        "rel_path": "concepts/cluster-administration/system-logs.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": null,
          "line_end": null,
          "quote": "System Logs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:klog",
      "type": "concept",
      "title": "Klog",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 670,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:log-query",
      "type": "concept",
      "title": "Log query",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 10146,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:klog-output",
      "type": "concept",
      "title": "Klog output",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 3039,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:structured-logging",
      "type": "concept",
      "title": "Structured Logging",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 3464,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:contextual-logging",
      "type": "concept",
      "title": "Contextual Logging",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 4929,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:json-log-format",
      "type": "concept",
      "title": "JSON log format",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 7491,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:log-verbosity-level",
      "type": "concept",
      "title": "Log verbosity level",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 8932,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:log-location",
      "type": "concept",
      "title": "Log location",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 9237,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/addons",
      "type": "page",
      "title": "Installing Addons",
      "summary": "",
      "body": "\n\n\n\nAdd-ons extend the functionality of Kubernetes.\n\nThis page lists some of the available add-ons and links to their respective\ninstallation instructions. The list does not try to be exhaustive.\n\n\n\n## Networking and Network Policy\n\n* [ACI](https://www.github.com/noironetworks/aci-containers) provides integrated\n  container networking and network security with Cisco ACI.\n* [Antrea](https://antrea.io/) operates at Layer 3/4 to provide networking and\n  security services for Kubernetes, leveraging Open vSwitch as the networking\n  data plane. Antrea is a [CNCF project at the Sandbox level](https://www.cncf.io/projects/antrea/).\n* [Calico](https://www.tigera.io/project-calico/) is a networking and network\n  policy provider. Calico supports a flexible set of networking options so you\n  can choose the most efficient option for your situation, including non-overlay\n  and overlay networks, with or without BGP. Calico uses the same engine to\n  enforce network policy for hosts, pods, and (if using Istio & Envoy)\n  applications at the service mesh layer.\n* [Canal](https://projectcalico.docs.tigera.io/getting-started/kubernetes/flannel/flannel)\n  unites Flannel and Calico, providing networking and network policy.\n* [Cilium](https://github.com/cilium/cilium) is a networking, observability,\n  and security solution with an eBPF-based data plane. Cilium provides a\n  simple flat Layer 3 network with the ability to span multiple clusters\n  in either a native routing or overlay/encapsulation mode, and can enforce\n  network policies on L3-L7 using an identity-based security model that is\n  decoupled from network addressing. Cilium can act as a replacement for\n  kube-proxy; it also offers additional, opt-in observability and security features.\n  Cilium is a [CNCF project at the Graduated level](https://www.cncf.io/projects/cilium/).\n* [CNI-Genie](https://github.com/cni-genie/CNI-Genie) enables Kubernetes to seamlessly\n  connect to a choice of CNI plugins, such as Calico, Canal, Flannel, or Weave.\n  CNI-Genie is a [CNCF project at the Sandbox level](https://www.cncf.io/projects/cni-genie/).\n* [Contiv](https://contivpp.io/) provides configurable networking (native L3 using BGP,\n  overlay using vxlan, classic L2, and Cisco-SDN/ACI) for various use cases and a rich\n  policy framework. Contiv project is fully [open sourced](https://github.com/contiv).\n  The [installer](https://github.com/contiv/install) provides both kubeadm and\n  non-kubeadm based installation options.\n* [Contrail](https://www.juniper.net/us/en/products-services/sdn/contrail/contrail-networking/),\n  based on [Tungsten Fabric](https://tungsten.io), is an open source, multi-cloud\n  network virtualization and policy management platform. Contrail and Tungsten\n  Fabric are integrated with orchestration systems such as Kubernetes, OpenShift,\n  OpenStack and Mesos, and provide isolation modes for virtual machines, containers/pods\n  and bare metal workloads.\n* [Flannel](https://github.com/flannel-io/flannel#deploying-flannel-manually) is\n  an overlay network provider that can be used with Kubernetes.\n* [Gateway API](/docs/concepts/services-networking/gateway/) is an open source project managed by\n  the [SIG Network](https://github.com/kubernetes/community/tree/main/sig-network) community and\n  provides an expressive, extensible, and role-oriented API for modeling service networking.\n* [Knitter](https://github.com/ZTE/Knitter/) is a plugin to support multiple network\n  interfaces in a Kubernetes pod.\n* [kube-router](https://github.com/cloudnativelabs/kube-router) is an open\n  source turnkey solution for Kubernetes networking with the aim to provide\n  operational simplicity and high performance. It leverages the Kubernetes API,\n  BGP, and Golang for the control path and Linux networking primitives (IPVS,\n  nftables, etc.) for the data path. It provides a low overhead alternative and\n  is used in both k0s and k3s.\n* [Multus](https://github.com/k8snetworkplumbingwg/multus-cni) is a Multi plugin fo\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
      "meta": {
        "weight": 150,
        "rel_path": "concepts/cluster-administration/addons.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": null,
          "line_end": null,
          "quote": "Installing Addons"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networking-and-network-policy",
      "type": "concept",
      "title": "Networking and Network Policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-discovery",
      "type": "concept",
      "title": "Service Discovery",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 6279,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:visualization-amp-control",
      "type": "concept",
      "title": "Visualization &amp; Control",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 6465,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:infrastructure",
      "type": "concept",
      "title": "Infrastructure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 6756,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:instrumentation",
      "type": "concept",
      "title": "Instrumentation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 7223,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:legacy-add-ons",
      "type": "concept",
      "title": "Legacy Add-ons",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 7325,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/_index",
      "type": "page",
      "title": "Cluster Administration",
      "summary": "Lower-level detail relevant to creating or administering a Kubernetes cluster.\n",
      "body": "\n\nThe cluster administration overview is for anyone creating or administering a Kubernetes cluster.\nIt assumes some familiarity with core Kubernetes [concepts](/docs/concepts/).\n\n\n\n## Planning a cluster\n\nSee the guides in [Setup](/docs/setup/) for examples of how to plan, set up, and configure\nKubernetes clusters. The solutions listed in this article are called *distros*.\n\n\n> **Note:** Not all distros are actively maintained. Choose distros which have been tested with a recent\nversion of Kubernetes.\n\n\nBefore choosing a guide, here are some considerations:\n\n- Do you want to try out Kubernetes on your computer, or do you want to build a high-availability,\n  multi-node cluster? Choose distros best suited for your needs.\n- Will you be using **a hosted Kubernetes cluster**, such as\n  [Google Kubernetes Engine](https://cloud.google.com/kubernetes-engine/), or **hosting your own cluster**?\n- Will your cluster be **on-premises**, or **in the cloud (IaaS)**? Kubernetes does not directly\n  support hybrid clusters. Instead, you can set up multiple clusters.\n- **If you are configuring Kubernetes on-premises**, consider which\n  [networking model](/docs/concepts/cluster-administration/networking/) fits best.\n- Will you be running Kubernetes on **\"bare metal\" hardware** or on **virtual machines (VMs)**?\n- Do you **want to run a cluster**, or do you expect to do **active development of Kubernetes project code**?\n  If the latter, choose an actively-developed distro. Some distros only use binary releases, but\n  offer a greater variety of choices.\n- Familiarize yourself with the [components](/docs/concepts/overview/components/) needed to run a cluster.\n\n## Managing a cluster\n\n* Learn how to [manage nodes](/docs/concepts/architecture/nodes/).\n  * Read about [Node autoscaling](/docs/concepts/cluster-administration/node-autoscaling/).\n\n* Learn how to set up and manage the [resource quota](/docs/concepts/policy/resource-quotas/) for shared clusters.\n\n## Securing a cluster\n\n* [Generate Certificates](/docs/tasks/administer-cluster/certificates/) describes the steps to\n  generate certificates using different tool chains.\n\n* [Kubernetes Container Environment](/docs/concepts/containers/container-environment/) describes\n  the environment for Kubelet managed containers on a Kubernetes node.\n\n* [Controlling Access to the Kubernetes API](/docs/concepts/security/controlling-access) describes\n  how Kubernetes implements access control for its own API.\n\n* [Authenticating](/docs/reference/access-authn-authz/authentication/) explains authentication in\n  Kubernetes, including the various authentication options.\n\n* [Authorization](/docs/reference/access-authn-authz/authorization/) is separate from\n  authentication, and controls how HTTP calls are handled.\n\n* [Using Admission Controllers](/docs/reference/access-authn-authz/admission-controllers/)\n  explains plug-ins which intercepts requests to the Kubernetes API server after authentication\n  and authorization.\n\n* [Admission Webhook Good Practices](/docs/concepts/cluster-administration/admission-webhooks-good-practices/)\n  provides good practices and considerations when designing mutating admission\n  webhooks and validating admission webhooks.\n\n* [Using Sysctls in a Kubernetes Cluster](/docs/tasks/administer-cluster/sysctl-cluster/)\n  describes to an administrator how to use the `sysctl` command-line tool to set kernel parameters\n.\n\n* [Auditing](/docs/tasks/debug/debug-cluster/audit/) describes how to interact with Kubernetes'\n  audit logs.\n\n### Securing the kubelet\n\n* [Control Plane-Node communication](/docs/concepts/architecture/control-plane-node-communication/)\n* [TLS bootstrapping](/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/)\n* [Kubelet authentication/authorization](/docs/reference/access-authn-authz/kubelet-authn-authz/)\n\n## Optional Cluster Services\n\n* [DNS Integration](/docs/concepts/services-networking/dns-pod-service/) describes how to resolve\n  a DNS name directly to a Kubernetes service\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
      "meta": {
        "weight": 100,
        "rel_path": "concepts/cluster-administration/_index.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Cluster Administration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:planning-a-cluster",
      "type": "concept",
      "title": "Planning a cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": 212,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managing-a-cluster",
      "type": "concept",
      "title": "Managing a cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": 1708,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:securing-a-cluster",
      "type": "concept",
      "title": "Securing a cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": 2007,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:optional-cluster-services",
      "type": "concept",
      "title": "Optional Cluster Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": 3872,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:securing-the-kubelet",
      "type": "concept",
      "title": "Securing the kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": 3562,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:concepts/cluster-administration/compatibility-version",
      "type": "page",
      "title": "Compatibility Version For Kubernetes Control Plane Components",
      "summary": "",
      "body": "\n\nSince release v1.32, we introduced configurable version compatibility and emulation options to Kubernetes control plane components to make upgrades safer by providing more control and increasing the granularity of steps available to cluster administrators.\n\n\n\n## Emulated Version\n\nThe emulation option is set by the `--emulated-version` flag of control plane components. It allows the component to emulate the behavior (APIs, features, ...) of an earlier version of Kubernetes.\n\nWhen used, the capabilities available will match the emulated version: \n* Any capabilities present in the binary version that were introduced after the emulation version will be unavailable. \n* Any capabilities removed after the emulation version will be available. \n\nThis enables a binary from a particular Kubernetes release to emulate the behavior of a previous version with sufficient fidelity that interoperability with other system components can be defined in terms of the emulated version.\n\nThe `--emulated-version` must be <= `binaryVersion`. See the help message of the `--emulated-version` flag for supported range of emulated versions.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/concepts/cluster-administration/compatibility-version/",
      "meta": {
        "weight": 70,
        "rel_path": "concepts/cluster-administration/compatibility-version.md"
      },
      "provenance": [
        {
          "source": "concepts/cluster-administration/compatibility-version.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/compatibility-version/",
          "line_start": null,
          "line_end": null,
          "quote": "Compatibility Version For Kubernetes Control Plane Components"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:emulated-version",
      "type": "concept",
      "title": "Emulated Version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "concepts",
      "tags": [
        "concepts"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "concepts/cluster-administration/compatibility-version.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/compatibility-version/",
          "line_start": 293,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/hello-minikube",
      "type": "page",
      "title": "Hello Minikube",
      "summary": "",
      "body": "\n\nThis tutorial shows you how to run a sample app on Kubernetes using minikube.\nThe tutorial provides a container image that uses NGINX to echo back all the requests.\n\n## \n\n* Deploy a sample application to minikube.\n* Run the app.\n* View application logs.\n\n## \n\n\nThis tutorial assumes that you have already set up `minikube`.\nSee __Step 1__ in [minikube start](https://minikube.sigs.k8s.io/docs/start/) for installation instructions.\n\nOnly execute the instructions in __Step 1, Installation__. The rest is covered on this page.\n\n\nYou also need to install `kubectl`.\nSee [Install tools](/docs/tasks/tools/#kubectl) for installation instructions.\n\n\n\n\n## Create a minikube cluster\n\n```shell\nminikube start\n```\n\n## Check the status of the minikube cluster\n\nVerify the status of the minikube cluster to ensure all the components are in a running state.\n\n```shell\nminikube status\n```\nThe output from the above command should show all components Running or Configured, as shown in the example output below:\n\n```\nminikube\ntype: Control Plane\nhost: Running\nkubelet: Running\napiserver: Running\nkubeconfig: Configured\n```\n\n## Open the Dashboard\n\nOpen the Kubernetes dashboard. You can do this two different ways:\n\n\n\nOpen a **new** terminal, and run:\n```shell\n# Start a new terminal, and leave this running.\nminikube dashboard\n```\n\nNow, switch back to the terminal where you ran `minikube start`.\n\n\nThe `dashboard` command enables the dashboard add-on and opens the proxy in the default web browser.\nYou can create Kubernetes resources on the dashboard such as Deployment and Service.\n\nTo find out how to avoid directly invoking the browser from the terminal and get a URL for the web dashboard, see the \"URL copy and paste\" tab.\n\nBy default, the dashboard is only accessible from within the internal Kubernetes virtual network.\nThe `dashboard` command creates a temporary proxy to make the dashboard accessible from outside the Kubernetes virtual network.\n\nTo stop the proxy, run `Ctrl+C` to exit the process.\nAfter the command exits, the dashboard remains running in the Kubernetes cluster.\nYou can run the `dashboard` command again to create another proxy to access the dashboard.\n\n\n\n\n\nIf you don't want minikube to open a web browser for you, run the `dashboard` subcommand with the\n`--url` flag. `minikube` outputs a URL that you can open in the browser you prefer.\n\nOpen a **new** terminal, and run:\n```shell\n# Start a new terminal, and leave this running.\nminikube dashboard --url\n```\n\nNow, you can use this URL and switch back to the terminal where you ran `minikube start`.\n\n\n\n\n## Create a Deployment\n\nA Kubernetes [*Pod*](/docs/concepts/workloads/pods/) is a group of one or more Containers,\ntied together for the purposes of administration and networking. The Pod in this\ntutorial has only one Container. A Kubernetes\n[*Deployment*](/docs/concepts/workloads/controllers/deployment/) checks on the health of your\nPod and restarts the Pod's Container if it terminates. Deployments are the\nrecommended way to manage the creation and scaling of Pods.\n\n1. Use the `kubectl create` command to create a Deployment that manages a Pod. The\n   Pod runs a Container based on the provided Docker image.\n\n    ```shell\n    # Run a test container image that includes a webserver\n    kubectl create deployment hello-node --image=registry.k8s.io/e2e-test-images/agnhost:2.53 -- /agnhost netexec --http-port=8080\n    ```\n\n1. View the Deployment:\n\n    ```shell\n    kubectl get deployments\n    ```\n\n    The output is similar to:\n\n    ```\n    NAME         READY   UP-TO-DATE   AVAILABLE   AGE\n    hello-node   1/1     1            1           1m\n    ```\n\n    (It may take some time for the pod to become available. If you see \"0/1\", try again in a few seconds.)\n\n1. View the Pod:\n\n    ```shell\n    kubectl get pods\n    ```\n\n    The output is similar to:\n\n    ```\n    NAME                          READY     STATUS    RESTARTS   AGE\n    hello-node-5f76cf6ccf-br9b5   1/1       Running   0          1m\n    ```\n\n1. View clust\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
      "meta": {
        "weight": 5,
        "rel_path": "tutorials/hello-minikube.md"
      },
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": null,
          "line_end": null,
          "quote": "Hello Minikube"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-minikube-cluster",
      "type": "concept",
      "title": "Create a minikube cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 801,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-the-status-of-the-minikube-cluster",
      "type": "concept",
      "title": "Check the status of the minikube cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 860,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:open-the-dashboard",
      "type": "concept",
      "title": "Open the Dashboard",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 1264,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-deployment",
      "type": "concept",
      "title": "Create a Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 2918,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-addons",
      "type": "concept",
      "title": "Enable addons",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 7053,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:conclusion",
      "type": "concept",
      "title": "Conclusion",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 10687,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/_index",
      "type": "page",
      "title": "Tutorials",
      "summary": "",
      "body": "\n\nThis section of the Kubernetes documentation contains tutorials.\nA tutorial shows how to accomplish a goal that is larger than a single\n[task](/docs/tasks/). Typically a tutorial has several sections,\neach of which has a sequence of steps.\nBefore walking through each tutorial, you may want to bookmark the\n[Standardized Glossary](/docs/reference/glossary/) page for later references.\n\n\n\n## Basics\n\n* [Kubernetes Basics](/docs/tutorials/kubernetes-basics/) is an in-depth interactive tutorial that helps you understand the Kubernetes system and try out some basic Kubernetes features.\n* [Introduction to Kubernetes (edX)](https://www.edx.org/course/introduction-kubernetes-linuxfoundationx-lfs158x#)\n* [Hello Minikube](/docs/tutorials/hello-minikube/)\n\n## Configuration\n\n* [Configuring Redis Using a ConfigMap](/docs/tutorials/configuration/configure-redis-using-configmap/)\n\n## Authoring Pods\n\n* [Adopting Sidecar Containers](/docs/tutorials/configuration/pod-sidecar-containers/)\n\n## Stateless Applications\n\n* [Exposing an External IP Address to Access an Application in a Cluster](/docs/tutorials/stateless-application/expose-external-ip-address/)\n* [Example: Deploying PHP Guestbook application with Redis](/docs/tutorials/stateless-application/guestbook/)\n\n## Stateful Applications\n\n* [StatefulSet Basics](/docs/tutorials/stateful-application/basic-stateful-set/)\n* [Example: WordPress and MySQL with Persistent Volumes](/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/)\n* [Example: Deploying Cassandra with Stateful Sets](/docs/tutorials/stateful-application/cassandra/)\n* [Running ZooKeeper, A CP Distributed System](/docs/tutorials/stateful-application/zookeeper/)\n\n## Services\n\n* [Connecting Applications with Services](/docs/tutorials/services/connect-applications-service/)\n* [Using Source IP](/docs/tutorials/services/source-ip/)\n\n## Security\n\n* [Apply Pod Security Standards at Cluster level](/docs/tutorials/security/cluster-level-pss/)\n* [Apply Pod Security Standards at Namespace level](/docs/tutorials/security/ns-level-pss/)\n* [Restrict a Container's Access to Resources with AppArmor](/docs/tutorials/security/apparmor/)\n* [Seccomp](/docs/tutorials/security/seccomp/)\n\n## Cluster Management\n\n* [Running Kubelet in Standalone Mode](/docs/tutorials/cluster-management/kubelet-standalone/)\n* [Configuring Swap Memory on Kubernetes Nodes](/docs/tutorials/cluster-management/provision-swap-memory/)\n* [Install Drivers and Allocate Devices with DRA](/docs/tutorials/cluster-management/install-use-dra/)\n* [Explore Validating and Mutating Admission Policies](/docs/tutorials/cluster-management/admission-policies/)\n\n## \n\nIf you would like to write a tutorial, see\n[Content Page Types](/docs/contribute/style/page-content-types/)\nfor information about the tutorial page type.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/_index/",
      "meta": {
        "weight": 60,
        "rel_path": "tutorials/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Tutorials"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:basics",
      "type": "concept",
      "title": "Basics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 421,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authoring-pods",
      "type": "concept",
      "title": "Authoring Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 909,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stateless-applications",
      "type": "concept",
      "title": "Stateless Applications",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 1016,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stateful-applications",
      "type": "concept",
      "title": "Stateful Applications",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 1295,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-management",
      "type": "concept",
      "title": "Cluster Management",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 2244,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/configuration/pod-sidecar-containers",
      "type": "page",
      "title": "Adopting Sidecar Containers",
      "summary": "",
      "body": "\n\nThis section is relevant for people adopting a new built-in\n[sidecar containers](/docs/concepts/workloads/pods/sidecar-containers/) feature for their workloads.\n\nSidecar container is not a new concept as posted in the\n[blog post](/blog/2015/06/the-distributed-system-toolkit-patterns/).\nKubernetes allows running multiple containers in a Pod to implement this concept.\nHowever, running a sidecar container as a regular container\nhas a lot of limitations being fixed with the new built-in sidecar containers support.\n\n\n\n## \n\n- Understand the need for sidecar containers\n- Be able to troubleshoot issues with the sidecar containers\n- Understand options to universally \"inject\" sidecar containers to any workload\n\n## \n\n \n\n\n\n## Sidecar containers overview\n\nSidecar containers are secondary containers that run along with the main\napplication container within the same [Pod](#gloss:pod).\nThese containers are used to enhance or to extend the functionality of the primary _app\ncontainer_ by providing additional services, or functionalities such as logging, monitoring,\nsecurity, or data synchronization, without directly altering the primary application code.\nYou can read more in the [Sidecar containers](/docs/concepts/workloads/pods/sidecar-containers/)\nconcept page.\n\nThe concept of sidecar containers is not new and there are multiple implementations of this concept.\nAs well as sidecar containers that you, the person defining the Pod, want to run, you can also find\nthat some [addons](#gloss:addons) modify Pods - before the Pods\nstart running - so that there are extra sidecar containers. The mechanisms to _inject_ those extra\nsidecars are often [mutating webhooks](/docs/reference/access-authn-authz/admission-controllers/#mutatingadmissionwebhook).\nFor example, a service mesh addon might inject a sidecar that configures mutual TLS and encryption\nin transit between different Pods.\n\nWhile the concept of sidecar containers is not new,\nthe native implementation of this feature in Kubernetes, however, is new. And as with every new feature,\nadopting this feature may present certain challenges.\n\nThis tutorial explores challenges and solutions that can be experienced by end users as well as\nby authors of sidecar containers.\n\n## Benefits of a built-in sidecar container\n\nUsing Kubernetes' native support for sidecar containers provides several benefits:\n\n1. You can configure a native sidecar container to start ahead of\n   [init containers](#gloss:init-container).\n1. The built-in sidecar containers can be authored to guarantee that they are terminated last.\n   Sidecar containers are terminated with a `SIGTERM` signal once all the regular containers\n   are completed and terminated. If the sidecar container isn’t gracefully shut down, a\n   `SIGKILL` signal will be used to terminate it.\n1. With Jobs, when Pod's `restartPolicy: OnFailure` or `restartPolicy: Never`,\n   native sidecar containers do not block Pod completion. With legacy sidecar containers,\n   special care is needed to handle this situation.\n1. Also, with Jobs, built-in sidecar containers would keep being restarted once they are done,\n   even if regular containers would not with Pod's `restartPolicy: Never`.\n\nSee [differences from init containers](/docs/concepts/workloads/pods/sidecar-containers/#differences-from-application-containers)\nto learn more about it.\n\n## Adopting built-in sidecar containers\n\nThe `SidecarContainers` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\nis in beta state starting from Kubernetes version 1.29 and is enabled by default.\nSome clusters may have this feature disabled or have software installed that is incompatible with the feature.\n\nWhen this happens, the Pod may be rejected or the sidecar containers may block Pod startup,\nrendering the Pod useless. This condition is easy to detect as the Pod simply gets stuck on\ninitialization. However, it is often unclear what caused the problem.\n\nHere are the considerations and troubleshooting steps that one\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
      "meta": {
        "weight": 40,
        "rel_path": "tutorials/configuration/pod-sidecar-containers.md"
      },
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": null,
          "line_end": null,
          "quote": "Adopting Sidecar Containers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sidecar-containers-overview",
      "type": "concept",
      "title": "Sidecar containers overview",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 944,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:benefits-of-a-built-in-sidecar-container",
      "type": "concept",
      "title": "Benefits of a built-in sidecar container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 2520,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adopting-built-in-sidecar-containers",
      "type": "concept",
      "title": "Adopting built-in sidecar containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 3665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ensure-the-feature-gate-is-enabled",
      "type": "concept",
      "title": "Ensure the feature gate is enabled",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 4382,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-for-3rd-party-tooling-and-mutating-webhooks",
      "type": "concept",
      "title": "Check for 3rd party tooling and mutating webhooks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 5705,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:automatic-injection-of-sidecars",
      "type": "concept",
      "title": "Automatic injection of sidecars",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 6971,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "type": "page",
      "title": "Configure a Pod to Use a PersistentVolume for Storage",
      "summary": "",
      "body": "\n\nThis page shows you how to configure a Pod to use a\n[PersistentVolumeClaim](#gloss:persistent-volume-claim)\nfor storage.\nHere is a summary of the process:\n\n1. You, as cluster administrator, create a PersistentVolume backed by physical\n   storage. You do not associate the volume with any Pod.\n\n1. You, now taking the role of a developer / cluster user, create a\n   PersistentVolumeClaim that is automatically bound to a suitable\n   PersistentVolume.\n\n1. You create a Pod that uses the above PersistentVolumeClaim for storage.\n\n## \n\n* You need to have a Kubernetes cluster that has only one Node, and the\n  [kubectl](#gloss:kubectl)\n  command-line tool must be configured to communicate with your cluster. If you\n  do not already have a single-node cluster, you can create one by using\n  [Minikube](https://minikube.sigs.k8s.io/docs/).\n\n* Familiarize yourself with the material in\n  [Persistent Volumes](/docs/concepts/storage/persistent-volumes/).\n\n\n\n## Create an index.html file on your Node\n\nOpen a shell to the single Node in your cluster. How you open a shell depends\non how you set up your cluster. For example, if you are using Minikube, you\ncan open a shell to your Node by entering `minikube ssh`.\n\nIn your shell on that Node, create a `/mnt/data` directory:\n\n```shell\n# This assumes that your Node uses \"sudo\" to run commands\n# as the superuser\nsudo mkdir /mnt/data\n```\n\nIn the `/mnt/data` directory, create an `index.html` file:\n\n```shell\n# This again assumes that your Node uses \"sudo\" to run commands\n# as the superuser\nsudo sh -c \"echo 'Hello from Kubernetes storage' > /mnt/data/index.html\"\n```\n\n\n> **Note:** If your Node uses a tool for superuser access other than `sudo`, you can\nusually make this work if you replace `sudo` with the name of the other tool.\n\n\nTest that the `index.html` file exists:\n\n```shell\ncat /mnt/data/index.html\n```\n\nThe output should be:\n\n```\nHello from Kubernetes storage\n```\n\nYou can now close the shell to your Node.\n\n## Create a PersistentVolume\n\nIn this exercise, you create a *hostPath* PersistentVolume. Kubernetes supports\nhostPath for development and testing on a single-node cluster. A hostPath\nPersistentVolume uses a file or directory on the Node to emulate network-attached storage.\n\nIn a production cluster, you would not use hostPath. Instead a cluster administrator\nwould provision a network resource like a Google Compute Engine persistent disk,\nan NFS share, or an Amazon Elastic Block Store volume. Cluster administrators can also\nuse [StorageClasses](/docs/reference/generated/kubernetes-api//#storageclass-v1-storage-k8s-io)\nto set up\n[dynamic provisioning](/docs/concepts/storage/dynamic-provisioning/).\n\nHere is the configuration file for the hostPath PersistentVolume:\n\n\n\nThe configuration file specifies that the volume is at `/mnt/data` on the\ncluster's Node. The configuration also specifies a size of 10 gibibytes and\nan access mode of `ReadWriteOnce`, which means the volume can be mounted as\nread-write by a single Node. It defines the [StorageClass name](/docs/concepts/storage/persistent-volumes/#class)\n`manual` for the PersistentVolume, which will be used to bind\nPersistentVolumeClaim requests to this PersistentVolume.\n\n\n> **Note:** This example uses the `ReadWriteOnce` access mode, for simplicity. For\nproduction use, the Kubernetes project recommends using the `ReadWriteOncePod`\naccess mode instead.\n\n\nCreate the PersistentVolume:\n\n```shell\nkubectl apply -f https://k8s.io/examples/pods/storage/pv-volume.yaml\n```\n\nView information about the PersistentVolume:\n\n```shell\nkubectl get pv task-pv-volume\n```\n\nThe output shows that the PersistentVolume has a `STATUS` of `Available`. This\nmeans it has not yet been bound to a PersistentVolumeClaim.\n\n```\nNAME             CAPACITY   ACCESSMODES   RECLAIMPOLICY   STATUS      CLAIM     STORAGECLASS   REASON    AGE\ntask-pv-volume   10Gi       RWO           Retain          Available             manual                   4s\n```\n\n## Create a PersistentVolumeClaim\n\nThe next ste\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
      "meta": {
        "weight": 90,
        "rel_path": "tutorials/configuration/configure-persistent-volume-storage.md"
      },
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": null,
          "line_end": null,
          "quote": "Configure a Pod to Use a PersistentVolume for Storage"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-an-index-html-file-on-your-node",
      "type": "concept",
      "title": "Create an index.html file on your Node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 1080,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-persistentvolume",
      "type": "concept",
      "title": "Create a PersistentVolume",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 2103,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mounting-the-same-persistentvolume-in-two-places",
      "type": "concept",
      "title": "Mounting the same PersistentVolume in two places",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 7000,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:access-control",
      "type": "concept",
      "title": "Access control",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 11797,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:move-the-index-html-file-on-your-node-to-a-new-folder",
      "type": "concept",
      "title": "Move the index.html file on your Node to a new folder",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 8071,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-new-nginx-conf-file",
      "type": "concept",
      "title": "Create a new nginx.conf file",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 8817,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "type": "page",
      "title": "Updating Configuration via a ConfigMap",
      "summary": "",
      "body": "\nThis page provides a step-by-step example of updating configuration within a Pod via a ConfigMap\nand builds upon the [Configure a Pod to Use a ConfigMap](/docs/tasks/configure-pod-container/configure-pod-configmap/) task.  \nAt the end of this tutorial, you will understand how to change the configuration for a running application.  \nThis tutorial uses the `alpine` and `nginx` images as examples.\n\n## \n\n\nYou need to have the [curl](https://curl.se/) command-line tool for making HTTP requests from\nthe terminal or command prompt. If you do not have `curl` available, you can install it. Check the\ndocumentation for your local operating system.\n\n## \n* Update configuration via a ConfigMap mounted as a Volume\n* Update environment variables of a Pod via a ConfigMap\n* Update configuration via a ConfigMap in a multi-container Pod\n* Update configuration via a ConfigMap in a Pod possessing a Sidecar Container\n\n\n\n## Update configuration via a ConfigMap mounted as a Volume {#rollout-configmap-volume}\n\nUse the `kubectl create configmap` command to create a ConfigMap from\n[literal values](/docs/tasks/configure-pod-container/configure-pod-configmap/#create-configmaps-from-literal-values):\n\n```shell\nkubectl create configmap sport --from-literal=sport=football\n```\n\nBelow is an example of a Deployment manifest with the ConfigMap `sport` mounted as a\n[volume](#gloss:volume) into the Pod's only container.\n\n\nCreate the Deployment:\n\n```shell\nkubectl apply -f https://k8s.io/examples/deployments/deployment-with-configmap-as-volume.yaml\n```\n\nCheck the pods for this Deployment to ensure they are ready (matching by\n[selector](#gloss:selector)):\n\n```shell\nkubectl get pods --selector=app.kubernetes.io/name=configmap-volume\n```\n\nYou should see an output similar to:\n\n```\nNAME                                READY   STATUS    RESTARTS   AGE\nconfigmap-volume-6b976dfdcf-qxvbm   1/1     Running   0          72s\nconfigmap-volume-6b976dfdcf-skpvm   1/1     Running   0          72s\nconfigmap-volume-6b976dfdcf-tbc6r   1/1     Running   0          72s\n```\n\nOn each node where one of these Pods is running, the kubelet fetches the data for\nthat ConfigMap and translates it to files in a local volume.\nThe kubelet then mounts that volume into the container, as specified in the Pod template.\nThe code running in that container loads the information from the file\nand uses it to print a report to stdout.\nYou can check this report by viewing the logs for one of the Pods in that Deployment:\n\n```shell\n# Pick one Pod that belongs to the Deployment, and view its logs\nkubectl logs deployments/configmap-volume\n```\n\nYou should see an output similar to:\n\n```\nFound 3 pods, using pod/configmap-volume-76d9c5678f-x5rgj\nThu Jan  4 14:06:46 UTC 2024 My preferred sport is football\nThu Jan  4 14:06:56 UTC 2024 My preferred sport is football\nThu Jan  4 14:07:06 UTC 2024 My preferred sport is football\nThu Jan  4 14:07:16 UTC 2024 My preferred sport is football\nThu Jan  4 14:07:26 UTC 2024 My preferred sport is football\n```\n\nEdit the ConfigMap:\n\n```shell\nkubectl edit configmap sport\n```\n\nIn the editor that appears, change the value of key `sport` from `football` to `cricket`. Save your changes.\nThe kubectl tool updates the ConfigMap accordingly (if you see an error, try again).\n\nHere's an example of how that manifest could look after you edit it:\n\n```yaml\napiVersion: v1\ndata:\n  sport: cricket\nkind: ConfigMap\n# You can leave the existing metadata as they are.\n# The values you'll see won't exactly match these.\nmetadata:\n  creationTimestamp: \"2024-01-04T14:05:06Z\"\n  name: sport\n  namespace: default\n  resourceVersion: \"1743935\"\n  uid: 024ee001-fe72-487e-872e-34d6464a8a23\n```\n\nYou should see the following output:\n\n```\nconfigmap/sport edited\n```\n\nTail (follow the latest entries in) the logs of one of the pods that belongs to this Deployment:\n\n```shell\nkubectl logs deployments/configmap-volume --follow\n```\n\nAfter few seconds, you should see the log output change as follows:\n\n```\nThu Jan  4 14:11:36 UTC 2024\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
      "meta": {
        "weight": 20,
        "rel_path": "tutorials/configuration/updating-configuration-via-a-configmap.md"
      },
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": null,
          "line_end": null,
          "quote": "Updating Configuration via a ConfigMap"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-configuration-via-a-configmap-mounted-as-a-volume-rollout-configmap-volume",
      "type": "concept",
      "title": "Update configuration via a ConfigMap mounted as a Volume {#rollout-configmap-volume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 1053,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-environment-variables-of-a-pod-via-a-configmap-rollout-configmap-env",
      "type": "concept",
      "title": "Update environment variables of a Pod via a ConfigMap {#rollout-configmap-env}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 5349,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-configuration-via-a-configmap-in-a-multi-container-pod-rollout-configmap-multiple-containers",
      "type": "concept",
      "title": "Update configuration via a ConfigMap in a multi-container Pod {#rollout-configmap-multiple-containers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 11076,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-configuration-via-a-configmap-in-a-pod-possessing-a-sidecar-container-rollout-configmap-sidecar",
      "type": "concept",
      "title": "Update configuration via a ConfigMap in a Pod possessing a sidecar container {#rollout-configmap-sidecar}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 14655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-configuration-via-an-immutable-configmap-that-is-mounted-as-a-volume-rollout-configmap-immutable-volume",
      "type": "concept",
      "title": "Update configuration via an immutable ConfigMap that is mounted as a volume {#rollout-configmap-immutable-volume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 18913,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/configuration/configure-redis-using-configmap",
      "type": "page",
      "title": "Configuring Redis using a ConfigMap",
      "summary": "",
      "body": "\n\nThis page provides a real world example of how to configure Redis using a ConfigMap and builds upon the [Configure a Pod to Use a ConfigMap](/docs/tasks/configure-pod-container/configure-pod-configmap/) task. \n\n\n\n## \n\n\n* Create a ConfigMap with Redis configuration values\n* Create a Redis Pod that mounts and uses the created ConfigMap\n* Verify that the configuration was correctly applied.\n\n\n\n## \n\n\n \n\n* The example shown on this page works with `kubectl` 1.14 and above.\n* Understand [Configure a Pod to Use a ConfigMap](/docs/tasks/configure-pod-container/configure-pod-configmap/).\n\n\n\n\n\n\n## Real World Example: Configuring Redis using a ConfigMap\n\nFollow the steps below to configure a Redis cache using data stored in a ConfigMap.\n\nFirst create a ConfigMap with an empty configuration block:\n\n```shell\ncat <<EOF >./example-redis-config.yaml\napiVersion: v1\nkind: ConfigMap\nmetadata:\n  name: example-redis-config\ndata:\n  redis-config: \"\"\nEOF\n```\n\nApply the ConfigMap created above, along with a Redis pod manifest:\n\n```shell\nkubectl apply -f example-redis-config.yaml\nkubectl apply -f https://raw.githubusercontent.com/kubernetes/website/main/content/en/examples/pods/config/redis-pod.yaml\n```\n\nExamine the contents of the Redis pod manifest and note the following:\n\n* A volume named `config` is created by `spec.volumes[1]`\n* The `key` and `path` under `spec.volumes[1].configMap.items[0]` exposes the `redis-config` key from the \n  `example-redis-config` ConfigMap as a file named `redis.conf` on the `config` volume.\n* The `config` volume is then mounted at `/redis-master` by `spec.containers[0].volumeMounts[1]`.\n\nThis has the net effect of exposing the data in `data.redis-config` from the `example-redis-config`\nConfigMap above as `/redis-master/redis.conf` inside the Pod.\n\n\n\nExamine the created objects:\n\n```shell\nkubectl get pod/redis configmap/example-redis-config \n```\n\nYou should see the following output:\n\n```\nNAME        READY   STATUS    RESTARTS   AGE\npod/redis   1/1     Running   0          8s\n\nNAME                             DATA   AGE\nconfigmap/example-redis-config   1      14s\n```\n\nRecall that we left `redis-config` key in the `example-redis-config` ConfigMap blank:\n\n```shell\nkubectl describe configmap/example-redis-config\n```\n\nYou should see an empty `redis-config` key:\n\n```shell\nName:         example-redis-config\nNamespace:    default\nLabels:       <none>\nAnnotations:  <none>\n\nData\n====\nredis-config:\n```\n\nUse `kubectl exec` to enter the pod and run the `redis-cli` tool to check the current configuration:\n\n```shell\nkubectl exec -it pod/redis -- redis-cli\n```\n\nCheck `maxmemory`:\n\n```shell\n127.0.0.1:6379> CONFIG GET maxmemory\n```\n\nIt should show the default value of 0:\n\n```shell\n1) \"maxmemory\"\n2) \"0\"\n```\n\nSimilarly, check `maxmemory-policy`:\n\n```shell\n127.0.0.1:6379> CONFIG GET maxmemory-policy\n```\n\nWhich should also yield its default value of `noeviction`:\n\n```shell\n1) \"maxmemory-policy\"\n2) \"noeviction\"\n```\n\nNow let's add some configuration values to the `example-redis-config` ConfigMap:\n\n\n\nApply the updated ConfigMap:\n\n```shell\nkubectl apply -f example-redis-config.yaml\n```\n\nConfirm that the ConfigMap was updated:\n\n```shell\nkubectl describe configmap/example-redis-config\n```\n\nYou should see the configuration values we just added:\n\n```shell\nName:         example-redis-config\nNamespace:    default\nLabels:       <none>\nAnnotations:  <none>\n\nData\n====\nredis-config:\n----\nmaxmemory 2mb\nmaxmemory-policy allkeys-lru\n```\n\nCheck the Redis Pod again using `redis-cli` via `kubectl exec` to see if the configuration was applied:\n\n```shell\nkubectl exec -it pod/redis -- redis-cli\n```\n\nCheck `maxmemory`:\n\n```shell\n127.0.0.1:6379> CONFIG GET maxmemory\n```\n\nIt remains at the default value of 0:\n\n```shell\n1) \"maxmemory\"\n2) \"0\"\n```\n\nSimilarly, `maxmemory-policy` remains at the `noeviction` default setting:\n\n```shell\n127.0.0.1:6379> CONFIG GET maxmemory-policy\n```\n\nReturns:\n\n```shell\n1) \"maxmemory-policy\"\n2) \"noeviction\"\n```\n\nThe configuration values hav\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/configuration/configure-redis-using-configmap/",
      "meta": {
        "weight": 30,
        "rel_path": "tutorials/configuration/configure-redis-using-configmap.md"
      },
      "provenance": [
        {
          "source": "tutorials/configuration/configure-redis-using-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-redis-using-configmap/",
          "line_start": null,
          "line_end": null,
          "quote": "Configuring Redis using a ConfigMap"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:real-world-example-configuring-redis-using-a-configmap",
      "type": "concept",
      "title": "Real World Example: Configuring Redis using a ConfigMap",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/configuration/configure-redis-using-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-redis-using-configmap/",
          "line_start": 756,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/configuration/_index",
      "type": "page",
      "title": "Configuration",
      "summary": "Configuration refers to the process of setting up and managing Kubernetes resources.",
      "body": "Configuration refers to the process of setting up and managing Kubernetes resources.\n\n**Why it matters**\nAccurate configuration is crucial for cluster functionality and application deployment.\n\n**Key facts**\n- Configuration involves specifying resource settings, such as CPU and memory limits\n\n**Common pitfalls**\n- Incorrect configuration can lead to resource under/over-allocation\n- Inadequate logging and monitoring can hinder troubleshooting efforts\n\n**Related**\nCluster Management, Application Deployment",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/configuration/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "tutorials/configuration/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/configuration/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Configuration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/security/apparmor",
      "type": "page",
      "title": "Restrict a Container's Access to Resources with AppArmor",
      "summary": "",
      "body": "\n\n\n\nThis page shows you how to load AppArmor profiles on your nodes and enforce\nthose profiles in Pods. To learn more about how Kubernetes can confine Pods using\nAppArmor, see\n[Linux kernel security constraints for Pods and containers](/docs/concepts/security/linux-kernel-security-constraints/#apparmor).\n\n## \n\n\n* See an example of how to load a profile on a Node\n* Learn how to enforce the profile on a Pod\n* Learn how to check that the profile is loaded\n* See what happens when a profile is violated\n* See what happens when a profile cannot be loaded\n\n\n\n## \n\n\nAppArmor is an optional kernel module and Kubernetes feature, so verify it is supported on your\nNodes before proceeding:\n\n1. AppArmor kernel module is enabled -- For the Linux kernel to enforce an AppArmor profile, the\n   AppArmor kernel module must be installed and enabled. Several distributions enable the module by\n   default, such as Ubuntu and SUSE, and many others provide optional support. To check whether the\n   module is enabled, check the `/sys/module/apparmor/parameters/enabled` file:\n\n   ```shell\n   cat /sys/module/apparmor/parameters/enabled\n   Y\n   ```\n\n   The kubelet verifies that AppArmor is enabled on the host before admitting a pod with AppArmor\n   explicitly configured.\n\n1. Container runtime supports AppArmor -- All common Kubernetes-supported container\n   runtimes should support AppArmor, including [containerd](#gloss:containerd) and\n   [cri-o](#gloss:cri-o). Please refer to the corresponding runtime\n   documentation and verify that the cluster fulfills the requirements to use AppArmor.\n\n1. Profile is loaded -- AppArmor is applied to a Pod by specifying an AppArmor profile that each\n   container should be run with. If any of the specified profiles are not loaded in the\n   kernel, the kubelet will reject the Pod. You can view which profiles are loaded on a\n   node by checking the `/sys/kernel/security/apparmor/profiles` file. For example:\n\n   ```shell\n   ssh gke-test-default-pool-239f5d02-gyn2 \"sudo cat /sys/kernel/security/apparmor/profiles | sort\"\n   ```\n   ```\n   apparmor-test-deny-write (enforce)\n   apparmor-test-audit-write (enforce)\n   docker-default (enforce)\n   k8s-nginx (enforce)\n   ```\n\n   For more details on loading profiles on nodes, see\n   [Setting up nodes with profiles](#setting-up-nodes-with-profiles).\n\n\n\n## Securing a Pod\n\n\nPrior to Kubernetes v1.30, AppArmor was specified through annotations. Use the documentation version\nselector to view the documentation with this deprecated API.\n\n\nAppArmor profiles can be specified at the pod level or container level. The container AppArmor\nprofile takes precedence over the pod profile.\n\n```yaml\nsecurityContext:\n  appArmorProfile:\n    type: <profile_type>\n```\n\nWhere `<profile_type>` is one of:\n\n* `RuntimeDefault` to use the runtime's default profile\n* `Localhost` to use a profile loaded on the host (see below)\n* `Unconfined` to run without AppArmor\n\nSee [Specifying AppArmor Confinement](#specifying-apparmor-confinement) for full details on the AppArmor profile API.\n\nTo verify that the profile was applied, you can check that the container's root process is\nrunning with the correct profile by examining its proc attr:\n\n```shell\nkubectl exec <pod_name> -- cat /proc/1/attr/current\n```\n\nThe output should look something like this:\n\n```\ncri-containerd.apparmor.d (enforce)\n```\n\n## Example\n\n*This example assumes you have already set up a cluster with AppArmor support.*\n\nFirst, load the profile you want to use onto your Nodes. This profile blocks all file write operations:\n\n```\n#include <tunables/global>\n\nprofile k8s-apparmor-example-deny-write flags=(attach_disconnected) {\n  #include <abstractions/base>\n\n  file,\n\n  # Deny all file writes.\n  deny /** w,\n}\n```\n\nThe profile needs to be loaded onto all nodes, since you don't know where the pod will be scheduled.\nFor this example you can use SSH to install the profiles, but other approaches are\ndiscussed in [Setting up nodes with profiles](#setting-up-nodes-with-profil\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
      "meta": {
        "weight": 30,
        "rel_path": "tutorials/security/apparmor.md"
      },
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": null,
          "line_end": null,
          "quote": "Restrict a Container's Access to Resources with AppArmor"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:securing-a-pod",
      "type": "concept",
      "title": "Securing a Pod",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 2513,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authoring-profiles",
      "type": "concept",
      "title": "Authoring Profiles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 8286,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:specifying-apparmor-confinement",
      "type": "concept",
      "title": "Specifying AppArmor confinement",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 9181,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-up-nodes-with-profiles",
      "type": "concept",
      "title": "Setting up Nodes with profiles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 7576,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apparmor-profile-within-security-context-apparmorprofile",
      "type": "concept",
      "title": "AppArmor profile within security context {#appArmorProfile}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 9441,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/security/cluster-level-pss",
      "type": "page",
      "title": "Apply Pod Security Standards at the Cluster Level",
      "summary": "",
      "body": "\nThis tutorial applies only for new clusters.\n\n\nPod Security is an admission controller that carries out checks against the Kubernetes\n[Pod Security Standards](/docs/concepts/security/pod-security-standards/) when new pods are\ncreated. It is a feature GA'ed in v1.25.\nThis tutorial shows you how to enforce the `baseline` Pod Security\nStandard at the cluster level which applies a standard configuration\nto all namespaces in a cluster.\n\nTo apply Pod Security Standards to specific namespaces, refer to\n[Apply Pod Security Standards at the namespace level](/docs/tutorials/security/ns-level-pss).\n\nIf you are running a version of Kubernetes other than v,\ncheck the documentation for that version.\n\n## \n\nInstall the following on your workstation:\n\n- [kind](https://kind.sigs.k8s.io/docs/user/quick-start/#installation)\n- [kubectl](/docs/tasks/tools/)\n\nThis tutorial demonstrates what you can configure for a Kubernetes cluster that you fully\ncontrol. If you are learning how to configure Pod Security Admission for a managed cluster\nwhere you are not able to configure the control plane, read\n[Apply Pod Security Standards at the namespace level](/docs/tutorials/security/ns-level-pss).\n\n## Choose the right Pod Security Standard to apply\n\n[Pod Security Admission](/docs/concepts/security/pod-security-admission/)\nlets you apply built-in [Pod Security Standards](/docs/concepts/security/pod-security-standards/)\nwith the following modes: `enforce`, `audit`, and `warn`.\n\nTo gather information that helps you to choose the Pod Security Standards\nthat are most appropriate for your configuration, do the following:\n\n1. Create a cluster with no Pod Security Standards applied:\n\n   ```shell\n   kind create cluster --name psa-wo-cluster-pss\n   ```\n   The output is similar to:\n   ```\n   Creating cluster \"psa-wo-cluster-pss\" ...\n   ✓ Ensuring node image (kindest/node:v) 🖼\n   ✓ Preparing nodes 📦\n   ✓ Writing configuration 📜\n   ✓ Starting control-plane 🕹️\n   ✓ Installing CNI 🔌\n   ✓ Installing StorageClass 💾\n   Set kubectl context to \"kind-psa-wo-cluster-pss\"\n   You can now use your cluster with:\n\n   kubectl cluster-info --context kind-psa-wo-cluster-pss\n\n   Thanks for using kind! 😊\n   ```\n\n1. Set the kubectl context to the new cluster:\n\n   ```shell\n   kubectl cluster-info --context kind-psa-wo-cluster-pss\n   ```\n   The output is similar to this:\n\n   ```\n   Kubernetes control plane is running at https://127.0.0.1:61350\n\n   CoreDNS is running at https://127.0.0.1:61350/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy\n\n   To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.\n   ```\n\n1. Get a list of namespaces in the cluster:\n\n   ```shell\n   kubectl get ns\n   ```\n   The output is similar to this:\n   ```\n   NAME                 STATUS   AGE\n   default              Active   9m30s\n   kube-node-lease      Active   9m32s\n   kube-public          Active   9m32s\n   kube-system          Active   9m32s\n   local-path-storage   Active   9m26s\n   ```\n\n1. Use `--dry-run=server` to understand what happens when different Pod Security Standards\n   are applied:\n\n   1. Privileged\n      ```shell\n      kubectl label --dry-run=server --overwrite ns --all \\\n      pod-security.kubernetes.io/enforce=privileged\n      ```\n\n      The output is similar to:\n      ```\n      namespace/default labeled\n      namespace/kube-node-lease labeled\n      namespace/kube-public labeled\n      namespace/kube-system labeled\n      namespace/local-path-storage labeled\n      ```\n   2. Baseline\n      ```shell\n      kubectl label --dry-run=server --overwrite ns --all \\\n      pod-security.kubernetes.io/enforce=baseline\n      ```\n\n      The output is similar to:\n      ```\n      namespace/default labeled\n      namespace/kube-node-lease labeled\n      namespace/kube-public labeled\n      Warning: existing pods in namespace \"kube-system\" violate the new PodSecurity enforce level \"baseline:latest\"\n      Warning: etcd-psa-wo-cluster-pss-control-plane (and 3 other pods): host namespaces, hostPa\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/security/cluster-level-pss/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/security/cluster-level-pss.md"
      },
      "provenance": [
        {
          "source": "tutorials/security/cluster-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/cluster-level-pss/",
          "line_start": null,
          "line_end": null,
          "quote": "Apply Pod Security Standards at the Cluster Level"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:choose-the-right-pod-security-standard-to-apply",
      "type": "concept",
      "title": "Choose the right Pod Security Standard to apply",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/cluster-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/cluster-level-pss/",
          "line_start": 1285,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-modes-versions-and-standards",
      "type": "concept",
      "title": "Set modes, versions and standards",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/cluster-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/cluster-level-pss/",
          "line_start": 6195,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/security/seccomp",
      "type": "page",
      "title": "Restrict a Container's Syscalls with seccomp",
      "summary": "",
      "body": "\n\n\n\nSeccomp stands for secure computing mode and has been a feature of the Linux\nkernel since version 2.6.12. It can be used to sandbox the privileges of a\nprocess, restricting the calls it is able to make from userspace into the\nkernel. Kubernetes lets you automatically apply seccomp profiles loaded onto a\n[node](#gloss:node) to your Pods and containers.\n\nIdentifying the privileges required for your workloads can be difficult. In this\ntutorial, you will go through how to load seccomp profiles into a local\nKubernetes cluster, how to apply them to a Pod, and how you can begin to craft\nprofiles that give only the necessary privileges to your container processes.\n\n## \n\n* Learn how to load seccomp profiles on a node\n* Learn how to apply a seccomp profile to a container\n* Observe auditing of syscalls made by a container process\n* Observe behavior when a missing profile is specified\n* Observe a violation of a seccomp profile\n* Learn how to create fine-grained seccomp profiles\n* Learn how to apply a container runtime default seccomp profile\n\n## \n\nIn order to complete all steps in this tutorial, you must install\n[kind](/docs/tasks/tools/#kind) and [kubectl](/docs/tasks/tools/#kubectl).\n\nThe commands used in the tutorial assume that you are using\n[Docker](https://www.docker.com/) as your container runtime. (The cluster that `kind` creates may\nuse a different container runtime internally). You could also use\n[Podman](https://podman.io/) but in that case, you would have to follow specific\n[instructions](https://kind.sigs.k8s.io/docs/user/rootless/) in order to complete the tasks\nsuccessfully.\n\nThis tutorial shows some examples that are still beta (since v1.25) and\nothers that use only generally available seccomp functionality. You should\nmake sure that your cluster is\n[configured correctly](https://kind.sigs.k8s.io/docs/user/quick-start/#setting-kubernetes-version)\nfor the version you are using.\n\nThe tutorial also uses the `curl` tool for downloading examples to your computer.\nYou can adapt the steps to use a different tool if you prefer.\n\n\nIt is not possible to apply a seccomp profile to a container running with\n`privileged: true` set in the container's `securityContext`. Privileged containers always\nrun as `Unconfined`.\n\n\n\n\n## Download example seccomp profiles {#download-profiles}\n\nThe contents of these profiles will be explored later on, but for now go ahead\nand download them into a directory named `profiles/` so that they can be loaded\ninto the cluster.\n\n\n\n\n\n\n\n\n\n\n\n\n\nRun these commands:\n\n```shell\nmkdir ./profiles\ncurl -L -o profiles/audit.json https://k8s.io/examples/pods/security/seccomp/profiles/audit.json\ncurl -L -o profiles/violation.json https://k8s.io/examples/pods/security/seccomp/profiles/violation.json\ncurl -L -o profiles/fine-grained.json https://k8s.io/examples/pods/security/seccomp/profiles/fine-grained.json\nls profiles\n```\n\nYou should see three profiles listed at the end of the final step:\n```\naudit.json  fine-grained.json  violation.json\n```\n\n## Create a local Kubernetes cluster with kind\n\nFor simplicity, [kind](https://kind.sigs.k8s.io/) can be used to create a single\nnode cluster with the seccomp profiles loaded. Kind runs Kubernetes in Docker,\nso each node of the cluster is a container. This allows for files\nto be mounted in the filesystem of each container similar to loading files\nonto a node.\n\n\n\nDownload that example kind configuration, and save it to a file named `kind.yaml`:\n```shell\ncurl -L -O https://k8s.io/examples/pods/security/seccomp/kind.yaml\n```\n\nYou can set a specific Kubernetes version by setting the node's container image.\nSee [Nodes](https://kind.sigs.k8s.io/docs/user/configuration/#nodes) within the\nkind documentation about configuration for more details on this.\nThis tutorial assumes you are using Kubernetes .\n\nAs a beta feature, you can configure Kubernetes to use the profile that the\n[container runtime](#gloss:container-runtime)\nprefers by default, rather than falling back to `Unconfined`.\nIf you w\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
      "meta": {
        "weight": 40,
        "rel_path": "tutorials/security/seccomp.md"
      },
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": null,
          "line_end": null,
          "quote": "Restrict a Container's Syscalls with seccomp"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:download-example-seccomp-profiles-download-profiles",
      "type": "concept",
      "title": "Download example seccomp profiles {#download-profiles}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 2491,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-local-kubernetes-cluster-with-kind",
      "type": "concept",
      "title": "Create a local Kubernetes cluster with kind",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 3634,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-that-uses-the-container-runtime-default-seccomp-profile",
      "type": "concept",
      "title": "Create a Pod that uses the container runtime default seccomp profile",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 6119,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-with-a-seccomp-profile-for-syscall-auditing",
      "type": "concept",
      "title": "Create a Pod with a seccomp profile for syscall auditing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 7324,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-with-a-seccomp-profile-that-causes-violation",
      "type": "concept",
      "title": "Create a Pod with a seccomp profile that causes violation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 12366,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-pod-with-a-seccomp-profile-that-only-allows-necessary-syscalls",
      "type": "concept",
      "title": "Create a Pod with a seccomp profile that only allows necessary syscalls",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 13508,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-the-use-of-runtimedefault-as-the-default-seccomp-profile-for-all-workloads",
      "type": "concept",
      "title": "Enable the use of `RuntimeDefault` as the default seccomp profile for all workloads",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 15901,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/security/ns-level-pss",
      "type": "page",
      "title": "Apply Pod Security Standards at the Namespace Level",
      "summary": "",
      "body": "\nThis tutorial applies only for new clusters.\n\n\nPod Security Admission is an admission controller that applies \n[Pod Security Standards](/docs/concepts/security/pod-security-standards/) \nwhen pods are created.  It is a feature GA'ed in v1.25.\nIn this tutorial, you will enforce the `baseline` Pod Security Standard,\none namespace at a time.\n\nYou can also apply Pod Security Standards to multiple namespaces at once at the cluster\nlevel. For instructions, refer to\n[Apply Pod Security Standards at the cluster level](/docs/tutorials/security/cluster-level-pss/).\n\n## \n\nInstall the following on your workstation:\n\n- [kind](https://kind.sigs.k8s.io/docs/user/quick-start/#installation)\n- [kubectl](/docs/tasks/tools/)\n\n## Create cluster\n\n1. Create a `kind` cluster as follows:\n\n   ```shell\n   kind create cluster --name psa-ns-level\n   ```\n\n   The output is similar to this:\n\n   ```\n   Creating cluster \"psa-ns-level\" ...\n    ✓ Ensuring node image (kindest/node:v) 🖼 \n    ✓ Preparing nodes 📦  \n    ✓ Writing configuration 📜 \n    ✓ Starting control-plane 🕹️ \n    ✓ Installing CNI 🔌 \n    ✓ Installing StorageClass 💾 \n   Set kubectl context to \"kind-psa-ns-level\"\n   You can now use your cluster with:\n    \n   kubectl cluster-info --context kind-psa-ns-level\n    \n   Not sure what to do next? 😅  Check out https://kind.sigs.k8s.io/docs/user/quick-start/\n   ```\n\n1. Set the kubectl context to the new cluster:\n\n   ```shell\n   kubectl cluster-info --context kind-psa-ns-level\n   ```\n   The output is similar to this:\n\n   ```\n   Kubernetes control plane is running at https://127.0.0.1:50996\n   CoreDNS is running at https://127.0.0.1:50996/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy\n    \n   To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.\n   ```\n\n## Create a namespace\n\nCreate a new namespace called `example`:\n\n```shell\nkubectl create ns example\n```\n\nThe output is similar to this:\n\n```\nnamespace/example created\n```\n\n## Enable Pod Security Standards checking for that namespace\n\n1. Enable Pod Security Standards on this namespace using labels supported by\n   built-in Pod Security Admission. In this step you will configure a check to\n   warn on Pods that don't meet the latest version of the _baseline_ pod\n   security standard.\n\n   ```shell\n   kubectl label --overwrite ns example \\\n      pod-security.kubernetes.io/warn=baseline \\\n      pod-security.kubernetes.io/warn-version=latest\n   ```\n\n2. You can configure multiple pod security standard checks on any namespace, using labels.\n   The following command will `enforce` the `baseline` Pod Security Standard, but\n   `warn` and `audit` for `restricted` Pod Security Standards as per the latest\n   version (default value)\n\n   ```shell\n   kubectl label --overwrite ns example \\\n     pod-security.kubernetes.io/enforce=baseline \\\n     pod-security.kubernetes.io/enforce-version=latest \\\n     pod-security.kubernetes.io/warn=restricted \\\n     pod-security.kubernetes.io/warn-version=latest \\\n     pod-security.kubernetes.io/audit=restricted \\\n     pod-security.kubernetes.io/audit-version=latest\n   ```\n\n## Verify the Pod Security Standard enforcement\n\n1. Create a baseline Pod in the `example` namespace:\n\n   ```shell\n   kubectl apply -n example -f https://k8s.io/examples/security/example-baseline-pod.yaml\n   ```\n   The Pod does start OK; the output includes a warning. For example:\n\n   ```\n   Warning: would violate PodSecurity \"restricted:latest\": allowPrivilegeEscalation != false (container \"nginx\" must set securityContext.allowPrivilegeEscalation=false), unrestricted capabilities (container \"nginx\" must set securityContext.capabilities.drop=[\"ALL\"]), runAsNonRoot != true (pod or container \"nginx\" must set securityContext.runAsNonRoot=true), seccompProfile (pod or container \"nginx\" must set securityContext.seccompProfile.type to \"RuntimeDefault\" or \"Localhost\")\n   pod/nginx created\n   ```\n\n1. Create a baseline Pod in the `default` namespace:\n\n   ```shell\n   kubectl apply -n default -f https:\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
      "meta": {
        "weight": 20,
        "rel_path": "tutorials/security/ns-level-pss.md"
      },
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": null,
          "line_end": null,
          "quote": "Apply Pod Security Standards at the Namespace Level"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-cluster",
      "type": "concept",
      "title": "Create cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": 788,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-pod-security-standards-checking-for-that-namespace",
      "type": "concept",
      "title": "Enable Pod Security Standards checking for that namespace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": 2063,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-the-pod-security-standard-enforcement",
      "type": "concept",
      "title": "Verify the Pod Security Standard enforcement",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": 3200,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/security/_index",
      "type": "page",
      "title": "Security",
      "summary": "Security encompasses measures taken to protect Kubernetes cluster resources from unauthorized access.",
      "body": "Security encompasses measures taken to protect Kubernetes cluster resources from unauthorized access.\n\n**Why it matters**\nEffective security prevents data breaches, ensures compliance, and maintains trust in the cluster.\n\n**Key facts**\n- Security involves implementing network policies, access controls, and authentication mechanisms\n\n**Common pitfalls**\n- Insufficient security measures can lead to unauthorized access or data breaches\n- Inadequate logging and monitoring can hinder incident response efforts\n\n**Related**\nCluster Administration, Configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/security/_index/",
      "meta": {
        "weight": 40,
        "rel_path": "tutorials/security/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/security/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/security/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Security"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/cluster-management/provision-swap-memory",
      "type": "page",
      "title": "Configuring swap memory on Kubernetes nodes",
      "summary": "",
      "body": "\n\nThis page provides an example of how to provision and configure swap memory on a Kubernetes node using kubeadm.\n\n\n\n## \n\n* Provision swap memory on a Kubernetes node using kubeadm.\n* Learn to configure both encrypted and unencrypted swap.\n* Learn to enable swap on boot.\n\n## \n\n\n \n\nYou need at least one worker node in your cluster which needs to run a Linux operating system.\nIt is required for this demo that the kubeadm tool be installed, following the steps outlined in the\n[kubeadm installation guide](/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm).\n\nOn each worker node where you will configure swap use, you need:\n* `fallocate`\n* `mkswap`\n* `swapon`\n\n* For encrypted swap space (recommended), you also need:\n* `cryptsetup`\n\n\n\n\n## Install a swap-enabled cluster with kubeadm\n\n### Create a swap file and turn swap on\n\nIf swap is not enabled, there's a need to provision swap on the node. \nThe following sections demonstrate creating 4GiB of swap, both in the encrypted and unencrypted case.\n\n\n\n\nAn encrypted swap file can be set up as follows.\nBear in mind that this example uses the `cryptsetup` binary (which is available\non most Linux distributions).\n\n```bash\n# Allocate storage and restrict access\nfallocate --length 4GiB /swapfile\nchmod 600 /swapfile\n\n# Create an encrypted device backed by the allocated storage\ncryptsetup --type plain --cipher aes-xts-plain64 --key-size 256 -d /dev/urandom open /swapfile cryptswap\n\n# Format the swap space\nmkswap /dev/mapper/cryptswap\n\n# Activate the swap space for paging\nswapon /dev/mapper/cryptswap\n```\n\n\n\n\nAn unencrypted swap file can be set up as follows.\n\n```bash\n# Allocate storage and restrict access\nfallocate --length 4GiB /swapfile\nchmod 600 /swapfile\n\n# Format the swap space\nmkswap /swapfile\n\n# Activate the swap space for paging\nswapon /swapfile\n```\n\n\n\n\n\n#### Verify that swap is enabled\n\nSwap can be verified to be enabled with both `swapon -s` command or the `free` command.\n\nUsing `swapon -s`:\n```\nFilename       Type\t\tSize\t\tUsed\t\tPriority\n/dev/dm-0      partition \t4194300\t\t0\t\t-2\n```\n\nUsing `free -h`:\n```\n               total        used        free      shared  buff/cache   available\nMem:           3.8Gi       1.3Gi       249Mi        25Mi       2.5Gi       2.5Gi\nSwap:          4.0Gi          0B       4.0Gi\n```\n\n#### Enable swap on boot\n\nAfter setting up swap, to start the swap file at boot time,\nyou typically either set up a systemd unit to activate (encrypted) swap, or you\nadd a line similar to `/swapfile swap swap defaults 0 0` into `/etc/fstab`.\n\nUsing systemd for swap activation allows the system to delay kubelet start until swap is available,\nif that is something you want to ensure.\nIn a similar way, using systemd allows your server to leave swap active until kubelet\n(and, typically, your container runtime) have shut down.\n\n### Set up kubelet configuration\n\nAfter enabling swap on the node, kubelet needs to be configured to use it.\nYou need to select a [swap behavior](/docs/reference/node/swap-behavior/)\nfor this node. You'll configure _LimitedSwap_ behavior for this tutorial.\n\nFind and edit the kubelet configuration file, and:\n\n- set `failSwapOn` to false\n- set `memorySwap.swapBehavior` to LimitedSwap\n\n```yaml\n # this fragment goes into the kubelet's configuration file\n failSwapOn: false\n memorySwap:\n     swapBehavior: LimitedSwap\n```\n\nIn order for these configurations to take effect, kubelet needs to be restarted. \nTypically you do that by running:\n```shell\nsystemctl restart kubelet.service\n```\n\nYou should find that the kubelet is now healthy, and that you can run Pods\nthat use swap memory as needed.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
      "meta": {
        "weight": 35,
        "rel_path": "tutorials/cluster-management/provision-swap-memory.md"
      },
      "provenance": [
        {
          "source": "tutorials/cluster-management/provision-swap-memory.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
          "line_start": null,
          "line_end": null,
          "quote": "Configuring swap memory on Kubernetes nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-a-swap-enabled-cluster-with-kubeadm",
      "type": "concept",
      "title": "Install a swap-enabled cluster with kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/provision-swap-memory.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
          "line_start": 944,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-swap-file-and-turn-swap-on",
      "type": "concept",
      "title": "Create a swap file and turn swap on",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/provision-swap-memory.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
          "line_start": 992,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-up-kubelet-configuration",
      "type": "concept",
      "title": "Set up kubelet configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/provision-swap-memory.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
          "line_start": 3203,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "type": "page",
      "title": "Namespaces Walkthrough",
      "summary": "",
      "body": "\nKubernetes [namespaces](#gloss:namespace)\nhelp different projects, teams, or customers to share a Kubernetes cluster.\n\nIt does this by providing the following:\n\n1. A scope for [Names](/docs/concepts/overview/working-with-objects/names/).\n2. A mechanism to attach authorization and policy to a subsection of the cluster.\n\nUse of multiple namespaces is optional.\n\nThis example demonstrates how to use Kubernetes namespaces to subdivide your cluster.\n\n\n\n\n## \n\n\n \n\n\n\n\n\n## Prerequisites\n\nThis example assumes the following:\n\n1. You have an [existing Kubernetes cluster](/docs/setup/).\n2. You have a basic understanding of Kubernetes [Pods](#gloss:pod), [Services](#gloss:service), and [Deployments](#gloss:deployment).\n\n## Understand the default namespace\n\nBy default, a Kubernetes cluster will instantiate a default namespace when provisioning the cluster to hold the default set of Pods,\nServices, and Deployments used by the cluster.\n\nAssuming you have a fresh cluster, you can inspect the available namespaces by doing the following:\n\n```shell\nkubectl get namespaces\n```\n```\nNAME      STATUS    AGE\ndefault   Active    13m\n```\n\n## Create new namespaces\n\nFor this exercise, we will create two additional Kubernetes namespaces to hold our content.\n\nLet's imagine a scenario where an organization is using a shared Kubernetes cluster for development and production use cases.\n\nThe development team would like to maintain a space in the cluster where they can get a view on the list of Pods, Services, and Deployments\nthey use to build and run their application.  In this space, Kubernetes resources come and go, and the restrictions on who can or cannot modify resources\nare relaxed to enable agile development.\n\nThe operations team would like to maintain a space in the cluster where they can enforce strict procedures on who can or cannot manipulate the set of\nPods, Services, and Deployments that run the production site.\n\nOne pattern this organization could follow is to partition the Kubernetes cluster into two namespaces: `development` and `production`.\n\nLet's create two new namespaces to hold our work.\n\nUse the file [`namespace-dev.yaml`](/examples/admin/namespace-dev.yaml) which describes a `development` namespace:\n\n\n\nCreate the `development` namespace using kubectl.\n\n```shell\nkubectl create -f https://k8s.io/examples/admin/namespace-dev.yaml\n```\n\nSave the following contents into file [`namespace-prod.yaml`](/examples/admin/namespace-prod.yaml) which describes a `production` namespace:\n\n\n\nAnd then let's create the `production` namespace using kubectl.\n\n```shell\nkubectl create -f https://k8s.io/examples/admin/namespace-prod.yaml\n```\n\nTo be sure things are right, let's list all of the namespaces in our cluster.\n\n```shell\nkubectl get namespaces --show-labels\n```\n```\nNAME          STATUS    AGE       LABELS\ndefault       Active    32m       <none>\ndevelopment   Active    29s       name=development\nproduction    Active    23s       name=production\n```\n\n## Create pods in each namespace\n\nA Kubernetes namespace provides the scope for Pods, Services, and Deployments in the cluster.\n\nUsers interacting with one namespace do not see the content in another namespace.\n\nTo demonstrate this, let's spin up a simple Deployment and Pods in the `development` namespace.\n\nWe first check what is the current context:\n\n```shell\nkubectl config view\n```\n```yaml\napiVersion: v1\nclusters:\n- cluster:\n    certificate-authority-data: REDACTED\n    server: https://130.211.122.180\n  name: lithe-cocoa-92103_kubernetes\ncontexts:\n- context:\n    cluster: lithe-cocoa-92103_kubernetes\n    user: lithe-cocoa-92103_kubernetes\n  name: lithe-cocoa-92103_kubernetes\ncurrent-context: lithe-cocoa-92103_kubernetes\nkind: Config\npreferences: {}\nusers:\n- name: lithe-cocoa-92103_kubernetes\n  user:\n    client-certificate-data: REDACTED\n    client-key-data: REDACTED\n    token: 65rZW78y8HbwXXtSXuUw9DbP4FLjHi4b\n- name: lithe-cocoa-92103_kubernetes-basic-auth\n  user:\n    password: h5M0FtUUIflBSdI7\n    username: admi\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
      "meta": {
        "weight": 260,
        "rel_path": "tutorials/cluster-management/namespaces-walkthrough.md"
      },
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": null,
          "line_end": null,
          "quote": "Namespaces Walkthrough"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understand-the-default-namespace",
      "type": "concept",
      "title": "Understand the default namespace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": 970,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/cluster-management/admission-policies",
      "type": "page",
      "title": "Explore Validating and Mutating Admission Policies",
      "summary": "Use declarative admission policies to validate or mutate resources at admission time using Common Expression Language (CEL).",
      "body": "\n\nThis page lets you try out declarative _admission policies_, which allow you to use the Common\nExpression Language (CEL) to validate or mutate resources.\n\nKubernetes  supports two kinds of admission policy:\n\n- [ValidatingAdmissionPolicy](/docs/reference/access-authn-authz/validating-admission-policy/)\n- [MutatingAdmissionPolicy](/docs/reference/access-authn-authz/mutating-admission-policy/)\n\nThis tutorial covers both kinds of admission policy.\n\n## \n\n\n\nTo define admission policies, you must be a cluster administrator. Make sure you have administrator\naccess to the cluster where you are learning.\n\nFor ValidatingAdmissionPolicy, you need:\n* A cluster running version 1.30 or later.\n\nFor MutatingAdmissionPolicy, you need:\n* A cluster running version 1.36 or later.\n\nTo check the version, run `kubectl version`.\nIf you are running an older version of Kubernetes, check the documentation for that version.\n\n\n## What are declarative admission policies?\n\nDeclarative admission policies offer a declarative, \nin-process alternative to admission webhooks.\n\nBy using the Common Expression Language (CEL) to declare policy rules,\nthese policies are evaluated directly within the API server.\n\nThese policies are highly configurable, enabling policy authors to define logic that can be parameterized\nand scoped to resources as needed by cluster administrators.\n\n### API types for admission policies\n\nThe two types of policy have different purposes.\n\nValidatingAdmissionPolicy is for _enforcing constraints_.\n\nMutatingAdmissionPolicy is for _modifying resources during admission_.\n\n### Policy elements\n\nEach applied policy always has a _policy_ object (ValidatingAdmissionPolicy or MutatingAdmissionPolicy)\nand a separate _binding_ object (ValidatingAdmissionPolicyBinding or MutatingAdmissionPolicyBinding).\n\nYou can also use _parameters_, which are **optional**. To learn more, see\n[parameter resources](/docs/reference/access-authn-authz/validating-admission-policy/#parameter-resources) (ValidatingAdmissionPolicy) or\n[parameter resources](/docs/reference/access-authn-authz/mutating-admission-policy/#parameter-resources) (MutatingAdmissionPolicy).\n\nPolicy objects describes the abstract logic of a policy using Common Expression Language (CEL). \nFor example, a ValidatingAdmissionPolicy might enforce replica limits or ensure specific labels are present, \nwhile a MutatingAdmissionPolicy can modify resources such as adding a default label to a namespace.\n\nBinding objects link the policy to your cluster and provides scoping. \nA ValidatingAdmissionPolicyBinding or MutatingAdmissionPolicyBinding connects the policy to specific resources. \nIf you only want to enforce a policy for a specific subset of resources, the binding is where you narrow the\nscope of the policy (using `matchResources`).\n\nParameters allow separating configuration for the policy behavior from its definition.\nParameter resources refer to Kubernetes resources available in the API. \nThey can be built-in API types (such as ConfigMap), or they can be\n[custom resources](docs/concepts/extend-kubernetes/api-extension/custom-resources/).\nA policy binding then uses `spec.paramRef` to reference an actual parameter resource. \n\nIf a policy does not require parameters, you leave `spec.paramKind` unspecified.\n\n### CEL expressions\n\nBoth kinds of policy rely on an expression language known as Common Expression Language (CEL).\nRead [CEL in Kubernetes](/docs/reference/using-api/cel/) to learn more.\n\nIf you are new to CEL, practice writing a very simple expression, such as `false || true`.\nYou can test CEL expressions in [CEL Playground](https://playcel.undistro.io).\n\n### Policy actions\n\nEach admission policy binding must specify one or more actions to declare how the policy\nis enforced.\n\n#### ValidatingAdmissionPolicyBinding {#policy-actions-validating}\n\n\nFor ValidatingAdmissionPolicyBinding, the supported `validationActions` are:\n\nAudit\n: Validation failure is included in the audit event for the API request.\n\nWarn\n: Va\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
      "meta": {
        "weight": 70,
        "rel_path": "tutorials/cluster-management/admission-policies.md"
      },
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": null,
          "line_end": null,
          "quote": "Explore Validating and Mutating Admission Policies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-are-declarative-admission-policies",
      "type": "concept",
      "title": "What are declarative admission policies?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 1031,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enforcement-through-validation",
      "type": "concept",
      "title": "Enforcement through validation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 5110,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:modifying-resources-when-they-are-created-or-changed-mutation",
      "type": "concept",
      "title": "Modifying resources when they are created or changed {#mutation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 8592,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-types-for-admission-policies",
      "type": "concept",
      "title": "API types for admission policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 1477,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policy-elements",
      "type": "concept",
      "title": "Policy elements",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 1696,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cel-expressions",
      "type": "concept",
      "title": "CEL expressions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 3399,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policy-actions",
      "type": "concept",
      "title": "Policy actions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 3759,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:test-the-policy-test-admission-policy-validation",
      "type": "concept",
      "title": "Test the policy {#test-admission-policy-validation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 7172,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:existing-resources-aren-t-affected-limitation-admission-policy-validation",
      "type": "concept",
      "title": "Existing resources aren't affected {#limitation-admission-policy-validation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 8051,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:test-the-policy-test-admission-policy-mutation",
      "type": "concept",
      "title": "Test the policy {#test-admission-policy-mutation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 10049,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-a-parameter-resource",
      "type": "concept",
      "title": "Use a parameter resource",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 11492,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:change-the-parameter",
      "type": "concept",
      "title": "Change the parameter",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 13282,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/cluster-management/kubelet-standalone",
      "type": "page",
      "title": "Running Kubelet in Standalone Mode",
      "summary": "",
      "body": "\n\nThis tutorial shows you how to run a standalone kubelet instance.\n\nYou may have different motivations for running a standalone kubelet.\nThis tutorial is aimed at introducing you to Kubernetes, even if you don't have\nmuch experience with it. You can follow this tutorial and learn about node setup,\nbasic (static) Pods, and how Kubernetes manages containers.\n\nOnce you have followed this tutorial, you could try using a cluster that has a\n[control plane](#gloss:control-plane) to manage pods\nand nodes, and other types of objects. For example,\n[Hello, minikube](/docs/tutorials/hello-minikube/).\n\nYou can also run the kubelet in standalone mode to suit production use cases, such as\nto run the control plane for a highly available, resiliently deployed cluster. This\ntutorial does not cover the details you need for running a resilient control plane.\n\n## \n\n* Install `cri-o`, and `kubelet` on a Linux system and run them as `systemd` services.\n* Launch a Pod running `nginx` that listens to requests on TCP port 80 on the Pod's IP address.\n* Learn how the different components of the solution interact among themselves.\n\n\nThe kubelet configuration used for this tutorial is insecure by design and should\n_not_ be used in a production environment.\n\n\n## \n\n* Admin (`root`) access to a Linux system that uses `systemd` and `iptables`\n  (or nftables with `iptables` emulation).\n* Access to the Internet to download the components needed for the tutorial, such as:\n  * A [container runtime](#gloss:container-runtime)\n    that implements the Kubernetes [(CRI)](#gloss:cri).\n  * Network plugins (these are often known as\n    [Container Networking Interface (CNI)](#gloss:cni))\n  * Required CLI tools: `curl`, `tar`, `jq`.\n\n\n\n## Prepare the system\n\n### Swap configuration\n\nBy default, kubelet fails to start if swap memory is detected on a node.\nThis means that swap should either be disabled or tolerated by kubelet.\n\n\nIf you configure the kubelet to tolerate swap, the kubelet still configures Pods (and the\ncontainers in those Pods) not to use swap space. To find out how Pods can actually\nuse the available swap, you can read more about\n[swap memory management](/docs/concepts/architecture/nodes/#swap-memory) on Linux nodes.\n\n\nIf you have swap memory enabled, either disable it or add `failSwapOn: false` to the\nkubelet configuration file.\n\nTo check if swap is enabled:\n\n```shell\nsudo swapon --show\n```\n\nIf there is no output from the command, then swap memory is already disabled.\n\nTo disable swap temporarily:\n\n```shell\nsudo swapoff -a\n```\n\nTo make this change persistent across reboots:\n\nMake sure swap is disabled in either `/etc/fstab` or `systemd.swap`, depending on how it was\nconfigured on your system.\n\n### Enable IPv4 packet forwarding\n\nTo check if IPv4 packet forwarding is enabled:\n\n```shell\ncat /proc/sys/net/ipv4/ip_forward\n```\n\nIf the output is `1`, it is already enabled. If the output is `0`, then follow next steps.\n\nTo enable IPv4 packet forwarding, create a configuration file that sets the\n`net.ipv4.ip_forward` parameter to `1`:\n\n```shell\nsudo tee /etc/sysctl.d/k8s.conf <<EOF\nnet.ipv4.ip_forward = 1\nEOF\n```\n\nApply the changes to the system:\n\n```shell\nsudo sysctl --system\n```\n\nThe output is similar to:\n\n```\n...\n* Applying /etc/sysctl.d/k8s.conf ...\nnet.ipv4.ip_forward = 1\n* Applying /etc/sysctl.conf ...\n```\n\n## Download, install, and configure the components\n\n\n\n### Install a container runtime {#container-runtime}\n\nDownload the latest available versions of the required packages (recommended).\n\nThis tutorial suggests installing the [CRI-O container runtime](https://github.com/cri-o/cri-o)\n(external link).\n\nThere are several [ways to install](https://github.com/cri-o/cri-o/blob/main/install.md)\nthe CRI-O container runtime, depending on your particular Linux distribution. Although\nCRI-O recommends using either `deb` or `rpm` packages, this tutorial uses the\n_static binary bundle_ script of the\n[CRI-O Packaging project](https://github.com/cri-o/packaging/blob/main/REA\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/cluster-management/kubelet-standalone.md"
      },
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": null,
          "line_end": null,
          "quote": "Running Kubelet in Standalone Mode"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prepare-the-system",
      "type": "concept",
      "title": "Prepare the system",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 2004,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:download-install-and-configure-the-components",
      "type": "concept",
      "title": "Download, install, and configure the components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 3671,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:run-a-pod-in-the-kubelet",
      "type": "concept",
      "title": "Run a Pod in the kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 9906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:where-to-look-for-more-details",
      "type": "concept",
      "title": "Where to look for more details",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 11330,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:swap-configuration",
      "type": "concept",
      "title": "Swap configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 2027,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enable-ipv4-packet-forwarding",
      "type": "concept",
      "title": "Enable IPv4 packet forwarding",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 3048,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-a-container-runtime-container-runtime",
      "type": "concept",
      "title": "Install a container runtime {#container-runtime}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 3751,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-up-cri-o-cri-o-setup",
      "type": "concept",
      "title": "Set up CRI-O {#cri-o-setup}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 4904,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-network-plugins",
      "type": "concept",
      "title": "Install network plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 5526,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:download-and-set-up-the-kubelet",
      "type": "concept",
      "title": "Download and set up the kubelet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 6680,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:find-out-information-about-the-kubelet-and-the-pod-find-out-information",
      "type": "concept",
      "title": "Find out information about the kubelet and the Pod {#find-out-information}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 10519,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/cluster-management/install-use-dra",
      "type": "page",
      "title": "Install Drivers and Allocate Devices with DRA",
      "summary": "",
      "body": "\n\n\n\n\n\nThis tutorial shows you how to install [Dynamic Resource Allocation (DRA)](#gloss:dra) drivers in your cluster and how to\nuse them in conjunction with the DRA APIs to allocate [devices](#gloss:device) to Pods. This page is intended for cluster administrators.\n\n[Dynamic Resource Allocation (DRA)](#gloss:dra)\nlets a cluster manage availability and allocation of hardware resources to\nsatisfy Pod-based claims for hardware requirements and preferences. To support\nthis, a mixture of Kubernetes built-in components (like the Kubernetes\nscheduler, kubelet, and kube-controller-manager) and third-party drivers from\ndevice owners (called DRA drivers) share the responsibility to advertise,\nallocate, prepare, mount, healthcheck, unprepare, and cleanup resources\nthroughout the Pod lifecycle. These components share information via a series of\nDRA specific APIs in the `resource.k8s.io` API group including [DeviceClasses](#gloss:deviceclass), [ResourceSlices](#gloss:resourceslice), [ResourceClaims](#gloss:resourceclaim), as well as\nnew fields in the Pod spec itself.\n\n\n\n### \n* Deploy an example DRA driver\n* Deploy a Pod requesting a hardware claim using DRA APIs\n* Delete a Pod that has a claim\n\n\n## \n\nYour cluster should support [RBAC](/docs/reference/access-authn-authz/rbac/).\nYou can try this tutorial with a cluster using a different authorization\nmechanism, but in that case you will have to adapt the steps around defining\nroles and permissions.\n\n\n\nThis tutorial has been tested with Linux nodes, though it may also work with\nother types of nodes.\n\n \n\nIf your cluster is not currently running Kubernetes  then please check the documentation for the version of Kubernetes that you\nplan to use.\n\n\n\n\n## Explore the initial cluster state {#explore-initial-state}\n\nYou can spend some time to observe the initial state of a cluster with DRA\nenabled, especially if you have not used these APIs extensively before. If you\nset up a new cluster for this tutorial, with no driver installed and no Pod\nclaims yet to satisfy, the output of these commands won't show any resources.\n\n1.  Get a list of [DeviceClasses](#gloss:deviceclass):\n\n    ```shell\n    kubectl get deviceclasses\n    ```\n    The output is similar to this:\n    ```\n    No resources found\n    ```\n\n1.  Get a list of  [ResourceSlices](#gloss:resourceslice):\n\n    ```shell\n    kubectl get resourceslices\n    ```\n    The output is similar to this:\n    ```\n    No resources found\n    ```\n\n1.  Get a list of [ResourceClaims](#gloss:resourceclaim) and [ResourceClaimTemplates](#gloss:resourceclaimtemplate)\n\n    ```shell\n    kubectl get resourceclaims -A\n    kubectl get resourceclaimtemplates -A\n    ```\n    The output is similar to this:\n    ```\n    No resources found\n    No resources found\n    ```\n\nAt this point, you have confirmed that DRA is enabled and configured properly in\nthe cluster, and that no DRA drivers have advertised any resources to the DRA\nAPIs yet.\n\n## Install an example DRA driver {#install-example-driver}  \n\nDRA drivers are third-party applications that run on each node of your cluster\nto interface with the hardware of that node and Kubernetes' built-in DRA\ncomponents. The installation procedure depends on the driver you choose, but is\nlikely deployed as a [daemonset](#gloss:daemonset) to all or a\nselection of the nodes (using [selectors](#gloss:selector) or similar mechanisms) in your cluster.\n\nCheck your driver's documentation for specific installation instructions, which\nmight include a Helm chart, a set of manifests, or other deployment tooling.\n\nThis tutorial uses an example driver which can be found in the\n[kubernetes-sigs/dra-example-driver](https://github.com/kubernetes-sigs/dra-example-driver)\nrepository to demonstrate driver installation. This example driver advertises\nsimulated GPUs to Kubernetes for your Pods to interact with.\n\n### Prepare your cluster for driver installation {#prepare-cluster-driver}\n\nTo simplify cleanup, create a namespace named dra-tutorial:\n\n1.  Create the namesp\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
      "meta": {
        "weight": 60,
        "rel_path": "tutorials/cluster-management/install-use-dra.md"
      },
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": null,
          "line_end": null,
          "quote": "Install Drivers and Allocate Devices with DRA"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:explore-the-initial-cluster-state-explore-initial-state",
      "type": "concept",
      "title": "Explore the initial cluster state {#explore-initial-state}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 3179,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-an-example-dra-driver-install-example-driver",
      "type": "concept",
      "title": "Install an example DRA driver {#install-example-driver}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 4530,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claim-resources-and-deploy-a-pod-claim-resources-pod",
      "type": "concept",
      "title": "Claim resources and deploy a Pod {#claim-resources-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 10371,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-a-pod-that-has-a-claim-delete-pod-claim",
      "type": "concept",
      "title": "Delete a Pod that has a claim {#delete-pod-claim}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 16673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prepare-your-cluster-for-driver-installation-prepare-cluster-driver",
      "type": "concept",
      "title": "Prepare your cluster for driver installation {#prepare-cluster-driver}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 5487,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploy-the-dra-driver-components",
      "type": "concept",
      "title": "Deploy the DRA driver components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 6299,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-the-dra-driver-installation-verify-driver-install",
      "type": "concept",
      "title": "Verify the DRA driver installation {#verify-driver-install}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 8948,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-the-resourceclaim",
      "type": "concept",
      "title": "Create the ResourceClaim",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 11065,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-the-pod-that-references-that-resourceclaim",
      "type": "concept",
      "title": "Create the Pod that references that ResourceClaim",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 11948,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:explore-the-dra-state",
      "type": "concept",
      "title": "Explore the DRA state",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 12723,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:observe-the-dra-state",
      "type": "concept",
      "title": "Observe the DRA state",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 17170,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/cluster-management/_index",
      "type": "page",
      "title": "Cluster Management",
      "summary": "Cluster Management involves the administration, maintenance, and scaling of Kubernetes clusters.",
      "body": "Cluster Management involves the administration, maintenance, and scaling of Kubernetes clusters.\n\n**Why it matters**\nProper cluster management ensures high availability, performance, and security.\n\n**Key facts**\n- Cluster management includes tasks such as node management, resource allocation, and monitoring\n\n**Common pitfalls**\n- Inadequate cluster management can lead to performance issues or downtime\n- Insufficient backup and disaster recovery strategies can result in data loss\n\n**Related**\nConfiguration, Security",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/cluster-management/_index/",
      "meta": {
        "weight": 60,
        "rel_path": "tutorials/cluster-management/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/cluster-management/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Cluster Management"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/kubernetes-basics/_index",
      "type": "page",
      "title": "Learn Kubernetes Basics",
      "summary": "",
      "body": "## \n\nThis tutorial provides a walkthrough of the basics of the Kubernetes cluster orchestration\nsystem. Each module contains some background information on major Kubernetes features\nand concepts, and a tutorial for you to follow along.\n\nUsing the tutorials, you can learn to:\n\n* Deploy a containerized application on a cluster.\n* Scale the deployment.\n* Update the containerized application with a new software version.\n* Debug the containerized application.\n\n## What can Kubernetes do for you?\n\nWith modern web services, users expect applications to be available 24/7, and developers\nexpect to deploy new versions of those applications several times a day. Containerization\nhelps package software to serve these goals, enabling applications to be released and updated\nwithout downtime. Kubernetes helps you make sure those containerized applications run where\nand when you want, and helps them find the resources and tools they need to work. Kubernetes\nis a production-ready, open source platform designed with Google's accumulated experience in\ncontainer orchestration, combined with best-of-breed ideas from the community.\n\n## Kubernetes Basics Modules\n\n\n\n  \n\n  \n\n  \n\n  \n\n  \n\n  \n\n\n## \n\n* See the [Learning environment](/docs/setup/learning-environment/) page to learn more about practice clusters and how you can run your own one.\n* Tutorial [Using Minikube to Create a Cluster](/docs/tutorials/kubernetes-basics/create-cluster/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "tutorials/kubernetes-basics/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Learn Kubernetes Basics"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-can-kubernetes-do-for-you",
      "type": "concept",
      "title": "What can Kubernetes do for you?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/_index/",
          "line_start": 489,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-basics-modules",
      "type": "concept",
      "title": "Kubernetes Basics Modules",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/_index/",
          "line_start": 1156,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/kubernetes-basics/scale/scale-intro",
      "type": "page",
      "title": "Running Multiple Instances of Your App",
      "summary": "",
      "body": "## \n\n* Scale an existing app manually using kubectl.\n\n## \n\nThe shell commands in this tutorial use POSIX shell syntax, which is supported by\nthe default shells on most Linux and macOS systems (for example, bash, zsh, or sh).\nWindows users must use a POSIX-compatible shell such as\n[Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install)\nor [Git Bash](https://gitforwindows.org/) to run the commands as written.\nCommands that use `export`, `$()`, and similar constructs are **not** compatible\nwith PowerShell or the Windows Command Prompt.\n\n\n\n## Scaling an application\n\n\n_You can create from the start a Deployment with multiple instances using the --replicas\nparameter for the kubectl create deployment command._\n\n\nPreviously we created a [Deployment](/docs/concepts/workloads/controllers/deployment/),\nand then exposed it publicly via a [Service](/docs/concepts/services-networking/service/).\nThe Deployment created only one Pod for running our application. When traffic increases,\nwe will need to scale the application to keep up with user demand.\n\nIf you haven't worked through the earlier sections, start from\n[Using minikube to create a cluster](/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/).\n\n_Scaling_ is accomplished by changing the number of replicas in a Deployment.\n\n\nIf you are trying this after the\n[previous section](/docs/tutorials/kubernetes-basics/expose/expose-intro/), then you\nmay have deleted the service you created, or have created a Service of `type: NodePort`.\nIn this section, it is assumed that a service with `type: LoadBalancer` is created\nfor the kubernetes-bootcamp Deployment.\n\nIf you have _not_ deleted the Service created in\n[the previous section](/docs/tutorials/kubernetes-basics/expose/expose-intro),\nfirst delete that Service and then run the following command to create a new Service\nwith its `type` set to `LoadBalancer`:\n\n```shell\nkubectl expose deployment/kubernetes-bootcamp --type=\"LoadBalancer\" --port 8080\n```\n\n\n## Scaling overview\n\n\n\n  \n\n  \n\n\n\n_Scaling is accomplished by changing the number of replicas in a Deployment._\n\n\nScaling out a Deployment will ensure new Pods are created and scheduled to Nodes\nwith available resources. Scaling will increase the number of Pods to the new desired\nstate. Kubernetes also supports [autoscaling](/docs/concepts/workloads/autoscaling/)\nof Pods, but it is outside of the scope of this tutorial. Scaling to zero is also\npossible, and it will terminate all Pods of the specified Deployment.\n\nRunning multiple instances of an application will require a way to distribute the\ntraffic to all of them. Services have an integrated load-balancer that will distribute\nnetwork traffic to all Pods of an exposed Deployment. Services will monitor continuously\nthe running Pods using endpoints, to ensure the traffic is sent only to available Pods.\n\nOnce you have multiple instances of an application running, you would be able to\ndo Rolling updates without downtime. We'll cover that in the next section of the\ntutorial. Now, let's go to the terminal and scale our application.\n\n### Scaling a Deployment\n\nTo list your Deployments, use the `get deployments` subcommand:\n\n```shell\nkubectl get deployments\n```\n\nThe output should be similar to:\n\n```\nNAME                  READY   UP-TO-DATE   AVAILABLE   AGE\nkubernetes-bootcamp   1/1     1            1           11m\n```\n\nWe should have 1 Pod. If not, run the command again. This shows:\n\n* _NAME_ lists the names of the Deployments in the cluster.\n* _READY_ shows the ratio of CURRENT/DESIRED replicas\n* _UP-TO-DATE_ displays the number of replicas that have been updated to achieve the desired state.\n* _AVAILABLE_ displays how many replicas of the application are available to your users.\n* _AGE_ displays the amount of time that the application has been running.\n\nTo see the ReplicaSet created by the Deployment, run:\n\n```shell\nkubectl get rs\n```\n\nNotice that the name of the ReplicaSet is always formatted as\n<nobr>[DEPLO\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/kubernetes-basics/scale/scale-intro.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": null,
          "line_end": null,
          "quote": "Running Multiple Instances of Your App"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-an-application",
      "type": "concept",
      "title": "Scaling an application",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-overview",
      "type": "concept",
      "title": "Scaling overview",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 2152,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:load-balancing",
      "type": "concept",
      "title": "Load Balancing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 5690,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scale-down",
      "type": "concept",
      "title": "Scale Down",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 7474,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/kubernetes-basics/scale/_index",
      "type": "page",
      "title": "Scale Your App",
      "summary": "Scale Your App to meet changing demands by adjusting resource allocation.",
      "body": "Scale Your App to meet changing demands by adjusting resource allocation.\n\n**Why it matters**\nScaling your app ensures it can handle increased traffic and workload, maintaining performance and user experience.\n\n**Key facts**\n- Use `kubectl scale` command to adjust resource allocation for a deployment or replica set.\n- Scaling can be done vertically (increase resources) or horizontally (add more replicas).\n\n**Common pitfalls**\n- Insufficient scaling can lead to performance issues and user dissatisfaction.\n- Over-scaling can result in unnecessary resource waste and increased costs.\n\n**Related**\nCreate a Cluster, Update Your App, Explore Your App",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/_index/",
      "meta": {
        "weight": 50,
        "rel_path": "tutorials/kubernetes-basics/scale/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Scale Your App"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/kubernetes-basics/update/update-intro",
      "type": "page",
      "title": "Performing a Rolling Update",
      "summary": "",
      "body": "## \n\nPerform a rolling update using kubectl.\n\n## \n\nThe shell commands in this tutorial use POSIX shell syntax, which is supported by\nthe default shells on most Linux and macOS systems (for example, bash, zsh, or sh).\nWindows users must use a POSIX-compatible shell such as\n[Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install)\nor [Git Bash](https://gitforwindows.org/) to run the commands as written.\nCommands that use `export`, `$()`, and similar constructs are **not** compatible\nwith PowerShell or the Windows Command Prompt.\n\n\n## Updating an application\n\n\n_Rolling updates allow Deployments' update to take place with zero downtime by\nincrementally updating Pods instances with new ones._\n\n\nUsers expect applications to be available all the time, and developers are expected\nto deploy new versions of them several times a day. In Kubernetes this is done with\nrolling updates. A **rolling update** allows a Deployment update to take place with\nzero downtime. It does this by incrementally replacing the current Pods with new ones.\nThe new Pods are scheduled on Nodes with available resources, and Kubernetes waits\nfor those new Pods to start before removing the old Pods.\n\nIn the previous module we scaled our application to run multiple instances. This\nis a requirement for performing updates without affecting application availability.\nBy default, the maximum number of Pods that can be unavailable during the update\nand the maximum number of new Pods that can be created, is one. Both options can\nbe configured to either numbers or percentages (of Pods). In Kubernetes, updates are\nversioned and any Deployment update can be reverted to a previous (stable) version.\n\n## Rolling updates overview\n\n\n\n  \n\n  \n\n  \n\n  \n\n\n\nIf a Deployment is publicly exposed, the Service will send traffic only to Pods that can handle requests.  \nThis ensures users continue to access the application during an update.\n\n\nDuring a rolling update, this behavior keeps the application available by routing traffic only to Pods that are serving requests.\nRolling updates allow the following actions:\n\n* Promote an application from one environment to another (via container image updates)\n* Rollback to previous versions\n* Continuous Integration and Continuous Delivery of applications with zero downtime\n\nIn the following interactive tutorial, we'll update our application to a new version,\nand also perform a rollback.\n\n### Update the version of the app\n\nTo list your Deployments, run the `get deployments` subcommand:\n\n```shell\nkubectl get deployments\n```\n\nTo list the running Pods, run the `get pods` subcommand:\n\n```shell\nkubectl get pods\n```\n\nTo view the current image version of the app, run the `describe pods` subcommand\nand look for the `Image` field:\n\n```shell\nkubectl describe pods\n```\n\nTo update the image of the application to version 2, use the `set image` subcommand,\nfollowed by the deployment name and the new image version:\n\n```shell\nkubectl set image deployments/kubernetes-bootcamp kubernetes-bootcamp=docker.io/jocatalin/kubernetes-bootcamp:v2\n```\n\nThe command notified the Deployment to use a different image for your app and initiated\na rolling update. Check the status of the new Pods, and view the old one terminating\nwith the `get pods` subcommand:\n\n```shell\nkubectl get pods\n```\n\n### Verify an update\n\nFirst, check that the service is running, as you might have deleted it in previous\ntutorial step, run `describe services/kubernetes-bootcamp`. If it's missing,\nyou can create it again with:\n\n```shell\nkubectl expose deployment/kubernetes-bootcamp --type=\"NodePort\" --port 8080\n```\n\nCreate an environment variable called `NODE_PORT` that has the value of the Node\nport assigned:\n\n```shell\nexport NODE_PORT=\"$(kubectl get services/kubernetes-bootcamp -o go-template='{{(index .spec.ports 0).nodePort}}')\"\necho \"NODE_PORT=$NODE_PORT\"\n```\n\nNext, do a `curl` to the exposed IP and port:\n\n```shell\ncurl http://\"$(minikube ip):$NODE_PORT\"\n```\n\nEvery time you run \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/kubernetes-basics/update/update-intro.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": null,
          "line_end": null,
          "quote": "Performing a Rolling Update"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-an-application",
      "type": "concept",
      "title": "Updating an application",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 628,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolling-updates-overview",
      "type": "concept",
      "title": "Rolling updates overview",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 1797,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:update-the-version-of-the-app",
      "type": "concept",
      "title": "Update the version of the app",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 3166,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verify-an-update",
      "type": "concept",
      "title": "Verify an update",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 4052,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:roll-back-an-update",
      "type": "concept",
      "title": "Roll back an update",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 5205,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/kubernetes-basics/update/_index",
      "type": "page",
      "title": "Update Your App",
      "summary": "Update Your App to ensure it remains secure, efficient, and aligned with changing business needs.",
      "body": "Update Your App to ensure it remains secure, efficient, and aligned with changing business needs.\n\n**Why it matters**\nRegular updates enable bug fixes, security patches, and feature enhancements, ensuring your app stays competitive and reliable.\n\n**Key facts**\n- Use `kubectl apply` command to update a deployment or replica set configuration.\n- Updates can be done manually or automated using tools like GitOps.\n\n**Common pitfalls**\n- Failing to update can lead to security vulnerabilities, performance issues, and missed business opportunities.\n- Inadequate testing can result in update failures or unintended consequences.\n\n**Related**\nScale Your App, Create a Cluster, Explore Your App",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/_index/",
      "meta": {
        "weight": 60,
        "rel_path": "tutorials/kubernetes-basics/update/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Update Your App"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/kubernetes-basics/create-cluster/cluster-intro",
      "type": "page",
      "title": "Using Minikube to Create a Cluster",
      "summary": "",
      "body": "## \n\n* Learn what a Kubernetes cluster is.\n* Learn what Minikube is.\n* Start a Kubernetes cluster on your computer.\n\n## \n\nThis tutorial assumes that you have already installed `minikube`.\nSee [minikube start](https://minikube.sigs.k8s.io/docs/start/) for installation instructions.\n\n> **Note:** Only execute instructions in **step 1: Installation**. The rest is covered in this tutorial.\n\n\nYou also need to install `kubectl`.\nSee [Install tools](/docs/tasks/tools/#kubectl) for installation instructions.\n\nThe shell commands in this tutorial use POSIX shell syntax, which is supported by\nthe default shells on most Linux and macOS systems (for example, bash, zsh, or sh).\nWindows users must use a POSIX-compatible shell such as\n[Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install)\nor [Git Bash](https://gitforwindows.org/) to run the commands as written.\nCommands that use `export`, `$()`, and similar constructs are **not** compatible\nwith PowerShell or the Windows Command Prompt.\n\n## Kubernetes Clusters\n\n\n_Kubernetes is a production-grade, open-source platform that orchestrates\nthe placement (scheduling) and execution of application containers\nwithin and across computer clusters._\n\n\n**Kubernetes coordinates a highly available cluster of computers that are connected\nto work as a single unit.** The abstractions in Kubernetes allow you to deploy\ncontainerized applications to a cluster without tying them specifically to individual\nmachines. To make use of this new model of deployment, applications need to be packaged\nin a way that decouples them from individual hosts: they need to be containerized.\nContainerized applications are more flexible and available than in past deployment models,\nwhere applications were installed directly onto specific machines as packages deeply\nintegrated into the host. **Kubernetes automates the distribution and scheduling of\napplication containers across a cluster in a more efficient way.** Kubernetes is an\nopen-source platform and is production-ready.\n\nA Kubernetes cluster consists of two types of resources:\n\n* The **Control Plane** coordinates the cluster\n* **Nodes** are the workers that run applications\n\n### Cluster Diagram\n\n\n![](/docs/tutorials/kubernetes-basics/public/images/module_01_cluster.svg)\n\n\n**The Control Plane is responsible for managing the cluster.** The Control Plane\ncoordinates all activities in your cluster, such as scheduling applications, maintaining\napplications' desired state, scaling applications, and rolling out new updates.\n\n\n_Control Planes manage the cluster and the nodes that are used to host the running\napplications._\n\n\n**A node is a VM or a physical computer that serves as a worker machine in a Kubernetes\ncluster.** Each node has a Kubelet, which is an agent for managing the node and\ncommunicating with the Kubernetes control plane. The node should also have tools for\nhandling container operations, such as [containerd](#gloss:containerd)\nor [cri-o](#gloss:cri-o). A Kubernetes cluster that handles production\ntraffic should have a minimum of three nodes because if one node goes down, both an\n[etcd](/docs/concepts/architecture/#etcd) member and a control plane instance are lost,\nand redundancy is compromised. You can mitigate this risk by adding more control plane nodes.\n\nWhen you deploy applications on Kubernetes, you tell the control plane to start\nthe application containers. The control plane schedules the containers to run on\nthe cluster's nodes. **Node-level components, such as the kubelet, communicate\nwith the control plane using the [Kubernetes API](/docs/concepts/overview/kubernetes-api/)**,\nwhich the control plane exposes. End users can also use the Kubernetes API directly\nto interact with the cluster.\n\nA Kubernetes cluster can be deployed on either physical or virtual machines. To\nget started with Kubernetes development, you can use Minikube. Minikube is a lightweight\nKubernetes implementation that creates a VM on your local machine and dep\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": null,
          "line_end": null,
          "quote": "Using Minikube to Create a Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-clusters",
      "type": "concept",
      "title": "Kubernetes Clusters",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": 1095,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-diagram",
      "type": "concept",
      "title": "Cluster Diagram",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": 2296,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/kubernetes-basics/create-cluster/_index",
      "type": "page",
      "title": "Create a Cluster",
      "summary": "Create a Cluster to deploy and manage your app's containers, ensuring efficient resource utilization and high availability.",
      "body": "Create a Cluster to deploy and manage your app's containers, ensuring efficient resource utilization and high availability.\n\n**Why it matters**\nA Kubernetes cluster provides a scalable, secure, and manageable environment for your app, enabling you to focus on development and innovation.\n\n**Key facts**\n- Use `kubectl create` command to create a new cluster or join an existing one.\n- Clusters can be created in various environments, including on-premises, cloud, or hybrid setups.\n\n**Common pitfalls**\n- Inadequate cluster configuration can lead to performance issues, security risks, and increased costs.\n- Failing to monitor and maintain the cluster can result in downtime, data loss, or other critical problems.\n\n**Related**\nScale Your App, Update Your App, Explore Your App",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/_index/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/kubernetes-basics/create-cluster/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Create a Cluster"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "type": "page",
      "title": "Viewing Pods and Nodes",
      "summary": "",
      "body": "## \n\n* Learn about Kubernetes Pods.\n* Learn about Kubernetes Nodes.\n* Troubleshoot deployed applications.\n\n## \n\nThe shell commands in this tutorial use POSIX shell syntax, which is supported by\nthe default shells on most Linux and macOS systems (for example, bash, zsh, or sh).\nWindows users must use a POSIX-compatible shell such as\n[Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install)\nor [Git Bash](https://gitforwindows.org/) to run the commands as written.\nCommands that use `export`, `$()`, and similar constructs are **not** compatible\nwith PowerShell or the Windows Command Prompt.\n\n\n## Kubernetes Pods\n\n\n_A Pod is a group of one or more application containers (such as Docker) and includes\nshared storage (volumes), IP address and information about how to run them._\n\n\nWhen you created a Deployment in [Module 2](/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/),\nKubernetes created a **Pod** to host your application instance. A Pod is a Kubernetes\nabstraction that represents a group of one or more application containers (such as Docker),\nand some shared resources for those containers. Those resources include:\n\n* Shared storage, as Volumes\n* Networking, as a unique cluster IP address\n* Information about how to run each container, such as the container image version\nor specific ports to use\n\nA Pod models an application-specific \"logical host\" and can contain different application\ncontainers which are relatively tightly coupled. For example, a Pod might include\nboth the container with your Node.js app as well as a different container that feeds\nthe data to be published by the Node.js webserver. The containers in a Pod share an\nIP Address and port space, are always co-located and co-scheduled, and run in a shared\ncontext on the same Node.\n\nPods are the atomic unit on the Kubernetes platform. When we create a Deployment\non Kubernetes, that Deployment creates Pods with containers inside them (as opposed\nto creating containers directly). Each Pod is tied to the Node where it is scheduled,\nand remains there until termination (according to restart policy) or deletion. In\ncase of a Node failure, identical Pods are scheduled on other available Nodes in\nthe cluster.\n\n### Pods overview\n\n\n![](/docs/tutorials/kubernetes-basics/public/images/module_03_pods.svg)\n\n\n\n_Containers should only be scheduled together in a single Pod if they are tightly\ncoupled and need to share resources such as disk._\n\n\n## Nodes\n\nA Pod always runs on a **Node**. A Node is a worker machine in Kubernetes and may\nbe either a virtual or a physical machine, depending on the cluster. Each Node is\nmanaged by the control plane. A Node can have multiple pods, and the Kubernetes\ncontrol plane automatically handles scheduling the pods across the Nodes in the\ncluster. The control plane's automatic scheduling takes into account the available\nresources on each Node.\n\nEvery Kubernetes Node runs at least:\n\n* Kubelet, a process responsible for communication between the Kubernetes control\nplane and the Node; it manages the Pods and the containers running on a machine.\n\n* A container runtime (like Docker) responsible for pulling the container image\nfrom a registry, unpacking the container, and running the application.\n\n### Nodes overview\n\n\n![](/docs/tutorials/kubernetes-basics/public/images/module_03_nodes.svg)\n\n\n## Troubleshooting with kubectl\n\nIn [Module 2](/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/), you used\nthe kubectl command-line interface. You'll continue to use it in Module 3 to get\ninformation about deployed applications and their environments. The most common\noperations can be done with the following kubectl subcommands:\n\n* `kubectl get` - list resources\n* `kubectl describe` - show detailed information about a resource\n* `kubectl logs`  - print the logs from a container in a pod\n* `kubectl exec` - execute a command on a container in a pod\n\nYou can use these commands to see when applications were deployed, what thei\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/kubernetes-basics/explore/explore-intro.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": null,
          "line_end": null,
          "quote": "Viewing Pods and Nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-pods",
      "type": "concept",
      "title": "Kubernetes Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 689,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodes",
      "type": "concept",
      "title": "Nodes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 2619,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:troubleshooting-with-kubectl",
      "type": "concept",
      "title": "Troubleshooting with kubectl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 3548,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pods-overview",
      "type": "concept",
      "title": "Pods overview",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 2325,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodes-overview",
      "type": "concept",
      "title": "Nodes overview",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 3415,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:check-application-configuration",
      "type": "concept",
      "title": "Check application configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 4376,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:show-the-app-in-the-terminal",
      "type": "concept",
      "title": "Show the app in the terminal",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 5500,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:executing-commands-on-the-container",
      "type": "concept",
      "title": "Executing commands on the container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 6520,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/kubernetes-basics/explore/_index",
      "type": "page",
      "title": "Explore Your App",
      "summary": "Explore Your App to gain insights into its performance, resource utilization, and behavior within the Kubernetes cluster.",
      "body": "Explore Your App to gain insights into its performance, resource utilization, and behavior within the Kubernetes cluster.\n\n**Why it matters**\nExploring your app enables you to identify areas for improvement, optimize resource allocation, and ensure it meets business requirements.\n\n**Key facts**\n- Use `kubectl get` command to retrieve information about pods, deployments, services, and other resources.\n- Explore tools like Kubernetes Dashboard, kubectl top, or third-party monitoring solutions.\n\n**Common pitfalls**\n- Failing to monitor your app can lead to performance issues, security risks, and missed business opportunities.\n- Inadequate exploration can result in suboptimal resource allocation, decreased efficiency, or other problems.\n\n**Related**\nScale Your App, Update Your App, Create a Cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "tutorials/kubernetes-basics/explore/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Explore Your App"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/kubernetes-basics/expose/_index",
      "type": "page",
      "title": "Expose Your App Publicly",
      "summary": "Make your application accessible from outside the cluster.",
      "body": "Make your application accessible from outside the cluster.\n\n**Why it matters**\nExpose your app publicly to allow external access and usage.\n\n**Key facts**\n- Use a Service to expose your app\n- Configure a LoadBalancer or NodePort for public access\n\n**Common pitfalls**\n- Incorrect configuration can lead to security vulnerabilities\n\n**Related**\nServices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/_index/",
      "meta": {
        "weight": 40,
        "rel_path": "tutorials/kubernetes-basics/expose/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Expose Your App Publicly"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/kubernetes-basics/expose/expose-intro",
      "type": "page",
      "title": "Using a Service to Expose Your App",
      "summary": "",
      "body": "## \n\n* Learn about a Service in Kubernetes.\n* Understand how labels and selectors relate to a Service.\n* Expose an application outside a Kubernetes cluster.\n\n## \n\nThe shell commands in this tutorial use POSIX shell syntax, which is supported by\nthe default shells on most Linux and macOS systems (for example, bash, zsh, or sh).\nWindows users must use a POSIX-compatible shell such as\n[Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install)\nor [Git Bash](https://gitforwindows.org/) to run the commands as written.\nCommands that use `export`, `$()`, and similar constructs are **not** compatible\nwith PowerShell or the Windows Command Prompt.\n\n\n## Overview of Kubernetes Services\n\nKubernetes [Pods](/docs/concepts/workloads/pods/) are mortal. Pods have a\n[lifecycle](/docs/concepts/workloads/pods/pod-lifecycle/). When a worker node dies,\nthe Pods running on the Node are also lost. A [Replicaset](/docs/concepts/workloads/controllers/replicaset/)\nmight then dynamically drive the cluster back to the desired state via the creation\nof new Pods to keep your application running. As another example, consider an image-processing\nbackend with 3 replicas. Those replicas are exchangeable; the front-end system should\nnot care about backend replicas or even if a Pod is lost and recreated. That said,\neach Pod in a Kubernetes cluster has a unique IP address, even Pods on the same Node,\nso there needs to be a way of automatically reconciling changes among Pods so that your\napplications continue to function.\n\n\n_A Kubernetes Service is an abstraction layer which defines a logical set of Pods and\nenables external traffic exposure, load balancing and service discovery for those Pods._\n\n\nA [Service](/docs/concepts/services-networking/service/) in Kubernetes is an abstraction\nwhich defines a logical set of Pods and a policy by which to access them. Services\nenable a loose coupling between dependent Pods. A Service is defined using YAML or JSON,\nlike all Kubernetes object manifests. The set of Pods targeted by a Service is usually\ndetermined by a _label selector_ (see below for why you might want a Service without\nincluding a `selector` in the spec).\n\nAlthough each Pod has a unique IP address, those IPs are not exposed outside the\ncluster without a Service. Services allow your applications to receive traffic.\nServices can be exposed in different ways by specifying a `type` in the `spec` of the Service:\n\n* _ClusterIP_ (default) - Exposes the Service on an internal IP in the cluster. This\ntype makes the Service only reachable from within the cluster.\n\n* _NodePort_ - Exposes the Service on the same port of each selected Node in the cluster using NAT.\nMakes a Service accessible from outside the cluster using `NodeIP:NodePort`. Superset of ClusterIP.\n\n* _LoadBalancer_ - Creates an external load balancer in the current cloud (if supported)\nand assigns a fixed, external IP to the Service. Superset of NodePort.\n\n* _ExternalName_ - Maps the Service to the contents of the `externalName` field\n(e.g. `foo.bar.example.com`), by returning a `CNAME` record with its value.\nNo proxying of any kind is set up. This type requires v1.7 or higher of `kube-dns`,\nor CoreDNS version 0.0.8 or higher.\n\nMore information about the different types of Services can be found in the\n[Using Source IP](/docs/tutorials/services/source-ip/) tutorial. Also see\n[Connecting Applications with Services](/docs/tutorials/services/connect-applications-service/).\n\nAdditionally, note that there are some use cases with Services that involve not defining\na `selector` in the spec. A Service created without `selector` will also not create\nthe corresponding Endpoints object. This allows users to manually map a Service to\nspecific endpoints. Another possibility why there may be no selector is you are strictly\nusing `type: ExternalName`.\n\n## Services and Labels\n\nA Service routes traffic across a set of Pods. Services are the abstraction that allows\npods to die and replicate in Kub\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/kubernetes-basics/expose/expose-intro.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": null,
          "line_end": null,
          "quote": "Using a Service to Expose Your App"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:overview-of-kubernetes-services",
      "type": "concept",
      "title": "Overview of Kubernetes Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 740,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:services-and-labels",
      "type": "concept",
      "title": "Services and Labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 3943,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-1-creating-a-new-service",
      "type": "concept",
      "title": "Step 1: Creating a new Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 4948,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-2-using-labels",
      "type": "concept",
      "title": "Step 2: Using labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 7253,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-3-deleting-a-service",
      "type": "concept",
      "title": "Step 3: Deleting a service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 8562,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/kubernetes-basics/deploy-app/deploy-intro",
      "type": "page",
      "title": "Using kubectl to Create a Deployment",
      "summary": "",
      "body": "## \n\n* Learn about application Deployments.\n* Deploy your first app on Kubernetes with kubectl.\n\n\n## \n\nThe shell commands in this tutorial use POSIX shell syntax, which is supported by\nthe default shells on most Linux and macOS systems (for example, bash, zsh, or sh).\nWindows users must use a POSIX-compatible shell such as\n[Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install)\nor [Git Bash](https://gitforwindows.org/) to run the commands as written.\nCommands that use `export`, `$()`, and similar constructs are **not** compatible\nwith PowerShell or the Windows Command Prompt.\n\n\n## Kubernetes Deployments\n\n\n_A Deployment is responsible for creating and updating instances of your application._\n\n\n\nThis tutorial uses a container that requires the AMD64 architecture. If you are using\nminikube on a computer with a different CPU architecture, you could try using minikube with\na driver that can emulate AMD64. For example, the Docker Desktop driver can do this.\n\n\nOnce you have a [running Kubernetes cluster](/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/),\nyou can deploy your containerized applications on top of it. To do so, you create a\nKubernetes **Deployment**. The Deployment instructs Kubernetes how to create and\nupdate instances of your application. Once you've created a Deployment, the Kubernetes\ncontrol plane schedules the application instances included in that Deployment to run\non individual Nodes in the cluster.\n\nOnce the application instances are created, a Kubernetes Deployment controller continuously\nmonitors those instances. If the Node hosting an instance goes down or is deleted,\nthe Deployment controller replaces the instance with an instance on another Node\nin the cluster. **This provides a self-healing mechanism to address machine failure\nor maintenance.**\n\nIn a pre-orchestration world, installation scripts would often be used to start\napplications, but they did not allow recovery from machine failure. By both creating\nyour application instances and keeping them running across Nodes, Kubernetes Deployments\nprovide a fundamentally different approach to application management.\n\n## Deploying your first app on Kubernetes\n\n\n_Applications need to be packaged into one of the supported container formats in\norder to be deployed on Kubernetes._\n\n\n\n![](/docs/tutorials/kubernetes-basics/public/images/module_02_first_app.svg)\n\n\nYou can create and manage a Deployment by using the Kubernetes command line interface,\n[kubectl](/docs/reference/kubectl/). `kubectl` uses the Kubernetes API to interact\nwith the cluster. In this module, you'll learn the most common `kubectl` commands\nneeded to create Deployments that run your applications on a Kubernetes cluster.\n\nWhen you create a Deployment, you'll need to specify the container image for your\napplication and the number of replicas that you want to run. You can change that\ninformation later by updating your Deployment; [Module 5](/docs/tutorials/kubernetes-basics/scale/scale-intro/)\nand [Module 6](/docs/tutorials/kubernetes-basics/update/update-intro/) of the bootcamp\ndiscuss how you can scale and update your Deployments.\n\nFor your first Deployment, you'll use a hello-node application packaged in a Docker\ncontainer that uses NGINX to echo back all the requests. (If you didn't already try\ncreating a hello-node application and deploying it using a container, you can do\nthat first by following the instructions from the [Hello Minikube tutorial](/docs/tutorials/hello-minikube/).)\n\nYou will need to have installed kubectl as well. If you need to install it, visit\n[install tools](/docs/tasks/tools/#kubectl).\n\nNow that you know what Deployments are, let's deploy our first app!\n\n### kubectl basics\n\nThe common format of a kubectl command is: `kubectl action resource`.\n\nThis performs the specified _action_ (like `create`, `describe` or `delete`) on the\nspecified _resource_ (like `node` or `deployment`. You can use `--help` after the\nsubcommand to get\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": null,
          "line_end": null,
          "quote": "Using kubectl to Create a Deployment"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-deployments",
      "type": "concept",
      "title": "Kubernetes Deployments",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 680,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploying-your-first-app-on-kubernetes",
      "type": "concept",
      "title": "Deploying your first app on Kubernetes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 2312,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-basics",
      "type": "concept",
      "title": "kubectl basics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 3930,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploy-an-app",
      "type": "concept",
      "title": "Deploy an app",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 4686,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:view-the-app",
      "type": "concept",
      "title": "View the app",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 5630,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/kubernetes-basics/deploy-app/_index",
      "type": "page",
      "title": "Deploy an App",
      "summary": "Run and manage your application in Kubernetes.",
      "body": "Run and manage your application in Kubernetes.\n\n**Why it matters**\nDeploying an app allows you to scale, update, and manage it efficiently.\n\n**Key facts**\n- Use a Deployment for rolling updates\n- Configure resources (CPU, memory) for optimal performance\n\n**Common pitfalls**\n- Insufficient resource allocation can lead to app downtime\n\n**Related**\nDeployments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "tutorials/kubernetes-basics/deploy-app/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Deploy an App"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/stateful-application/basic-stateful-set",
      "type": "page",
      "title": "StatefulSet Basics",
      "summary": "",
      "body": "\nThis tutorial provides an introduction to managing applications with\n[StatefulSets](#gloss:statefulset).\nIt demonstrates how to create, delete, scale, and update the Pods of StatefulSets.\n\n\n## \n\nBefore you begin this tutorial, you should familiarize yourself with the\nfollowing Kubernetes concepts:\n\n* [Pods](/docs/concepts/workloads/pods/)\n* [Cluster DNS](/docs/concepts/services-networking/dns-pod-service/)\n* [Headless Services](/docs/concepts/services-networking/service/#headless-services)\n* [PersistentVolumes](/docs/concepts/storage/persistent-volumes/)\n* [PersistentVolumes Provisioning](/docs/concepts/storage/dynamic-provisioning/)\n* The [kubectl](/docs/reference/kubectl/kubectl/) command line tool\n\n\nYou should configure `kubectl` to use a context that uses the `default`\nnamespace.\nIf you are using an existing cluster, make sure that it's OK to use that\ncluster's default namespace to practice. Ideally, practice in a cluster\nthat doesn't run any real workloads.\n\nIt's also useful to read the concept page about [StatefulSets](/docs/concepts/workloads/controllers/statefulset/).\n\n\nThis tutorial assumes that your cluster is configured to dynamically provision\nPersistentVolumes. You'll also need to have a [default StorageClass](/docs/concepts/storage/storage-classes/#default-storageclass).\nIf your cluster is not configured to provision storage dynamically, you\nwill have to manually provision two 1 GiB volumes prior to starting this\ntutorial and\nset up your cluster so that those PersistentVolumes map to the\nPersistentVolumeClaim templates that the StatefulSet defines.\n\n\n## \n\nStatefulSets are intended to be used with stateful applications and distributed\nsystems. However, the administration of stateful applications and\ndistributed systems on Kubernetes is a broad, complex topic. In order to\ndemonstrate the basic features of a StatefulSet, and not to conflate the former\ntopic with the latter, you will deploy a simple web application using a StatefulSet.\n\nAfter this tutorial, you will be familiar with the following.\n\n* How to create a StatefulSet\n* How a StatefulSet manages its Pods\n* How to delete a StatefulSet\n* How to scale a StatefulSet\n* How to update a StatefulSet's Pods\n\n\n\n## Creating a StatefulSet\n\nBegin by creating a StatefulSet (and the Service that it relies upon) using\nthe example below. It is similar to the example presented in the\n[StatefulSets](/docs/concepts/workloads/controllers/statefulset/) concept.\nIt creates a [headless Service](/docs/concepts/services-networking/service/#headless-services),\n`nginx`, to publish the IP addresses of Pods in the StatefulSet, `web`.\n\n\n\nYou will need to use at least two terminal windows. In the first terminal, use\n[`kubectl get`](/docs/reference/generated/kubectl/kubectl-commands/#get) to [watch](#gloss:watch) the creation\nof the StatefulSet's Pods.\n\n```shell\n# use this terminal to run commands that specify --watch\n# end this watch when you are asked to start a new watch\nkubectl get pods --watch -l app=nginx\n```\n\nIn the second terminal, use\n[`kubectl apply`](/docs/reference/generated/kubectl/kubectl-commands/#apply) to create the\nheadless Service and StatefulSet:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/web/web.yaml\n```\n```\nservice/nginx created\nstatefulset.apps/web created\n```\n\nThe command above creates two Pods, each running an\n[NGINX](https://www.nginx.com) webserver. Get the `nginx` Service...\n```shell\nkubectl get service nginx\n```\n```\nNAME      TYPE         CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE\nnginx     ClusterIP    None         <none>        80/TCP    12s\n```\n...then get the `web` StatefulSet, to verify that both were created successfully:\n```shell\nkubectl get statefulset web\n```\n```\nNAME   READY   AGE\nweb    2/2     37s\n```\n\n### Ordered Pod creation\n\nA StatefulSet defaults to creating its Pods in a strict order.\n\nFor a StatefulSet with _n_ replicas, when Pods are being deployed, they are\ncreated sequentially, ordered from _{0..n-1}_. Examine the output \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/stateful-application/basic-stateful-set.md"
      },
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": null,
          "line_end": null,
          "quote": "StatefulSet Basics"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-statefulset",
      "type": "concept",
      "title": "Creating a StatefulSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 2437,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pods-in-a-statefulset",
      "type": "concept",
      "title": "Pods in a StatefulSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 5515,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-a-statefulset",
      "type": "concept",
      "title": "Scaling a StatefulSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 14291,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-statefulsets",
      "type": "concept",
      "title": "Updating StatefulSets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 19140,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-statefulsets",
      "type": "concept",
      "title": "Deleting StatefulSets",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 31030,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-management-policy",
      "type": "concept",
      "title": "Pod management policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 37677,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ordered-pod-creation",
      "type": "concept",
      "title": "Ordered Pod creation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 4077,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:examining-the-pod-s-ordinal-index",
      "type": "concept",
      "title": "Examining the Pod's ordinal index",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 5623,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-stable-network-identities",
      "type": "concept",
      "title": "Using stable network identities",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 6349,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-to-stable-storage",
      "type": "concept",
      "title": "Writing to stable storage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 10948,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-up",
      "type": "concept",
      "title": "Scaling up",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 14675,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-down",
      "type": "concept",
      "title": "Scaling down",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 16581,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ordered-pod-termination",
      "type": "concept",
      "title": "Ordered Pod termination",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 17915,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rollingupdate-rolling-update",
      "type": "concept",
      "title": "RollingUpdate {#rolling-update}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 19552,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ondelete-on-delete",
      "type": "concept",
      "title": "OnDelete {#on-delete}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 30406,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:non-cascading-delete",
      "type": "concept",
      "title": "Non-cascading delete",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 31447,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cascading-delete",
      "type": "concept",
      "title": "Cascading delete",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 35042,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:orderedready-pod-management",
      "type": "concept",
      "title": "OrderedReady Pod management",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 38059,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:parallel-pod-management",
      "type": "concept",
      "title": "Parallel Pod management",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 38838,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "type": "page",
      "title": "Example: Deploying WordPress and MySQL with Persistent Volumes",
      "summary": "",
      "body": "\nThis tutorial shows you how to deploy a WordPress site and a MySQL database using\nMinikube. Both applications use PersistentVolumes and PersistentVolumeClaims to store data.\n\nA [PersistentVolume](/docs/concepts/storage/persistent-volumes/) (PV) is a piece\nof storage in the cluster that has been manually provisioned by an administrator,\nor dynamically provisioned by Kubernetes using a [StorageClass](/docs/concepts/storage/storage-classes).\nA [PersistentVolumeClaim](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims) (PVC)\nis a request for storage by a user that can be fulfilled by a PV. PersistentVolumes and\nPersistentVolumeClaims are independent from Pod lifecycles and preserve data through\nrestarting, rescheduling, and even deleting Pods.\n\n\nThis deployment is not suitable for production use cases, as it uses single instance\nWordPress and MySQL Pods. Consider using\n[WordPress Helm Chart](https://github.com/bitnami/charts/tree/master/bitnami/wordpress)\nto deploy WordPress in production.\n\n\n\nThe files provided in this tutorial are using GA Deployment APIs and are specific\nto kubernetes version 1.9 and later. If you wish to use this tutorial with an earlier\nversion of Kubernetes, please update the API version appropriately, or reference\nearlier versions of this tutorial.\n\n\n## \n\n* Create PersistentVolumeClaims and PersistentVolumes\n* Create a `kustomization.yaml` with\n  * a Secret generator\n  * MySQL resource configs\n  * WordPress resource configs\n* Apply the kustomization directory by `kubectl apply -k ./`\n* Clean up\n\n## \n\n \n\nThe example shown on this page works with `kubectl` 1.27 and above.\n\nDownload the following configuration files:\n\n1. [mysql-deployment.yaml](/examples/application/wordpress/mysql-deployment.yaml)\n\n1. [wordpress-deployment.yaml](/examples/application/wordpress/wordpress-deployment.yaml)\n\n\n\n## Create PersistentVolumeClaims and PersistentVolumes\n\nMySQL and Wordpress each require a PersistentVolume to store data.\nTheir PersistentVolumeClaims will be created at the deployment step.\n\nMany cluster environments have a default StorageClass installed.\nWhen a StorageClass is not specified in the PersistentVolumeClaim,\nthe cluster's default StorageClass is used instead.\n\nWhen a PersistentVolumeClaim is created, a PersistentVolume is dynamically\nprovisioned based on the StorageClass configuration.\n\n\nIn local clusters, the default StorageClass uses the `hostPath` provisioner.\n`hostPath` volumes are only suitable for development and testing. With `hostPath`\nvolumes, your data lives in `/tmp` on the node the Pod is scheduled onto and does\nnot move between nodes. If a Pod dies and gets scheduled to another node in the\ncluster, or the node is rebooted, the data is lost.\n\n\n\nIf you are bringing up a cluster that needs to use the `hostPath` provisioner,\nthe `--enable-hostpath-provisioner` flag must be set in the `controller-manager` component.\n\n\n\nIf you have a Kubernetes cluster running on Google Kubernetes Engine, please\nfollow [this guide](https://cloud.google.com/kubernetes-engine/docs/tutorials/persistent-disk).\n\n\n## Create a kustomization.yaml\n\n### Add a Secret generator\n\nA [Secret](/docs/concepts/configuration/secret/) is an object that stores a piece\nof sensitive data like a password or key. Since 1.14, `kubectl` supports the\nmanagement of Kubernetes objects using a kustomization file. You can create a Secret\nby generators in `kustomization.yaml`.\n\nAdd a Secret generator in `kustomization.yaml` from the following command.\nYou will need to replace `YOUR_PASSWORD` with the password you want to use.\n\n```shell\ncat <<EOF >./kustomization.yaml\nsecretGenerator:\n- name: mysql-pass\n  literals:\n  - password=YOUR_PASSWORD\nEOF\n```\n\n## Add resource configs for MySQL and WordPress\n\nThe following manifest describes a single-instance MySQL Deployment. The MySQL\ncontainer mounts the PersistentVolume at /var/lib/mysql. The `MYSQL_ROOT_PASSWORD`\nenvironment variable sets the database password from the Secret.\n\n\n\nThe following\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
      "meta": {
        "weight": 20,
        "rel_path": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md"
      },
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": null,
          "line_end": null,
          "quote": "Example: Deploying WordPress and MySQL with Persistent Volumes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-persistentvolumeclaims-and-persistentvolumes",
      "type": "concept",
      "title": "Create PersistentVolumeClaims and PersistentVolumes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 2127,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-kustomization-yaml",
      "type": "concept",
      "title": "Create a kustomization.yaml",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 3524,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:add-resource-configs-for-mysql-and-wordpress",
      "type": "concept",
      "title": "Add resource configs for MySQL and WordPress",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 4145,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apply-and-verify",
      "type": "concept",
      "title": "Apply and Verify",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 5485,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:add-a-secret-generator",
      "type": "concept",
      "title": "Add a Secret generator",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 3556,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/stateful-application/cassandra",
      "type": "page",
      "title": "Example: Deploying Cassandra with a StatefulSet",
      "summary": "",
      "body": "\nThis tutorial shows you how to run [Apache Cassandra](https://cassandra.apache.org/) on Kubernetes.\nCassandra, a database, needs persistent storage to provide data durability (application _state_).\nIn this example, a custom Cassandra seed provider lets the database discover new Cassandra instances as they join the Cassandra cluster.\n\n*StatefulSets* make it easier to deploy stateful applications into your Kubernetes cluster.\nFor more information on the features used in this tutorial, see\n[StatefulSet](/docs/concepts/workloads/controllers/statefulset/).\n\n\nCassandra and Kubernetes both use the term _node_ to mean a member of a cluster. In this\ntutorial, the Pods that belong to the StatefulSet are Cassandra nodes and are members\nof the Cassandra cluster (called a _ring_). When those Pods run in your Kubernetes cluster,\nthe Kubernetes control plane schedules those Pods onto Kubernetes\n.\n\nWhen a Cassandra node starts, it uses a _seed list_ to bootstrap discovery of other\nnodes in the ring.\nThis tutorial deploys a custom Cassandra seed provider that lets the database discover\nnew Cassandra Pods as they appear inside your Kubernetes cluster.\n\n\n\n## \n\n* Create and validate a Cassandra headless [Service](#gloss:service).\n* Use a [StatefulSet](#gloss:StatefulSet) to create a Cassandra ring.\n* Validate the StatefulSet.\n* Modify the StatefulSet.\n* Delete the StatefulSet and its [Pods](#gloss:pod).\n\n\n## \n\n\n\nTo complete this tutorial, you should already have a basic familiarity with\n[Pods](#gloss:pod),\n[Services](#gloss:service), and\n[StatefulSets](#gloss:StatefulSet).\n\n### Additional Minikube setup instructions\n\n\n[Minikube](https://minikube.sigs.k8s.io/docs/) defaults to 2048MB of memory and 2 CPU.\nRunning Minikube with the default resource configuration results in insufficient resource\nerrors during this tutorial. To avoid these errors, start Minikube with the following settings:\n\n```shell\nminikube start --memory 5120 --cpus=4\n```\n\n\n\n\n## Creating a headless Service for Cassandra {#creating-a-cassandra-headless-service}\n\nIn Kubernetes, a [Service](#gloss:service) describes a set of\n[Pods](#gloss:pod) that perform the same task.\n\nThe following Service is used for DNS lookups between Cassandra Pods and clients within your cluster:\n\n\n\nCreate a Service to track all Cassandra StatefulSet members from the `cassandra-service.yaml` file:\n\n```shell\nkubectl apply -f https://k8s.io/examples/application/cassandra/cassandra-service.yaml\n```\n\n\n### Validating (optional) {#validating}\n\nGet the Cassandra Service.\n\n```shell\nkubectl get svc cassandra\n```\n\nThe response is\n\n```\nNAME        TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)    AGE\ncassandra   ClusterIP   None         <none>        9042/TCP   45s\n```\n\nIf you don't see a Service named `cassandra`, that means creation failed. Read\n[Debug Services](/docs/tasks/debug/debug-application/debug-service/)\nfor help troubleshooting common issues.\n\n## Using a StatefulSet to create a Cassandra ring\n\nThe StatefulSet manifest, included below, creates a Cassandra ring that consists of three Pods.\n\n\nThis example uses the default provisioner for Minikube.\nPlease update the following StatefulSet for the cloud you are working with.\n\n\n\n\nCreate the Cassandra StatefulSet from the `cassandra-statefulset.yaml` file:\n\n```shell\n# Use this if you are able to apply cassandra-statefulset.yaml unmodified\nkubectl apply -f https://k8s.io/examples/application/cassandra/cassandra-statefulset.yaml\n```\n\nIf you need to modify `cassandra-statefulset.yaml` to suit your cluster, download\nhttps://k8s.io/examples/application/cassandra/cassandra-statefulset.yaml and then apply\nthat manifest, from the folder you saved the modified version into:\n```shell\n# Use this if you needed to modify cassandra-statefulset.yaml locally\nkubectl apply -f cassandra-statefulset.yaml\n```\n\n\n## Validating the Cassandra StatefulSet\n\n1. Get the Cassandra StatefulSet:\n\n    ```shell\n    kubectl get statefulset cassandra\n    ```\n\n    The response should be similar to:\n\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
      "meta": {
        "weight": 30,
        "rel_path": "tutorials/stateful-application/cassandra.md"
      },
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": null,
          "line_end": null,
          "quote": "Example: Deploying Cassandra with a StatefulSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-headless-service-for-cassandra-creating-a-cassandra-headless-service",
      "type": "concept",
      "title": "Creating a headless Service for Cassandra {#creating-a-cassandra-headless-service}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 2434,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-a-statefulset-to-create-a-cassandra-ring",
      "type": "concept",
      "title": "Using a StatefulSet to create a Cassandra ring",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 3529,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validating-the-cassandra-statefulset",
      "type": "concept",
      "title": "Validating the Cassandra StatefulSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 4565,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:modifying-the-cassandra-statefulset",
      "type": "concept",
      "title": "Modifying the Cassandra StatefulSet",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 6479,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cassandra-container-environment-variables",
      "type": "concept",
      "title": "Cassandra container environment variables",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 8896,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:additional-minikube-setup-instructions",
      "type": "concept",
      "title": "Additional Minikube setup instructions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 1979,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validating-optional-validating",
      "type": "concept",
      "title": "Validating (optional) {#validating}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 3073,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/stateful-application/_index",
      "type": "page",
      "title": "Stateful Applications",
      "summary": "Applications that require persistent storage and identity.",
      "body": "Applications that require persistent storage and identity.\n\n**Why it matters**\nStateful apps are common in databases, message queues, and more.\n\n**Key facts**\n- Use a StatefulSet for stateful app management\n- Configure persistent storage (PVs) for data retention\n\n**Common pitfalls**\n- Incorrect configuration can lead to data loss or inconsistencies\n\n**Related**\nStatefulSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/stateful-application/_index/",
      "meta": {
        "weight": 50,
        "rel_path": "tutorials/stateful-application/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/stateful-application/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Stateful Applications"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/stateful-application/zookeeper",
      "type": "page",
      "title": "Running ZooKeeper, A Distributed System Coordinator",
      "summary": "",
      "body": "\nThis tutorial demonstrates running [Apache Zookeeper](https://zookeeper.apache.org) on\nKubernetes using [StatefulSets](/docs/concepts/workloads/controllers/statefulset/),\n[PodDisruptionBudgets](/docs/concepts/workloads/pods/disruptions/#pod-disruption-budget),\nand [PodAntiAffinity](/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity).\n\n## \n\nBefore starting this tutorial, you should be familiar with the following\nKubernetes concepts:\n\n- [Pods](/docs/concepts/workloads/pods/)\n- [Cluster DNS](/docs/concepts/services-networking/dns-pod-service/)\n- [Headless Services](/docs/concepts/services-networking/service/#headless-services)\n- [PersistentVolumes](/docs/concepts/storage/persistent-volumes/) \n- [StatefulSets](/docs/concepts/workloads/controllers/statefulset/)\n- [PodDisruptionBudgets](/docs/concepts/workloads/pods/disruptions/#pod-disruption-budget)\n- [PodAntiAffinity](/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity)\n- [kubectl CLI](/docs/reference/kubectl/kubectl/)\n\nYou must have a cluster with at least four nodes, and each node requires at least 2 CPUs and 4 GiB of memory. In this tutorial you will cordon and drain the cluster's nodes. **This means that the cluster will terminate and evict all Pods on its nodes, and the nodes will temporarily become unschedulable.** You should use a dedicated cluster for this tutorial, or you should ensure that the disruption you cause will not interfere with other tenants.\n\nThis tutorial assumes that you have configured your cluster to dynamically provision\nPersistentVolumes. If your cluster is not configured to do so, you\nwill have to manually provision three 20 GiB volumes before starting this\ntutorial.\n\n## \n\nAfter this tutorial, you will know the following.\n\n- How to deploy a ZooKeeper ensemble using StatefulSet.\n- How to consistently configure the ensemble.\n- How to spread the deployment of ZooKeeper servers in the ensemble.\n- How to use PodDisruptionBudgets to ensure service availability during planned maintenance.\n\n\n\n### ZooKeeper\n\n[Apache ZooKeeper](https://zookeeper.apache.org/doc/current/) is a\ndistributed, open-source coordination service for distributed applications.\nZooKeeper allows you to read, write, and observe updates to data. Data are\norganized in a file system like hierarchy and replicated to all ZooKeeper\nservers in the ensemble (a set of ZooKeeper servers). All operations on data\nare atomic and sequentially consistent. ZooKeeper ensures this by using the\n[Zab](https://pdfs.semanticscholar.org/b02c/6b00bd5dbdbd951fddb00b906c82fa80f0b3.pdf)\nconsensus protocol to replicate a state machine across all servers in the ensemble.\n\nThe ensemble uses the Zab protocol to elect a leader, and the ensemble cannot write data until that election is complete. Once complete, the ensemble uses Zab to ensure that it replicates all writes to a quorum before it acknowledges and makes them visible to clients. Without respect to weighted quorums, a quorum is a majority component of the ensemble containing the current leader. For instance, if the ensemble has three servers, a component that contains the leader and one other server constitutes a quorum. If the ensemble can not achieve a quorum, the ensemble cannot write data.\n\nZooKeeper servers keep their entire state machine in memory, and write every mutation to a durable WAL (Write Ahead Log) on storage media. When a server crashes, it can recover its previous state by replaying the WAL. To prevent the WAL from growing without bound, ZooKeeper servers will periodically snapshot them in memory state to storage media. These snapshots can be loaded directly into memory, and all WAL entries that preceded the snapshot may be discarded.\n\n## Creating a ZooKeeper ensemble\n\nThe manifest below contains a\n[Headless Service](/docs/concepts/services-networking/service/#headless-services),\na [Service](/docs/concepts/services-networking/service/),\na [PodDisruptionBudget](/docs/concepts/workloads/pods/dis\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
      "meta": {
        "weight": 40,
        "rel_path": "tutorials/stateful-application/zookeeper.md"
      },
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": null,
          "line_end": null,
          "quote": "Running ZooKeeper, A Distributed System Coordinator"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-zookeeper-ensemble",
      "type": "concept",
      "title": "Creating a ZooKeeper ensemble",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 3837,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ensuring-consistent-configuration",
      "type": "concept",
      "title": "Ensuring consistent configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 16841,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managing-the-zookeeper-process",
      "type": "concept",
      "title": "Managing the ZooKeeper process",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 25928,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tolerating-node-failure",
      "type": "concept",
      "title": "Tolerating Node failure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 33551,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:surviving-maintenance",
      "type": "concept",
      "title": "Surviving maintenance",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 35804,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:zookeeper",
      "type": "concept",
      "title": "ZooKeeper",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 2149,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:facilitating-leader-election",
      "type": "concept",
      "title": "Facilitating leader election",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 5909,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:achieving-consensus",
      "type": "concept",
      "title": "Achieving consensus",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 8981,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sanity-testing-the-ensemble",
      "type": "concept",
      "title": "Sanity testing the ensemble",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 11217,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:providing-durable-storage",
      "type": "concept",
      "title": "Providing durable storage",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 12143,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-logging",
      "type": "concept",
      "title": "Configuring logging",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 18218,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-a-non-privileged-user",
      "type": "concept",
      "title": "Configuring a non-privileged user",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 23346,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-the-ensemble",
      "type": "concept",
      "title": "Updating the ensemble",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 26480,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:handling-process-failure",
      "type": "concept",
      "title": "Handling process failure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 28094,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:testing-for-liveness",
      "type": "concept",
      "title": "Testing for liveness",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 30805,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:testing-for-readiness",
      "type": "concept",
      "title": "Testing for readiness",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 32538,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/services/pods-and-endpoint-termination-flow",
      "type": "page",
      "title": "Explore Termination Behavior for Pods And Their Endpoints",
      "summary": "",
      "body": "\n\nOnce you connected your Application with Service following steps\nlike those outlined in [Connecting Applications with Services](/docs/tutorials/services/connect-applications-service/),\nyou have a continuously running, replicated application, that is exposed on a network.\nThis tutorial helps you look at the termination flow for Pods and to explore ways to implement\ngraceful connection draining.\n\n\n\n## Termination process for Pods and their endpoints\n\nThere are often cases when you need to terminate a Pod - be it to upgrade or scale down.\nIn order to improve application availability, it may be important to implement\na proper active connections draining.\n\nThis tutorial explains the flow of Pod termination in connection with the\ncorresponding endpoint state and removal by using\na simple nginx web server to demonstrate the concept.\n\n\n\n## Example flow with endpoint termination\n\nThe following is the example flow described in the \n[Termination of Pods](/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination)\ndocument.\n\nLet's say you have a Deployment containing a single `nginx` replica\n(say just for the sake of demonstration purposes) and a Service:\n\n\n\n\n\nNow create the Deployment Pod and Service using the above files:\n\n```shell\nkubectl apply -f pod-with-graceful-termination.yaml\nkubectl apply -f explore-graceful-termination-nginx.yaml\n```\n\nOnce the Pod and Service are running, you can get the name of any associated EndpointSlices:\n\n```shell\nkubectl get endpointslice\n```\n\nThe output is similar to this:\n\n```none\nNAME                  ADDRESSTYPE   PORTS   ENDPOINTS                 AGE\nnginx-service-6tjbr   IPv4          80      10.12.1.199,10.12.1.201   22m\n```\n\nYou can see its status, and validate that there is one endpoint registered:\n\n```shell\nkubectl get endpointslices -o json -l kubernetes.io/service-name=nginx-service\n```\n\nThe output is similar to this:\n\n```none\n{\n    \"addressType\": \"IPv4\",\n    \"apiVersion\": \"discovery.k8s.io/v1\",\n    \"endpoints\": [\n        {\n            \"addresses\": [\n                \"10.12.1.201\"\n            ],\n            \"conditions\": {\n                \"ready\": true,\n                \"serving\": true,\n                \"terminating\": false\n```\n\nNow let's terminate the Pod and validate that the Pod is being terminated\nrespecting the graceful termination period configuration:\n\n```shell\nkubectl delete pod nginx-deployment-7768647bf9-b4b9s\n```\n\nAll pods:\n\n```shell\nkubectl get pods\n```\n\nThe output is similar to this:\n\n```none\nNAME                                READY   STATUS        RESTARTS      AGE\nnginx-deployment-7768647bf9-b4b9s   1/1     Terminating   0             4m1s\nnginx-deployment-7768647bf9-rkxlw   1/1     Running       0             8s\n```\n\nYou can see that the new pod got scheduled.\n\nWhile the new endpoint is being created for the new Pod, the old endpoint is\nstill around in the terminating state:\n\n```shell\nkubectl get endpointslice -o json nginx-service-6tjbr\n```\n\nThe output is similar to this:\n\n```none\n{\n    \"addressType\": \"IPv4\",\n    \"apiVersion\": \"discovery.k8s.io/v1\",\n    \"endpoints\": [\n        {\n            \"addresses\": [\n                \"10.12.1.201\"\n            ],\n            \"conditions\": {\n                \"ready\": false,\n                \"serving\": true,\n                \"terminating\": true\n            },\n            \"nodeName\": \"gke-main-default-pool-dca1511c-d17b\",\n            \"targetRef\": {\n                \"kind\": \"Pod\",\n                \"name\": \"nginx-deployment-7768647bf9-b4b9s\",\n                \"namespace\": \"default\",\n                \"uid\": \"66fa831c-7eb2-407f-bd2c-f96dfe841478\"\n            },\n            \"zone\": \"us-central1-c\"\n        },\n        {\n            \"addresses\": [\n                \"10.12.1.202\"\n            ],\n            \"conditions\": {\n                \"ready\": true,\n                \"serving\": true,\n                \"terminating\": false\n            },\n            \"nodeName\": \"gke-main-default-pool-dca1511c-d17b\",\n            \"targetRef\": {\n                \"kind\": \"Pod\",\n     \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/services/pods-and-endpoint-termination-flow/",
      "meta": {
        "weight": 60,
        "rel_path": "tutorials/services/pods-and-endpoint-termination-flow.md"
      },
      "provenance": [
        {
          "source": "tutorials/services/pods-and-endpoint-termination-flow.md",
          "url": "https://kubernetes.io/docs/tutorials/services/pods-and-endpoint-termination-flow/",
          "line_start": null,
          "line_end": null,
          "quote": "Explore Termination Behavior for Pods And Their Endpoints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:termination-process-for-pods-and-their-endpoints",
      "type": "concept",
      "title": "Termination process for Pods and their endpoints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/pods-and-endpoint-termination-flow.md",
          "url": "https://kubernetes.io/docs/tutorials/services/pods-and-endpoint-termination-flow/",
          "line_start": 433,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-flow-with-endpoint-termination",
      "type": "concept",
      "title": "Example flow with endpoint termination",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/pods-and-endpoint-termination-flow.md",
          "url": "https://kubernetes.io/docs/tutorials/services/pods-and-endpoint-termination-flow/",
          "line_start": 887,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/services/source-ip",
      "type": "page",
      "title": "Using Source IP",
      "summary": "",
      "body": "\n\nApplications running in a Kubernetes cluster find and communicate with each\nother, and the outside world, through the Service abstraction. This document\nexplains what happens to the source IP of packets sent to different types\nof Services, and how you can toggle this behavior according to your needs.\n\n\n\n## \n\n\n### Terminology\n\nThis document makes use of the following terms:\n\n\nIf localizing this section, link to the equivalent Wikipedia pages for\nthe target localization.\n\n\n[NAT](https://en.wikipedia.org/wiki/Network_address_translation)\n: Network address translation\n\n[Source NAT](https://en.wikipedia.org/wiki/Network_address_translation#SNAT)\n: Replacing the source IP on a packet; in this page, that usually means replacing with the IP address of a node.\n\n[Destination NAT](https://en.wikipedia.org/wiki/Network_address_translation#DNAT)\n: Replacing the destination IP on a packet; in this page, that usually means replacing with the IP address of a [pod](#gloss:pod)\n\n[VIP](/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies)\n: A virtual IP address, such as the one assigned to every [Service](#gloss:service) in Kubernetes\n\n[kube-proxy](/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies)\n: A network daemon that orchestrates Service VIP management on every node\n\n### Prerequisites\n\n\n\nThe examples use a small nginx webserver that echoes back the source\nIP of requests it receives through an HTTP header. You can create it as follows:\n\n\nThe image in the following command only runs on AMD64 architectures.\n\n\n```shell\nkubectl create deployment source-ip-app --image=registry.k8s.io/echoserver:1.10\n```\nThe output is:\n```\ndeployment.apps/source-ip-app created\n```\n\n\n## \n\n\n* Expose a simple application through various types of Services\n* Understand how each Service type handles source IP NAT\n* Understand the tradeoffs involved in preserving source IP\n\n\n\n\n\n\n## Source IP for Services with `Type=ClusterIP`\n\nPackets sent to ClusterIP from within the cluster are never source NAT'd if\nyou're running kube-proxy in\n[iptables mode](/docs/reference/networking/virtual-ips/#proxy-mode-iptables),\n(the default). You can query the kube-proxy mode by fetching\n`http://localhost:10249/proxyMode` on the node where kube-proxy is running.\n\n```console\nkubectl get nodes\n```\nThe output is similar to this:\n```\nNAME                           STATUS     ROLES    AGE     VERSION\nkubernetes-node-6jst   Ready      <none>   2h      v1.13.0\nkubernetes-node-cx31   Ready      <none>   2h      v1.13.0\nkubernetes-node-jj1t   Ready      <none>   2h      v1.13.0\n```\n\nGet the proxy mode on one of the nodes (kube-proxy listens on port 10249):\n```shell\n# Run this in a shell on the node you want to query.\ncurl http://localhost:10249/proxyMode\n```\nThe output is:\n```\niptables\n```\n\nYou can test source IP preservation by creating a Service over the source IP app:\n\n```shell\nkubectl expose deployment source-ip-app --name=clusterip --port=80 --target-port=8080\n```\nThe output is:\n```\nservice/clusterip exposed\n```\n```shell\nkubectl get svc clusterip\n```\nThe output is similar to:\n```\nNAME         TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)   AGE\nclusterip    ClusterIP   10.0.170.92   <none>        80/TCP    51s\n```\n\nAnd hitting the `ClusterIP` from a pod in the same cluster:\n\n```shell\nkubectl run busybox -it --image=busybox:1.28 --restart=Never --rm\n```\nThe output is similar to this:\n```\nWaiting for pod default/busybox to be running, status is Pending, pod ready: false\nIf you don't see a command prompt, try pressing enter.\n\n```\nYou can then run a command inside that Pod:\n\n```shell\n# Run this inside the terminal from \"kubectl run\"\nip addr\n```\n```\n1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue\n    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\n    inet 127.0.0.1/8 scope host lo\n       valid_lft forever preferred_lft forever\n    inet6 ::1/128 scope host\n       valid_lft forever preferred_lft forever\n3: eth0: <BROADCAST,MULTICAST,UP,LOW\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
      "meta": {
        "weight": 40,
        "rel_path": "tutorials/services/source-ip.md"
      },
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": null,
          "line_end": null,
          "quote": "Using Source IP"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:source-ip-for-services-with-type-clusterip",
      "type": "concept",
      "title": "Source IP for Services with `Type=ClusterIP`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 2196,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:source-ip-for-services-with-type-nodeport",
      "type": "concept",
      "title": "Source IP for Services with `Type=NodePort`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 4922,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:source-ip-for-services-with-type-loadbalancer",
      "type": "concept",
      "title": "Source IP for Services with `Type=LoadBalancer`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 8581,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cross-platform-support",
      "type": "concept",
      "title": "Cross-platform support",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 11858,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/services/connect-applications-service",
      "type": "page",
      "title": "Connecting Applications with Services",
      "summary": "",
      "body": "\n\n## The Kubernetes model for connecting containers\n\nNow that you have a continuously running, replicated application you can expose it on a network.\n\nKubernetes assumes that pods can communicate with other pods, regardless of which host they land on.\nKubernetes gives every pod its own cluster-private IP address, so you do not need to explicitly\ncreate links between pods or map container ports to host ports. This means that containers within\na Pod can all reach each other's ports on localhost, and all pods in a cluster can see each other\nwithout NAT. The rest of this document elaborates on how you can run reliable services on such a\nnetworking model.\n\nThis tutorial uses a simple nginx web server to demonstrate the concept.\n\n\n\n## Exposing pods to the cluster\n\nWe did this in a previous example, but let's do it once again and focus on the networking perspective.\nCreate an nginx Pod, and note that it has a container port specification:\n\n\n\nThis makes it accessible from any node in your cluster. Check the nodes the Pod is running on:\n\n```shell\nkubectl apply -f ./run-my-nginx.yaml\nkubectl get pods -l run=my-nginx -o wide\n```\n```\nNAME                        READY     STATUS    RESTARTS   AGE       IP            NODE\nmy-nginx-3800858182-jr4a2   1/1       Running   0          13s       10.244.3.4    kubernetes-minion-905m\nmy-nginx-3800858182-kna2y   1/1       Running   0          13s       10.244.2.5    kubernetes-minion-ljyd\n```\n\nCheck your pods' IPs:\n\n```shell\nkubectl get pods -l run=my-nginx -o custom-columns=POD_IP:.status.podIPs\n    POD_IP\n    [map[ip:10.244.3.4]]\n    [map[ip:10.244.2.5]]\n```\n\nYou should be able to ssh into any node in your cluster and use a tool such as `curl`\nto make queries against both IPs. Note that the containers are *not* using port 80 on\nthe node, nor are there any special NAT rules to route traffic to the pod. This means\nyou can run multiple nginx pods on the same node all using the same `containerPort`,\nand access them from any other pod or node in your cluster using the assigned IP\naddress for the pod. If you want to arrange for a specific port on the host\nNode to be forwarded to backing Pods, you can - but the networking model should\nmean that you do not need to do so.\n\nYou can read more about the\n[Kubernetes Networking Model](/docs/concepts/cluster-administration/networking/#the-kubernetes-network-model)\nif you're curious.\n\n## Creating a Service\n\nSo we have pods running nginx in a flat, cluster wide, address space. In theory,\nyou could talk to these pods directly, but what happens when a node dies? The pods\ndie with it, and the ReplicaSet inside the Deployment will create new ones, with different IPs. This is\nthe problem a Service solves.\n\nA Kubernetes Service is an abstraction which defines a logical set of Pods running\nsomewhere in your cluster, that all provide the same functionality. When created,\neach Service is assigned a unique IP address (also called clusterIP). This address\nis tied to the lifespan of the Service, and will not change while the Service is alive.\nPods can be configured to talk to the Service, and know that communication to the\nService will be automatically load-balanced out to some pod that is a member of the Service.\n\nYou can create a Service for your 2 nginx replicas with `kubectl expose`:\n\n```shell\nkubectl expose deployment/my-nginx\n```\n```\nservice/my-nginx exposed\n```\n\nThis is equivalent to `kubectl apply -f` in the following yaml:\n\n\n\nThis specification will create a Service which targets TCP port 80 on any Pod\nwith the `run: my-nginx` label, and expose it on an abstracted Service port\n(`targetPort`: is the port the container accepts traffic on, `port`: is the\nabstracted Service port, which can be any port other pods use to access the\nService).\nView [Service](/docs/reference/generated/kubernetes-api//#service-v1-core)\nAPI object to see the list of supported fields in service definition.\nCheck your Service:\n\n```shell\nkubectl get svc my-nginx\n```\n```\nNAME       TYPE        CLUS\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
      "meta": {
        "weight": 20,
        "rel_path": "tutorials/services/connect-applications-service.md"
      },
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": null,
          "line_end": null,
          "quote": "Connecting Applications with Services"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-kubernetes-model-for-connecting-containers",
      "type": "concept",
      "title": "The Kubernetes model for connecting containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exposing-pods-to-the-cluster",
      "type": "concept",
      "title": "Exposing pods to the cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 767,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-service",
      "type": "concept",
      "title": "Creating a Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 2485,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-the-service",
      "type": "concept",
      "title": "Accessing the Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 6018,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:securing-the-service",
      "type": "concept",
      "title": "Securing the Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 9878,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exposing-the-service",
      "type": "concept",
      "title": "Exposing the Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 15234,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/services/_index",
      "type": "page",
      "title": "Services",
      "summary": "Abstraction layer for accessing and managing pods.",
      "body": "Abstraction layer for accessing and managing pods.\n\n**Why it matters**\nServices provide a stable IP and port for your app, decoupling it from pod lifecycles.\n\n**Key facts**\n- Use a Service to abstract pod IPs\n- Configure selectors for service discovery\n\n**Common pitfalls**\n- Incorrect configuration can lead to service unavailability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/services/_index/",
      "meta": {
        "weight": 70,
        "rel_path": "tutorials/services/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/services/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/services/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Services"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:tutorials/stateless-application/guestbook",
      "type": "page",
      "title": "Example: Deploying PHP Guestbook application with Redis",
      "summary": "",
      "body": "\nThis tutorial shows you how to build and deploy a simple _(not production\nready)_, multi-tier web application using Kubernetes and\n[Docker](https://www.docker.com/). This example consists of the following\ncomponents:\n\n* A single-instance [Redis](https://www.redis.io/) to store guestbook entries\n* Multiple web frontend instances\n\n## \n\n* Start up a Redis leader.\n* Start up two Redis followers.\n* Start up the guestbook frontend.\n* Expose and view the Frontend Service.\n* Clean up.\n\n## \n\n\n\n\n\n\n\n## Start up the Redis Database\n\nThe guestbook application uses Redis to store its data.\n\n### Creating the Redis Deployment\n\nThe manifest file, included below, specifies a Deployment controller that runs a single replica Redis Pod.\n\n\n\n1. Launch a terminal window in the directory you downloaded the manifest files.\n1. Apply the Redis Deployment from the `redis-leader-deployment.yaml` file:\n\n   \n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/guestbook/redis-leader-deployment.yaml\n   ```\n\n1. Query the list of Pods to verify that the Redis Pod is running:\n\n   ```shell\n   kubectl get pods\n   ```\n\n   The response should be similar to this:\n\n   ```\n   NAME                           READY   STATUS    RESTARTS   AGE\n   redis-leader-fb76b4755-xjr2n   1/1     Running   0          13s\n   ```\n\n1. Run the following command to view the logs from the Redis leader Pod:\n\n   ```shell\n   kubectl logs -f deployment/redis-leader\n   ```\n\n### Creating the Redis leader Service\n\nThe guestbook application needs to communicate to the Redis to write its data.\nYou need to apply a [Service](/docs/concepts/services-networking/service/) to\nproxy the traffic to the Redis Pod. A Service defines a policy to access the\nPods.\n\n\n\n1. Apply the Redis Service from the following `redis-leader-service.yaml` file:\n\n   \n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/guestbook/redis-leader-service.yaml\n   ```\n\n1. Query the list of Services to verify that the Redis Service is running:\n\n   ```shell\n   kubectl get service\n   ```\n\n   The response should be similar to this:\n\n   ```\n   NAME           TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)    AGE\n   kubernetes     ClusterIP   10.0.0.1     <none>        443/TCP    1m\n   redis-leader   ClusterIP   10.103.78.24 <none>        6379/TCP   16s\n   ```\n\n\nThis manifest file creates a Service named `redis-leader` with a set of labels\nthat match the labels previously defined, so the Service routes network\ntraffic to the Redis Pod.\n\n\n### Set up Redis followers\n\nAlthough the Redis leader is a single Pod, you can make it highly available\nand meet traffic demands by adding a few Redis followers, or replicas.\n\n\n\n1. Apply the Redis Deployment from the following `redis-follower-deployment.yaml` file:\n\n   \n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/guestbook/redis-follower-deployment.yaml\n   ```\n\n1. Verify that the two Redis follower replicas are running by querying the list of Pods:\n\n   ```shell\n   kubectl get pods\n   ```\n\n   The response should be similar to this:\n\n   ```\n   NAME                             READY   STATUS    RESTARTS   AGE\n   redis-follower-dddfbdcc9-82sfr   1/1     Running   0          37s\n   redis-follower-dddfbdcc9-qrt5k   1/1     Running   0          38s\n   redis-leader-fb76b4755-xjr2n     1/1     Running   0          11m\n   ```\n\n### Creating the Redis follower service\n\nThe guestbook application needs to communicate with the Redis followers to\nread data. To make the Redis followers discoverable, you must set up another\n[Service](/docs/concepts/services-networking/service/).\n\n\n\n1. Apply the Redis Service from the following `redis-follower-service.yaml` file:\n\n   \n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/application/guestbook/redis-follower-service.yaml\n   ```\n\n1. Query the list of Services to verify that the Redis Service is running:\n\n   ```shell\n   kubectl get service\n   ```\n\n   The response should be similar to this:\n\n   ```\n   NAME             TYPE \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
      "meta": {
        "weight": 20,
        "rel_path": "tutorials/stateless-application/guestbook.md"
      },
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": null,
          "line_end": null,
          "quote": "Example: Deploying PHP Guestbook application with Redis"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:start-up-the-redis-database",
      "type": "concept",
      "title": "Start up the Redis Database",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-up-and-expose-the-guestbook-frontend",
      "type": "concept",
      "title": "Set up and Expose the Guestbook Frontend",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 5704,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scale-the-web-frontend",
      "type": "concept",
      "title": "Scale the Web Frontend",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 10486,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-the-redis-deployment",
      "type": "concept",
      "title": "Creating the Redis Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 746,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-the-redis-leader-service",
      "type": "concept",
      "title": "Creating the Redis leader Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 1847,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:set-up-redis-followers",
      "type": "concept",
      "title": "Set up Redis followers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 3188,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-the-redis-follower-service",
      "type": "concept",
      "title": "Creating the Redis follower service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 4287,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-the-guestbook-frontend-deployment",
      "type": "concept",
      "title": "Creating the Guestbook Frontend Deployment",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 6187,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-the-frontend-service",
      "type": "concept",
      "title": "Creating the Frontend Service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 7134,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:viewing-the-frontend-service-via-kubectl-port-forward",
      "type": "concept",
      "title": "Viewing the Frontend Service via `kubectl port-forward`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 9093,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:viewing-the-frontend-service-via-loadbalancer",
      "type": "concept",
      "title": "Viewing the Frontend Service via `LoadBalancer`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 9563,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/stateless-application/expose-external-ip-address",
      "type": "page",
      "title": "Exposing an External IP Address to Access an Application in a Cluster",
      "summary": "",
      "body": "\n\nThis page shows how to create a Kubernetes Service object that exposes an\nexternal IP address.\n\n## \n\n* Install [kubectl](/docs/tasks/tools/).\n* Use a cloud provider like Google Kubernetes Engine or Amazon Web Services to\n  create a Kubernetes cluster. This tutorial creates an\n  [external load balancer](/docs/tasks/access-application-cluster/create-external-load-balancer/),\n  which requires a cloud provider.\n* Configure `kubectl` to communicate with your Kubernetes API server. For instructions, see the\n  documentation for your cloud provider.\n\n## \n\n* Run five instances of a Hello World application.\n* Create a Service object that exposes an external IP address.\n* Use the Service object to access the running application.\n\n\n\n## Creating a service for an application running in five pods\n\n1. Run a Hello World application in your cluster:\n\n   \n\n   ```shell\n   kubectl apply -f https://k8s.io/examples/service/load-balancer-example.yaml\n   ```\n   The preceding command creates a\n   [Deployment](#gloss:deployment)\n   and an associated\n   [ReplicaSet](#gloss:replica-set).\n   The ReplicaSet has five\n   [Pods](#gloss:pod)\n   each of which runs the Hello World application.\n\n1. Display information about the Deployment:\n\n   ```shell\n   kubectl get deployments hello-world\n   kubectl describe deployments hello-world\n   ```\n\n1. Display information about your ReplicaSet objects:\n\n   ```shell\n   kubectl get replicasets\n   kubectl describe replicasets\n   ```\n\n1. Create a Service object that exposes the deployment:\n\n   ```shell\n   kubectl expose deployment hello-world --type=LoadBalancer --name=my-service\n   ```\n\n1. Display information about the Service:\n\n   ```shell\n   kubectl get services my-service\n   ```\n\n   The output is similar to:\n\n   ```console\n   NAME         TYPE           CLUSTER-IP     EXTERNAL-IP      PORT(S)    AGE\n   my-service   LoadBalancer   10.3.245.137   104.198.205.71   8080/TCP   54s\n   ```\n\n   \n\n   The `type=LoadBalancer` service is backed by external cloud providers, which is not covered in this example. Please refer to [setting `type: LoadBalancer` for your Service](/docs/concepts/services-networking/service/#loadbalancer) for the details.\n\n   \n\n   \n\n   If the external IP address is shown as \\<pending\\>, wait for a minute and enter the same command again.\n\n   \n\n1. Display detailed information about the Service:\n\n   ```shell\n   kubectl describe services my-service\n   ```\n\n   The output is similar to:\n\n   ```console\n   Name:           my-service\n   Namespace:      default\n   Labels:         app.kubernetes.io/name=load-balancer-example\n   Annotations:    <none>\n   Selector:       app.kubernetes.io/name=load-balancer-example\n   Type:           LoadBalancer\n   IP:             10.3.245.137\n   LoadBalancer Ingress:   104.198.205.71\n   Port:           <unset> 8080/TCP\n   NodePort:       <unset> 32377/TCP\n   Endpoints:      10.0.0.6:8080,10.0.1.6:8080,10.0.1.7:8080 + 2 more...\n   Session Affinity:   None\n   Events:         <none>\n   ```\n\n   Make a note of the external IP address (`LoadBalancer Ingress`) exposed by\n   your service. In this example, the external IP address is 104.198.205.71.\n   Also note the value of `Port` and `NodePort`. In this example, the `Port`\n   is 8080 and the `NodePort` is 32377.\n\n1. In the preceding output, you can see that the service has several endpoints:\n   10.0.0.6:8080,10.0.1.6:8080,10.0.1.7:8080 + 2 more. These are internal\n   addresses of the pods that are running the Hello World application. To\n   verify these are pod addresses, enter this command:\n\n   ```shell\n   kubectl get pods --output=wide\n   ```\n\n   The output is similar to:\n\n   ```console\n   NAME                         ...  IP         NODE\n   hello-world-2895499144-1jaz9 ...  10.0.1.6   gke-cluster-1-default-pool-e0b8d269-1afc\n   hello-world-2895499144-2e5uh ...  10.0.1.8   gke-cluster-1-default-pool-e0b8d269-1afc\n   hello-world-2895499144-9m4h1 ...  10.0.0.6   gke-cluster-1-default-pool-e0b8d269-5v7a\n   hello-world-2895499144-o4z13 ...  10.\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
      "meta": {
        "weight": 10,
        "rel_path": "tutorials/stateless-application/expose-external-ip-address.md"
      },
      "provenance": [
        {
          "source": "tutorials/stateless-application/expose-external-ip-address.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
          "line_start": null,
          "line_end": null,
          "quote": "Exposing an External IP Address to Access an Application in a Cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-service-for-an-application-running-in-five-pods",
      "type": "concept",
      "title": "Creating a service for an application running in five pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "tutorials/stateless-application/expose-external-ip-address.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
          "line_start": 832,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:tutorials/stateless-application/_index",
      "type": "page",
      "title": "Stateless Applications",
      "summary": "An application that does not store any data locally, relying on external services for storage.",
      "body": "An application that does not store any data locally, relying on external services for storage.\n\n**Why it matters**\nStateless applications provide scalability and flexibility, as they can be easily replicated or moved without affecting the system's functionality.\n\n**Key facts**\n- No local data storage\n- Dependent on external services for storage\n\n**Common pitfalls**\n- Requires careful planning to ensure data consistency across multiple instances",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "tutorials",
      "tags": [
        "tutorials"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/tutorials/stateless-application/_index/",
      "meta": {
        "weight": 40,
        "rel_path": "tutorials/stateless-application/_index.md"
      },
      "provenance": [
        {
          "source": "tutorials/stateless-application/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Stateless Applications"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/_index",
      "type": "page",
      "title": "Reference",
      "summary": "",
      "body": "\n\nThis section of the Kubernetes documentation contains references.\n\n\n\n## API Reference\n\n* [Glossary](/docs/reference/glossary/) -  a comprehensive, standardized list of Kubernetes terminology\n\n* [Kubernetes API Reference](/docs/reference/kubernetes-api/)\n* [One-page API Reference for Kubernetes ](/docs/reference/generated/kubernetes-api//)\n* [Using The Kubernetes API](/docs/reference/using-api/) - overview of the API for Kubernetes.\n* [API access control](/docs/reference/access-authn-authz/) - details on how Kubernetes controls API access\n* [Well-Known Labels, Annotations and Taints](/docs/reference/labels-annotations-taints/)\n\n## Officially supported client libraries\n\nTo call the Kubernetes API from a programming language, you can use\n[client libraries](/docs/reference/using-api/client-libraries/). Officially supported\nclient libraries:\n\n- [Kubernetes Go client library](https://github.com/kubernetes/client-go/)\n- [Kubernetes Python client library](https://github.com/kubernetes-client/python)\n- [Kubernetes Java client library](https://github.com/kubernetes-client/java)\n- [Kubernetes JavaScript client library](https://github.com/kubernetes-client/javascript)\n- [Kubernetes C# client library](https://github.com/kubernetes-client/csharp)\n- [Kubernetes Haskell client library](https://github.com/kubernetes-client/haskell)\n\n## CLI\n\n* [kubectl](/docs/reference/kubectl/) - Main CLI tool for running commands and managing Kubernetes clusters.\n  * [JSONPath](/docs/reference/kubectl/jsonpath/) - Syntax guide for using [JSONPath expressions](https://goessner.net/articles/JsonPath/) with kubectl.\n* [kubeadm](/docs/reference/setup-tools/kubeadm/) - CLI tool to easily provision a secure Kubernetes cluster.\n\n## Components\n\n* [kubelet](/docs/reference/command-line-tools-reference/kubelet/) - The\n  primary agent that runs on each node. The kubelet takes a set of PodSpecs\n  and ensures that the described containers are running and healthy.\n* [kube-apiserver](/docs/reference/command-line-tools-reference/kube-apiserver/) -\n  REST API that validates and configures data for API objects such as  pods,\n  services, replication controllers.\n* [kube-controller-manager](/docs/reference/command-line-tools-reference/kube-controller-manager/) -\n  Daemon that embeds the core control loops shipped with Kubernetes.\n* [kube-proxy](/docs/reference/command-line-tools-reference/kube-proxy/) - Can\n  do simple TCP/UDP stream forwarding or round-robin TCP/UDP forwarding across\n  a set of back-ends.\n* [kube-scheduler](/docs/reference/command-line-tools-reference/kube-scheduler/) -\n  Scheduler that manages availability, performance, and capacity.\n  \n  * [Scheduler Policies](/docs/reference/scheduling/policies)\n  * [Scheduler Profiles](/docs/reference/scheduling/config#profiles)\n\n* List of [ports and protocols](/docs/reference/networking/ports-and-protocols/) that\n  should be open on control plane and worker nodes\n\n## Config APIs\n\nThis section hosts the documentation for \"unpublished\" APIs which are used to\nconfigure  kubernetes components or tools. Most of these APIs are not exposed\nby the API server in a RESTful way though they are essential for a user or an\noperator to use or manage a cluster.\n\n\n* [kubeconfig (v1)](/docs/reference/config-api/kubeconfig.v1/)\n* [kuberc (v1alpha1)](/docs/reference/config-api/kuberc.v1alpha1/) and\n  [kuberc (v1beta1)](/docs/reference/config-api/kuberc.v1beta1/)\n* [kube-apiserver admission (v1)](/docs/reference/config-api/apiserver-admission.v1/)\n* [kube-apiserver configuration (v1alpha1)](/docs/reference/config-api/apiserver-config.v1alpha1/) and\n  [kube-apiserver configuration (v1beta1)](/docs/reference/config-api/apiserver-config.v1beta1/) and\n  [kube-apiserver configuration (v1)](/docs/reference/config-api/apiserver-config.v1/)\n* [kube-apiserver event rate limit (v1alpha1)](/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/)\n* [kubelet configuration (v1alpha1)](/docs/reference/config-api/kubelet-config.v1alpha1/) and\n  [kubel\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/_index/",
      "meta": {
        "weight": 70,
        "rel_path": "reference/_index.md"
      },
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Reference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-reference",
      "type": "concept",
      "title": "API Reference",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:officially-supported-client-libraries",
      "type": "concept",
      "title": "Officially supported client libraries",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 714,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cli",
      "type": "concept",
      "title": "CLI",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 1417,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:config-apis",
      "type": "concept",
      "title": "Config APIs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 3000,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:config-api-for-kubeadm",
      "type": "concept",
      "title": "Config API for kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 5094,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-apis",
      "type": "concept",
      "title": "External APIs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 5250,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:design-docs",
      "type": "concept",
      "title": "Design Docs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 5618,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:encodings",
      "type": "concept",
      "title": "Encodings",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 5899,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/encodings/kyaml",
      "type": "page",
      "title": "KYAML Reference",
      "summary": "",
      "body": "\n**KYAML** is a safer and less ambiguous subset of YAML, initially introduced in Kubernetes v1.34 (alpha) and enabled by default in v1.35 (beta). Designed specifically for Kubernetes, KYAML addresses common YAML pitfalls such as whitespace sensitivity and implicit type coercion while maintaining full compatibility with existing YAML parsers and tooling. \n\n\nThis reference describes KYAML syntax.\n\n## Getting started with KYAML\n\nYAML’s reliance on indentation and implicit type coercion often leads to configuration errors, especially in CI/CD pipelines and templating systems like Helm. KYAML eliminates these issues by enforcing explicit syntax and structure, making configurations more reliable and easier to debug.\n\n### Basic Structure\n\nKYAML uses *flow style* syntax with `{}` for objects and `[]` for arrays. All string values must be **double-quoted**.\n\n```yaml\n---\n{\n  apiVersion: \"v1\",\n  kind: \"Pod\",\n  metadata: {\n    name: \"my-pod\",\n    labels: {\n      app: \"demo\"\n    },\n  },\n  spec: {\n    containers: [{\n      name: \"nginx\",\n      image: \"nginx:1.20\"\n    }]\n  }\n}\n```\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/encodings/kyaml/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/encodings/kyaml.md"
      },
      "provenance": [
        {
          "source": "reference/encodings/kyaml.md",
          "url": "https://kubernetes.io/docs/reference/encodings/kyaml/",
          "line_start": null,
          "line_end": null,
          "quote": "KYAML Reference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:getting-started-with-kyaml",
      "type": "concept",
      "title": "Getting started with KYAML",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/encodings/kyaml.md",
          "url": "https://kubernetes.io/docs/reference/encodings/kyaml/",
          "line_start": 430,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:basic-structure",
      "type": "concept",
      "title": "Basic Structure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/encodings/kyaml.md",
          "url": "https://kubernetes.io/docs/reference/encodings/kyaml/",
          "line_start": 752,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/encodings/_index",
      "type": "page",
      "title": "Encodings",
      "summary": "The process of converting data into a format that can be understood by different systems or applications.",
      "body": "The process of converting data into a format that can be understood by different systems or applications.\n\n**Why it matters**\nEncodings enable communication between systems with different data formats, facilitating integration and exchange of information.\n\n**Key facts**\n- Conversion of data to a common format\n- Enables communication between systems\n\n**Common pitfalls**\n- Data loss or corruption during encoding/decoding process",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/encodings/_index/",
      "meta": {
        "weight": 110,
        "rel_path": "reference/encodings/_index.md"
      },
      "provenance": [
        {
          "source": "reference/encodings/_index.md",
          "url": "https://kubernetes.io/docs/reference/encodings/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Encodings"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/group-versions",
      "type": "page",
      "title": "API Groups",
      "summary": "Kubernetes API groups and their served versions.",
      "body": "The API Groups and their versions are summarized in the following table.\n\n| Group | Versions |\n| --- | --- |\n| `admissionregistration.k8s.io` | `v1, v1beta1, v1alpha1` |\n| `apiextensions.k8s.io` | `v1` |\n| `apiregistration.k8s.io` | `v1` |\n| `apps` | `v1` |\n| `authentication.k8s.io` | `v1` |\n| `authorization.k8s.io` | `v1` |\n| `autoscaling` | `v2, v1` |\n| `batch` | `v1` |\n| `certificates.k8s.io` | `v1, v1beta1, v1alpha1` |\n| `coordination.k8s.io` | `v1, v1beta1, v1alpha2` |\n| `core` | `v1` |\n| `discovery.k8s.io` | `v1` |\n| `events.k8s.io` | `v1` |\n| `flowcontrol.apiserver.k8s.io` | `v1` |\n| `internal.apiserver.k8s.io` | `v1alpha1` |\n| `networking.k8s.io` | `v1, v1beta1` |\n| `node.k8s.io` | `v1` |\n| `policy` | `v1` |\n| `rbac.authorization.k8s.io` | `v1` |\n| `resource.k8s.io` | `v1, v1beta2, v1beta1, v1alpha3` |\n| `scheduling.k8s.io` | `v1, v1alpha2` |\n| `storage.k8s.io` | `v1, v1beta1` |\n| `storagemigration.k8s.io` | `v1beta1` |\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/group-versions/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/group-versions.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/group-versions.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/group-versions/",
          "line_start": null,
          "line_end": null,
          "quote": "API Groups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/_index",
      "type": "page",
      "title": "Kubernetes API",
      "summary": "A set of APIs that provide programmatic access to Kubernetes resources and functionality.",
      "body": "A set of APIs that provide programmatic access to Kubernetes resources and functionality.\n\n**Why it matters**\nThe Kubernetes API allows developers to automate tasks, integrate with other tools, and manage complex workflows.\n\n**Key facts**\n- Programmatic access to Kubernetes resources\n- Automation of tasks and workflows\n\n**Common pitfalls**\n- Steep learning curve due to complexity of APIs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/_index/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/kubernetes-api/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes API"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "type": "page",
      "title": "ClusterRoleBinding",
      "summary": "ClusterRoleBinding references a ClusterRole, but not contain it.  It can reference a ClusterRole in the global namespace, and adds who information via Subject.",
      "body": "\n\n`apiVersion: rbac.authorization.k8s.io/v1`\n\n`import \"k8s.io/api/rbac/v1\"`\n\n\n## ClusterRoleBinding {#ClusterRoleBinding}\n\nClusterRoleBinding references a ClusterRole, but not contain it.  It can reference a ClusterRole in the global namespace, and adds who information via Subject.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata.</td>\n    </tr>\n    <tr>\n      <td><code>roleRef</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">RoleRef</a></em></td>\n      <td>RoleRef can only reference a ClusterRole in the global namespace. If the RoleRef cannot be resolved, the Authorizer must return an error. This field is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>subjects</code><br/><em><a href=\"\">Subject array</a></em></td>\n      <td>Subjects holds references to the objects the role applies to.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ClusterRoleBindingList {#ClusterRoleBindingList}\n\nClusterRoleBindingList is a collection of ClusterRoleBindings\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ClusterRoleBinding array</a></em></td>\n      <td>Items is a list of ClusterRoleBindings</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard object's metadata.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## Operations {#Operations}\n\n<hr>\n\n\n### `post` Create\n\n#### HTTP Request\n\nPOST /apis/rbac.authorization.k8s.io/v1/clusterrolebindings\n\n\n\n#### Query Parameters\n\n<table>\n  <thead><tr><th>Name</th><th>Type</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>pretty</code></td>\n      <td><em>string</em></td>\n      <td>If 'true', then the output is pretty printed. Defaults to 'false' unless the user-agent indicates a browser or command-line HTTP tool (curl and wget).</td>\n    </tr>\n    <tr>\n      <td><code>dryRun</code></td>\n      <td><em>string</em></td>\n      <td>When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed</td>\n    </tr>\n    <tr>\n      <td><code>fieldManager</code></td>\n      <td><em>string</em></td>\n     \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ClusterRoleBinding"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clusterrolebinding-clusterrolebinding",
      "type": "concept",
      "title": "ClusterRoleBinding {#ClusterRoleBinding}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 653,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clusterrolebindinglist-clusterrolebindinglist",
      "type": "concept",
      "title": "ClusterRoleBindingList {#ClusterRoleBindingList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 2496,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:operations-operations",
      "type": "concept",
      "title": "Operations {#Operations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 3912,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:post-create",
      "type": "concept",
      "title": "`post` Create",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 3948,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:patch-patch",
      "type": "concept",
      "title": "`patch` Patch",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 7149,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:put-replace",
      "type": "concept",
      "title": "`put` Replace",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 10846,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-delete",
      "type": "concept",
      "title": "`delete` Delete",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 14140,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-delete-collection",
      "type": "concept",
      "title": "`delete` Delete Collection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 18290,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-read",
      "type": "concept",
      "title": "`get` Read",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 29314,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-list",
      "type": "concept",
      "title": "`get` List",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 30373,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-watch",
      "type": "concept",
      "title": "`get` Watch",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 39191,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-watch-list",
      "type": "concept",
      "title": "`get` Watch List",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 48273,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "type": "page",
      "title": "RoleBinding",
      "summary": "RoleBinding references a role, but does not contain it.  It can reference a Role in the same namespace or a ClusterRole in the global namespace. It adds who information via Subjects and namespace information by which namespace it exists in.  RoleBindings in a given namespace only have effect in that namespace.",
      "body": "\n\n`apiVersion: rbac.authorization.k8s.io/v1`\n\n`import \"k8s.io/api/rbac/v1\"`\n\n\n## RoleBinding {#RoleBinding}\n\nRoleBinding references a role, but does not contain it.  It can reference a Role in the same namespace or a ClusterRole in the global namespace. It adds who information via Subjects and namespace information by which namespace it exists in.  RoleBindings in a given namespace only have effect in that namespace.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata.</td>\n    </tr>\n    <tr>\n      <td><code>roleRef</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">RoleRef</a></em></td>\n      <td>RoleRef can reference a Role in the current namespace or a ClusterRole in the global namespace. If the RoleRef cannot be resolved, the Authorizer must return an error. This field is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>subjects</code><br/><em><a href=\"\">Subject array</a></em></td>\n      <td>Subjects holds references to the objects the role applies to.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## RoleBindingList {#RoleBindingList}\n\nRoleBindingList is a collection of RoleBindings\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">RoleBinding array</a></em></td>\n      <td>Items is a list of RoleBindings</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard object's metadata.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## Operations {#Operations}\n\n<hr>\n\n\n### `post` Create\n\n#### HTTP Request\n\nPOST /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings\n\n\n#### Path Parameters\n\n<table>\n  <thead><tr><th>Name</th><th>Type</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>namespace</code></td>\n      <td><em>string</em></td>\n      <td>object name and auth scope, such as for teams and projects</td>\n    </tr>\n  </tbody>\n</table>\n\n\n#### Query Parameters\n\n<table>\n  <thead><tr><th>Name</th><th>Type</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>pretty</code></td>\n      <td><em>string</em></td>\n      <td>If 'true', then the output is pretty printed. Defaults to 'false' unless the user-agent indicates a browser or command-line HTTP tool (curl and wget).</td>\n    </t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/kubernetes-api/rbac/role-binding-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "RoleBinding"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolebinding-rolebinding",
      "type": "concept",
      "title": "RoleBinding {#RoleBinding}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 653,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolebindinglist-rolebindinglist",
      "type": "concept",
      "title": "RoleBindingList {#RoleBindingList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 2664,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-list-all-namespaces",
      "type": "concept",
      "title": "`get` List All Namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 40680,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-watch-list-all-namespaces",
      "type": "concept",
      "title": "`get` Watch List All Namespaces",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 67866,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/rbac/role-v1",
      "type": "page",
      "title": "Role",
      "summary": "Role is a namespaced, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding.",
      "body": "\n\n`apiVersion: rbac.authorization.k8s.io/v1`\n\n`import \"k8s.io/api/rbac/v1\"`\n\n\n## Role {#Role}\n\nRole is a namespaced, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata.</td>\n    </tr>\n    <tr>\n      <td><code>rules</code><br/><em><a href=\"\">PolicyRule array</a></em></td>\n      <td>Rules holds all the PolicyRules for this Role</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## RoleList {#RoleList}\n\nRoleList is a collection of Roles\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">Role array</a></em></td>\n      <td>Items is a list of Roles</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard object's metadata.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## Operations {#Operations}\n\n<hr>\n\n\n### `post` Create\n\n#### HTTP Request\n\nPOST /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles\n\n\n#### Path Parameters\n\n<table>\n  <thead><tr><th>Name</th><th>Type</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>namespace</code></td>\n      <td><em>string</em></td>\n      <td>object name and auth scope, such as for teams and projects</td>\n    </tr>\n  </tbody>\n</table>\n\n\n#### Query Parameters\n\n<table>\n  <thead><tr><th>Name</th><th>Type</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>pretty</code></td>\n      <td><em>string</em></td>\n      <td>If 'true', then the output is pretty printed. Defaults to 'false' unless the user-agent indicates a browser or command-line HTTP tool (curl and wget).</td>\n    </tr>\n    <tr>\n      <td><code>dryRun</code></td>\n      <td><em>string</em></td>\n      <td>When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed</td>\n    </tr>\n    <tr>\n      <td><code>fieldManager</code></td>\n      <td><em>string</em></td>\n      <td>fieldManager is a name associated with the actor or entity that is making these changes. The value must be less than or 128 characters long, and only contain printabl\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/rbac/role-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Role"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:role-role",
      "type": "concept",
      "title": "Role {#Role}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 653,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolelist-rolelist",
      "type": "concept",
      "title": "RoleList {#RoleList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 2059,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "type": "page",
      "title": "ClusterRole",
      "summary": "ClusterRole is a cluster level, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding or ClusterRoleBinding.",
      "body": "\n\n`apiVersion: rbac.authorization.k8s.io/v1`\n\n`import \"k8s.io/api/rbac/v1\"`\n\n\n## ClusterRole {#ClusterRole}\n\nClusterRole is a cluster level, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding or ClusterRoleBinding.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>aggregationRule</code><br/><em><a href=\"\">AggregationRule</a></em></td>\n      <td>AggregationRule is an optional field that describes how to build the Rules for this ClusterRole. If AggregationRule is set, then the Rules are controller managed and direct changes to Rules will be stomped by the controller.</td>\n    </tr>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata.</td>\n    </tr>\n    <tr>\n      <td><code>rules</code><br/><em><a href=\"\">PolicyRule array</a></em></td>\n      <td>Rules holds all the PolicyRules for this ClusterRole</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ClusterRoleList {#ClusterRoleList}\n\nClusterRoleList is a collection of ClusterRoles\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ClusterRole array</a></em></td>\n      <td>Items is a list of ClusterRoles</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard object's metadata.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## AggregationRule {#AggregationRule}\n\nAggregationRule describes how to locate ClusterRoles to aggregate into the ClusterRole\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>clusterRoleSelectors</code><br/><em><a href=\"\">LabelSelector array</a></em></td>\n      <td>ClusterRoleSelectors holds a list of selectors which will be used to find ClusterRoles and create the rules. If any of the selectors match, then the ClusterRole's permissions will be added</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## Operations {#Operations}\n\n<hr>\n\n\n### `post` Create\n\n#### HTTP Request\n\nPOST /apis/rbac.authorization.k8s.io/v1/clusterroles\n\n\n\n#### Query Parameters\n\n<table>\n  <thead><tr><th>Name</th><th>Type</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>pretty</code></td>\n      <td><em>string</em></td>\n      <td>If 'true', then the output is pretty printed. Defaults to 'false' unless the user-agent \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/rbac/cluster-role-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ClusterRole"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clusterrole-clusterrole",
      "type": "concept",
      "title": "ClusterRole {#ClusterRole}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 653,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clusterrolelist-clusterrolelist",
      "type": "concept",
      "title": "ClusterRoleList {#ClusterRoleList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 2489,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aggregationrule-aggregationrule",
      "type": "concept",
      "title": "AggregationRule {#AggregationRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 3847,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/rbac/_index",
      "type": "page",
      "title": "Rbac",
      "summary": "A mechanism for controlling access to Kubernetes resources based on user identity and role.",
      "body": "A mechanism for controlling access to Kubernetes resources based on user identity and role.\n\n**Why it matters**\nRBAC ensures that users only have access to the resources they need, improving security and reducing the risk of unauthorized changes.\n\n**Key facts**\n- Access control based on user identity and role\n- Improves security and reduces risk\n\n**Common pitfalls**\n- Complex configuration required for fine-grained access control",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/_index/",
      "meta": {
        "weight": 180,
        "rel_path": "reference/kubernetes-api/rbac/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Rbac"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "type": "page",
      "title": "StorageVersion",
      "summary": "Storage version of a specific resource.",
      "body": "\n\n`apiVersion: internal.apiserver.k8s.io/v1alpha1`\n\n`import \"k8s.io/api/apiserverinternal/v1alpha1\"`\n\n\n## StorageVersion {#StorageVersion}\n\nStorage version of a specific resource.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard object metadata. The name is \\<group>.\\<resource>.</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">StorageVersionSpec</a></em></td>\n      <td>spec is an empty spec. It is here to comply with Kubernetes API style.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">StorageVersionStatus</a></em></td>\n      <td>status on the version the API server instance can decode from and encode objects to when persisting objects in the backend.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## StorageVersionSpec {#StorageVersionSpec}\n\nStorageVersionSpec is an empty spec.\n\n<hr>\n\n\n\n## StorageVersionStatus {#StorageVersionStatus}\n\nAPI server instances report the versions they can decode and the version they encode objects to when persisting objects in the backend.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>commonEncodingVersion</code><br/><em>string</em></td>\n      <td>commonEncodingVersion is set to an encoding storage version if all API server instances share that same version. If they don't share one storage version, this field is left empty. API servers should finish updating its storageVersionStatus entry before serving write operations, so that this field will be in sync with the reality.</td>\n    </tr>\n    <tr>\n      <td><code>conditions</code><br/><em><a href=\"\">StorageVersionCondition array</a></em></td>\n      <td>conditions lists the latest available observations of the storageVersion's state.</td>\n    </tr>\n    <tr>\n      <td><code>storageVersions</code><br/><em><a href=\"\">ServerStorageVersion array</a></em></td>\n      <td>storageVersions lists the reported versions per API server instance.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## StorageVersionList {#StorageVersionList}\n\nA list of StorageVersions.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">StorageVersion array</a></em></td>\n      <td>Items holds a list of StorageVersion</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kin\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": null,
          "line_end": null,
          "quote": "StorageVersion"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageversion-storageversion",
      "type": "concept",
      "title": "StorageVersion {#StorageVersion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 678,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageversionspec-storageversionspec",
      "type": "concept",
      "title": "StorageVersionSpec {#StorageVersionSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 2388,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageversionstatus-storageversionstatus",
      "type": "concept",
      "title": "StorageVersionStatus {#StorageVersionStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 2479,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageversionlist-storageversionlist",
      "type": "concept",
      "title": "StorageVersionList {#StorageVersionList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 3696,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serverstorageversion-serverstorageversion",
      "type": "concept",
      "title": "ServerStorageVersion {#ServerStorageVersion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 5159,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageversioncondition-storageversioncondition",
      "type": "concept",
      "title": "StorageVersionCondition {#StorageVersionCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 6392,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:patch-patch-status",
      "type": "concept",
      "title": "`patch` Patch Status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 60829,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-read-status",
      "type": "concept",
      "title": "`get` Read Status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 64524,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:put-replace-status",
      "type": "concept",
      "title": "`put` Replace Status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 65588,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/apiserverinternal/_index",
      "type": "page",
      "title": "Apiserverinternal",
      "summary": "Apiserverinternal is an internal API of Kubernetes.",
      "body": "Apiserverinternal is an internal API of Kubernetes.\n\n**Why it matters**\nIt provides a way to interact with the Kubernetes API server internally.\n\n**Key facts**\n- Internal API\n- Interact with API server",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/_index/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/kubernetes-api/apiserverinternal/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Apiserverinternal"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "type": "page",
      "title": "FlowSchema",
      "summary": "FlowSchema defines the schema of a group of flows. Note that a flow is made up of a set of inbound API requests with similar attributes and is identified by a pair of strings: the name of the FlowSchema and a &#34;flow distinguisher&#34;.",
      "body": "\n\n`apiVersion: flowcontrol.apiserver.k8s.io/v1`\n\n`import \"k8s.io/api/flowcontrol/v1\"`\n\n\n## FlowSchema {#FlowSchema}\n\nFlowSchema defines the schema of a group of flows. Note that a flow is made up of a set of inbound API requests with similar attributes and is identified by a pair of strings: the name of the FlowSchema and a &#34;flow distinguisher&#34;.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>`metadata` is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">FlowSchemaSpec</a></em></td>\n      <td>`spec` is the specification of the desired behavior of a FlowSchema. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">FlowSchemaStatus</a></em></td>\n      <td>`status` is the current status of a FlowSchema. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## FlowSchemaSpec {#FlowSchemaSpec}\n\nFlowSchemaSpec describes how the FlowSchema&#39;s specification looks like.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>distinguisherMethod</code><br/><em><a href=\"\">FlowDistinguisherMethod</a></em></td>\n      <td>`distinguisherMethod` defines how to compute the flow distinguisher for requests that match this schema. `nil` specifies that the distinguisher is disabled and thus will always be the empty string.</td>\n    </tr>\n    <tr>\n      <td><code>matchingPrecedence</code><br/><em>integer</em></td>\n      <td>`matchingPrecedence` is used to choose among the FlowSchemas that match a given request. The chosen FlowSchema is among those with the numerically lowest (which we take to be logically highest) MatchingPrecedence.  Each MatchingPrecedence value must be ranged in [1,10000]. Note that if the precedence is not specified, it will be set to 1000 as default.</td>\n    </tr>\n    <tr>\n      <td><code>priorityLevelConfiguration</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">PriorityLevelConfigurationReference</a></em></td>\n      <td>`priorityLevelConfiguration` should reference a PriorityLevelConfiguration in the cluster. If the reference cannot be resolved, the FlowSchema will be ignored and marked as invalid in its status. Required.</td>\n    </tr>\n    <tr>\n      <td><code>rules</code><br/><em><a href=\"\">PolicyRulesWithSubjects array</a></em></td>\n      <td>`rules` describes which requests will match this flow schema. This FlowSchema matches a request if and only if at least one member of rules matches the request. if it is an empty slice, there will be no requests matching the FlowSchema.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## FlowSchemaStatus {#FlowSchemaStatus}\n\nFlowSchemaStatus represents the current state of a FlowSchema.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "FlowSchema"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flowschema-flowschema",
      "type": "concept",
      "title": "FlowSchema {#FlowSchema}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flowschemaspec-flowschemaspec",
      "type": "concept",
      "title": "FlowSchemaSpec {#FlowSchemaSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 2742,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flowschemastatus-flowschemastatus",
      "type": "concept",
      "title": "FlowSchemaStatus {#FlowSchemaStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 4624,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flowschemalist-flowschemalist",
      "type": "concept",
      "title": "FlowSchemaList {#FlowSchemaList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 5117,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flowdistinguishermethod-flowdistinguishermethod",
      "type": "concept",
      "title": "FlowDistinguisherMethod {#FlowDistinguisherMethod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 6590,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flowschemacondition-flowschemacondition",
      "type": "concept",
      "title": "FlowSchemaCondition {#FlowSchemaCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 7044,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:groupsubject-groupsubject",
      "type": "concept",
      "title": "GroupSubject {#GroupSubject}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 8159,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nonresourcepolicyrule-nonresourcepolicyrule",
      "type": "concept",
      "title": "NonResourcePolicyRule {#NonResourcePolicyRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 8676,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policyruleswithsubjects-policyruleswithsubjects",
      "type": "concept",
      "title": "PolicyRulesWithSubjects {#PolicyRulesWithSubjects}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 9910,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prioritylevelconfigurationreference-prioritylevelconfigurationreference",
      "type": "concept",
      "title": "PriorityLevelConfigurationReference {#PriorityLevelConfigurationReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 11585,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcepolicyrule-resourcepolicyrule",
      "type": "concept",
      "title": "ResourcePolicyRule {#ResourcePolicyRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 12080,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccountsubject-serviceaccountsubject",
      "type": "concept",
      "title": "ServiceAccountSubject {#ServiceAccountSubject}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 14617,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:subject-subject",
      "type": "concept",
      "title": "Subject {#Subject}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 15262,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:usersubject-usersubject",
      "type": "concept",
      "title": "UserSubject {#UserSubject}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 16305,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "type": "page",
      "title": "PriorityLevelConfiguration",
      "summary": "PriorityLevelConfiguration represents the configuration of a priority level.",
      "body": "\n\n`apiVersion: flowcontrol.apiserver.k8s.io/v1`\n\n`import \"k8s.io/api/flowcontrol/v1\"`\n\n\n## PriorityLevelConfiguration {#PriorityLevelConfiguration}\n\nPriorityLevelConfiguration represents the configuration of a priority level.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>`metadata` is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">PriorityLevelConfigurationSpec</a></em></td>\n      <td>`spec` is the specification of the desired behavior of a \"request-priority\". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">PriorityLevelConfigurationStatus</a></em></td>\n      <td>`status` is the current status of a \"request-priority\". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PriorityLevelConfigurationSpec {#PriorityLevelConfigurationSpec}\n\nPriorityLevelConfigurationSpec specifies the configuration of a priority level.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>exempt</code><br/><em><a href=\"\">ExemptPriorityLevelConfiguration</a></em></td>\n      <td>`exempt` specifies how requests are handled for an exempt priority level. This field MUST be empty if `type` is `\"Limited\"`. This field MAY be non-empty if `type` is `\"Exempt\"`. If empty and `type` is `\"Exempt\"` then the default values for `ExemptPriorityLevelConfiguration` apply.</td>\n    </tr>\n    <tr>\n      <td><code>limited</code><br/><em><a href=\"\">LimitedPriorityLevelConfiguration</a></em></td>\n      <td>`limited` specifies how requests are handled for a Limited priority level. This field must be non-empty if and only if `type` is `\"Limited\"`.</td>\n    </tr>\n    <tr>\n      <td><code>type</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>`type` indicates whether this priority level is subject to limitation on request execution.  A value of `\"Exempt\"` means that requests of this priority level are not subject to a limit (and thus are never queued) and do not detract from the capacity made available to other priority levels.  A value of `\"Limited\"` means that (a) requests of this priority level _are_ subject to limits and (b) some of the server's limited capacity is made available exclusively to this priority level. Required.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PriorityLevelConfigurationStatus {#PriorityLevelConfigurationStatus}\n\nPriorityLevelConfigurationStatus represents the current state of a &#34;request-priority&#34;.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>conditions</code><br/><em><a href=\"\">PriorityLevelConfigurationCondition array</a></em><br/><em>patch strategy: merge on key <code>type</code></em></td>\n      <td>`conditions` is the current state of \"requ\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "PriorityLevelConfiguration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prioritylevelconfiguration-prioritylevelconfiguration",
      "type": "concept",
      "title": "PriorityLevelConfiguration {#PriorityLevelConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prioritylevelconfigurationspec-prioritylevelconfigurationspec",
      "type": "concept",
      "title": "PriorityLevelConfigurationSpec {#PriorityLevelConfigurationSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 2692,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prioritylevelconfigurationstatus-prioritylevelconfigurationstatus",
      "type": "concept",
      "title": "PriorityLevelConfigurationStatus {#PriorityLevelConfigurationStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 4337,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prioritylevelconfigurationlist-prioritylevelconfigurationlist",
      "type": "concept",
      "title": "PriorityLevelConfigurationList {#PriorityLevelConfigurationList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 4923,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exemptprioritylevelconfiguration-exemptprioritylevelconfiguration",
      "type": "concept",
      "title": "ExemptPriorityLevelConfiguration {#ExemptPriorityLevelConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 6520,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitresponse-limitresponse",
      "type": "concept",
      "title": "LimitResponse {#LimitResponse}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 8260,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitedprioritylevelconfiguration-limitedprioritylevelconfiguration",
      "type": "concept",
      "title": "LimitedPriorityLevelConfiguration {#LimitedPriorityLevelConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 9130,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prioritylevelconfigurationcondition-prioritylevelconfigurationcondition",
      "type": "concept",
      "title": "PriorityLevelConfigurationCondition {#PriorityLevelConfigurationCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 12159,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:queuingconfiguration-queuingconfiguration",
      "type": "concept",
      "title": "QueuingConfiguration {#QueuingConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 13324,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/flowcontrol/_index",
      "type": "page",
      "title": "Flowcontrol",
      "summary": "Flowcontrol is an internal component of Kubernetes that manages API requests.",
      "body": "Flowcontrol is an internal component of Kubernetes that manages API requests.\n\n**Why it matters**\nIt helps to rate limit and throttle API requests to prevent abuse.\n\n**Key facts**\n- Rate limiting\n- API request management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/_index/",
      "meta": {
        "weight": 140,
        "rel_path": "reference/kubernetes-api/flowcontrol/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Flowcontrol"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/core/node-v1",
      "type": "page",
      "title": "Node",
      "summary": "Node is a worker node in Kubernetes. Each node will have a unique identifier in the cache (i.e. in etcd).",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## Node {#Node}\n\nNode is a worker node in Kubernetes. Each node will have a unique identifier in the cache (i.e. in etcd).\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">NodeSpec</a></em></td>\n      <td>Spec defines the behavior of a node. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">NodeStatus</a></em></td>\n      <td>Most recently observed status of the node. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## NodeSpec {#NodeSpec}\n\nNodeSpec describes the attributes that a node is created with.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>configSource</code><br/><em><a href=\"\">NodeConfigSource</a></em></td>\n      <td>Deprecated: Previously used to specify the source of the node's configuration for the DynamicKubeletConfig feature. This feature is removed.</td>\n    </tr>\n    <tr>\n      <td><code>externalID</code><br/><em>string</em></td>\n      <td>Deprecated. Not all kubelets will set this field. Remove field after 1.13. see: https://issues.k8s.io/61966</td>\n    </tr>\n    <tr>\n      <td><code>podCIDR</code><br/><em>string</em></td>\n      <td>PodCIDR represents the pod IP range assigned to the node.</td>\n    </tr>\n    <tr>\n      <td><code>podCIDRs</code><br/><em>string array</em><br/><em>patch strategy: merge</em></td>\n      <td>podCIDRs represents the IP ranges assigned to the node for usage by Pods on that node. If this field is specified, the 0th entry must match the podCIDR field. It may contain at most 1 value for each of IPv4 and IPv6.</td>\n    </tr>\n    <tr>\n      <td><code>providerID</code><br/><em>string</em></td>\n      <td>ID of the node assigned by the cloud provider in the format: \\<ProviderName>://\\<ProviderSpecificNodeID></td>\n    </tr>\n    <tr>\n      <td><code>taints</code><br/><em><a href=\"\">Taint array</a></em></td>\n      <td>If specified, the node's taints.</td>\n    </tr>\n    <tr>\n      <td><code>unschedulable</code><br/><em>boolean</em></td>\n      <td>Unschedulable controls node schedulability of new pods. By default, node is schedulable. More info: https://kubernetes.io/docs/concepts/nodes/node/#manual-node-administration</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## NodeStatus {#NodeStatus}\n\nNodeStatus is information about the current status of a node.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>addresses</code><br/><em><a href=\"\">NodeAddress array</a></em><br/><em>patch strategy: merge on key <code>type</code></em></td>\n      <td>List of addresses reachable to the node. Queried from cloud provider\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
      "meta": {
        "weight": 70,
        "rel_path": "reference/kubernetes-api/core/node-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Node"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-node",
      "type": "concept",
      "title": "Node {#Node}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodespec-nodespec",
      "type": "concept",
      "title": "NodeSpec {#NodeSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 2507,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodestatus-nodestatus",
      "type": "concept",
      "title": "NodeStatus {#NodeStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 4325,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodelist-nodelist",
      "type": "concept",
      "title": "NodeList {#NodeList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 8554,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:attachedvolume-attachedvolume",
      "type": "concept",
      "title": "AttachedVolume {#AttachedVolume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 9993,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmapnodeconfigsource-configmapnodeconfigsource",
      "type": "concept",
      "title": "ConfigMapNodeConfigSource {#ConfigMapNodeConfigSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 10522,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerimage-containerimage",
      "type": "concept",
      "title": "ContainerImage {#ContainerImage}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 12056,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonendpoint-daemonendpoint",
      "type": "concept",
      "title": "DaemonEndpoint {#DaemonEndpoint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 12591,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeaddress-nodeaddress",
      "type": "concept",
      "title": "NodeAddress {#NodeAddress}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 12951,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodecondition-nodecondition",
      "type": "concept",
      "title": "NodeCondition {#NodeCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 13456,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeconfigsource-nodeconfigsource",
      "type": "concept",
      "title": "NodeConfigSource {#NodeConfigSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 14682,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeconfigstatus-nodeconfigstatus",
      "type": "concept",
      "title": "NodeConfigStatus {#NodeConfigStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 15196,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodedaemonendpoints-nodedaemonendpoints",
      "type": "concept",
      "title": "NodeDaemonEndpoints {#NodeDaemonEndpoints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 18637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodefeatures-nodefeatures",
      "type": "concept",
      "title": "NodeFeatures {#NodeFeatures}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 19053,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:noderuntimehandler-noderuntimehandler",
      "type": "concept",
      "title": "NodeRuntimeHandler {#NodeRuntimeHandler}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 19613,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:noderuntimehandlerfeatures-noderuntimehandlerfeatures",
      "type": "concept",
      "title": "NodeRuntimeHandlerFeatures {#NodeRuntimeHandlerFeatures}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 20161,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeswapstatus-nodeswapstatus",
      "type": "concept",
      "title": "NodeSwapStatus {#NodeSwapStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 20816,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodesysteminfo-nodesysteminfo",
      "type": "concept",
      "title": "NodeSystemInfo {#NodeSystemInfo}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 21142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:taint-taint",
      "type": "concept",
      "title": "Taint {#Taint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 23611,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:post-create-connect-proxy",
      "type": "concept",
      "title": "`post` Create Connect Proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 85161,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:post-create-connect-proxy-path",
      "type": "concept",
      "title": "`post` Create Connect Proxy Path",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 86032,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-delete-connect-proxy",
      "type": "concept",
      "title": "`delete` Delete Connect Proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 87034,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-delete-connect-proxy-path",
      "type": "concept",
      "title": "`delete` Delete Connect Proxy Path",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 87909,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-get-connect-proxy",
      "type": "concept",
      "title": "`get` Get Connect Proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 88915,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-get-connect-proxy-path",
      "type": "concept",
      "title": "`get` Get Connect Proxy Path",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 89781,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:head-head-connect-proxy",
      "type": "concept",
      "title": "`head` Head Connect Proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 90778,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:head-head-connect-proxy-path",
      "type": "concept",
      "title": "`head` Head Connect Proxy Path",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 91647,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:put-replace-connect-proxy",
      "type": "concept",
      "title": "`put` Replace Connect Proxy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 92647,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:put-replace-connect-proxy-path",
      "type": "concept",
      "title": "`put` Replace Connect Proxy Path",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 93517,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/namespace-v1",
      "type": "page",
      "title": "Namespace",
      "summary": "Namespace provides a scope for Names. Use of multiple namespaces is optional.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## Namespace {#Namespace}\n\nNamespace provides a scope for Names. Use of multiple namespaces is optional.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">NamespaceSpec</a></em></td>\n      <td>Spec defines the behavior of the Namespace. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">NamespaceStatus</a></em></td>\n      <td>Status describes the current status of a Namespace. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## NamespaceSpec {#NamespaceSpec}\n\nNamespaceSpec describes the attributes on a Namespace.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>finalizers</code><br/><em>string array</em></td>\n      <td>Finalizers is an opaque list of values that must be empty to permanently remove object from storage. More info: https://kubernetes.io/docs/tasks/administer-cluster/namespaces/</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## NamespaceStatus {#NamespaceStatus}\n\nNamespaceStatus is information about the current status of a Namespace.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>conditions</code><br/><em><a href=\"\">NamespaceCondition array</a></em><br/><em>patch strategy: merge on key <code>type</code></em></td>\n      <td>Represents the latest available observations of a namespace's current state.</td>\n    </tr>\n    <tr>\n      <td><code>phase</code><br/><em>string</em></td>\n      <td>Phase is the current lifecycle phase of the namespace. More info: https://kubernetes.io/docs/tasks/administer-cluster/namespaces/<br/><br/>Possible enum values:<br/> - `\"Active\"` means the namespace is available for use in the system<br/> - `\"Terminating\"` means the namespace is undergoing graceful termination</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## NamespaceList {#NamespaceList}\n\nNamespaceList is a list of Namespaces.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">Namespace array</a></em></td>\n      <td>Items is the list of Namespace objects in the list. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/</td>\n    </tr>\n    <tr>\n      <t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/kubernetes-api/core/namespace-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Namespace"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespace-namespace",
      "type": "concept",
      "title": "Namespace {#Namespace}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespacespec-namespacespec",
      "type": "concept",
      "title": "NamespaceSpec {#NamespaceSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 2500,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespacestatus-namespacestatus",
      "type": "concept",
      "title": "NamespaceStatus {#NamespaceStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 2973,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespacelist-namespacelist",
      "type": "concept",
      "title": "NamespaceList {#NamespaceList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 3888,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespacecondition-namespacecondition",
      "type": "concept",
      "title": "NamespaceCondition {#NamespaceCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 5438,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/limit-range-v1",
      "type": "page",
      "title": "LimitRange",
      "summary": "LimitRange sets resource usage limits for each kind of resource in a Namespace.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## LimitRange {#LimitRange}\n\nLimitRange sets resource usage limits for each kind of resource in a Namespace.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">LimitRangeSpec</a></em></td>\n      <td>Spec defines the limits enforced. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## LimitRangeSpec {#LimitRangeSpec}\n\nLimitRangeSpec defines a min/max usage limit for resources that match on kind.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>limits</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">LimitRangeItem array</a></em></td>\n      <td>Limits is the list of LimitRangeItem objects that are enforced.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## LimitRangeList {#LimitRangeList}\n\nLimitRangeList is a list of LimitRange items.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">LimitRange array</a></em></td>\n      <td>Items is a list of LimitRange objects. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## LimitRangeItem {#LimitRangeItem}\n\nLimitRangeItem defines a min/max usage limit for any resource that matches on kind.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>default</code><br/><em>object</em></td>\n      <td>Default resource requirement limit value by resource name if resource limit is omitted.</td>\n    </tr>\n    <tr>\n      <td><code>defaultRequest</code><br/><em>object</em></td>\n      <td>DefaultRequest is the default resource requirement request value by resource name if resource request is omitted.</td>\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/kubernetes-api/core/limit-range-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "LimitRange"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitrange-limitrange",
      "type": "concept",
      "title": "LimitRange {#LimitRange}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitrangespec-limitrangespec",
      "type": "concept",
      "title": "LimitRangeSpec {#LimitRangeSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 2190,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitrangelist-limitrangelist",
      "type": "concept",
      "title": "LimitRangeList {#LimitRangeList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 2649,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitrangeitem-limitrangeitem",
      "type": "concept",
      "title": "LimitRangeItem {#LimitRangeItem}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 4200,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/service-account-v1",
      "type": "page",
      "title": "ServiceAccount",
      "summary": "ServiceAccount binds together: * a name, understood by users, and perhaps by peripheral systems, for an identity * a principal that can be authenticated and authorized * a set of secrets",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## ServiceAccount {#ServiceAccount}\n\nServiceAccount binds together: * a name, understood by users, and perhaps by peripheral systems, for an identity * a principal that can be authenticated and authorized * a set of secrets\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>automountServiceAccountToken</code><br/><em>boolean</em></td>\n      <td>AutomountServiceAccountToken indicates whether pods running as this service account should have an API token automatically mounted. Can be overridden at the pod level.</td>\n    </tr>\n    <tr>\n      <td><code>imagePullSecrets</code><br/><em><a href=\"\">LocalObjectReference array</a></em></td>\n      <td>ImagePullSecrets is a list of references to secrets in the same namespace to use for pulling any images in pods that reference this ServiceAccount. ImagePullSecrets are distinct from Secrets because Secrets can be mounted in the pod, but ImagePullSecrets are only accessed by the kubelet. More info: https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>secrets</code><br/><em><a href=\"\">ObjectReference array</a></em><br/><em>patch strategy: merge on key <code>name</code></em></td>\n      <td>Secrets is a list of the secrets in the same namespace that pods running using this ServiceAccount are allowed to use. Pods are only limited to this list if this service account has a \"kubernetes.io/enforce-mountable-secrets\" annotation set to \"true\". The \"kubernetes.io/enforce-mountable-secrets\" annotation is deprecated since v1.32. Prefer separate namespaces to isolate access to mounted secrets. This field should not be used to find auto-generated service account token secrets for use outside of pods. Instead, tokens can be requested directly using the TokenRequest API, or service account token secrets can be manually created. More info: https://kubernetes.io/docs/concepts/configuration/secret</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ServiceAccountList {#ServiceAccountList}\n\nServiceAccountList is a list of ServiceAccount objects\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ServiceAccount array</a></em></td>\n      <td>List of ServiceAccounts. More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string val\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
      "meta": {
        "weight": 160,
        "rel_path": "reference/kubernetes-api/core/service-account-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceAccount"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccount-serviceaccount",
      "type": "concept",
      "title": "ServiceAccount {#ServiceAccount}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccountlist-serviceaccountlist",
      "type": "concept",
      "title": "ServiceAccountList {#ServiceAccountList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 3851,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/pod-template-v1",
      "type": "page",
      "title": "PodTemplate",
      "summary": "PodTemplate describes a template for creating copies of a predefined pod.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## PodTemplate {#PodTemplate}\n\nPodTemplate describes a template for creating copies of a predefined pod.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>template</code><br/><em><a href=\"\">PodTemplateSpec</a></em></td>\n      <td>Template defines the pods that will be created from this pod template. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PodTemplateSpec {#PodTemplateSpec}\n\nPodTemplateSpec describes the data a pod should have when created from a template\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">PodSpec</a></em></td>\n      <td>Specification of the desired behavior of the pod. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PodTemplateList {#PodTemplateList}\n\nPodTemplateList is a list of PodTemplates.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">PodTemplate array</a></em></td>\n      <td>List of pod templates</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## Operations {#Operations}\n\n<hr>\n\n\n### `post` Create\n\n#### HTTP Request\n\nPOST /api/v1/namespaces/{namespace}/podtemplates\n\n\n#### Path Parameters\n\n<table>\n  <thead><tr><th>Name</th><th>Type</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>namespace</code></td>\n      <td><em>string</em></td>\n      <td>object name and auth scope, such a\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
      "meta": {
        "weight": 110,
        "rel_path": "reference/kubernetes-api/core/pod-template-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "PodTemplate"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podtemplate-podtemplate",
      "type": "concept",
      "title": "PodTemplate {#PodTemplate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podtemplatespec-podtemplatespec",
      "type": "concept",
      "title": "PodTemplateSpec {#PodTemplateSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 2218,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podtemplatelist-podtemplatelist",
      "type": "concept",
      "title": "PodTemplateList {#PodTemplateList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 3040,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "type": "page",
      "title": "PersistentVolume",
      "summary": "PersistentVolume (PV) is a storage resource provisioned by an administrator. It is analogous to a node. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## PersistentVolume {#PersistentVolume}\n\nPersistentVolume (PV) is a storage resource provisioned by an administrator. It is analogous to a node. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">PersistentVolumeSpec</a></em></td>\n      <td>spec defines a specification of a persistent volume owned by the cluster. Provisioned by an administrator. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistent-volumes</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">PersistentVolumeStatus</a></em></td>\n      <td>status represents the current information/status for the persistent volume. Populated by the system. Read-only. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistent-volumes</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PersistentVolumeSpec {#PersistentVolumeSpec}\n\nPersistentVolumeSpec is the specification of a persistent volume.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>accessModes</code><br/><em>string array</em></td>\n      <td>accessModes contains all ways the volume can be mounted. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes</td>\n    </tr>\n    <tr>\n      <td><code>awsElasticBlockStore</code><br/><em><a href=\"\">AWSElasticBlockStoreVolumeSource</a></em></td>\n      <td>awsElasticBlockStore represents an AWS Disk resource that is attached to a kubelet's host machine and then exposed to the pod. Deprecated: AWSElasticBlockStore is deprecated. All operations for the in-tree awsElasticBlockStore type are redirected to the ebs.csi.aws.com CSI driver. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore</td>\n    </tr>\n    <tr>\n      <td><code>azureDisk</code><br/><em><a href=\"\">AzureDiskVolumeSource</a></em></td>\n      <td>azureDisk represents an Azure Data Disk mount on the host and bind mount to the pod. Deprecated: AzureDisk is deprecated. All operations for the in-tree azureDisk type are redirected to the disk.csi.azure.com CSI driver.</td>\n    </tr>\n    <tr>\n      <td><code>azureFile</code><br/><em><a href=\"\">AzureFilePersistentVolumeSource</a></em></td>\n      <td>azureFile represents an Azure File Service mount on the host and bind mount to the pod. Deprecated: AzureFile is deprecated. All operations for the in-tree azureFile type are redirected to the file.csi.azure.com CSI driver.</td>\n    </tr>\n    <tr>\n      <td><code>capacity</code><br/><em>object</em></td>\n      <td>capacity is the description of the persistent volume's resources and capacity. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#capacity</td>\n    </tr>\n    <tr>\n      <td><code>cephfs</code><br/><em><a href=\"\">CephFSPersis\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
      "meta": {
        "weight": 80,
        "rel_path": "reference/kubernetes-api/core/persistent-volume-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "PersistentVolume"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolume-persistentvolume",
      "type": "concept",
      "title": "PersistentVolume {#PersistentVolume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumespec-persistentvolumespec",
      "type": "concept",
      "title": "PersistentVolumeSpec {#PersistentVolumeSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 2729,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumestatus-persistentvolumestatus",
      "type": "concept",
      "title": "PersistentVolumeStatus {#PersistentVolumeStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 15285,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumelist-persistentvolumelist",
      "type": "concept",
      "title": "PersistentVolumeList {#PersistentVolumeList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 17196,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:awselasticblockstorevolumesource-awselasticblockstorevolumesource",
      "type": "concept",
      "title": "AWSElasticBlockStoreVolumeSource {#AWSElasticBlockStoreVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 18773,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:azurediskvolumesource-azurediskvolumesource",
      "type": "concept",
      "title": "AzureDiskVolumeSource {#AzureDiskVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 20540,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:azurefilepersistentvolumesource-azurefilepersistentvolumesource",
      "type": "concept",
      "title": "AzureFilePersistentVolumeSource {#AzureFilePersistentVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 22222,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csipersistentvolumesource-csipersistentvolumesource",
      "type": "concept",
      "title": "CSIPersistentVolumeSource {#CSIPersistentVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 23259,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cephfspersistentvolumesource-cephfspersistentvolumesource",
      "type": "concept",
      "title": "CephFSPersistentVolumeSource {#CephFSPersistentVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 26883,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cinderpersistentvolumesource-cinderpersistentvolumesource",
      "type": "concept",
      "title": "CinderPersistentVolumeSource {#CinderPersistentVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 28733,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fcvolumesource-fcvolumesource",
      "type": "concept",
      "title": "FCVolumeSource {#FCVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 30214,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flexpersistentvolumesource-flexpersistentvolumesource",
      "type": "concept",
      "title": "FlexPersistentVolumeSource {#FlexPersistentVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 31535,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flockervolumesource-flockervolumesource",
      "type": "concept",
      "title": "FlockerVolumeSource {#FlockerVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 33075,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:gcepersistentdiskvolumesource-gcepersistentdiskvolumesource",
      "type": "concept",
      "title": "GCEPersistentDiskVolumeSource {#GCEPersistentDiskVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 33825,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:glusterfspersistentvolumesource-glusterfspersistentvolumesource",
      "type": "concept",
      "title": "GlusterfsPersistentVolumeSource {#GlusterfsPersistentVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 35698,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostpathvolumesource-hostpathvolumesource",
      "type": "concept",
      "title": "HostPathVolumeSource {#HostPathVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 37112,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:iscsipersistentvolumesource-iscsipersistentvolumesource",
      "type": "concept",
      "title": "ISCSIPersistentVolumeSource {#ISCSIPersistentVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 38644,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:localvolumesource-localvolumesource",
      "type": "concept",
      "title": "LocalVolumeSource {#LocalVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 41426,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nfsvolumesource-nfsvolumesource",
      "type": "concept",
      "title": "NFSVolumeSource {#NFSVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 42204,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:photonpersistentdiskvolumesource-photonpersistentdiskvolumesource",
      "type": "concept",
      "title": "PhotonPersistentDiskVolumeSource {#PhotonPersistentDiskVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 43195,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:portworxvolumesource-portworxvolumesource",
      "type": "concept",
      "title": "PortworxVolumeSource {#PortworxVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 43880,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quobytevolumesource-quobytevolumesource",
      "type": "concept",
      "title": "QuobyteVolumeSource {#QuobyteVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 44725,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rbdpersistentvolumesource-rbdpersistentvolumesource",
      "type": "concept",
      "title": "RBDPersistentVolumeSource {#RBDPersistentVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 46225,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaleiopersistentvolumesource-scaleiopersistentvolumesource",
      "type": "concept",
      "title": "ScaleIOPersistentVolumeSource {#ScaleIOPersistentVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 48577,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:secretreference-secretreference",
      "type": "concept",
      "title": "SecretReference {#SecretReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 50890,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageospersistentvolumesource-storageospersistentvolumesource",
      "type": "concept",
      "title": "StorageOSPersistentVolumeSource {#StorageOSPersistentVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 51464,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumenodeaffinity-volumenodeaffinity",
      "type": "concept",
      "title": "VolumeNodeAffinity {#VolumeNodeAffinity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 53212,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:vspherevirtualdiskvolumesource-vspherevirtualdiskvolumesource",
      "type": "concept",
      "title": "VsphereVirtualDiskVolumeSource {#VsphereVirtualDiskVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 53689,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/config-map-v1",
      "type": "page",
      "title": "ConfigMap",
      "summary": "ConfigMap holds configuration data for pods to consume.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## ConfigMap {#ConfigMap}\n\nConfigMap holds configuration data for pods to consume.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>binaryData</code><br/><em>object</em></td>\n      <td>BinaryData contains the binary data. Each key must consist of alphanumeric characters, '-', '_' or '.'. BinaryData can contain byte sequences that are not in the UTF-8 range. The keys stored in BinaryData must not overlap with the ones in the Data field, this is enforced during validation process. Using this field will require 1.10+ apiserver and kubelet.</td>\n    </tr>\n    <tr>\n      <td><code>data</code><br/><em>object</em></td>\n      <td>Data contains the configuration data. Each key must consist of alphanumeric characters, '-', '_' or '.'. Values with non-UTF-8 byte sequences must use the BinaryData field. The keys stored in Data must not overlap with the keys in the BinaryData field, this is enforced during validation process.</td>\n    </tr>\n    <tr>\n      <td><code>immutable</code><br/><em>boolean</em></td>\n      <td>Immutable, if set to true, ensures that data stored in the ConfigMap cannot be updated (only object metadata can be modified). If not set to true, the field can be modified at any time. Defaulted to nil.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ConfigMapList {#ConfigMapList}\n\nConfigMapList is a resource containing a list of ConfigMap objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ConfigMap array</a></em></td>\n      <td>Items is the list of ConfigMaps.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## Operations {#Operations}\n\n<hr>\n\n\n### `post` Create\n\n#### HTTP Request\n\nPOST /api/v1/namespaces/{namespace}/configmaps\n\n\n#### Path Parameters\n\n<table>\n  <thead><tr><th>Name</th><th>Type</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>namespa\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/core/config-map-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmap-configmap",
      "type": "concept",
      "title": "ConfigMap {#ConfigMap}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmaplist-configmaplist",
      "type": "concept",
      "title": "ConfigMapList {#ConfigMapList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 3012,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/secret-v1",
      "type": "page",
      "title": "Secret",
      "summary": "Secret holds secret data of a certain type. The total bytes of the values in the Data field must be less than MaxSecretSize bytes.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## Secret {#Secret}\n\nSecret holds secret data of a certain type. The total bytes of the values in the Data field must be less than MaxSecretSize bytes.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>data</code><br/><em>object</em></td>\n      <td>Data contains the secret data. Each key must consist of alphanumeric characters, '-', '_' or '.'. The serialized form of the secret data is a base64 encoded string, representing the arbitrary (possibly non-string) data value here. Described in https://tools.ietf.org/html/rfc4648#section-4</td>\n    </tr>\n    <tr>\n      <td><code>immutable</code><br/><em>boolean</em></td>\n      <td>Immutable, if set to true, ensures that data stored in the Secret cannot be updated (only object metadata can be modified). If not set to true, the field can be modified at any time. Defaulted to nil.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>stringData</code><br/><em>object</em></td>\n      <td>stringData allows specifying non-binary secret data in string form. It is provided as a write-only input field for convenience. All keys and values are merged into the data field on write, overwriting any existing values. The stringData field is never output when reading from the API.</td>\n    </tr>\n    <tr>\n      <td><code>type</code><br/><em>string</em></td>\n      <td>Used to facilitate programmatic handling of secret data. More info: https://kubernetes.io/docs/concepts/configuration/secret/#secret-types</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## SecretList {#SecretList}\n\nSecretList is a list of Secret.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">Secret array</a></em></td>\n      <td>Items is a list of secret objects. More info: https://kubernetes.io/docs/concepts/configuration/secret</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
      "meta": {
        "weight": 140,
        "rel_path": "reference/kubernetes-api/core/secret-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Secret"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:secret-secret",
      "type": "concept",
      "title": "Secret {#Secret}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:secretlist-secretlist",
      "type": "concept",
      "title": "SecretList {#SecretList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 3225,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/pod-v1",
      "type": "page",
      "title": "Pod",
      "summary": "Pod is a collection of containers that can run on a host. This resource is created by clients and scheduled onto hosts.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## Pod {#Pod}\n\nPod is a collection of containers that can run on a host. This resource is created by clients and scheduled onto hosts.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">PodSpec</a></em></td>\n      <td>Specification of the desired behavior of the pod. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">PodStatus</a></em></td>\n      <td>Most recently observed status of the pod. This data may not be up to date. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PodSpec {#PodSpec}\n\nPodSpec is a description of a pod.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>activeDeadlineSeconds</code><br/><em>integer</em></td>\n      <td>Optional duration in seconds the pod may be active on the node relative to StartTime before the system will actively try to mark it failed and kill associated containers. Value must be a positive integer.</td>\n    </tr>\n    <tr>\n      <td><code>affinity</code><br/><em><a href=\"\">Affinity</a></em></td>\n      <td>If specified, the pod's scheduling constraints</td>\n    </tr>\n    <tr>\n      <td><code>automountServiceAccountToken</code><br/><em>boolean</em></td>\n      <td>AutomountServiceAccountToken indicates whether a service account token should be automatically mounted.</td>\n    </tr>\n    <tr>\n      <td><code>containers</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">Container array</a></em><br/><em>patch strategy: merge on key <code>name</code></em></td>\n      <td>List of containers belonging to the pod. Containers cannot currently be added or removed. There must be at least one container in a Pod. Cannot be updated.</td>\n    </tr>\n    <tr>\n      <td><code>dnsConfig</code><br/><em><a href=\"\">PodDNSConfig</a></em></td>\n      <td>Specifies the DNS parameters of a pod. Parameters specified here will be merged to the generated DNS configuration based on DNSPolicy.</td>\n    </tr>\n    <tr>\n      <td><code>dnsPolicy</code><br/><em>string</em></td>\n      <td>Set DNS policy for the pod. Defaults to \"ClusterFirst\". Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' or 'None'. DNS parameters given in DNSConfig will be merged with the policy selected with DNSPolicy. To have DNS options set along with hostNetwork, you have to specify DNS policy explicitly to 'ClusterFirstWithHostNet'.<br/><br/>Possible enum values:<br/> - `\"ClusterFirst\"` indicates that the pod should use cluster DNS first unless hostNetwork is true, if it is available, then fall back on the default (as determined by kubelet) DNS settings.<br/> - `\"ClusterFirstWithHost\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
      "meta": {
        "weight": 100,
        "rel_path": "reference/kubernetes-api/core/pod-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Pod"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-pod",
      "type": "concept",
      "title": "Pod {#Pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podspec-podspec",
      "type": "concept",
      "title": "PodSpec {#PodSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2571,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podstatus-podstatus",
      "type": "concept",
      "title": "PodStatus {#PodStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 22695,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podlist-podlist",
      "type": "concept",
      "title": "PodList {#PodList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 33632,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:affinity-affinity",
      "type": "concept",
      "title": "Affinity {#Affinity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 35108,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apparmorprofile-apparmorprofile",
      "type": "concept",
      "title": "AppArmorProfile {#AppArmorProfile}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 36023,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:azurefilevolumesource-azurefilevolumesource",
      "type": "concept",
      "title": "AzureFileVolumeSource {#AzureFileVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 37200,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csivolumesource-csivolumesource",
      "type": "concept",
      "title": "CSIVolumeSource {#CSIVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 37993,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:capabilities-capabilities",
      "type": "concept",
      "title": "Capabilities {#Capabilities}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 39709,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cephfsvolumesource-cephfsvolumesource",
      "type": "concept",
      "title": "CephFSVolumeSource {#CephFSVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 40136,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cindervolumesource-cindervolumesource",
      "type": "concept",
      "title": "CinderVolumeSource {#CinderVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 42016,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clustertrustbundleprojection-clustertrustbundleprojection",
      "type": "concept",
      "title": "ClusterTrustBundleProjection {#ClusterTrustBundleProjection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 43521,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmapenvsource-configmapenvsource",
      "type": "concept",
      "title": "ConfigMapEnvSource {#ConfigMapEnvSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 45254,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmapkeyselector-configmapkeyselector",
      "type": "concept",
      "title": "ConfigMapKeySelector {#ConfigMapKeySelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 46114,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmapprojection-configmapprojection",
      "type": "concept",
      "title": "ConfigMapProjection {#ConfigMapProjection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 46951,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmapvolumesource-configmapvolumesource",
      "type": "concept",
      "title": "ConfigMapVolumeSource {#ConfigMapVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 48622,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-container",
      "type": "concept",
      "title": "Container {#Container}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 50828,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerextendedresourcerequest-containerextendedresourcerequest",
      "type": "concept",
      "title": "ContainerExtendedResourceRequest {#ContainerExtendedResourceRequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 63135,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerport-containerport",
      "type": "concept",
      "title": "ContainerPort {#ContainerPort}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 64015,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerresizepolicy-containerresizepolicy",
      "type": "concept",
      "title": "ContainerResizePolicy {#ContainerResizePolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 65424,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerrestartrule-containerrestartrule",
      "type": "concept",
      "title": "ContainerRestartRule {#ContainerRestartRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 66101,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerrestartruleonexitcodes-containerrestartruleonexitcodes",
      "type": "concept",
      "title": "ContainerRestartRuleOnExitCodes {#ContainerRestartRuleOnExitCodes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 66813,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerstate-containerstate",
      "type": "concept",
      "title": "ContainerState {#ContainerState}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 67729,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerstaterunning-containerstaterunning",
      "type": "concept",
      "title": "ContainerStateRunning {#ContainerStateRunning}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 68622,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerstateterminated-containerstateterminated",
      "type": "concept",
      "title": "ContainerStateTerminated {#ContainerStateTerminated}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 69039,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerstatewaiting-containerstatewaiting",
      "type": "concept",
      "title": "ContainerStateWaiting {#ContainerStateWaiting}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 70427,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containeruser-containeruser",
      "type": "concept",
      "title": "ContainerUser {#ContainerUser}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 70927,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:downwardapiprojection-downwardapiprojection",
      "type": "concept",
      "title": "DownwardAPIProjection {#DownwardAPIProjection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 71474,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:downwardapivolumefile-downwardapivolumefile",
      "type": "concept",
      "title": "DownwardAPIVolumeFile {#DownwardAPIVolumeFile}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 71989,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:downwardapivolumesource-downwardapivolumesource",
      "type": "concept",
      "title": "DownwardAPIVolumeSource {#DownwardAPIVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 73629,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:emptydirvolumesource-emptydirvolumesource",
      "type": "concept",
      "title": "EmptyDirVolumeSource {#EmptyDirVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 74758,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:envfromsource-envfromsource",
      "type": "concept",
      "title": "EnvFromSource {#EnvFromSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 75973,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:envvar-envvar",
      "type": "concept",
      "title": "EnvVar {#EnvVar}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 76756,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:envvarsource-envvarsource",
      "type": "concept",
      "title": "EnvVarSource {#EnvVarSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 77967,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ephemeralcontainer-ephemeralcontainer",
      "type": "concept",
      "title": "EphemeralContainer {#EphemeralContainer}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 79552,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ephemeralvolumesource-ephemeralvolumesource",
      "type": "concept",
      "title": "EphemeralVolumeSource {#EphemeralVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 90097,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execaction-execaction",
      "type": "concept",
      "title": "ExecAction {#ExecAction}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 91545,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:filekeyselector-filekeyselector",
      "type": "concept",
      "title": "FileKeySelector {#FileKeySelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 92232,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flexvolumesource-flexvolumesource",
      "type": "concept",
      "title": "FlexVolumeSource {#FlexVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 93670,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:grpcaction-grpcaction",
      "type": "concept",
      "title": "GRPCAction {#GRPCAction}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 95213,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:gitrepovolumesource-gitrepovolumesource",
      "type": "concept",
      "title": "GitRepoVolumeSource {#GitRepoVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 95896,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:glusterfsvolumesource-glusterfsvolumesource",
      "type": "concept",
      "title": "GlusterfsVolumeSource {#GlusterfsVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 97066,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:httpgetaction-httpgetaction",
      "type": "concept",
      "title": "HTTPGetAction {#HTTPGetAction}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 98042,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:httpheader-httpheader",
      "type": "concept",
      "title": "HTTPHeader {#HTTPHeader}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 99304,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostalias-hostalias",
      "type": "concept",
      "title": "HostAlias {#HostAlias}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 99874,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostip-hostip",
      "type": "concept",
      "title": "HostIP {#HostIP}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 100403,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:iscsivolumesource-iscsivolumesource",
      "type": "concept",
      "title": "ISCSIVolumeSource {#ISCSIVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 100744,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagevolumesource-imagevolumesource",
      "type": "concept",
      "title": "ImageVolumeSource {#ImageVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 103540,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagevolumestatus-imagevolumestatus",
      "type": "concept",
      "title": "ImageVolumeStatus {#ImageVolumeStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 105403,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:keytopath-keytopath",
      "type": "concept",
      "title": "KeyToPath {#KeyToPath}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 105929,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:lifecycle-lifecycle",
      "type": "concept",
      "title": "Lifecycle {#Lifecycle}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 107027,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:lifecyclehandler-lifecyclehandler",
      "type": "concept",
      "title": "LifecycleHandler {#LifecycleHandler}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 110467,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:linuxcontaineruser-linuxcontaineruser",
      "type": "concept",
      "title": "LinuxContainerUser {#LinuxContainerUser}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 111683,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeaffinity-nodeaffinity",
      "type": "concept",
      "title": "NodeAffinity {#NodeAffinity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 112506,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeallocatableresourceclaimstatus-nodeallocatableresourceclaimstatus",
      "type": "concept",
      "title": "NodeAllocatableResourceClaimStatus {#NodeAllocatableResourceClaimStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 114060,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:objectfieldselector-objectfieldselector",
      "type": "concept",
      "title": "ObjectFieldSelector {#ObjectFieldSelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 115001,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaimtemplate-persistentvolumeclaimtemplate",
      "type": "concept",
      "title": "PersistentVolumeClaimTemplate {#PersistentVolumeClaimTemplate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 115565,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaimvolumesource-persistentvolumeclaimvolumesource",
      "type": "concept",
      "title": "PersistentVolumeClaimVolumeSource {#PersistentVolumeClaimVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 116596,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podaffinity-podaffinity",
      "type": "concept",
      "title": "PodAffinity {#PodAffinity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 117549,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podaffinityterm-podaffinityterm",
      "type": "concept",
      "title": "PodAffinityTerm {#PodAffinityTerm}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 119251,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podantiaffinity-podantiaffinity",
      "type": "concept",
      "title": "PodAntiAffinity {#PodAntiAffinity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 122814,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podcertificateprojection-podcertificateprojection",
      "type": "concept",
      "title": "PodCertificateProjection {#PodCertificateProjection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 124561,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podcondition-podcondition",
      "type": "concept",
      "title": "PodCondition {#PodCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 128290,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:poddnsconfig-poddnsconfig",
      "type": "concept",
      "title": "PodDNSConfig {#PodDNSConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 129934,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:poddnsconfigoption-poddnsconfigoption",
      "type": "concept",
      "title": "PodDNSConfigOption {#PodDNSConfigOption}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 131068,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podextendedresourceclaimstatus-podextendedresourceclaimstatus",
      "type": "concept",
      "title": "PodExtendedResourceClaimStatus {#PodExtendedResourceClaimStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 131548,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podip-podip",
      "type": "concept",
      "title": "PodIP {#PodIP}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 132522,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podos-podos",
      "type": "concept",
      "title": "PodOS {#PodOS}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 132858,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podreadinessgate-podreadinessgate",
      "type": "concept",
      "title": "PodReadinessGate {#PodReadinessGate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 133502,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podresourceclaim-podresourceclaim",
      "type": "concept",
      "title": "PodResourceClaim {#PodResourceClaim}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 133914,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podschedulinggate-podschedulinggate",
      "type": "concept",
      "title": "PodSchedulingGate {#PodSchedulingGate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 136636,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podschedulinggroup-podschedulinggroup",
      "type": "concept",
      "title": "PodSchedulingGroup {#PodSchedulingGroup}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 137045,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podsecuritycontext-podsecuritycontext",
      "type": "concept",
      "title": "PodSecurityContext {#PodSecurityContext}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 137646,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preferredschedulingterm-preferredschedulingterm",
      "type": "concept",
      "title": "PreferredSchedulingTerm {#PreferredSchedulingTerm}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 146243,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:probe-probe",
      "type": "concept",
      "title": "Probe {#Probe}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 147060,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:projectedvolumesource-projectedvolumesource",
      "type": "concept",
      "title": "ProjectedVolumeSource {#ProjectedVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 150188,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rbdvolumesource-rbdvolumesource",
      "type": "concept",
      "title": "RBDVolumeSource {#RBDVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 151163,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaim-resourceclaim",
      "type": "concept",
      "title": "ResourceClaim {#ResourceClaim}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 153545,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcefieldselector-resourcefieldselector",
      "type": "concept",
      "title": "ResourceFieldSelector {#ResourceFieldSelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 154270,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcehealth-resourcehealth",
      "type": "concept",
      "title": "ResourceHealth {#ResourceHealth}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 155052,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcerequirements-resourcerequirements",
      "type": "concept",
      "title": "ResourceRequirements {#ResourceRequirements}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 156442,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcestatus-resourcestatus",
      "type": "concept",
      "title": "ResourceStatus {#ResourceStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 157707,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selinuxoptions-selinuxoptions",
      "type": "concept",
      "title": "SELinuxOptions {#SELinuxOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 158947,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaleiovolumesource-scaleiovolumesource",
      "type": "concept",
      "title": "ScaleIOVolumeSource {#ScaleIOVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 159742,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:seccompprofile-seccompprofile",
      "type": "concept",
      "title": "SeccompProfile {#SeccompProfile}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 162066,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:secretenvsource-secretenvsource",
      "type": "concept",
      "title": "SecretEnvSource {#SecretEnvSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 163438,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:secretkeyselector-secretkeyselector",
      "type": "concept",
      "title": "SecretKeySelector {#SecretKeySelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 164280,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:secretprojection-secretprojection",
      "type": "concept",
      "title": "SecretProjection {#SecretProjection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 165169,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:secretvolumesource-secretvolumesource",
      "type": "concept",
      "title": "SecretVolumeSource {#SecretVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 166742,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:securitycontext-securitycontext",
      "type": "concept",
      "title": "SecurityContext {#SecurityContext}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 168712,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccounttokenprojection-serviceaccounttokenprojection",
      "type": "concept",
      "title": "ServiceAccountTokenProjection {#ServiceAccountTokenProjection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 174234,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sleepaction-sleepaction",
      "type": "concept",
      "title": "SleepAction {#SleepAction}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 175679,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageosvolumesource-storageosvolumesource",
      "type": "concept",
      "title": "StorageOSVolumeSource {#StorageOSVolumeSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 176024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sysctl-sysctl",
      "type": "concept",
      "title": "Sysctl {#Sysctl}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 177768,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tcpsocketaction-tcpsocketaction",
      "type": "concept",
      "title": "TCPSocketAction {#TCPSocketAction}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 178217,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topologyspreadconstraint-topologyspreadconstraint",
      "type": "concept",
      "title": "TopologySpreadConstraint {#TopologySpreadConstraint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 178803,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-volume",
      "type": "concept",
      "title": "Volume {#Volume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 186053,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumedevice-volumedevice",
      "type": "concept",
      "title": "VolumeDevice {#VolumeDevice}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 199542,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumemount-volumemount",
      "type": "concept",
      "title": "VolumeMount {#VolumeMount}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 200131,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeprojection-volumeprojection",
      "type": "concept",
      "title": "VolumeProjection {#VolumeProjection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 203716,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:weightedpodaffinityterm-weightedpodaffinityterm",
      "type": "concept",
      "title": "WeightedPodAffinityTerm {#WeightedPodAffinityTerm}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 207537,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:windowssecuritycontextoptions-windowssecuritycontextoptions",
      "type": "concept",
      "title": "WindowsSecurityContextOptions {#WindowsSecurityContextOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 208269,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:post-create-eviction",
      "type": "concept",
      "title": "`post` Create Eviction",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 213131,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-read-resize",
      "type": "concept",
      "title": "`get` Read Resize",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 293466,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:patch-patch-resize",
      "type": "concept",
      "title": "`patch` Patch Resize",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 294620,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:put-replace-resize",
      "type": "concept",
      "title": "`put` Replace Resize",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 298365,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:patch-patch-ephemeralcontainers",
      "type": "concept",
      "title": "`patch` Patch EphemeralContainers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 301660,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-read-ephemeralcontainers",
      "type": "concept",
      "title": "`get` Read EphemeralContainers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 305431,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:put-replace-ephemeralcontainers",
      "type": "concept",
      "title": "`put` Replace EphemeralContainers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 306611,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:post-create-connect-portforward",
      "type": "concept",
      "title": "`post` Create Connect Portforward",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 309932,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-get-connect-portforward",
      "type": "concept",
      "title": "`get` Get Connect Portforward",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 315477,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-read-log",
      "type": "concept",
      "title": "`get` Read Log",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 323230,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-get-connect-exec",
      "type": "concept",
      "title": "`get` Get Connect Exec",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 327246,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:post-create-connect-exec",
      "type": "concept",
      "title": "`post` Create Connect Exec",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 329219,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-get-connect-attach",
      "type": "concept",
      "title": "`get` Get Connect Attach",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 331197,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:post-create-connect-attach",
      "type": "concept",
      "title": "`post` Create Connect Attach",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 333197,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "type": "page",
      "title": "ReplicationController",
      "summary": "ReplicationController represents the configuration of a replication controller.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## ReplicationController {#ReplicationController}\n\nReplicationController represents the configuration of a replication controller.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>If the Labels of a ReplicationController are empty, they are defaulted to be the same as the Pod(s) that the replication controller manages. Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">ReplicationControllerSpec</a></em></td>\n      <td>Spec defines the specification of the desired behavior of the replication controller. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">ReplicationControllerStatus</a></em></td>\n      <td>Status is the most recently observed status of the replication controller. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ReplicationControllerSpec {#ReplicationControllerSpec}\n\nReplicationControllerSpec is the specification of a replication controller.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>minReadySeconds</code><br/><em>integer</em></td>\n      <td>Minimum number of seconds for which a newly created pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready)</td>\n    </tr>\n    <tr>\n      <td><code>replicas</code><br/><em>integer</em></td>\n      <td>Replicas is the number of desired replicas. This is a pointer to distinguish between explicit zero and unspecified. Defaults to 1. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#what-is-a-replicationcontroller</td>\n    </tr>\n    <tr>\n      <td><code>selector</code><br/><em>object</em></td>\n      <td>Selector is a label query over pods that should match the Replicas count. If Selector is empty, it is defaulted to the labels present on the Pod template. Label keys and values that must match in order to be controlled by this replication controller, if empty defaulted to labels on Pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors</td>\n    </tr>\n    <tr>\n      <td><code>template</code><br/><em><a href=\"\">PodTemplateSpec</a></em></td>\n      <td>Template is the object that describes the pod that will be created if insufficient replicas are detected. This takes precedence over a TemplateRef. The only allowed template.spec.restartPolicy value is \"Always\". More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ReplicationControl\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
      "meta": {
        "weight": 120,
        "rel_path": "reference/kubernetes-api/core/replication-controller-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ReplicationController"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicationcontroller-replicationcontroller",
      "type": "concept",
      "title": "ReplicationController {#ReplicationController}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicationcontrollerspec-replicationcontrollerspec",
      "type": "concept",
      "title": "ReplicationControllerSpec {#ReplicationControllerSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 2869,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicationcontrollerstatus-replicationcontrollerstatus",
      "type": "concept",
      "title": "ReplicationControllerStatus {#ReplicationControllerStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 4740,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicationcontrollerlist-replicationcontrollerlist",
      "type": "concept",
      "title": "ReplicationControllerList {#ReplicationControllerList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 6402,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicationcontrollercondition-replicationcontrollercondition",
      "type": "concept",
      "title": "ReplicationControllerCondition {#ReplicationControllerCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 8027,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:get-read-scale",
      "type": "concept",
      "title": "`get` Read Scale",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 90669,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:put-replace-scale",
      "type": "concept",
      "title": "`put` Replace Scale",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 91874,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:patch-patch-scale",
      "type": "concept",
      "title": "`patch` Patch Scale",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 95286,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "type": "page",
      "title": "ResourceQuota",
      "summary": "ResourceQuota sets aggregate quota restrictions enforced per namespace",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## ResourceQuota {#ResourceQuota}\n\nResourceQuota sets aggregate quota restrictions enforced per namespace\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">ResourceQuotaSpec</a></em></td>\n      <td>Spec defines the desired quota. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">ResourceQuotaStatus</a></em></td>\n      <td>Status defines the actual enforced quota and its current usage. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ResourceQuotaSpec {#ResourceQuotaSpec}\n\nResourceQuotaSpec defines the desired hard limits to enforce for Quota.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>hard</code><br/><em>object</em></td>\n      <td>hard is the set of desired hard limits for each named resource. More info: https://kubernetes.io/docs/concepts/policy/resource-quotas/</td>\n    </tr>\n    <tr>\n      <td><code>scopeSelector</code><br/><em><a href=\"\">ScopeSelector</a></em></td>\n      <td>scopeSelector is also a collection of filters like scopes that must match each object tracked by a quota but expressed using ScopeSelectorOperator in combination with possible values. For a resource to match, both scopes AND scopeSelector (if specified in spec), must be matched.</td>\n    </tr>\n    <tr>\n      <td><code>scopes</code><br/><em>string array</em></td>\n      <td>A collection of filters that must match each object tracked by a quota. If not specified, the quota matches all objects.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ResourceQuotaStatus {#ResourceQuotaStatus}\n\nResourceQuotaStatus defines the enforced hard limits and observed use.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>hard</code><br/><em>object</em></td>\n      <td>Hard is the set of enforced hard limits for each named resource. More info: https://kubernetes.io/docs/concepts/policy/resource-quotas/</td>\n    </tr>\n    <tr>\n      <td><code>used</code><br/><em>object</em></td>\n      <td>Used is the current observed total usage of the resource in the namespace.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ResourceQuotaList {#ResourceQuotaList}\n\nResourceQuotaList is a list of ResourceQuota items.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
      "meta": {
        "weight": 130,
        "rel_path": "reference/kubernetes-api/core/resource-quota-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ResourceQuota"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcequota-resourcequota",
      "type": "concept",
      "title": "ResourceQuota {#ResourceQuota}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcequotaspec-resourcequotaspec",
      "type": "concept",
      "title": "ResourceQuotaSpec {#ResourceQuotaSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 2495,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcequotastatus-resourcequotastatus",
      "type": "concept",
      "title": "ResourceQuotaStatus {#ResourceQuotaStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 3582,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcequotalist-resourcequotalist",
      "type": "concept",
      "title": "ResourceQuotaList {#ResourceQuotaList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 4193,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scopeselector-scopeselector",
      "type": "concept",
      "title": "ScopeSelector {#ScopeSelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 5749,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scopedresourceselectorrequirement-scopedresourceselectorrequirement",
      "type": "concept",
      "title": "ScopedResourceSelectorRequirement {#ScopedResourceSelectorRequirement}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 6263,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/endpoints-v1",
      "type": "page",
      "title": "Endpoints",
      "summary": "Endpoints is a collection of endpoints that implement the actual service. Example:\n\n\t Name: &#34;mysvc&#34;,\n\t Subsets: [\n\t   {\n\t     Addresses: [{&#34;ip&#34;: &#34;10.10.1.1&#34;}, {&#34;ip&#34;: &#34;10.10.2.2&#34;}],\n\t     Ports: [{&#34;name&#34;: &#34;a&#34;, &#34;port&#34;: 8675}, {&#34;name&#34;: &#34;b&#34;, &#34;port&#34;: 309}]\n\t   },\n\t   {\n\t     Addresses: [{&#34;ip&#34;: &#34;10.10.3.3&#34;}],\n\t     Ports: [{&#34;name&#34;: &#34;a&#34;, &#34;port&#34;: 93}, {&#34;name&#34;: &#34;b&#34;, &#34;port&#34;: 76}]\n\t   },\n\t]\n\nEndpoints is a legacy API and does not contain information about all Service features. Use discoveryv1.EndpointSlice for complete information about Service endpoints.\n\nDeprecated: This API is deprecated in v1.33+. Use discoveryv1.EndpointSlice.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## Endpoints {#Endpoints}\n\nEndpoints is a collection of endpoints that implement the actual service. Example:\n\n\t Name: &#34;mysvc&#34;,\n\t Subsets: [\n\t   {\n\t     Addresses: [{&#34;ip&#34;: &#34;10.10.1.1&#34;}, {&#34;ip&#34;: &#34;10.10.2.2&#34;}],\n\t     Ports: [{&#34;name&#34;: &#34;a&#34;, &#34;port&#34;: 8675}, {&#34;name&#34;: &#34;b&#34;, &#34;port&#34;: 309}]\n\t   },\n\t   {\n\t     Addresses: [{&#34;ip&#34;: &#34;10.10.3.3&#34;}],\n\t     Ports: [{&#34;name&#34;: &#34;a&#34;, &#34;port&#34;: 93}, {&#34;name&#34;: &#34;b&#34;, &#34;port&#34;: 76}]\n\t   },\n\t]\n\nEndpoints is a legacy API and does not contain information about all Service features. Use discoveryv1.EndpointSlice for complete information about Service endpoints.\n\nDeprecated: This API is deprecated in v1.33+. Use discoveryv1.EndpointSlice.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>subsets</code><br/><em><a href=\"\">EndpointSubset array</a></em></td>\n      <td>The set of all endpoints is the union of all subsets. Addresses are placed into subsets according to the IPs they share. A single address with multiple ports, some of which are ready and some of which are not (because they come from different containers) will result in the address being displayed in different subsets for the different ports. No address will appear in both Addresses and NotReadyAddresses in the same subset. Sets of addresses and ports that comprise a service.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## EndpointsList {#EndpointsList}\n\nEndpointsList is a list of endpoints. Deprecated: This API is deprecated in v1.33+.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">Endpoints array</a></em></td>\n      <td>List of endpoints.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## EndpointAddress {#EndpointAddress}\n\nEndpointA\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/core/endpoints-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Endpoints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpoints-endpoints",
      "type": "concept",
      "title": "Endpoints {#Endpoints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslist-endpointslist",
      "type": "concept",
      "title": "EndpointsList {#EndpointsList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 3233,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointaddress-endpointaddress",
      "type": "concept",
      "title": "EndpointAddress {#EndpointAddress}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 4706,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointport-endpointport",
      "type": "concept",
      "title": "EndpointPort {#EndpointPort}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 5762,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointsubset-endpointsubset",
      "type": "concept",
      "title": "EndpointSubset {#EndpointSubset}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 7661,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "type": "page",
      "title": "PersistentVolumeClaim",
      "summary": "PersistentVolumeClaim is a user&#39;s request for and claim to a persistent volume",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## PersistentVolumeClaim {#PersistentVolumeClaim}\n\nPersistentVolumeClaim is a user&#39;s request for and claim to a persistent volume\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">PersistentVolumeClaimSpec</a></em></td>\n      <td>spec defines the desired characteristics of a volume requested by a pod author. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">PersistentVolumeClaimStatus</a></em></td>\n      <td>status represents the current information/status of a persistent volume claim. Read-only. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PersistentVolumeClaimSpec {#PersistentVolumeClaimSpec}\n\nPersistentVolumeClaimSpec describes the common attributes of storage devices and allows a Source for provider-specific attributes\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>accessModes</code><br/><em>string array</em></td>\n      <td>accessModes contains the desired access modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1</td>\n    </tr>\n    <tr>\n      <td><code>dataSource</code><br/><em><a href=\"\">TypedLocalObjectReference</a></em></td>\n      <td>dataSource field can be used to specify either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot) * An existing PVC (PersistentVolumeClaim) If the provisioner or an external controller can support the specified data source, it will create a new volume based on the contents of the specified data source. When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef, and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified. If the namespace is specified, then dataSourceRef will not be copied to dataSource.</td>\n    </tr>\n    <tr>\n      <td><code>dataSourceRef</code><br/><em><a href=\"\">TypedObjectReference</a></em></td>\n      <td>dataSourceRef specifies the object from which to populate the volume with data, if a non-empty volume is desired. This may be any object from a non-empty API group (non core object) or a PersistentVolumeClaim object. When this field is specified, volume binding will only succeed if the type of the specified object matches some installed volume populator or dynamic provisioner. This field will replace the functionality of the dataSource field and as such if both fields are non-empty, they must have the same value. For backwards compatibility, when namespace isn't specified in dataSourceRef, both fields (dataSource and dataSourceRef) will be set to the same value automatically if one of the\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
      "meta": {
        "weight": 90,
        "rel_path": "reference/kubernetes-api/core/persistent-volume-claim-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "PersistentVolumeClaim"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaimspec-persistentvolumeclaimspec",
      "type": "concept",
      "title": "PersistentVolumeClaimSpec {#PersistentVolumeClaimSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 2623,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaimstatus-persistentvolumeclaimstatus",
      "type": "concept",
      "title": "PersistentVolumeClaimStatus {#PersistentVolumeClaimStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 8262,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaimlist-persistentvolumeclaimlist",
      "type": "concept",
      "title": "PersistentVolumeClaimList {#PersistentVolumeClaimList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 13970,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:modifyvolumestatus-modifyvolumestatus",
      "type": "concept",
      "title": "ModifyVolumeStatus {#ModifyVolumeStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 15612,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaimcondition-persistentvolumeclaimcondition",
      "type": "concept",
      "title": "PersistentVolumeClaimCondition {#PersistentVolumeClaimCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 17283,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:typedobjectreference-typedobjectreference",
      "type": "concept",
      "title": "TypedObjectReference {#TypedObjectReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 19189,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeresourcerequirements-volumeresourcerequirements",
      "type": "concept",
      "title": "VolumeResourceRequirements {#VolumeResourceRequirements}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 20513,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/service-v1",
      "type": "page",
      "title": "Service",
      "summary": "Service is a named abstraction of software service (for example, mysql) consisting of local port (for example 3306) that the proxy listens on, and the selector that determines which pods will answer requests sent through the proxy.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## Service {#Service}\n\nService is a named abstraction of software service (for example, mysql) consisting of local port (for example 3306) that the proxy listens on, and the selector that determines which pods will answer requests sent through the proxy.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">ServiceSpec</a></em></td>\n      <td>Spec defines the behavior of a service. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">ServiceStatus</a></em></td>\n      <td>Most recently observed status of the service. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ServiceSpec {#ServiceSpec}\n\nServiceSpec describes the attributes that a user creates on a service.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>allocateLoadBalancerNodePorts</code><br/><em>boolean</em></td>\n      <td>allocateLoadBalancerNodePorts defines if NodePorts will be automatically allocated for services with type LoadBalancer.  Default is \"true\". It may be set to \"false\" if the cluster load-balancer does not rely on NodePorts.  If the caller requests specific NodePorts (by specifying a value), those requests will be respected, regardless of this field. This field may only be set for services with type LoadBalancer and will be cleared if the type is changed to any other type.</td>\n    </tr>\n    <tr>\n      <td><code>clusterIP</code><br/><em>string</em></td>\n      <td>clusterIP is the IP address of the service and is usually assigned randomly. If an address is specified manually, is in-range (as per system configuration), and is not in use, it will be allocated to the service; otherwise creation of the service will fail. This field may not be changed through updates unless the type field is also being changed to ExternalName (which requires this field to be blank) or the type field is being changed from ExternalName (in which case this field may optionally be specified, as describe above).  Valid values are \"None\", empty string (\"\"), or a valid IP address. Setting this to \"None\" makes a \"headless service\" (no virtual IP), which is useful when direct endpoint connections are preferred and proxying is not required.  Only applies to types ClusterIP, NodePort, and LoadBalancer. If this field is specified when creating a Service of type ExternalName, creation will fail. This field will be wiped when updating a Service to type ExternalName. More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies</td>\n    </tr>\n    <tr>\n      <td><code>clusterIPs</code><br/><em>string array</em><\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
      "meta": {
        "weight": 150,
        "rel_path": "reference/kubernetes-api/core/service-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Service"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-service",
      "type": "concept",
      "title": "Service {#Service}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:servicespec-servicespec",
      "type": "concept",
      "title": "ServiceSpec {#ServiceSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 2657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:servicestatus-servicestatus",
      "type": "concept",
      "title": "ServiceStatus {#ServiceStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 19320,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:servicelist-servicelist",
      "type": "concept",
      "title": "ServiceList {#ServiceList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 20013,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clientipconfig-clientipconfig",
      "type": "concept",
      "title": "ClientIPConfig {#ClientIPConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 21428,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:loadbalanceringress-loadbalanceringress",
      "type": "concept",
      "title": "LoadBalancerIngress {#LoadBalancerIngress}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 21943,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:loadbalancerstatus-loadbalancerstatus",
      "type": "concept",
      "title": "LoadBalancerStatus {#LoadBalancerStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 23441,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:portstatus-portstatus",
      "type": "concept",
      "title": "PortStatus {#PortStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 23953,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceport-serviceport",
      "type": "concept",
      "title": "ServicePort {#ServicePort}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 25130,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sessionaffinityconfig-sessionaffinityconfig",
      "type": "concept",
      "title": "SessionAffinityConfig {#SessionAffinityConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 28456,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/event-v1",
      "type": "page",
      "title": "Event",
      "summary": "Event is a report of an event somewhere in the cluster.  Events have a limited retention time and triggers and messages may evolve with time.  Event consumers should not rely on the timing of an event with a given Reason reflecting a consistent underlying trigger, or the continued existence of events with that Reason.  Events should be treated as informative, best-effort, supplemental data.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## Event {#Event}\n\nEvent is a report of an event somewhere in the cluster.  Events have a limited retention time and triggers and messages may evolve with time.  Event consumers should not rely on the timing of an event with a given Reason reflecting a consistent underlying trigger, or the continued existence of events with that Reason.  Events should be treated as informative, best-effort, supplemental data.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>action</code><br/><em>string</em></td>\n      <td>What action was taken/failed regarding to the Regarding object.</td>\n    </tr>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>count</code><br/><em>integer</em></td>\n      <td>The number of times this event has occurred.</td>\n    </tr>\n    <tr>\n      <td><code>eventTime</code><br/><em><a href=\"\">MicroTime</a></em></td>\n      <td>Time when this Event was first observed.</td>\n    </tr>\n    <tr>\n      <td><code>firstTimestamp</code><br/><em><a href=\"\">Time</a></em></td>\n      <td>The time at which the event was first recorded. (Time of server receipt is in TypeMeta.)</td>\n    </tr>\n    <tr>\n      <td><code>involvedObject</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ObjectReference</a></em></td>\n      <td>The object that this event is about.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>lastTimestamp</code><br/><em><a href=\"\">Time</a></em></td>\n      <td>The time at which the most recent occurrence of this event was recorded.</td>\n    </tr>\n    <tr>\n      <td><code>message</code><br/><em>string</em></td>\n      <td>A human-readable description of the status of this operation.</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>reason</code><br/><em>string</em></td>\n      <td>This should be a short, machine understandable string that gives the reason for the transition into the object's current status.</td>\n    </tr>\n    <tr>\n      <td><code>related</code><br/><em><a href=\"\">ObjectReference</a></em></td>\n      <td>Optional secondary object for more complex actions.</td>\n    </tr>\n    <tr>\n      <td><code>reportingComponent</code><br/><em>string</em></td>\n      <td>Name of the controller that emitted this Event, e.g. `kubernetes.io/kubelet`.</td>\n    </tr>\n    <tr>\n      <td><code>reportingInstance</code><br/><em>string</em></td>\n      <td>ID of the controller instance, e.g. `kubelet-xyzf`.</td>\n    </tr>\n    <tr>\n      <td><code>series</code><br/><em><a href=\"\">EventSeries</a></em></td>\n      <td>Data about the Event series this event represents or nil if it's a singleton Event.</td>\n    </tr>\n    <tr>\n      <td><code>source</code><br/><em><a href=\"\">EventSource</a></em></td>\n      <td>The component reporting this event. Should be a short machine understandable string.</td>\n    </tr>\n    <tr>\n      <td><code>type</code><br/><em>string</em></td>\n      <td>Type of this event (Normal, Warning), new types could be added in the future</td>\n    </tr>\n  <\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/kubernetes-api/core/event-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Event"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:event-event",
      "type": "concept",
      "title": "Event {#Event}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:eventlist-eventlist",
      "type": "concept",
      "title": "EventList {#EventList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 5012,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:eventseries-eventseries",
      "type": "concept",
      "title": "EventSeries {#EventSeries}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 6408,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/core/_index",
      "type": "page",
      "title": "Core",
      "summary": "Core is a set of APIs in Kubernetes that provide basic functionality.",
      "body": "Core is a set of APIs in Kubernetes that provide basic functionality.\n\n**Why it matters**\nIt provides the foundation for other Kubernetes components to build upon.\n\n**Key facts**\n- Basic functionality\n- Foundation for other components",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/_index/",
      "meta": {
        "weight": 120,
        "rel_path": "reference/kubernetes-api/core/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Core"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/core/component-status-v1",
      "type": "page",
      "title": "ComponentStatus",
      "summary": "ComponentStatus (and ComponentStatusList) holds the cluster validation info. Deprecated: This API is deprecated in v1.19+",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## ComponentStatus {#ComponentStatus}\n\nComponentStatus (and ComponentStatusList) holds the cluster validation info. Deprecated: This API is deprecated in v1.19+\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>conditions</code><br/><em><a href=\"\">ComponentCondition array</a></em><br/><em>patch strategy: merge on key <code>type</code></em></td>\n      <td>List of component conditions observed</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ComponentStatusList {#ComponentStatusList}\n\nStatus of all the conditions for the component as a list of ComponentStatus objects. Deprecated: This API is deprecated in v1.19+\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ComponentStatus array</a></em></td>\n      <td>List of ComponentStatus objects.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ComponentCondition {#ComponentCondition}\n\nInformation about the condition of a component.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>error</code><br/><em>string</em></td>\n      <td>Condition error code for a component. For example, a health check error code.</td>\n    </tr>\n    <tr>\n      <td><code>message</code><br/><em>string</em></td>\n      <td>Message about the condition for a component. For example, information about a health check.</td>\n    </tr>\n    <tr>\n      <td><code>status</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Status of the condition for a component. Valid values for \"Healthy\": \"True\", \"False\", or \"Unknown\".</td>\n    </tr>\n    <tr>\n      <td><code>type</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Type of condition for a component. Valid value: \"Healthy\"</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## Operations {#Operations}\n\n<hr>\n\n\n### `get` Read\n\n#### HTT\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/core/component-status-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ComponentStatus"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:componentstatus-componentstatus",
      "type": "concept",
      "title": "ComponentStatus {#ComponentStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:componentstatuslist-componentstatuslist",
      "type": "concept",
      "title": "ComponentStatusList {#ComponentStatusList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": 2215,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:componentcondition-componentcondition",
      "type": "concept",
      "title": "ComponentCondition {#ComponentCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": 3779,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "type": "page",
      "title": "LeaseCandidate",
      "summary": "LeaseCandidate defines a candidate for a Lease object. Candidates are created such that coordinated leader election will pick the best leader from the list of candidates.",
      "body": "\n\n`apiVersion: coordination.k8s.io/v1beta1`\n\n`import \"k8s.io/api/coordination/v1beta1\"`\n\n\n## LeaseCandidate {#LeaseCandidate}\n\nLeaseCandidate defines a candidate for a Lease object. Candidates are created such that coordinated leader election will pick the best leader from the list of candidates.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">LeaseCandidateSpec</a></em></td>\n      <td>spec contains the specification of the Lease. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## LeaseCandidateSpec {#LeaseCandidateSpec}\n\nLeaseCandidateSpec is a specification of a Lease.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>binaryVersion</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>BinaryVersion is the binary version. It must be in a semver format without leading `v`. This field is required.</td>\n    </tr>\n    <tr>\n      <td><code>emulationVersion</code><br/><em>string</em></td>\n      <td>EmulationVersion is the emulation version. It must be in a semver format without leading `v`. EmulationVersion must be less than or equal to BinaryVersion. This field is required when strategy is \"OldestEmulationVersion\"</td>\n    </tr>\n    <tr>\n      <td><code>leaseName</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>LeaseName is the name of the lease for which this candidate is contending. The limits on this field are the same as on Lease.name. Multiple lease candidates may reference the same Lease.name. This field is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>pingTime</code><br/><em><a href=\"\">MicroTime</a></em></td>\n      <td>PingTime is the last time that the server has requested the LeaseCandidate to renew. It is only done during leader election to check if any LeaseCandidates have become ineligible. When PingTime is updated, the LeaseCandidate will respond by updating RenewTime.</td>\n    </tr>\n    <tr>\n      <td><code>renewTime</code><br/><em><a href=\"\">MicroTime</a></em></td>\n      <td>RenewTime is the time that the LeaseCandidate was last updated. Any time a Lease needs to do leader election, the PingTime field is updated to signal to the LeaseCandidate that they should update the RenewTime. Old LeaseCandidate objects are also garbage collected if it has been hours since the last renew. The PingTime field is updated regularly to prevent garbage collection for still active LeaseCandidates.</td>\n    </tr>\n    <tr>\n      <td><code>strategy</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Strategy is the strategy that coordinated leader election will use for picking the leader. If multiple candidates for the same Lease return different strategies, the strategy provided by the candidate with the latest BinaryVersion will be used. If there is still con\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": "LeaseCandidate"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:leasecandidate-leasecandidate",
      "type": "concept",
      "title": "LeaseCandidate {#LeaseCandidate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:leasecandidatespec-leasecandidatespec",
      "type": "concept",
      "title": "LeaseCandidateSpec {#LeaseCandidateSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 2343,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:leasecandidatelist-leasecandidatelist",
      "type": "concept",
      "title": "LeaseCandidateList {#LeaseCandidateList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 4921,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/coordination/lease-v1",
      "type": "page",
      "title": "Lease",
      "summary": "Lease defines a lease concept.",
      "body": "\n\n`apiVersion: coordination.k8s.io/v1`\n\n`import \"k8s.io/api/coordination/v1\"`\n\n\n## Lease {#Lease}\n\nLease defines a lease concept.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">LeaseSpec</a></em></td>\n      <td>spec contains the specification of the Lease. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## LeaseSpec {#LeaseSpec}\n\nLeaseSpec is a specification of a Lease.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>acquireTime</code><br/><em><a href=\"\">MicroTime</a></em></td>\n      <td>acquireTime is a time when the current lease was acquired.</td>\n    </tr>\n    <tr>\n      <td><code>holderIdentity</code><br/><em>string</em></td>\n      <td>holderIdentity contains the identity of the holder of a current lease. If Coordinated Leader Election is used, the holder identity must be equal to the elected LeaseCandidate.metadata.name field.</td>\n    </tr>\n    <tr>\n      <td><code>leaseDurationSeconds</code><br/><em>integer</em></td>\n      <td>leaseDurationSeconds is a duration that candidates for a lease need to wait to force acquire it. This is measured against the time of last observed renewTime.</td>\n    </tr>\n    <tr>\n      <td><code>leaseTransitions</code><br/><em>integer</em></td>\n      <td>leaseTransitions is the number of transitions of a lease between holders.</td>\n    </tr>\n    <tr>\n      <td><code>preferredHolder</code><br/><em>string</em></td>\n      <td>PreferredHolder signals to a lease holder that the lease has a more optimal holder and should be given up. This field can only be set if Strategy is also set.</td>\n    </tr>\n    <tr>\n      <td><code>renewTime</code><br/><em><a href=\"\">MicroTime</a></em></td>\n      <td>renewTime is a time when the current holder of a lease has last updated the lease.</td>\n    </tr>\n    <tr>\n      <td><code>strategy</code><br/><em>string</em></td>\n      <td>Strategy indicates the strategy for picking the leader for coordinated leader election. If the field is not specified, there is no active coordination for this lease. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## LeaseList {#LeaseList}\n\nLeaseList is a list of Lease objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">Lease array</a></em></td>\n      <\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/coordination/lease-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Lease"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:lease-lease",
      "type": "concept",
      "title": "Lease {#Lease}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:leasespec-leasespec",
      "type": "concept",
      "title": "LeaseSpec {#LeaseSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 2133,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:leaselist-leaselist",
      "type": "concept",
      "title": "LeaseList {#LeaseList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 4124,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/coordination/_index",
      "type": "page",
      "title": "Coordination",
      "summary": "Coordination is a component of Kubernetes that manages distributed systems.",
      "body": "Coordination is a component of Kubernetes that manages distributed systems.\n\n**Why it matters**\nIt helps to manage and coordinate tasks across multiple nodes.\n\n**Key facts**\n- Distributed system management\n- Task coordination",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/_index/",
      "meta": {
        "weight": 100,
        "rel_path": "reference/kubernetes-api/coordination/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Coordination"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "type": "page",
      "title": "PodGroup",
      "summary": "PodGroup represents a runtime instance of pods grouped together. PodGroups are created by workload controllers (Job, LWS, JobSet, etc...) from Workload.podGroupTemplates. PodGroup API enablement is toggled by the GenericWorkload feature gate.",
      "body": "\n\n`apiVersion: scheduling.k8s.io/v1alpha2`\n\n`import \"k8s.io/api/scheduling/v1alpha2\"`\n\n\n## PodGroup {#PodGroup}\n\nPodGroup represents a runtime instance of pods grouped together. PodGroups are created by workload controllers (Job, LWS, JobSet, etc...) from Workload.podGroupTemplates. PodGroup API enablement is toggled by the GenericWorkload feature gate.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">PodGroupSpec</a></em></td>\n      <td>Spec defines the desired state of the PodGroup.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">PodGroupStatus</a></em></td>\n      <td>Status represents the current observed state of the PodGroup.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PodGroupSpec {#PodGroupSpec}\n\nPodGroupSpec defines the desired state of a PodGroup.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>disruptionMode</code><br/><em>string</em></td>\n      <td>DisruptionMode defines the mode in which a given PodGroup can be disrupted. Controllers are expected to fill this field by copying it from a PodGroupTemplate. One of Pod, PodGroup. Defaults to Pod if unset. This field is immutable. This field is available only when the WorkloadAwarePreemption feature gate is enabled.<br/><br/>Possible enum values:<br/> - `\"Pod\"` means that individual pods can be disrupted or preempted independently. It doesn't depend on exact set of pods currently running in this PodGroup.<br/> - `\"PodGroup\"` means that the whole PodGroup needs to be disrupted or preempted together.</td>\n    </tr>\n    <tr>\n      <td><code>podGroupTemplateRef</code><br/><em><a href=\"\">PodGroupTemplateReference</a></em></td>\n      <td>PodGroupTemplateRef references an optional PodGroup template within other object (e.g. Workload) that was used to create the PodGroup. This field is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>priority</code><br/><em>integer</em></td>\n      <td>Priority is the value of priority of this pod group. Various system components use this field to find the priority of the pod group. When Priority Admission Controller is enabled, it prevents users from setting this field. The admission controller populates this field from PriorityClassName. The higher the value, the higher the priority. This field is immutable. This field is available only when the WorkloadAwarePreemption feature gate is enabled.</td>\n    </tr>\n    <tr>\n      <td><code>priorityClassName</code><br/><em>string</em></td>\n      <td>PriorityClassName defines the priority that should be considered when scheduling this pod group. Controllers are expected to fill this field by copying it from a PodGroupTemplate. Otherwise, it is validated and resolved similarly to the PriorityClassName on PodGroupTemplate (i.e. if no priority class is specified, admission control can set this to the global default priority\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": null,
          "line_end": null,
          "quote": "PodGroup"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroup-podgroup",
      "type": "concept",
      "title": "PodGroup {#PodGroup}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroupspec-podgroupspec",
      "type": "concept",
      "title": "PodGroupSpec {#PodGroupSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 2511,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroupstatus-podgroupstatus",
      "type": "concept",
      "title": "PodGroupStatus {#PodGroupStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 6521,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgrouplist-podgrouplist",
      "type": "concept",
      "title": "PodGroupList {#PodGroupList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 8043,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:basicschedulingpolicy-basicschedulingpolicy",
      "type": "concept",
      "title": "BasicSchedulingPolicy {#BasicSchedulingPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 9392,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:gangschedulingpolicy-gangschedulingpolicy",
      "type": "concept",
      "title": "GangSchedulingPolicy {#GangSchedulingPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 9545,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroupresourceclaim-podgroupresourceclaim",
      "type": "concept",
      "title": "PodGroupResourceClaim {#PodGroupResourceClaim}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 10053,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroupschedulingconstraints-podgroupschedulingconstraints",
      "type": "concept",
      "title": "PodGroupSchedulingConstraints {#PodGroupSchedulingConstraints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 12014,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgroupschedulingpolicy-podgroupschedulingpolicy",
      "type": "concept",
      "title": "PodGroupSchedulingPolicy {#PodGroupSchedulingPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 12593,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgrouptemplatereference-podgrouptemplatereference",
      "type": "concept",
      "title": "PodGroupTemplateReference {#PodGroupTemplateReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 13379,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topologyconstraint-topologyconstraint",
      "type": "concept",
      "title": "TopologyConstraint {#TopologyConstraint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 13965,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workloadpodgrouptemplatereference-workloadpodgrouptemplatereference",
      "type": "concept",
      "title": "WorkloadPodGroupTemplateReference {#WorkloadPodGroupTemplateReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 14598,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "type": "page",
      "title": "Workload",
      "summary": "Workload allows for expressing scheduling constraints that should be used when managing the lifecycle of workloads from the scheduling perspective, including scheduling, preemption, eviction and other phases. Workload API enablement is toggled by the GenericWorkload feature gate.",
      "body": "\n\n`apiVersion: scheduling.k8s.io/v1alpha2`\n\n`import \"k8s.io/api/scheduling/v1alpha2\"`\n\n\n## Workload {#Workload}\n\nWorkload allows for expressing scheduling constraints that should be used when managing the lifecycle of workloads from the scheduling perspective, including scheduling, preemption, eviction and other phases. Workload API enablement is toggled by the GenericWorkload feature gate.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">WorkloadSpec</a></em></td>\n      <td>Spec defines the desired behavior of a Workload.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## WorkloadSpec {#WorkloadSpec}\n\nWorkloadSpec defines the desired state of a Workload.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>controllerRef</code><br/><em><a href=\"\">TypedLocalObjectReference</a></em></td>\n      <td>ControllerRef is an optional reference to the controlling object, such as a Deployment or Job. This field is intended for use by tools like CLIs to provide a link back to the original workload definition. This field is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>podGroupTemplates</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">PodGroupTemplate array</a></em></td>\n      <td>PodGroupTemplates is the list of templates that make up the Workload. The maximum number of templates is 8. This field is immutable.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## WorkloadList {#WorkloadList}\n\nWorkloadList contains a list of Workload resources.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">Workload array</a></em></td>\n      <td>Items is the list of Workloads.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PodGroupTemplate {#PodGroupTemplate}\n\nPodGroupTemplate represents a template for a set of pods with a scheduling policy.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/scheduling/workload-v1alpha2.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": null,
          "line_end": null,
          "quote": "Workload"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workload-workload",
      "type": "concept",
      "title": "Workload {#Workload}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workloadspec-workloadspec",
      "type": "concept",
      "title": "WorkloadSpec {#WorkloadSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 2347,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:workloadlist-workloadlist",
      "type": "concept",
      "title": "WorkloadList {#WorkloadList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 3307,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgrouptemplate-podgrouptemplate",
      "type": "concept",
      "title": "PodGroupTemplate {#PodGroupTemplate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 4655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "type": "page",
      "title": "PriorityClass",
      "summary": "PriorityClass defines mapping from a priority class name to the priority integer value. The value can be any valid integer.",
      "body": "\n\n`apiVersion: scheduling.k8s.io/v1`\n\n`import \"k8s.io/api/scheduling/v1\"`\n\n\n## PriorityClass {#PriorityClass}\n\nPriorityClass defines mapping from a priority class name to the priority integer value. The value can be any valid integer.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>description</code><br/><em>string</em></td>\n      <td>description is an arbitrary string that usually provides guidelines on when this priority class should be used.</td>\n    </tr>\n    <tr>\n      <td><code>globalDefault</code><br/><em>boolean</em></td>\n      <td>globalDefault specifies whether this PriorityClass should be considered as the default priority for pods that do not have any priority class. Only one PriorityClass can be marked as `globalDefault`. However, if more than one PriorityClasses exists with their `globalDefault` field set to true, the smallest value of such global default PriorityClasses will be used as the default priority.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>preemptionPolicy</code><br/><em>string</em></td>\n      <td>preemptionPolicy is the Policy for preempting pods with lower priority. One of Never, PreemptLowerPriority. Defaults to PreemptLowerPriority if unset.<br/><br/>Possible enum values:<br/> - `\"Never\"` means that pod never preempts other pods with lower priority.<br/> - `\"PreemptLowerPriority\"` means that pod can preempt other pods with lower priority.</td>\n    </tr>\n    <tr>\n      <td><code>value</code><br/><em>integer</em></td>\n      <td>value represents the integer value of this priority class. This is the actual priority that pods receive when they have the name of this class in their pod spec.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PriorityClassList {#PriorityClassList}\n\nPriorityClassList is a collection of priority classes.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">PriorityClass array</a></em></td>\n      <td>items is the list of PriorityClasses</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata More info: https://gi\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/scheduling/priority-class-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "PriorityClass"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:priorityclass-priorityclass",
      "type": "concept",
      "title": "PriorityClass {#PriorityClass}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:priorityclasslist-priorityclasslist",
      "type": "concept",
      "title": "PriorityClassList {#PriorityClassList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 3375,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/scheduling/_index",
      "type": "page",
      "title": "Scheduling",
      "summary": "Scheduling is a feature in Kubernetes that manages the placement of pods on nodes within a cluster.",
      "body": "Scheduling is a feature in Kubernetes that manages the placement of pods on nodes within a cluster.\n\n**Why it matters**\nScheduling ensures efficient use of resources and allows for dynamic scaling of applications.\n\n**Key facts**\n- Scheduling is based on resource requests and limits specified by users\n- The scheduler uses algorithms to select the best node for a pod\n\n**Common pitfalls**\n- Insufficient resource allocation can lead to scheduling failures\n- Poorly configured scheduling policies can result in inefficient use of resources\n\n**Related**\nPods, Nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/_index/",
      "meta": {
        "weight": 200,
        "rel_path": "reference/kubernetes-api/scheduling/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Scheduling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "type": "page",
      "title": "NetworkPolicy",
      "summary": "NetworkPolicy describes what network traffic is allowed for a set of Pods",
      "body": "\n\n`apiVersion: networking.k8s.io/v1`\n\n`import \"k8s.io/api/networking/v1\"`\n\n\n## NetworkPolicy {#NetworkPolicy}\n\nNetworkPolicy describes what network traffic is allowed for a set of Pods\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">NetworkPolicySpec</a></em></td>\n      <td>spec represents the specification of the desired behavior for this NetworkPolicy.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## NetworkPolicySpec {#NetworkPolicySpec}\n\nNetworkPolicySpec provides the specification of a NetworkPolicy\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>egress</code><br/><em><a href=\"\">NetworkPolicyEgressRule array</a></em></td>\n      <td>egress is a list of egress rules to be applied to the selected pods. Outgoing traffic is allowed if there are no NetworkPolicies selecting the pod (and cluster policy otherwise allows the traffic), OR if the traffic matches at least one egress rule across all of the NetworkPolicy objects whose podSelector matches the pod. If this field is empty then this NetworkPolicy limits all outgoing traffic (and serves solely to ensure that the pods it selects are isolated by default). This field is beta-level in 1.8</td>\n    </tr>\n    <tr>\n      <td><code>ingress</code><br/><em><a href=\"\">NetworkPolicyIngressRule array</a></em></td>\n      <td>ingress is a list of ingress rules to be applied to the selected pods. Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod (and cluster policy otherwise allows the traffic), OR if the traffic source is the pod's local node, OR if the traffic matches at least one ingress rule across all of the NetworkPolicy objects whose podSelector matches the pod. If this field is empty then this NetworkPolicy does not allow any traffic (and serves solely to ensure that the pods it selects are isolated by default)</td>\n    </tr>\n    <tr>\n      <td><code>podSelector</code><br/><em><a href=\"\">LabelSelector</a></em></td>\n      <td>podSelector selects the pods to which this NetworkPolicy object applies. The array of rules is applied to any pods selected by this field. An empty selector matches all pods in the policy's namespace. Multiple network policies can select the same set of pods. In this case, the ingress rules for each are combined additively. This field is optional. If it is not specified, it defaults to an empty selector.</td>\n    </tr>\n    <tr>\n      <td><code>policyTypes</code><br/><em>string array</em></td>\n      <td>policyTypes is a list of rule types that the NetworkPolicy relates to. Valid options are [\"Ingress\"], [\"Egress\"], or [\"Ingress\", \"Egress\"]. If this field is not specified, it will default based on the existence of ingress or egress rules; policies that contain an egress section are assumed to affect egress, and all policies (whether or not they contain an ingress section) are assumed to affect ingress. If y\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/kubernetes-api/networking/network-policy-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "NetworkPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networkpolicy-networkpolicy",
      "type": "concept",
      "title": "NetworkPolicy {#NetworkPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networkpolicyspec-networkpolicyspec",
      "type": "concept",
      "title": "NetworkPolicySpec {#NetworkPolicySpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 2157,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networkpolicylist-networkpolicylist",
      "type": "concept",
      "title": "NetworkPolicyList {#NetworkPolicyList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 5221,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ipblock-ipblock",
      "type": "concept",
      "title": "IPBlock {#IPBlock}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 6698,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networkpolicyegressrule-networkpolicyegressrule",
      "type": "concept",
      "title": "NetworkPolicyEgressRule {#NetworkPolicyEgressRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 7574,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networkpolicyingressrule-networkpolicyingressrule",
      "type": "concept",
      "title": "NetworkPolicyIngressRule {#NetworkPolicyIngressRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 9007,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networkpolicypeer-networkpolicypeer",
      "type": "concept",
      "title": "NetworkPolicyPeer {#NetworkPolicyPeer}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 10450,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networkpolicyport-networkpolicyport",
      "type": "concept",
      "title": "NetworkPolicyPort {#NetworkPolicyPort}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 12109,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "type": "page",
      "title": "ServiceCIDR",
      "summary": "ServiceCIDR defines a range of IP addresses using CIDR format (e.g. 192.168.0.0/24 or 2001:db2::/64). This range is used to allocate ClusterIPs to Service objects.",
      "body": "\n\n`apiVersion: networking.k8s.io/v1`\n\n`import \"k8s.io/api/networking/v1\"`\n\n\n## ServiceCIDR {#ServiceCIDR}\n\nServiceCIDR defines a range of IP addresses using CIDR format (e.g. 192.168.0.0/24 or 2001:db2::/64). This range is used to allocate ClusterIPs to Service objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">ServiceCIDRSpec</a></em></td>\n      <td>spec is the desired state of the ServiceCIDR. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">ServiceCIDRStatus</a></em></td>\n      <td>status represents the current state of the ServiceCIDR. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ServiceCIDRSpec {#ServiceCIDRSpec}\n\nServiceCIDRSpec define the CIDRs the user wants to use for allocating ClusterIPs for Services.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>cidrs</code><br/><em>string array</em></td>\n      <td>CIDRs defines the IP blocks in CIDR notation (e.g. \"192.168.0.0/24\" or \"2001:db8::/64\") from which to assign service cluster IPs. Max of two CIDRs is allowed, one of each IP family. This field is immutable.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ServiceCIDRStatus {#ServiceCIDRStatus}\n\nServiceCIDRStatus describes the current state of the ServiceCIDR.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>conditions</code><br/><em><a href=\"\">Condition array</a></em><br/><em>patch strategy: merge on key <code>type</code></em></td>\n      <td>conditions holds an array of metav1.Condition that describe the state of the ServiceCIDR. Current service state</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ServiceCIDRList {#ServiceCIDRList}\n\nServiceCIDRList contains a list of ServiceCIDR objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ServiceCIDR array</a></em></td>\n      <td>items is the list of ServiceCIDRs.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/kubernetes-api/networking/service-cidr-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceCIDR"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:servicecidr-servicecidr",
      "type": "concept",
      "title": "ServiceCIDR {#ServiceCIDR}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:servicecidrspec-servicecidrspec",
      "type": "concept",
      "title": "ServiceCIDRSpec {#ServiceCIDRSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 2628,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:servicecidrstatus-servicecidrstatus",
      "type": "concept",
      "title": "ServiceCIDRStatus {#ServiceCIDRStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 3171,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:servicecidrlist-servicecidrlist",
      "type": "concept",
      "title": "ServiceCIDRList {#ServiceCIDRList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 3733,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "type": "page",
      "title": "IPAddress",
      "summary": "IPAddress represents a single IP of a single IP Family. The object is designed to be used by APIs that operate on IP addresses. The object is used by the Service core API for allocation of IP addresses. An IP address can be represented in different formats, to guarantee the uniqueness of the IP, the name of the object is the IP address in canonical format, four decimal digits separated by dots suppressing leading zeros for IPv4 and the representation defined by RFC 5952 for IPv6. Valid: 192.168.1.5 or 2001:db8::1 or 2001:db8:aaaa:bbbb:cccc:dddd:eeee:1 Invalid: 10.01.2.3 or 2001:db8:0:0:0::1",
      "body": "\n\n`apiVersion: networking.k8s.io/v1`\n\n`import \"k8s.io/api/networking/v1\"`\n\n\n## IPAddress {#IPAddress}\n\nIPAddress represents a single IP of a single IP Family. The object is designed to be used by APIs that operate on IP addresses. The object is used by the Service core API for allocation of IP addresses. An IP address can be represented in different formats, to guarantee the uniqueness of the IP, the name of the object is the IP address in canonical format, four decimal digits separated by dots suppressing leading zeros for IPv4 and the representation defined by RFC 5952 for IPv6. Valid: 192.168.1.5 or 2001:db8::1 or 2001:db8:aaaa:bbbb:cccc:dddd:eeee:1 Invalid: 10.01.2.3 or 2001:db8:0:0:0::1\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">IPAddressSpec</a></em></td>\n      <td>spec is the desired state of the IPAddress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## IPAddressSpec {#IPAddressSpec}\n\nIPAddressSpec describe the attributes in an IP Address.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>parentRef</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ParentReference</a></em></td>\n      <td>ParentRef references the resource that an IPAddress is attached to. An IPAddress must reference a parent object.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## IPAddressList {#IPAddressList}\n\nIPAddressList contains a list of IPAddress.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">IPAddress array</a></em></td>\n      <td>items is the list of IPAddresses.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ParentReference {#ParentReference}\n\nParentReference describes a reference to a parent o\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/networking/ip-address-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "IPAddress"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ipaddress-ipaddress",
      "type": "concept",
      "title": "IPAddress {#IPAddress}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ipaddressspec-ipaddressspec",
      "type": "concept",
      "title": "IPAddressSpec {#IPAddressSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 2762,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ipaddresslist-ipaddresslist",
      "type": "concept",
      "title": "IPAddressList {#IPAddressList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 3244,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:parentreference-parentreference",
      "type": "concept",
      "title": "ParentReference {#ParentReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 4694,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "type": "page",
      "title": "IngressClass",
      "summary": "IngressClass represents the class of the Ingress, referenced by the Ingress Spec. The `ingressclass.kubernetes.io/is-default-class` annotation can be used to indicate that an IngressClass should be considered default. When a single IngressClass resource has this annotation set to true, new Ingress resources without a class specified will be assigned this default class.",
      "body": "\n\n`apiVersion: networking.k8s.io/v1`\n\n`import \"k8s.io/api/networking/v1\"`\n\n\n## IngressClass {#IngressClass}\n\nIngressClass represents the class of the Ingress, referenced by the Ingress Spec. The `ingressclass.kubernetes.io/is-default-class` annotation can be used to indicate that an IngressClass should be considered default. When a single IngressClass resource has this annotation set to true, new Ingress resources without a class specified will be assigned this default class.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">IngressClassSpec</a></em></td>\n      <td>spec is the desired state of the IngressClass. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## IngressClassSpec {#IngressClassSpec}\n\nIngressClassSpec provides information about the class of an Ingress.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>controller</code><br/><em>string</em></td>\n      <td>controller refers to the name of the controller that should handle this class. This allows for different \"flavors\" that are controlled by the same controller. For example, you may have different parameters for the same implementing controller. This should be specified as a domain-prefixed path no more than 250 characters in length, e.g. \"acme.io/ingress-controller\". This field is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>parameters</code><br/><em><a href=\"\">IngressClassParametersReference</a></em></td>\n      <td>parameters is a link to a custom resource containing additional configuration for the controller. This is optional if the controller does not require extra parameters.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## IngressClassList {#IngressClassList}\n\nIngressClassList is a collection of IngressClasses.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">IngressClass array</a></em></td>\n      <td>items is the list of IngressClasses.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/networking/ingress-class-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "IngressClass"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressclass-ingressclass",
      "type": "concept",
      "title": "IngressClass {#IngressClass}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressclassspec-ingressclassspec",
      "type": "concept",
      "title": "IngressClassSpec {#IngressClassSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 2527,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressclasslist-ingressclasslist",
      "type": "concept",
      "title": "IngressClassList {#IngressClassList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 3579,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressclassparametersreference-ingressclassparametersreference",
      "type": "concept",
      "title": "IngressClassParametersReference {#IngressClassParametersReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 4947,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/networking/_index",
      "type": "page",
      "title": "Networking",
      "summary": "Networking is a feature in Kubernetes that provides connectivity between pods and services within a cluster.",
      "body": "Networking is a feature in Kubernetes that provides connectivity between pods and services within a cluster.\n\n**Why it matters**\nNetworking enables communication between applications and allows for load balancing and service discovery.\n\n**Key facts**\n- Kubernetes supports multiple networking models, including Calico and Flannel\n- Services provide a network identity and load balancing for accessing applications\n\n**Common pitfalls**\n- Misconfigured networking policies can result in security vulnerabilities\n- Inadequate resource allocation for networking can lead to performance issues\n\n**Related**\nPods, Services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/_index/",
      "meta": {
        "weight": 150,
        "rel_path": "reference/kubernetes-api/networking/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Networking"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/networking/ingress-v1",
      "type": "page",
      "title": "Ingress",
      "summary": "Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc.",
      "body": "\n\n`apiVersion: networking.k8s.io/v1`\n\n`import \"k8s.io/api/networking/v1\"`\n\n\n## Ingress {#Ingress}\n\nIngress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">IngressSpec</a></em></td>\n      <td>spec is the desired state of the Ingress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">IngressStatus</a></em></td>\n      <td>status is the current state of the Ingress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## IngressSpec {#IngressSpec}\n\nIngressSpec describes the Ingress the user wishes to exist.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>defaultBackend</code><br/><em><a href=\"\">IngressBackend</a></em></td>\n      <td>defaultBackend is the backend that should handle requests that don't match any rule. If Rules are not specified, DefaultBackend must be specified. If DefaultBackend is not set, the handling of requests that do not match any of the rules will be up to the Ingress controller.</td>\n    </tr>\n    <tr>\n      <td><code>ingressClassName</code><br/><em>string</em></td>\n      <td>ingressClassName is the name of an IngressClass cluster resource. Ingress controller implementations use this field to know whether they should be serving this Ingress resource, by a transitive connection (controller -> IngressClass -> Ingress resource). Although the `kubernetes.io/ingress.class` annotation (simple constant name) was never formally defined, it was widely supported by Ingress controllers to create a direct binding between Ingress controller and Ingress resources. Newly created Ingress resources should prefer using the field. However, even though the annotation is officially deprecated, for backwards compatibility reasons, ingress controllers should still honor that annotation if present.</td>\n    </tr>\n    <tr>\n      <td><code>rules</code><br/><em><a href=\"\">IngressRule array</a></em></td>\n      <td>rules is a list of host rules used to configure the Ingress. If unspecified, or no rule matches, all traffic is sent to the default backend.</td>\n    </tr>\n    <tr>\n      <td><code>tls</code><br/><em><a href=\"\">IngressTLS array</a></em></td>\n      <td>tls represents the TLS configuration. Currently the Ingress only supports a single TLS port, 443. If multiple members of this list specify different hosts, they will be multiplexed on the same port according to the hostname specified through the SNI TLS extension, if the \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/networking/ingress-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Ingress"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingress-ingress",
      "type": "concept",
      "title": "Ingress {#Ingress}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressspec-ingressspec",
      "type": "concept",
      "title": "IngressSpec {#IngressSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 2681,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressstatus-ingressstatus",
      "type": "concept",
      "title": "IngressStatus {#IngressStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 4861,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingresslist-ingresslist",
      "type": "concept",
      "title": "IngressList {#IngressList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 5293,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:httpingresspath-httpingresspath",
      "type": "concept",
      "title": "HTTPIngressPath {#HTTPIngressPath}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 6724,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:httpingressrulevalue-httpingressrulevalue",
      "type": "concept",
      "title": "HTTPIngressRuleValue {#HTTPIngressRuleValue}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 9753,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressbackend-ingressbackend",
      "type": "concept",
      "title": "IngressBackend {#IngressBackend}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 10481,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressloadbalanceringress-ingressloadbalanceringress",
      "type": "concept",
      "title": "IngressLoadBalancerIngress {#IngressLoadBalancerIngress}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 11389,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressloadbalancerstatus-ingressloadbalancerstatus",
      "type": "concept",
      "title": "IngressLoadBalancerStatus {#IngressLoadBalancerStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 12173,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressportstatus-ingressportstatus",
      "type": "concept",
      "title": "IngressPortStatus {#IngressPortStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 12647,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressrule-ingressrule",
      "type": "concept",
      "title": "IngressRule {#IngressRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 13781,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressservicebackend-ingressservicebackend",
      "type": "concept",
      "title": "IngressServiceBackend {#IngressServiceBackend}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 15753,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingresstls-ingresstls",
      "type": "concept",
      "title": "IngressTLS {#IngressTLS}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 16438,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:servicebackendport-servicebackendport",
      "type": "concept",
      "title": "ServiceBackendPort {#ServiceBackendPort}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 17418,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "type": "page",
      "title": "EndpointSlice",
      "summary": "EndpointSlice represents a set of service endpoints. Most EndpointSlices are created by the EndpointSlice controller to represent the Pods selected by Service objects. For a given service there may be multiple EndpointSlice objects which must be joined to produce the full set of endpoints; you can find all of the slices for a given service by listing EndpointSlices in the service&#39;s namespace whose `kubernetes.io/service-name` label contains the service&#39;s name.",
      "body": "\n\n`apiVersion: discovery.k8s.io/v1`\n\n`import \"k8s.io/api/discovery/v1\"`\n\n\n## EndpointSlice {#EndpointSlice}\n\nEndpointSlice represents a set of service endpoints. Most EndpointSlices are created by the EndpointSlice controller to represent the Pods selected by Service objects. For a given service there may be multiple EndpointSlice objects which must be joined to produce the full set of endpoints; you can find all of the slices for a given service by listing EndpointSlices in the service&#39;s namespace whose `kubernetes.io/service-name` label contains the service&#39;s name.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>addressType</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>addressType specifies the type of address carried by this EndpointSlice. All addresses in this slice must be the same type. This field is immutable after creation. The following address types are currently supported: * IPv4: Represents an IPv4 Address. * IPv6: Represents an IPv6 Address. * FQDN: Represents a Fully Qualified Domain Name. (Deprecated) The EndpointSlice controller only generates, and kube-proxy only processes, slices of addressType \"IPv4\" and \"IPv6\". No semantics are defined for the \"FQDN\" type.<br/><br/>Possible enum values:<br/> - `\"FQDN\"` represents a FQDN.<br/> - `\"IPv4\"` represents an IPv4 Address.<br/> - `\"IPv6\"` represents an IPv6 Address.</td>\n    </tr>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>endpoints</code><br/><em><a href=\"\">Endpoint array</a></em></td>\n      <td>endpoints is a list of unique endpoints in this slice. Each slice may include a maximum of 1000 endpoints.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata.</td>\n    </tr>\n    <tr>\n      <td><code>ports</code><br/><em><a href=\"\">EndpointPort array</a></em></td>\n      <td>ports specifies the list of network ports exposed by each endpoint in this slice. Each port must have a unique name. Each slice may include a maximum of 100 ports. Services always have at least 1 port, so EndpointSlices generated by the EndpointSlice controller will likewise always have at least 1 port. EndpointSlices used for other purposes may have an empty ports list.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## EndpointSliceList {#EndpointSliceList}\n\nEndpointSliceList represents a list of endpoint slices\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">EndpointSlice array</a></em></td>\n      <td>items is the list of endpoint slices</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/discovery/endpoint-slice-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "EndpointSlice"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslice-endpointslice",
      "type": "concept",
      "title": "EndpointSlice {#EndpointSlice}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 649,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslicelist-endpointslicelist",
      "type": "concept",
      "title": "EndpointSliceList {#EndpointSliceList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 3771,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpoint-endpoint",
      "type": "concept",
      "title": "Endpoint {#Endpoint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 5147,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointconditions-endpointconditions",
      "type": "concept",
      "title": "EndpointConditions {#EndpointConditions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 7888,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointhints-endpointhints",
      "type": "concept",
      "title": "EndpointHints {#EndpointHints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 9156,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fornode-fornode",
      "type": "concept",
      "title": "ForNode {#ForNode}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 12251,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:forzone-forzone",
      "type": "concept",
      "title": "ForZone {#ForZone}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 12608,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/discovery/_index",
      "type": "page",
      "title": "Discovery",
      "summary": "Discovery is a feature in Kubernetes that enables pods and services to find each other within a cluster.",
      "body": "Discovery is a feature in Kubernetes that enables pods and services to find each other within a cluster.\n\n**Why it matters**\nDiscovery allows for service discovery, load balancing, and self-healing of applications.\n\n**Key facts**\n- Kubernetes uses DNS-based service discovery\n- Services can be exposed using LoadBalancer or NodePort\n\n**Common pitfalls**\n- Misconfigured DNS settings can result in service discovery failures\n- Inadequate resource allocation for discovery can lead to performance issues\n\n**Related**\nPods, Services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/_index/",
      "meta": {
        "weight": 130,
        "rel_path": "reference/kubernetes-api/discovery/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Discovery"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "type": "page",
      "title": "PodCertificateRequest",
      "summary": "PodCertificateRequest encodes a pod requesting a certificate from a given signer.\n\nKubelets use this API to implement podCertificate projected volumes",
      "body": "\n\n`apiVersion: certificates.k8s.io/v1beta1`\n\n`import \"k8s.io/api/certificates/v1beta1\"`\n\n\n## PodCertificateRequest {#PodCertificateRequest}\n\nPodCertificateRequest encodes a pod requesting a certificate from a given signer.\n\nKubelets use this API to implement podCertificate projected volumes\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata contains the object metadata.</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">PodCertificateRequestSpec</a></em></td>\n      <td>spec contains the details about the certificate being requested.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">PodCertificateRequestStatus</a></em></td>\n      <td>status contains the issued certificate, and a standard set of conditions.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PodCertificateRequestSpec {#PodCertificateRequestSpec}\n\nPodCertificateRequestSpec describes the certificate request.  All fields are immutable after creation.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>maxExpirationSeconds</code><br/><em>integer</em></td>\n      <td>maxExpirationSeconds is the maximum lifetime permitted for the certificate.  If omitted, kube-apiserver will set it to 86400(24 hours). kube-apiserver will reject values shorter than 3600 (1 hour).  The maximum allowable value is 7862400 (91 days).  The signer implementation is then free to issue a certificate with any lifetime *shorter* than MaxExpirationSeconds, but no shorter than 3600 seconds (1 hour).  This constraint is enforced by kube-apiserver. `kubernetes.io` signers will never issue certificates with a lifetime longer than 24 hours.</td>\n    </tr>\n    <tr>\n      <td><code>nodeName</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>nodeName is the name of the node the pod is assigned to.</td>\n    </tr>\n    <tr>\n      <td><code>nodeUID</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>nodeUID is the UID of the node the pod is assigned to.</td>\n    </tr>\n    <tr>\n      <td><code>pkixPublicKey</code><br/><em>string</em></td>\n      <td>The PKIX-serialized public key the signer will issue the certificate to.  The key must be one of RSA3072, RSA4096, ECDSAP256, ECDSAP384, ECDSAP521, or ED25519. Note that this list may be expanded in the future.  Signer implementations do not need to support all key types supported by kube-apiserver and kubelet.  If a signer does not support the key type used for a given PodCertificateRequest, it must deny the request by setting a status.conditions entry with a type of \"Denied\" and a reason of \"UnsupportedKeyType\". It may also suggest a key type that it does support in the message field.  Deprecated: This field is replaced by StubPKCS10Request. If StubPKCS10Request is set, this field must be empty.  Signer implementations should extract the public key from the StubPKCS10Request field.</td>\n    </tr>\n    <tr>\n      <td><code>podName</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>podName is the name of the pod into which the ce\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": "PodCertificateRequest"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podcertificaterequest-podcertificaterequest",
      "type": "concept",
      "title": "PodCertificateRequest {#PodCertificateRequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podcertificaterequestspec-podcertificaterequestspec",
      "type": "concept",
      "title": "PodCertificateRequestSpec {#PodCertificateRequestSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 2435,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podcertificaterequeststatus-podcertificaterequeststatus",
      "type": "concept",
      "title": "PodCertificateRequestStatus {#PodCertificateRequestStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 8589,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podcertificaterequestlist-podcertificaterequestlist",
      "type": "concept",
      "title": "PodCertificateRequestList {#PodCertificateRequestList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 11948,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "type": "page",
      "title": "ClusterTrustBundle",
      "summary": "ClusterTrustBundle is a cluster-scoped container for X.509 trust anchors (root certificates).\n\nClusterTrustBundle objects are considered to be readable by any authenticated user in the cluster, because they can be mounted by pods using the `clusterTrustBundle` projection.  All service accounts have read access to ClusterTrustBundles by default.  Users who only have namespace-level access to a cluster can read ClusterTrustBundles by impersonating a serviceaccount that they have access to.\n\nIt can be optionally associated with a particular assigner, in which case it contains one valid set of trust anchors for that signer. Signers may have multiple associated ClusterTrustBundles; each is an independent set of trust anchors for that signer. Admission control is used to enforce that only users with permissions on the signer can create or modify the corresponding bundle.",
      "body": "\n\n`apiVersion: certificates.k8s.io/v1beta1`\n\n`import \"k8s.io/api/certificates/v1beta1\"`\n\n\n## ClusterTrustBundle {#ClusterTrustBundle}\n\nClusterTrustBundle is a cluster-scoped container for X.509 trust anchors (root certificates).\n\nClusterTrustBundle objects are considered to be readable by any authenticated user in the cluster, because they can be mounted by pods using the `clusterTrustBundle` projection.  All service accounts have read access to ClusterTrustBundles by default.  Users who only have namespace-level access to a cluster can read ClusterTrustBundles by impersonating a serviceaccount that they have access to.\n\nIt can be optionally associated with a particular assigner, in which case it contains one valid set of trust anchors for that signer. Signers may have multiple associated ClusterTrustBundles; each is an independent set of trust anchors for that signer. Admission control is used to enforce that only users with permissions on the signer can create or modify the corresponding bundle.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata contains the object metadata.</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ClusterTrustBundleSpec</a></em></td>\n      <td>spec contains the signer (if any) and trust anchors.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ClusterTrustBundleSpec {#ClusterTrustBundleSpec}\n\nClusterTrustBundleSpec contains the signer and trust anchors.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>signerName</code><br/><em>string</em></td>\n      <td>signerName indicates the associated signer, if any.  In order to create or update a ClusterTrustBundle that sets signerName, you must have the following cluster-scoped permission: group=certificates.k8s.io resource=signers resourceName=\\<the signer name> verb=attest.  If signerName is not empty, then the ClusterTrustBundle object must be named with the signer name as a prefix (translating slashes to colons). For example, for the signer name `example.com/foo`, valid ClusterTrustBundle object names include `example.com:foo:abc` and `example.com:foo:v1`.  If signerName is empty, then the ClusterTrustBundle object's name must not have such a prefix.  List/watch requests for ClusterTrustBundles can filter on this field using a `spec.signerName=NAME` field selector.</td>\n    </tr>\n    <tr>\n      <td><code>trustBundle</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>trustBundle contains the individual X.509 trust anchors for this bundle, as PEM bundle of PEM-wrapped, DER-formatted X.509 certificates.  The data must consist only of PEM certificate blocks that parse as valid X.509 certificates.  Each certificate must include a basic constraints extension with the CA bit set.  The API server will reject objects that contain duplicate certificates, or that use PEM block headers.  Users of ClusterTrustBundles, including Kubelet, are free to reorder and deduplicate certificate blocks in this file according to their own logic, as well as to drop PEM block headers and \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": "ClusterTrustBundle"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clustertrustbundle-clustertrustbundle",
      "type": "concept",
      "title": "ClusterTrustBundle {#ClusterTrustBundle}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clustertrustbundlespec-clustertrustbundlespec",
      "type": "concept",
      "title": "ClusterTrustBundleSpec {#ClusterTrustBundleSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 2897,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clustertrustbundlelist-clustertrustbundlelist",
      "type": "concept",
      "title": "ClusterTrustBundleList {#ClusterTrustBundleList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 4726,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "type": "page",
      "title": "CertificateSigningRequest",
      "summary": "CertificateSigningRequest objects provide a mechanism to obtain x509 certificates by submitting a certificate signing request, and having it asynchronously approved and issued.\n\nKubelets use this API to obtain:\n 1. client certificates to authenticate to kube-apiserver (with the &#34;kubernetes.io/kube-apiserver-client-kubelet&#34; signerName).\n 2. serving certificates for TLS endpoints kube-apiserver can connect to securely (with the &#34;kubernetes.io/kubelet-serving&#34; signerName).\n\nThis API can be used to request client certificates to authenticate to kube-apiserver (with the &#34;kubernetes.io/kube-apiserver-client&#34; signerName), or to obtain certificates from custom non-Kubernetes signers.",
      "body": "\n\n`apiVersion: certificates.k8s.io/v1`\n\n`import \"k8s.io/api/certificates/v1\"`\n\n\n## CertificateSigningRequest {#CertificateSigningRequest}\n\nCertificateSigningRequest objects provide a mechanism to obtain x509 certificates by submitting a certificate signing request, and having it asynchronously approved and issued.\n\nKubelets use this API to obtain:\n 1. client certificates to authenticate to kube-apiserver (with the &#34;kubernetes.io/kube-apiserver-client-kubelet&#34; signerName).\n 2. serving certificates for TLS endpoints kube-apiserver can connect to securely (with the &#34;kubernetes.io/kubelet-serving&#34; signerName).\n\nThis API can be used to request client certificates to authenticate to kube-apiserver (with the &#34;kubernetes.io/kube-apiserver-client&#34; signerName), or to obtain certificates from custom non-Kubernetes signers.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td></td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">CertificateSigningRequestSpec</a></em></td>\n      <td>spec contains the certificate request, and is immutable after creation. Only the request, signerName, expirationSeconds, and usages fields can be set on creation. Other fields are derived by Kubernetes and cannot be modified by users.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">CertificateSigningRequestStatus</a></em></td>\n      <td>status contains information about whether the request is approved or denied, and the certificate issued by the signer, or the failure condition indicating signer failure.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## CertificateSigningRequestSpec {#CertificateSigningRequestSpec}\n\nCertificateSigningRequestSpec contains the certificate request.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>expirationSeconds</code><br/><em>integer</em></td>\n      <td>expirationSeconds is the requested duration of validity of the issued certificate. The certificate signer may issue a certificate with a different validity duration so a client must check the delta between the notBefore and and notAfter fields in the issued certificate to determine the actual duration.  The v1.22+ in-tree implementations of the well-known Kubernetes signers will honor this field as long as the requested duration is not greater than the maximum duration they will honor per the --cluster-signing-duration CLI flag to the Kubernetes controller manager.  Certificate signers may not honor this field for various reasons:    1. Old signer that is unaware of the field (such as the in-tree      implementations prior to v1.22)   2. Signer whose configured maximum is shorter than the requested duration   3. Signer whose configured minimum is longer than the requested duration  The minimum valid value for expirationSeconds is 600, i.e. 10 minutes.</td>\n    </tr>\n    <tr>\n      <td><code>extra</code><br/><em>object</em></td>\n      <td>extra contains extra attributes of the user that created the CertificateSigningRequest. Populated by the API server on creation and\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "CertificateSigningRequest"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificatesigningrequest-certificatesigningrequest",
      "type": "concept",
      "title": "CertificateSigningRequest {#CertificateSigningRequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificatesigningrequestspec-certificatesigningrequestspec",
      "type": "concept",
      "title": "CertificateSigningRequestSpec {#CertificateSigningRequestSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 3236,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificatesigningrequeststatus-certificatesigningrequeststatus",
      "type": "concept",
      "title": "CertificateSigningRequestStatus {#CertificateSigningRequestStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 8561,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificatesigningrequestlist-certificatesigningrequestlist",
      "type": "concept",
      "title": "CertificateSigningRequestList {#CertificateSigningRequestList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 10605,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificatesigningrequestcondition-certificatesigningrequestcondition",
      "type": "concept",
      "title": "CertificateSigningRequestCondition {#CertificateSigningRequestCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 12069,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/certificates/_index",
      "type": "page",
      "title": "Certificates",
      "summary": "Certificates are a feature in Kubernetes that enables secure communication between pods and services within a cluster.",
      "body": "Certificates are a feature in Kubernetes that enables secure communication between pods and services within a cluster.\n\n**Why it matters**\nCertificates provide authentication and encryption for secure communication.\n\n**Key facts**\n- Kubernetes supports multiple certificate types, including X.509 and TLS\n\n**Common pitfalls**\n- Misconfigured certificates can result in security vulnerabilities\n- Inadequate resource allocation for certificate management can lead to performance issues\n\n**Related**\nPods, Services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/_index/",
      "meta": {
        "weight": 90,
        "rel_path": "reference/kubernetes-api/certificates/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Certificates"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "type": "page",
      "title": "CSIStorageCapacity",
      "summary": "CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment.  This can be used when considering where to instantiate new PersistentVolumes.\n\nFor example this can express things like: - StorageClass &#34;standard&#34; has &#34;1234 GiB&#34; available in &#34;topology.kubernetes.io/zone=us-east1&#34; - StorageClass &#34;localssd&#34; has &#34;10 GiB&#34; available in &#34;kubernetes.io/hostname=knode-abc123&#34;\n\nThe following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero\n\nThe producer of these objects can decide which approach is more suitable.\n\nThey are consumed by the kube-scheduler when a CSI driver opts into capacity-aware scheduling with CSIDriverSpec.StorageCapacity. The scheduler compares the MaximumVolumeSize against the requested size of pending volumes to filter out unsuitable nodes. If MaximumVolumeSize is unset, it falls back to a comparison against the less precise Capacity. If that is also unset, the scheduler assumes that capacity is insufficient and tries some other node.",
      "body": "\n\n`apiVersion: storage.k8s.io/v1`\n\n`import \"k8s.io/api/storage/v1\"`\n\n\n## CSIStorageCapacity {#CSIStorageCapacity}\n\nCSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment.  This can be used when considering where to instantiate new PersistentVolumes.\n\nFor example this can express things like: - StorageClass &#34;standard&#34; has &#34;1234 GiB&#34; available in &#34;topology.kubernetes.io/zone=us-east1&#34; - StorageClass &#34;localssd&#34; has &#34;10 GiB&#34; available in &#34;kubernetes.io/hostname=knode-abc123&#34;\n\nThe following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero\n\nThe producer of these objects can decide which approach is more suitable.\n\nThey are consumed by the kube-scheduler when a CSI driver opts into capacity-aware scheduling with CSIDriverSpec.StorageCapacity. The scheduler compares the MaximumVolumeSize against the requested size of pending volumes to filter out unsuitable nodes. If MaximumVolumeSize is unset, it falls back to a comparison against the less precise Capacity. If that is also unset, the scheduler assumes that capacity is insufficient and tries some other node.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>capacity</code><br/><em><a href=\"\">Quantity</a></em></td>\n      <td>capacity is the value reported by the CSI driver in its GetCapacityResponse for a GetCapacityRequest with topology and parameters that match the previous fields.  The semantic is currently (CSI spec 1.2) defined as: The available capacity, in bytes, of the storage that can be used to provision volumes. If not set, that information is currently unavailable.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>maximumVolumeSize</code><br/><em><a href=\"\">Quantity</a></em></td>\n      <td>maximumVolumeSize is the value reported by the CSI driver in its GetCapacityResponse for a GetCapacityRequest with topology and parameters that match the previous fields.  This is defined since CSI spec 1.4.0 as the largest size that may be used in a CreateVolumeRequest.capacity_range.required_bytes field to create a volume with the same parameters as those in GetCapacityRequest. The corresponding value in the Kubernetes API is ResourceRequirements.Requests in a volume claim.</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. The name has no particular meaning. It must be a DNS subdomain (dots allowed, 253 characters). To ensure that there are no conflicts with other CSI drivers on the cluster, the recommendation is to use csisc-\\<uuid>, a generated name, or a reverse-domain name which ends with the unique CSI driver name.  Objects are namespaced.  More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>nodeTopology</code><br/><em><a href=\"\">LabelSelector</a></em></td>\n      \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIStorageCapacity"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csistoragecapacity-csistoragecapacity",
      "type": "concept",
      "title": "CSIStorageCapacity {#CSIStorageCapacity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csistoragecapacitylist-csistoragecapacitylist",
      "type": "concept",
      "title": "CSIStorageCapacityList {#CSIStorageCapacityList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 5549,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "type": "page",
      "title": "VolumeAttributesClass",
      "summary": "VolumeAttributesClass represents a specification of mutable volume attributes defined by the CSI driver. The class can be specified during dynamic provisioning of PersistentVolumeClaims, and changed in the PersistentVolumeClaim spec after provisioning.",
      "body": "\n\n`apiVersion: storage.k8s.io/v1`\n\n`import \"k8s.io/api/storage/v1\"`\n\n\n## VolumeAttributesClass {#VolumeAttributesClass}\n\nVolumeAttributesClass represents a specification of mutable volume attributes defined by the CSI driver. The class can be specified during dynamic provisioning of PersistentVolumeClaims, and changed in the PersistentVolumeClaim spec after provisioning.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>driverName</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Name of the CSI driver This field is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>parameters</code><br/><em>object</em></td>\n      <td>parameters hold volume attributes defined by the CSI driver. These values are opaque to the Kubernetes and are passed directly to the CSI driver. The underlying storage provider supports changing these attributes on an existing volume, however the parameters field itself is immutable. To invoke a volume update, a new VolumeAttributesClass should be created with new parameters, and the PersistentVolumeClaim should be updated to reference the new VolumeAttributesClass.  This field is required and must contain at least one key/value pair. The keys cannot be empty, and the maximum number of parameters is 512, with a cumulative max size of 256K. If the CSI driver rejects invalid parameters, the target PersistentVolumeClaim will be set to an \"Infeasible\" state in the modifyVolumeStatus field.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## VolumeAttributesClassList {#VolumeAttributesClassList}\n\nVolumeAttributesClassList is a collection of VolumeAttributesClass objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">VolumeAttributesClass array</a></em></td>\n      <td>items is the list of VolumeAttributesClass objects.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## Operations {#Ope\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/kubernetes-api/storage/volume-attributes-class-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "VolumeAttributesClass"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeattributesclass-volumeattributesclass",
      "type": "concept",
      "title": "VolumeAttributesClass {#VolumeAttributesClass}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeattributesclasslist-volumeattributesclasslist",
      "type": "concept",
      "title": "VolumeAttributesClassList {#VolumeAttributesClassList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 3175,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "type": "page",
      "title": "CSINode",
      "summary": "CSINode holds information about all CSI drivers installed on a node. CSI drivers do not need to create the CSINode object directly. As long as they use the node-driver-registrar sidecar container, the kubelet will automatically populate the CSINode object for the CSI driver as part of kubelet plugin registration. CSINode has the same name as a node. If the object is missing, it means either there are no CSI Drivers available on the node, or the Kubelet version is low enough that it doesn&#39;t create this object. CSINode has an OwnerReference that points to the corresponding node object.",
      "body": "\n\n`apiVersion: storage.k8s.io/v1`\n\n`import \"k8s.io/api/storage/v1\"`\n\n\n## CSINode {#CSINode}\n\nCSINode holds information about all CSI drivers installed on a node. CSI drivers do not need to create the CSINode object directly. As long as they use the node-driver-registrar sidecar container, the kubelet will automatically populate the CSINode object for the CSI driver as part of kubelet plugin registration. CSINode has the same name as a node. If the object is missing, it means either there are no CSI Drivers available on the node, or the Kubelet version is low enough that it doesn&#39;t create this object. CSINode has an OwnerReference that points to the corresponding node object.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. metadata.name must be the Kubernetes node name.</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">CSINodeSpec</a></em></td>\n      <td>spec is the specification of CSINode</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## CSINodeSpec {#CSINodeSpec}\n\nCSINodeSpec holds information about the specification of all CSI drivers installed on a node\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>drivers</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">CSINodeDriver array</a></em><br/><em>patch strategy: merge on key <code>name</code></em></td>\n      <td>drivers is a list of information of all CSI Drivers existing on a node. If all drivers in the list are uninstalled, this can become empty.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## CSINodeList {#CSINodeList}\n\nCSINodeList is a collection of CSINode objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">CSINode array</a></em></td>\n      <td>items is the list of CSINode</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## CSINodeDriver {#CSINodeDriver}\n\nCSINodeDriver holds information about the specification of one CSI driver installed on a node\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/storage/csi-node-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "CSINode"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csinode-csinode",
      "type": "concept",
      "title": "CSINode {#CSINode}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csinodespec-csinodespec",
      "type": "concept",
      "title": "CSINodeSpec {#CSINodeSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 2571,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csinodelist-csinodelist",
      "type": "concept",
      "title": "CSINodeList {#CSINodeList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 3172,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csinodedriver-csinodedriver",
      "type": "concept",
      "title": "CSINodeDriver {#CSINodeDriver}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 4606,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumenoderesources-volumenoderesources",
      "type": "concept",
      "title": "VolumeNodeResources {#VolumeNodeResources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 6794,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "type": "page",
      "title": "StorageClass",
      "summary": "StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.\n\nStorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.",
      "body": "\n\n`apiVersion: storage.k8s.io/v1`\n\n`import \"k8s.io/api/storage/v1\"`\n\n\n## StorageClass {#StorageClass}\n\nStorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.\n\nStorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>allowVolumeExpansion</code><br/><em>boolean</em></td>\n      <td>allowVolumeExpansion shows whether the storage class allow volume expand.</td>\n    </tr>\n    <tr>\n      <td><code>allowedTopologies</code><br/><em><a href=\"\">TopologySelectorTerm array</a></em></td>\n      <td>allowedTopologies restrict the node topologies where volumes can be dynamically provisioned. Each volume plugin defines its own supported topology specifications. An empty TopologySelectorTerm list means there is no topology restriction. This field is only honored by servers that enable the VolumeScheduling feature.</td>\n    </tr>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>mountOptions</code><br/><em>string array</em></td>\n      <td>mountOptions controls the mountOptions for dynamically provisioned PersistentVolumes of this storage class. e.g. [\"ro\", \"soft\"]. Not validated - mount of the PVs will simply fail if one is invalid.</td>\n    </tr>\n    <tr>\n      <td><code>parameters</code><br/><em>object</em></td>\n      <td>parameters holds the parameters for the provisioner that should create volumes of this storage class.</td>\n    </tr>\n    <tr>\n      <td><code>provisioner</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>provisioner indicates the type of the provisioner.</td>\n    </tr>\n    <tr>\n      <td><code>reclaimPolicy</code><br/><em>string</em></td>\n      <td>reclaimPolicy controls the reclaimPolicy for dynamically provisioned PersistentVolumes of this storage class. Defaults to Delete.<br/><br/>Possible enum values:<br/> - `\"Delete\"` means the volume will be deleted from Kubernetes on release from its claim. The volume plugin must support Deletion.<br/> - `\"Recycle\"` means the volume will be recycled back into the pool of unbound persistent volumes on release from its claim. The volume plugin must support Recycling.<br/> - `\"Retain\"` means the volume will be left in its current phase (Released) for manual reclamation by the administrator. The default policy is Retain.</td>\n    </tr>\n    <tr>\n      <td><code>volumeBindingMode</code><br/><em>string</em></td>\n      <td>volumeBindingMode indicates how PersistentVolumeClaims should be provisioned and bound.  When unset, VolumeBindingImmediate is used. This field is only honored by servers that enable the VolumeScheduling feature.<br/><br/>Possible enum values:<br/> - `\"Immediate\"` indicates that PersistentVolumeClaims should be immediately provisioned and bound. This is the default mode.<br/> - `\"WaitForFirstConsumer\"` indicates that PersistentVolumeClaims should not be provisioned and bound unt\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/kubernetes-api/storage/storage-class-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "StorageClass"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageclass-storageclass",
      "type": "concept",
      "title": "StorageClass {#StorageClass}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageclasslist-storageclasslist",
      "type": "concept",
      "title": "StorageClassList {#StorageClassList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 4845,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topologyselectorlabelrequirement-topologyselectorlabelrequirement",
      "type": "concept",
      "title": "TopologySelectorLabelRequirement {#TopologySelectorLabelRequirement}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 6316,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topologyselectorterm-topologyselectorterm",
      "type": "concept",
      "title": "TopologySelectorTerm {#TopologySelectorTerm}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 7001,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "type": "page",
      "title": "VolumeAttachment",
      "summary": "VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node.\n\nVolumeAttachment objects are non-namespaced.",
      "body": "\n\n`apiVersion: storage.k8s.io/v1`\n\n`import \"k8s.io/api/storage/v1\"`\n\n\n## VolumeAttachment {#VolumeAttachment}\n\nVolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node.\n\nVolumeAttachment objects are non-namespaced.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">VolumeAttachmentSpec</a></em></td>\n      <td>spec represents specification of the desired attach/detach volume behavior. Populated by the Kubernetes system.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">VolumeAttachmentStatus</a></em></td>\n      <td>status represents status of the VolumeAttachment request. Populated by the entity completing the attach or detach operation, i.e. the external-attacher.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## VolumeAttachmentSpec {#VolumeAttachmentSpec}\n\nVolumeAttachmentSpec is the specification of a VolumeAttachment request.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>attacher</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>attacher indicates the name of the volume driver that MUST handle this request. This is the name returned by GetPluginName().</td>\n    </tr>\n    <tr>\n      <td><code>nodeName</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>nodeName represents the node that the volume should be attached to.</td>\n    </tr>\n    <tr>\n      <td><code>source</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">VolumeAttachmentSource</a></em></td>\n      <td>source represents the volume that should be attached.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## VolumeAttachmentStatus {#VolumeAttachmentStatus}\n\nVolumeAttachmentStatus is the status of a VolumeAttachment request.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>attachError</code><br/><em><a href=\"\">VolumeError</a></em></td>\n      <td>attachError represents the last error encountered during attach operation, if any. This field must only be set by the entity completing the attach operation, i.e. the external-attacher.</td>\n    </tr>\n    <tr>\n      <td><code>attached</code>&nbsp;<strong>*</strong><br/><em>boolean</em></td>\n      <td>attached indicates the volume is successfully attached. This field must only be set by the entity completing the attach operation, i.e. the external-attacher.</td>\n    </tr>\n    <tr>\n      <td><code>attachmentMetadata</code><br/><em>object</em></td>\n      <td>attachmentMetadata is populated with any information returned by the attach operation, upon successful attach, that must be passed into subsequent WaitForAttach or Mount calls. This field must only be set by the entity completing the attach operation, i.e. the external-attacher.</td>\n    </tr>\n    <tr>\n      <td><code>detachError</code><br/><em><a href=\"\">VolumeError</a></em></td>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/kubernetes-api/storage/volume-attachment-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "VolumeAttachment"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeattachment-volumeattachment",
      "type": "concept",
      "title": "VolumeAttachment {#VolumeAttachment}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeattachmentspec-volumeattachmentspec",
      "type": "concept",
      "title": "VolumeAttachmentSpec {#VolumeAttachmentSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 2603,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeattachmentstatus-volumeattachmentstatus",
      "type": "concept",
      "title": "VolumeAttachmentStatus {#VolumeAttachmentStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 3492,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeattachmentlist-volumeattachmentlist",
      "type": "concept",
      "title": "VolumeAttachmentList {#VolumeAttachmentList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 5029,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeattachmentsource-volumeattachmentsource",
      "type": "concept",
      "title": "VolumeAttachmentSource {#VolumeAttachmentSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 6536,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeerror-volumeerror",
      "type": "concept",
      "title": "VolumeError {#VolumeError}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 7665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/storage/_index",
      "type": "page",
      "title": "Storage",
      "summary": "Storage in Kubernetes refers to the management and organization of data storage resources.",
      "body": "Storage in Kubernetes refers to the management and organization of data storage resources.\n\n**Why it matters**\nProper storage management is crucial for efficient cluster operation and data accessibility.\n\n**Key facts**\n- Kubernetes provides various storage classes for different use cases, such as persistent volumes (PVs) and stateful sets.\n- Storage can be provisioned dynamically or statically, depending on the requirements of the application.\n\n**Common pitfalls**\n- Insufficient storage resources can lead to performance issues and data loss.\n- Incorrect storage configuration can result in data corruption or unauthorized access.\n\n**Related**\nPersistent Volumes (PVs), Stateful Sets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/_index/",
      "meta": {
        "weight": 210,
        "rel_path": "reference/kubernetes-api/storage/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Storage"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "type": "page",
      "title": "CSIDriver",
      "summary": "CSIDriver captures information about a Container Storage Interface (CSI) volume driver deployed on the cluster. Kubernetes attach detach controller uses this object to determine whether attach is required. Kubelet uses this object to determine whether pod information needs to be passed on mount. CSIDriver objects are non-namespaced.",
      "body": "\n\n`apiVersion: storage.k8s.io/v1`\n\n`import \"k8s.io/api/storage/v1\"`\n\n\n## CSIDriver {#CSIDriver}\n\nCSIDriver captures information about a Container Storage Interface (CSI) volume driver deployed on the cluster. Kubernetes attach detach controller uses this object to determine whether attach is required. Kubelet uses this object to determine whether pod information needs to be passed on mount. CSIDriver objects are non-namespaced.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object metadata. metadata.Name indicates the name of the CSI driver that this object refers to; it MUST be the same name returned by the CSI GetPluginName() call for that driver. The driver name must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), dots (.), and alphanumerics between. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">CSIDriverSpec</a></em></td>\n      <td>spec represents the specification of the CSI Driver.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## CSIDriverSpec {#CSIDriverSpec}\n\nCSIDriverSpec is the specification of a CSIDriver.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>attachRequired</code><br/><em>boolean</em></td>\n      <td>attachRequired indicates this CSI volume driver requires an attach operation (because it implements the CSI ControllerPublishVolume() method), and that the Kubernetes attach detach controller should call the attach volume interface which checks the volumeattachment status and waits until the volume is attached before proceeding to mounting. The CSI external-attacher coordinates with CSI volume driver and updates the volumeattachment status when the attach operation is complete. If the value is specified to false, the attach operation will be skipped. Otherwise the attach operation will be called.  This field is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>fsGroupPolicy</code><br/><em>string</em></td>\n      <td>fsGroupPolicy defines if the underlying volume supports changing ownership and permission of the volume before being mounted. Refer to the specific FSGroupPolicy values for additional details.  This field was immutable in Kubernetes \\< 1.29 and now is mutable.  Defaults to ReadWriteOnceWithFSType, which will examine each volume to determine if Kubernetes should modify ownership and permissions of the volume. With the default policy the defined fsGroup will only be applied if a fstype is defined and the volume's access mode contains ReadWriteOnce.</td>\n    </tr>\n    <tr>\n      <td><code>nodeAllocatableUpdatePeriodSeconds</code><br/><em>integer</em></td>\n      <td>nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon dete\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/storage/csi-driver-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIDriver"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csidriver-csidriver",
      "type": "concept",
      "title": "CSIDriver {#CSIDriver}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csidriverspec-csidriverspec",
      "type": "concept",
      "title": "CSIDriverSpec {#CSIDriverSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 2718,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csidriverlist-csidriverlist",
      "type": "concept",
      "title": "CSIDriverList {#CSIDriverList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 12710,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tokenrequest-tokenrequest",
      "type": "concept",
      "title": "TokenRequest {#TokenRequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 14160,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/batch/job-v1",
      "type": "page",
      "title": "Job",
      "summary": "Job represents the configuration of a single job.",
      "body": "\n\n`apiVersion: batch/v1`\n\n`import \"k8s.io/api/batch/v1\"`\n\n\n## Job {#Job}\n\nJob represents the configuration of a single job.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">JobSpec</a></em></td>\n      <td>Specification of the desired behavior of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">JobStatus</a></em></td>\n      <td>Current status of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## JobSpec {#JobSpec}\n\nJobSpec describes how the job execution will look like.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>activeDeadlineSeconds</code><br/><em>integer</em></td>\n      <td>Specifies the duration in seconds relative to the startTime that the job may be continuously active before the system tries to terminate it; value must be positive integer. If a Job is suspended (at creation or through an update), this timer will effectively be stopped and reset when the Job is resumed again.</td>\n    </tr>\n    <tr>\n      <td><code>backoffLimit</code><br/><em>integer</em></td>\n      <td>Specifies the number of retries before marking this job failed. Defaults to 6, unless backoffLimitPerIndex (only Indexed Job) is specified. When backoffLimitPerIndex is specified, backoffLimit defaults to 2147483647.</td>\n    </tr>\n    <tr>\n      <td><code>backoffLimitPerIndex</code><br/><em>integer</em></td>\n      <td>Specifies the limit for the number of retries within an index before marking this index as failed. When enabled the number of failures per index is kept in the pod's batch.kubernetes.io/job-index-failure-count annotation. It can only be set when Job's completionMode=Indexed, and the Pod's restart policy is Never. The field is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>completionMode</code><br/><em>string</em></td>\n      <td>completionMode specifies how Pod completions are tracked. It can be `NonIndexed` (default) or `Indexed`.  `NonIndexed` means that the Job is considered complete when there have been .spec.completions successfully completed Pods. Each Pod completion is homologous to each other.  `Indexed` means that the Pods of a Job get an associated completion index from 0 to (.spec.completions - 1), available in the annotation batch.kubernetes.io/job-completion-index. The Job is considered complete when there is one successfully completed Pod for each index. When value is `Indexed`, .spec.completions must be specified and `.spec.parallelism` must be less than or equal to 10^5. In addition, The Pod name takes the form `$(job-name)-$(index)-$(random-string)`, the Pod hostname takes the form `$(job-name)-$(index)`.  More completion modes can be ad\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/batch/job-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Job"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:job-job",
      "type": "concept",
      "title": "Job {#Job}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 634,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobspec-jobspec",
      "type": "concept",
      "title": "JobSpec {#JobSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 2420,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobstatus-jobstatus",
      "type": "concept",
      "title": "JobStatus {#JobStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 12468,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:joblist-joblist",
      "type": "concept",
      "title": "JobList {#JobList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 17958,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobcondition-jobcondition",
      "type": "concept",
      "title": "JobCondition {#JobCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 19355,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podfailurepolicy-podfailurepolicy",
      "type": "concept",
      "title": "PodFailurePolicy {#PodFailurePolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 20572,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podfailurepolicyonexitcodesrequirement-podfailurepolicyonexitcodesrequirement",
      "type": "concept",
      "title": "PodFailurePolicyOnExitCodesRequirement {#PodFailurePolicyOnExitCodesRequirement}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 21308,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podfailurepolicyonpodconditionspattern-podfailurepolicyonpodconditionspattern",
      "type": "concept",
      "title": "PodFailurePolicyOnPodConditionsPattern {#PodFailurePolicyOnPodConditionsPattern}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 23688,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podfailurepolicyrule-podfailurepolicyrule",
      "type": "concept",
      "title": "PodFailurePolicyRule {#PodFailurePolicyRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 24479,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:successpolicy-successpolicy",
      "type": "concept",
      "title": "SuccessPolicy {#SuccessPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 27079,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:successpolicyrule-successpolicyrule",
      "type": "concept",
      "title": "SuccessPolicyRule {#SuccessPolicyRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 27958,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uncountedterminatedpods-uncountedterminatedpods",
      "type": "concept",
      "title": "UncountedTerminatedPods {#UncountedTerminatedPods}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 29802,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "type": "page",
      "title": "CronJob",
      "summary": "CronJob represents the configuration of a single cron job.",
      "body": "\n\n`apiVersion: batch/v1`\n\n`import \"k8s.io/api/batch/v1\"`\n\n\n## CronJob {#CronJob}\n\nCronJob represents the configuration of a single cron job.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">CronJobSpec</a></em></td>\n      <td>Specification of the desired behavior of a cron job, including the schedule. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">CronJobStatus</a></em></td>\n      <td>Current status of a cron job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## CronJobSpec {#CronJobSpec}\n\nCronJobSpec describes how the job execution will look like and when it will actually run.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>concurrencyPolicy</code><br/><em>string</em></td>\n      <td>Specifies how to treat concurrent executions of a Job. Valid values are:  - \"Allow\" (default): allows CronJobs to run concurrently; - \"Forbid\": forbids concurrent runs, skipping next run if previous run hasn't finished yet; - \"Replace\": cancels currently running job and replaces it with a new one<br/><br/>Possible enum values:<br/> - `\"Allow\"` allows CronJobs to run concurrently.<br/> - `\"Forbid\"` forbids concurrent runs, skipping next run if previous hasn't finished yet.<br/> - `\"Replace\"` cancels currently running job and replaces it with a new one.</td>\n    </tr>\n    <tr>\n      <td><code>failedJobsHistoryLimit</code><br/><em>integer</em></td>\n      <td>The number of failed finished jobs to retain. Value must be non-negative integer. Defaults to 1.</td>\n    </tr>\n    <tr>\n      <td><code>jobTemplate</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">JobTemplateSpec</a></em></td>\n      <td>Specifies the job that will be created when executing a CronJob.</td>\n    </tr>\n    <tr>\n      <td><code>schedule</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>The schedule in Cron format, see https://en.wikipedia.org/wiki/Cron.</td>\n    </tr>\n    <tr>\n      <td><code>startingDeadlineSeconds</code><br/><em>integer</em></td>\n      <td>Optional deadline in seconds for starting the job if it misses scheduled time for any reason.  Missed jobs executions will be counted as failed ones.</td>\n    </tr>\n    <tr>\n      <td><code>successfulJobsHistoryLimit</code><br/><em>integer</em></td>\n      <td>The number of successful finished jobs to retain. Value must be non-negative integer. Defaults to 3.</td>\n    </tr>\n    <tr>\n      <td><code>suspend</code><br/><em>boolean</em></td>\n      <td>This flag tells the controller to suspend subsequent executions, it does not apply to already started executions.  Defaults to false.</td>\n    </tr>\n    <tr>\n      <td><code>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/batch/cron-job-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "CronJob"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cronjob-cronjob",
      "type": "concept",
      "title": "CronJob {#CronJob}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 634,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cronjobspec-cronjobspec",
      "type": "concept",
      "title": "CronJobSpec {#CronJobSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 2511,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cronjobstatus-cronjobstatus",
      "type": "concept",
      "title": "CronJobStatus {#CronJobStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 5643,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cronjoblist-cronjoblist",
      "type": "concept",
      "title": "CronJobList {#CronJobList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 6529,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobtemplatespec-jobtemplatespec",
      "type": "concept",
      "title": "JobTemplateSpec {#JobTemplateSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 7960,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/batch/_index",
      "type": "page",
      "title": "Batch",
      "summary": "Batch in Kubernetes refers to the execution of batch jobs, which are applications that run to completion.",
      "body": "Batch in Kubernetes refers to the execution of batch jobs, which are applications that run to completion.\n\n**Why it matters**\nBatch processing enables efficient execution of long-running tasks and improves cluster utilization.\n\n**Key facts**\n- Kubernetes provides a built-in Job resource for managing batch workloads.\n- Batch jobs can be scheduled using CronJobs or directly created as Jobs.\n\n**Common pitfalls**\n- Incorrect job configuration can lead to failed or stuck jobs.\n- Insufficient resources allocated to batch jobs can result in performance issues.\n\n**Related**\nJobs, CronJobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/_index/",
      "meta": {
        "weight": 80,
        "rel_path": "reference/kubernetes-api/batch/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Batch"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "type": "page",
      "title": "ValidatingWebhookConfiguration",
      "summary": "ValidatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and object without changing it.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## ValidatingWebhookConfiguration {#ValidatingWebhookConfiguration}\n\nValidatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and object without changing it.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.</td>\n    </tr>\n    <tr>\n      <td><code>webhooks</code><br/><em><a href=\"\">ValidatingWebhook array</a></em><br/><em>patch strategy: merge on key <code>name</code></em></td>\n      <td>webhooks is a list of webhooks and the affected resources and operations.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ValidatingWebhookConfigurationList {#ValidatingWebhookConfigurationList}\n\nValidatingWebhookConfigurationList is a list of ValidatingWebhookConfiguration.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ValidatingWebhookConfiguration array</a></em></td>\n      <td>List of ValidatingWebhookConfiguration.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>metadata is the standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ValidatingWebhook {#ValidatingWebhook}\n\nValidatingWebhook describes an admission webhook and the resources and operations it applies to.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>admissionReviewVersions</code>&nbsp;<strong>*</strong><br/><em>string array</em></td>\n      <td>admissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy.</td>\n    \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ValidatingWebhookConfiguration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingwebhookconfiguration-validatingwebhookconfiguration",
      "type": "concept",
      "title": "ValidatingWebhookConfiguration {#ValidatingWebhookConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingwebhookconfigurationlist-validatingwebhookconfigurationlist",
      "type": "concept",
      "title": "ValidatingWebhookConfigurationList {#ValidatingWebhookConfigurationList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 2354,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingwebhook-validatingwebhook",
      "type": "concept",
      "title": "ValidatingWebhook {#ValidatingWebhook}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 3967,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "type": "page",
      "title": "MutatingAdmissionPolicy",
      "summary": "MutatingAdmissionPolicy describes the definition of an admission mutation policy that mutates the object coming into admission chain.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## MutatingAdmissionPolicy {#MutatingAdmissionPolicy}\n\nMutatingAdmissionPolicy describes the definition of an admission mutation policy that mutates the object coming into admission chain.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">MutatingAdmissionPolicySpec</a></em></td>\n      <td>spec defines the desired behavior of the MutatingAdmissionPolicy.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## MutatingAdmissionPolicySpec {#MutatingAdmissionPolicySpec}\n\nMutatingAdmissionPolicySpec defines the desired behavior of the admission policy.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>failurePolicy</code><br/><em>string</em></td>\n      <td>failurePolicy defines how to handle failures for the admission policy. Failures can occur from CEL expression parse errors, type check errors, runtime errors and invalid or mis-configured policy definitions or bindings.  A policy is invalid if paramKind refers to a non-existent Kind. A binding is invalid if paramRef.name refers to a non-existent resource.  failurePolicy does not define how validations that evaluate to false are handled.  Allowed values are Ignore or Fail. Defaults to Fail.<br/><br/>Possible enum values:<br/> - `\"Fail\"` means that an error calling the webhook causes the admission to fail.<br/> - `\"Ignore\"` means that an error calling the webhook is ignored.</td>\n    </tr>\n    <tr>\n      <td><code>matchConditions</code><br/><em><a href=\"\">MatchCondition array</a></em><br/><em>patch strategy: merge on key <code>name</code></em></td>\n      <td>matchConditions is a list of conditions that must be met for a request to be validated. Match conditions filter requests that have already been matched by the matchConstraints. An empty list of matchConditions matches all requests. There are a maximum of 64 match conditions allowed.  If a parameter object is provided, it can be accessed via the `params` handle in the same manner as validation expressions.  The exact matching logic is (in order):   1. If ANY matchCondition evaluates to FALSE, the policy is skipped.   2. If ALL matchConditions evaluate to TRUE, the policy is evaluated.   3. If any matchCondition evaluates to an error (but none are FALSE):      - If failurePolicy=Fail, reject the request      - If failurePolicy=Ignore, the policy is skipped</td>\n    </tr>\n    <tr>\n      <td><code>matchConstraints</code><br/><em><a href=\"\">MatchResources</a></em></td>\n      <td>matchConstraints specifies what resources this policy is designed to validate. The MutatingAdmissionPolicy cares about a request if it matches _all_ Constraints. However, in order to prevent clusters from being put into an unstable state that cannot be recovered from via the API MutatingAdmissionPolicy cannot match MutatingAdmis\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "MutatingAdmissionPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutatingadmissionpolicy-mutatingadmissionpolicy",
      "type": "concept",
      "title": "MutatingAdmissionPolicy {#MutatingAdmissionPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutatingadmissionpolicyspec-mutatingadmissionpolicyspec",
      "type": "concept",
      "title": "MutatingAdmissionPolicySpec {#MutatingAdmissionPolicySpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 2278,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutatingadmissionpolicylist-mutatingadmissionpolicylist",
      "type": "concept",
      "title": "MutatingAdmissionPolicyList {#MutatingAdmissionPolicyList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 8016,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applyconfiguration-applyconfiguration",
      "type": "concept",
      "title": "ApplyConfiguration {#ApplyConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 9575,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jsonpatch-jsonpatch",
      "type": "concept",
      "title": "JSONPatch {#JSONPatch}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 12135,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutation-mutation",
      "type": "concept",
      "title": "Mutation {#Mutation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 15645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "type": "page",
      "title": "ValidatingAdmissionPolicy",
      "summary": "ValidatingAdmissionPolicy describes the definition of an admission validation policy that accepts or rejects an object without changing it.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## ValidatingAdmissionPolicy {#ValidatingAdmissionPolicy}\n\nValidatingAdmissionPolicy describes the definition of an admission validation policy that accepts or rejects an object without changing it.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">ValidatingAdmissionPolicySpec</a></em></td>\n      <td>spec defines the desired behavior of the ValidatingAdmissionPolicy.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">ValidatingAdmissionPolicyStatus</a></em></td>\n      <td>status represents the current status of the ValidatingAdmissionPolicy, including warnings that are useful to determine if the policy behaves in the expected way. Populated by the system. Read-only.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ValidatingAdmissionPolicySpec {#ValidatingAdmissionPolicySpec}\n\nValidatingAdmissionPolicySpec is the specification of the desired behavior of the AdmissionPolicy.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>auditAnnotations</code><br/><em><a href=\"\">AuditAnnotation array</a></em></td>\n      <td>auditAnnotations contains CEL expressions which are used to produce audit annotations for the audit event of the API request. validations and auditAnnotations may not both be empty; a least one of validations or auditAnnotations is required.</td>\n    </tr>\n    <tr>\n      <td><code>failurePolicy</code><br/><em>string</em></td>\n      <td>failurePolicy defines how to handle failures for the admission policy. Failures can occur from CEL expression parse errors, type check errors, runtime errors and invalid or mis-configured policy definitions or bindings.  A policy is invalid if spec.paramKind refers to a non-existent Kind. A binding is invalid if spec.paramRef.name refers to a non-existent resource.  failurePolicy does not define how validations that evaluate to false are handled.  When failurePolicy is set to Fail, ValidatingAdmissionPolicyBinding validationActions define how failures are enforced.  Allowed values are Ignore or Fail. Defaults to Fail.<br/><br/>Possible enum values:<br/> - `\"Fail\"` means that an error calling the webhook causes the admission to fail.<br/> - `\"Ignore\"` means that an error calling the webhook is ignored.</td>\n    </tr>\n    <tr>\n      <td><code>matchConditions</code><br/><em><a href=\"\">MatchCondition array</a></em><br/><em>patch strategy: merge on key <code>name</code></em></td>\n      <td>matchConditions is a list of conditions that must be met for a request to be validated. Match conditions filter requests that have already been matched by the rules, namespaceSelector, and objectSelector. An empty list of matchConditions matches all requests. There are a maximum of 64 match conditions allowed.  If a parameter object is provided, it ca\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ValidatingAdmissionPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingadmissionpolicy-validatingadmissionpolicy",
      "type": "concept",
      "title": "ValidatingAdmissionPolicy {#ValidatingAdmissionPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingadmissionpolicyspec-validatingadmissionpolicyspec",
      "type": "concept",
      "title": "ValidatingAdmissionPolicySpec {#ValidatingAdmissionPolicySpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 2667,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingadmissionpolicystatus-validatingadmissionpolicystatus",
      "type": "concept",
      "title": "ValidatingAdmissionPolicyStatus {#ValidatingAdmissionPolicyStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 7637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingadmissionpolicylist-validatingadmissionpolicylist",
      "type": "concept",
      "title": "ValidatingAdmissionPolicyList {#ValidatingAdmissionPolicyList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 8614,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:auditannotation-auditannotation",
      "type": "concept",
      "title": "AuditAnnotation {#AuditAnnotation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 10187,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:expressionwarning-expressionwarning",
      "type": "concept",
      "title": "ExpressionWarning {#ExpressionWarning}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 12104,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:typechecking-typechecking",
      "type": "concept",
      "title": "TypeChecking {#TypeChecking}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 12961,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validation-validation",
      "type": "concept",
      "title": "Validation {#Validation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 13439,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "type": "page",
      "title": "MutatingAdmissionPolicyBinding",
      "summary": "MutatingAdmissionPolicyBinding binds the MutatingAdmissionPolicy with parametrized resources. MutatingAdmissionPolicyBinding and the optional parameter resource together define how cluster administrators configure policies for clusters.\n\nFor a given admission request, each binding will cause its policy to be evaluated N times, where N is 1 for policies/bindings that don&#39;t use params, otherwise N is the number of parameters selected by the binding. Each evaluation is constrained by a [runtime cost budget](https://kubernetes.io/docs/reference/using-api/cel/#runtime-cost-budget).\n\nAdding/removing policies, bindings, or params can not affect whether a given (policy, binding, param) combination is within its own CEL budget.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## MutatingAdmissionPolicyBinding {#MutatingAdmissionPolicyBinding}\n\nMutatingAdmissionPolicyBinding binds the MutatingAdmissionPolicy with parametrized resources. MutatingAdmissionPolicyBinding and the optional parameter resource together define how cluster administrators configure policies for clusters.\n\nFor a given admission request, each binding will cause its policy to be evaluated N times, where N is 1 for policies/bindings that don&#39;t use params, otherwise N is the number of parameters selected by the binding. Each evaluation is constrained by a [runtime cost budget](https://kubernetes.io/docs/reference/using-api/cel/#runtime-cost-budget).\n\nAdding/removing policies, bindings, or params can not affect whether a given (policy, binding, param) combination is within its own CEL budget.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">MutatingAdmissionPolicyBindingSpec</a></em></td>\n      <td>spec defines the desired behavior of the MutatingAdmissionPolicyBinding.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## MutatingAdmissionPolicyBindingSpec {#MutatingAdmissionPolicyBindingSpec}\n\nMutatingAdmissionPolicyBindingSpec defines the specification of the MutatingAdmissionPolicyBinding.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>matchResources</code><br/><em><a href=\"\">MatchResources</a></em></td>\n      <td>matchResources limits what resources match this binding and may be mutated by it. Note that if matchResources matches a resource, the resource must also match a policy's matchConstraints and matchConditions before the resource may be mutated. When matchResources is unset, it does not constrain resource matching, and only the policy's matchConstraints and matchConditions must match for the resource to be mutated. Additionally, matchResources.resourceRules are optional and do not constraint matching when unset. Note that this is differs from MutatingAdmissionPolicy matchConstraints, where resourceRules are required. The CREATE, UPDATE and CONNECT operations are allowed.  The DELETE operation may not be matched. '\\*' matches CREATE, UPDATE and CONNECT.</td>\n    </tr>\n    <tr>\n      <td><code>paramRef</code><br/><em><a href=\"\">ParamRef</a></em></td>\n      <td>paramRef specifies the parameter resource used to configure the admission control policy. It should point to a resource of the type specified in spec.ParamKind of the bound MutatingAdmissionPolicy. If the policy specifies a ParamKind and the resource referred to by ParamRef does not exist, this binding is considered mis-configured and the FailurePolicy of the MutatingAdmissionPolicy applied. If the policy does not specify a ParamKind then this field is ignored, and the rules are evaluated without a param.</td>\n    </tr>\n    <tr>\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "MutatingAdmissionPolicyBinding"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutatingadmissionpolicybinding-mutatingadmissionpolicybinding",
      "type": "concept",
      "title": "MutatingAdmissionPolicyBinding {#MutatingAdmissionPolicyBinding}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutatingadmissionpolicybindingspec-mutatingadmissionpolicybindingspec",
      "type": "concept",
      "title": "MutatingAdmissionPolicyBindingSpec {#MutatingAdmissionPolicyBindingSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 2912,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutatingadmissionpolicybindinglist-mutatingadmissionpolicybindinglist",
      "type": "concept",
      "title": "MutatingAdmissionPolicyBindingList {#MutatingAdmissionPolicyBindingList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 5157,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "type": "page",
      "title": "ValidatingAdmissionPolicyBinding",
      "summary": "ValidatingAdmissionPolicyBinding binds the ValidatingAdmissionPolicy with paramerized resources. ValidatingAdmissionPolicyBinding and parameter CRDs together define how cluster administrators configure policies for clusters.\n\nFor a given admission request, each binding will cause its policy to be evaluated N times, where N is 1 for policies/bindings that don&#39;t use params, otherwise N is the number of parameters selected by the binding.\n\nThe CEL expressions of a policy must have a computed CEL cost below the maximum CEL budget. Each evaluation of the policy is given an independent CEL cost budget. Adding/removing policies, bindings, or params can not affect whether a given (policy, binding, param) combination is within its own CEL budget.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## ValidatingAdmissionPolicyBinding {#ValidatingAdmissionPolicyBinding}\n\nValidatingAdmissionPolicyBinding binds the ValidatingAdmissionPolicy with paramerized resources. ValidatingAdmissionPolicyBinding and parameter CRDs together define how cluster administrators configure policies for clusters.\n\nFor a given admission request, each binding will cause its policy to be evaluated N times, where N is 1 for policies/bindings that don&#39;t use params, otherwise N is the number of parameters selected by the binding.\n\nThe CEL expressions of a policy must have a computed CEL cost below the maximum CEL budget. Each evaluation of the policy is given an independent CEL cost budget. Adding/removing policies, bindings, or params can not affect whether a given (policy, binding, param) combination is within its own CEL budget.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ValidatingAdmissionPolicyBindingSpec</a></em></td>\n      <td>spec defines the desired behavior of the ValidatingAdmissionPolicyBinding.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ValidatingAdmissionPolicyBindingSpec {#ValidatingAdmissionPolicyBindingSpec}\n\nValidatingAdmissionPolicyBindingSpec is the specification of the ValidatingAdmissionPolicyBinding.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>matchResources</code><br/><em><a href=\"\">MatchResources</a></em></td>\n      <td>matchResources declares what resources match this binding and will be validated by it. Note that this is intersected with the policy's matchConstraints, so only requests that are matched by the policy can be selected by this. If this is unset, all resources matched by the policy are validated by this binding When resourceRules is unset, it does not constrain resource matching. If a resource is matched by the other fields of this object, it will be validated. Note that this is differs from ValidatingAdmissionPolicy matchConstraints, where resourceRules are required.</td>\n    </tr>\n    <tr>\n      <td><code>paramRef</code><br/><em><a href=\"\">ParamRef</a></em></td>\n      <td>paramRef specifies the parameter resource used to configure the admission control policy. It should point to a resource of the type specified in ParamKind of the bound ValidatingAdmissionPolicy. If the policy specifies a ParamKind and the resource referred to by ParamRef does not exist, this binding is considered mis-configured and the FailurePolicy of the ValidatingAdmissionPolicy applied. If the policy does not specify a ParamKind then this field is ignored, and the rules are evaluated without a param.</td>\n    </tr>\n    <tr>\n      <td><code>policyName</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>policyName references a ValidatingAdmissio\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ValidatingAdmissionPolicyBinding"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingadmissionpolicybinding-validatingadmissionpolicybinding",
      "type": "concept",
      "title": "ValidatingAdmissionPolicyBinding {#ValidatingAdmissionPolicyBinding}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingadmissionpolicybindingspec-validatingadmissionpolicybindingspec",
      "type": "concept",
      "title": "ValidatingAdmissionPolicyBindingSpec {#ValidatingAdmissionPolicyBindingSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 2965,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingadmissionpolicybindinglist-validatingadmissionpolicybindinglist",
      "type": "concept",
      "title": "ValidatingAdmissionPolicyBindingList {#ValidatingAdmissionPolicyBindingList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 7323,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "type": "page",
      "title": "MutatingWebhookConfiguration",
      "summary": "MutatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and may change the object.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## MutatingWebhookConfiguration {#MutatingWebhookConfiguration}\n\nMutatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and may change the object.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.</td>\n    </tr>\n    <tr>\n      <td><code>webhooks</code><br/><em><a href=\"\">MutatingWebhook array</a></em><br/><em>patch strategy: merge on key <code>name</code></em></td>\n      <td>webhooks is a list of webhooks and the affected resources and operations.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## MutatingWebhookConfigurationList {#MutatingWebhookConfigurationList}\n\nMutatingWebhookConfigurationList is a list of MutatingWebhookConfiguration.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">MutatingWebhookConfiguration array</a></em></td>\n      <td>List of MutatingWebhookConfiguration.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>metadata is the standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## MutatingWebhook {#MutatingWebhook}\n\nMutatingWebhook describes an admission webhook and the resources and operations it applies to.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>admissionReviewVersions</code>&nbsp;<strong>*</strong><br/><em>string array</em></td>\n      <td>admissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy.</td>\n    </tr>\n    <tr>\n      <td><code>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "MutatingWebhookConfiguration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutatingwebhookconfiguration-mutatingwebhookconfiguration",
      "type": "concept",
      "title": "MutatingWebhookConfiguration {#MutatingWebhookConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutatingwebhookconfigurationlist-mutatingwebhookconfigurationlist",
      "type": "concept",
      "title": "MutatingWebhookConfigurationList {#MutatingWebhookConfigurationList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 2339,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutatingwebhook-mutatingwebhook",
      "type": "concept",
      "title": "MutatingWebhook {#MutatingWebhook}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 3936,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/admissionregistration/_index",
      "type": "page",
      "title": "Admissionregistration",
      "summary": "Admissionregistration in Kubernetes refers to the process of validating and mutating API requests before they are processed.",
      "body": "Admissionregistration in Kubernetes refers to the process of validating and mutating API requests before they are processed.\n\n**Why it matters**\nAdmissionregistration ensures cluster security, integrity, and compliance with organizational policies.\n\n**Key facts**\n- Kubernetes provides Webhook Admission Controllers for custom validation and mutation logic.\n- MutatingWebhookConfiguration and ValidatingWebhookConfiguration resources manage admission registration.\n\n**Common pitfalls**\n- Incorrect or missing admission configuration can lead to security vulnerabilities.\n- Failed webhook admissions can result in API request failures.\n\n**Related**\nWebhook Admission Controllers, MutatingWebhookConfiguration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/admissionregistration/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Admissionregistration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "type": "page",
      "title": "APIService",
      "summary": "APIService represents a server for a particular GroupVersion. Name must be &#34;version.group&#34;.",
      "body": "\n\n`apiVersion: apiregistration.k8s.io/v1`\n\n`import \"k8s.io/kube-aggregator/pkg/apis/apiregistration/v1\"`\n\n\n## APIService {#APIService}\n\nAPIService represents a server for a particular GroupVersion. Name must be &#34;version.group&#34;.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">APIServiceSpec</a></em></td>\n      <td>Spec contains information for locating and communicating with a server</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">APIServiceStatus</a></em></td>\n      <td>Status contains derived information about an API server</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## APIServiceSpec {#APIServiceSpec}\n\nAPIServiceSpec contains information for locating and communicating with a server. Only https is supported, though you are able to disable certificate verification.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>caBundle</code><br/><em>string</em></td>\n      <td>CABundle is a PEM encoded CA bundle which will be used to validate an API server's serving certificate. If unspecified, system trust roots on the apiserver are used.</td>\n    </tr>\n    <tr>\n      <td><code>group</code><br/><em>string</em></td>\n      <td>Group is the API group name this server hosts</td>\n    </tr>\n    <tr>\n      <td><code>groupPriorityMinimum</code>&nbsp;<strong>*</strong><br/><em>integer</em></td>\n      <td>GroupPriorityMinimum is the priority this group should have at least. Higher priority means that the group is preferred by clients over lower priority ones. Note that other versions of this group might specify even higher GroupPriorityMinimum values such that the whole group gets a higher priority. The primary sort is based on GroupPriorityMinimum, ordered highest number to lowest (20 before 10). The secondary sort is based on the alphabetical comparison of the name of the object.  (v1.bar before v1.foo) We'd recommend something like: *.k8s.io (except extensions) at 18000 and PaaSes (OpenShift, Deis) are recommended to be in the 2000s</td>\n    </tr>\n    <tr>\n      <td><code>insecureSkipTLSVerify</code><br/><em>boolean</em></td>\n      <td>InsecureSkipTLSVerify disables TLS certificate verification when communicating with this server. This is strongly discouraged.  You should use the CABundle instead.</td>\n    </tr>\n    <tr>\n      <td><code>service</code><br/><em><a href=\"\">ServiceReference</a></em></td>\n      <td>Service is a reference to the service for this API server.  It must communicate on port 443. If the Service is nil, that means the handling for the API groupversion is handled locally on this server. The call will simply delegate to the normal handler chain to be fulfilled.</td>\n    </tr>\n    <tr>\n      <td><code>version</code><br/><em>string</em></td>\n      <td>Version is the API version this server hosts.  For example, \"v1\"</td>\n    </tr>\n    <tr>\n      <td><code>versionPriori\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/apiregistration/api-service-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "APIService"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiservice-apiservice",
      "type": "concept",
      "title": "APIService {#APIService}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 682,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiservicespec-apiservicespec",
      "type": "concept",
      "title": "APIServiceSpec {#APIServiceSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 2392,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiservicestatus-apiservicestatus",
      "type": "concept",
      "title": "APIServiceStatus {#APIServiceStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 5787,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiservicelist-apiservicelist",
      "type": "concept",
      "title": "APIServiceList {#APIServiceList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 6260,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiservicecondition-apiservicecondition",
      "type": "concept",
      "title": "APIServiceCondition {#APIServiceCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 7712,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:servicereference-servicereference",
      "type": "concept",
      "title": "ServiceReference {#ServiceReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 8814,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/apiregistration/_index",
      "type": "page",
      "title": "Apiregistration",
      "summary": "Apiregistration in Kubernetes refers to the process of registering and managing API servers.",
      "body": "Apiregistration in Kubernetes refers to the process of registering and managing API servers.\n\n**Why it matters**\nAPI registration ensures cluster services are discoverable and accessible through the Kubernetes API server.\n\n**Key facts**\n- Kubernetes provides APIService resources for registering and managing API servers.\n- APIServiceConfiguration resources manage API registration settings.\n\n**Common pitfalls**\n- Incorrect or missing API registration can lead to service discovery issues.\n- Failed API registrations can result in service unavailability.\n\n**Related**\nAPIService, APIServiceConfiguration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/_index/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/kubernetes-api/apiregistration/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Apiregistration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "type": "page",
      "title": "RuntimeClass",
      "summary": "RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass is used to determine which container runtime is used to run all containers in a pod. RuntimeClasses are manually defined by a user or cluster provisioner, and referenced in the PodSpec. The Kubelet is responsible for resolving the RuntimeClassName reference before running the pod.  For more details, see https://kubernetes.io/docs/concepts/containers/runtime-class/",
      "body": "\n\n`apiVersion: node.k8s.io/v1`\n\n`import \"k8s.io/api/node/v1\"`\n\n\n## RuntimeClass {#RuntimeClass}\n\nRuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass is used to determine which container runtime is used to run all containers in a pod. RuntimeClasses are manually defined by a user or cluster provisioner, and referenced in the PodSpec. The Kubelet is responsible for resolving the RuntimeClassName reference before running the pod.  For more details, see https://kubernetes.io/docs/concepts/containers/runtime-class/\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>handler</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>handler specifies the underlying runtime and configuration that the CRI implementation will use to handle pods of this class. The possible values are specific to the node & CRI configuration.  It is assumed that all handlers are available on every node, and handlers of the same name are equivalent on every node. For example, a handler called \"runc\" might specify that the runc OCI runtime (using native Linux containers) will be used to run the containers in a pod. The Handler must be lowercase, conform to the DNS Label (RFC 1123) requirements, and is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>overhead</code><br/><em><a href=\"\">Overhead</a></em></td>\n      <td>overhead represents the resource overhead associated with running a pod for a given RuntimeClass. For more details, see  https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/</td>\n    </tr>\n    <tr>\n      <td><code>scheduling</code><br/><em><a href=\"\">Scheduling</a></em></td>\n      <td>scheduling holds the scheduling constraints to ensure that pods running with this RuntimeClass are scheduled to nodes that support it. If scheduling is nil, this RuntimeClass is assumed to be supported by all nodes.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## RuntimeClassList {#RuntimeClassList}\n\nRuntimeClassList is a list of RuntimeClass objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">RuntimeClass array</a></em></td>\n      <td>items is a list of schema objects.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/s\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/node/runtime-class-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "RuntimeClass"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:runtimeclass-runtimeclass",
      "type": "concept",
      "title": "RuntimeClass {#RuntimeClass}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 639,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:runtimeclasslist-runtimeclasslist",
      "type": "concept",
      "title": "RuntimeClassList {#RuntimeClassList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 3630,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:overhead-overhead",
      "type": "concept",
      "title": "Overhead {#Overhead}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 5100,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduling-scheduling",
      "type": "concept",
      "title": "Scheduling {#Scheduling}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 5486,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/node/_index",
      "type": "page",
      "title": "Node",
      "summary": "A Node is a worker machine in Kubernetes, where containers are run.",
      "body": "A Node is a worker machine in Kubernetes, where containers are run.\n\n**Why it matters**\nNodes provide the compute resources for running pods and containers.\n\n**Key facts**\n- A node can be a physical or virtual machine.\n- Each node has its own IP address.\n\n**Common pitfalls**\n- Misconfigured nodes can lead to pod failures.\n\n**Related**\nPods, Containers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/_index/",
      "meta": {
        "weight": 160,
        "rel_path": "reference/kubernetes-api/node/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Node"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/events/event-v1",
      "type": "page",
      "title": "Event",
      "summary": "Event is a report of an event somewhere in the cluster. It generally denotes some state change in the system. Events have a limited retention time and triggers and messages may evolve with time.  Event consumers should not rely on the timing of an event with a given Reason reflecting a consistent underlying trigger, or the continued existence of events with that Reason.  Events should be treated as informative, best-effort, supplemental data.",
      "body": "\n\n`apiVersion: events.k8s.io/v1`\n\n`import \"k8s.io/api/events/v1\"`\n\n\n## Event {#Event}\n\nEvent is a report of an event somewhere in the cluster. It generally denotes some state change in the system. Events have a limited retention time and triggers and messages may evolve with time.  Event consumers should not rely on the timing of an event with a given Reason reflecting a consistent underlying trigger, or the continued existence of events with that Reason.  Events should be treated as informative, best-effort, supplemental data.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>action</code><br/><em>string</em></td>\n      <td>action is what action was taken/failed regarding to the regarding object. It is machine-readable. This field cannot be empty for new Events and it can have at most 128 characters.</td>\n    </tr>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>deprecatedCount</code><br/><em>integer</em></td>\n      <td>deprecatedCount is the deprecated field assuring backward compatibility with core.v1 Event type.</td>\n    </tr>\n    <tr>\n      <td><code>deprecatedFirstTimestamp</code><br/><em><a href=\"\">Time</a></em></td>\n      <td>deprecatedFirstTimestamp is the deprecated field assuring backward compatibility with core.v1 Event type.</td>\n    </tr>\n    <tr>\n      <td><code>deprecatedLastTimestamp</code><br/><em><a href=\"\">Time</a></em></td>\n      <td>deprecatedLastTimestamp is the deprecated field assuring backward compatibility with core.v1 Event type.</td>\n    </tr>\n    <tr>\n      <td><code>deprecatedSource</code><br/><em><a href=\"\">EventSource</a></em></td>\n      <td>deprecatedSource is the deprecated field assuring backward compatibility with core.v1 Event type.</td>\n    </tr>\n    <tr>\n      <td><code>eventTime</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">MicroTime</a></em></td>\n      <td>eventTime is the time when this Event was first observed. It is required.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>note</code><br/><em>string</em></td>\n      <td>note is a human-readable description of the status of this operation. Maximal length of the note is 1kB, but libraries should be prepared to handle values up to 64kB.</td>\n    </tr>\n    <tr>\n      <td><code>reason</code><br/><em>string</em></td>\n      <td>reason is why the action was taken. It is human-readable. This field cannot be empty for new Events and it can have at most 128 characters.</td>\n    </tr>\n    <tr>\n      <td><code>regarding</code><br/><em><a href=\"\">ObjectReference</a></em></td>\n      <td>regarding contains the object this Event is about. In most cases it's an Object reporting controller implements, e.g. ReplicaSetController implements ReplicaSets and this event is emitted because it acts on some changes in a ReplicaSet object.</td>\n    </tr>\n    <tr>\n      <td><code>related</code><br/><em><a href=\"\">ObjectReference</a></em></td>\n      <td>related is the optional secondary object for more complex actions. E.g. when regarding object t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/events/event-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Event"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/events/_index",
      "type": "page",
      "title": "Events",
      "summary": "Events are a way for Kubernetes to report on the status of resources.",
      "body": "Events are a way for Kubernetes to report on the status of resources.\n\n**Why it matters**\nEvents provide visibility into what's happening in your cluster.\n\n**Key facts**\n- Events can be generated by various components, including controllers and nodes.\n\n**Related**\nControllers, Nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/_index/",
      "meta": {
        "weight": 110,
        "rel_path": "reference/kubernetes-api/events/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Events"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "type": "page",
      "title": "HorizontalPodAutoscaler",
      "summary": "HorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically manages the replica count of any resource implementing the scale subresource based on the metrics specified.",
      "body": "\n\n`apiVersion: autoscaling/v2`\n\n`import \"k8s.io/api/autoscaling/v2\"`\n\n\n## HorizontalPodAutoscaler {#HorizontalPodAutoscaler}\n\nHorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically manages the replica count of any resource implementing the scale subresource based on the metrics specified.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard object metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">HorizontalPodAutoscalerSpec</a></em></td>\n      <td>spec is the specification for the behaviour of the autoscaler. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">HorizontalPodAutoscalerStatus</a></em></td>\n      <td>status is the current information about the autoscaler.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## HorizontalPodAutoscalerSpec {#HorizontalPodAutoscalerSpec}\n\nHorizontalPodAutoscalerSpec describes the desired functionality of the HorizontalPodAutoscaler.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>behavior</code><br/><em><a href=\"\">HorizontalPodAutoscalerBehavior</a></em></td>\n      <td>behavior configures the scaling behavior of the target in both Up and Down directions (scaleUp and scaleDown fields respectively). If not set, the default HPAScalingRules for scale up and scale down are used.</td>\n    </tr>\n    <tr>\n      <td><code>maxReplicas</code>&nbsp;<strong>*</strong><br/><em>integer</em></td>\n      <td>maxReplicas is the upper limit for the number of replicas to which the autoscaler can scale up. It cannot be less that minReplicas.</td>\n    </tr>\n    <tr>\n      <td><code>metrics</code><br/><em><a href=\"\">MetricSpec array</a></em></td>\n      <td>metrics contains the specifications for which to use to calculate the desired replica count (the maximum replica count across all metrics will be used).  The desired replica count is calculated multiplying the ratio between the target value and the current value by the current number of pods.  Ergo, metrics used must decrease as the pod count is increased, and vice-versa.  See the individual metric source types for more information about how each type of metric must respond. If not set, the default metric will be set to 80% average CPU utilization.</td>\n    </tr>\n    <tr>\n      <td><code>minReplicas</code><br/><em>integer</em></td>\n      <td>minReplicas is the lower limit for the number of replicas to which the autoscaler can scale down.  It defaults to 1 pod.  minReplicas is allowed to be 0 if the alpha feature gate HPAScaleToZero is enabled and at least one Object or External metric is configured.  Scaling is active as long as at least one metric value is available.</td>\n    </tr>\n    <tr>\n      <td><code>scaleTargetRef</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">CrossVersionO\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": null,
          "line_end": null,
          "quote": "HorizontalPodAutoscaler"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:horizontalpodautoscaler-horizontalpodautoscaler",
      "type": "concept",
      "title": "HorizontalPodAutoscaler {#HorizontalPodAutoscaler}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 646,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:horizontalpodautoscalerspec-horizontalpodautoscalerspec",
      "type": "concept",
      "title": "HorizontalPodAutoscalerSpec {#HorizontalPodAutoscalerSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 2683,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:horizontalpodautoscalerstatus-horizontalpodautoscalerstatus",
      "type": "concept",
      "title": "HorizontalPodAutoscalerStatus {#HorizontalPodAutoscalerStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 5076,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:horizontalpodautoscalerlist-horizontalpodautoscalerlist",
      "type": "concept",
      "title": "HorizontalPodAutoscalerList {#HorizontalPodAutoscalerList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 6915,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerresourcemetricsource-containerresourcemetricsource",
      "type": "concept",
      "title": "ContainerResourceMetricSource {#ContainerResourceMetricSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 8398,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containerresourcemetricstatus-containerresourcemetricstatus",
      "type": "concept",
      "title": "ContainerResourceMetricStatus {#ContainerResourceMetricStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 9619,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:crossversionobjectreference-crossversionobjectreference",
      "type": "concept",
      "title": "CrossVersionObjectReference {#CrossVersionObjectReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 10757,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:externalmetricsource-externalmetricsource",
      "type": "concept",
      "title": "ExternalMetricSource {#ExternalMetricSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 11653,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:externalmetricstatus-externalmetricstatus",
      "type": "concept",
      "title": "ExternalMetricStatus {#ExternalMetricStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 12461,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hpascalingpolicy-hpascalingpolicy",
      "type": "concept",
      "title": "HPAScalingPolicy {#HPAScalingPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 13183,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hpascalingrules-hpascalingrules",
      "type": "concept",
      "title": "HPAScalingRules {#HPAScalingRules}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 14071,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:horizontalpodautoscalerbehavior-horizontalpodautoscalerbehavior",
      "type": "concept",
      "title": "HorizontalPodAutoscalerBehavior {#HorizontalPodAutoscalerBehavior}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 16842,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:horizontalpodautoscalercondition-horizontalpodautoscalercondition",
      "type": "concept",
      "title": "HorizontalPodAutoscalerCondition {#HorizontalPodAutoscalerCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 17900,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metricidentifier-metricidentifier",
      "type": "concept",
      "title": "MetricIdentifier {#MetricIdentifier}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 19072,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metricspec-metricspec",
      "type": "concept",
      "title": "MetricSpec {#MetricSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 19886,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metricstatus-metricstatus",
      "type": "concept",
      "title": "MetricStatus {#MetricStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 22507,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metrictarget-metrictarget",
      "type": "concept",
      "title": "MetricTarget {#MetricTarget}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 25073,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metricvaluestatus-metricvaluestatus",
      "type": "concept",
      "title": "MetricValueStatus {#MetricValueStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 26328,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:objectmetricsource-objectmetricsource",
      "type": "concept",
      "title": "ObjectMetricSource {#ObjectMetricSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 27317,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:objectmetricstatus-objectmetricstatus",
      "type": "concept",
      "title": "ObjectMetricStatus {#ObjectMetricStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 28334,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podsmetricsource-podsmetricsource",
      "type": "concept",
      "title": "PodsMetricSource {#PodsMetricSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 29368,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podsmetricstatus-podsmetricstatus",
      "type": "concept",
      "title": "PodsMetricStatus {#PodsMetricStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 30189,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcemetricsource-resourcemetricsource",
      "type": "concept",
      "title": "ResourceMetricSource {#ResourceMetricSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 30947,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcemetricstatus-resourcemetricstatus",
      "type": "concept",
      "title": "ResourceMetricStatus {#ResourceMetricStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 31952,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/autoscaling/_index",
      "type": "page",
      "title": "Autoscaling",
      "summary": "Autoscaling allows Kubernetes to automatically adjust the number of replicas for a deployment.",
      "body": "Autoscaling allows Kubernetes to automatically adjust the number of replicas for a deployment.\n\n**Why it matters**\nAutoscaling helps ensure that your application has enough resources to meet demand.\n\n**Key facts**\n- Autoscaling can be enabled on deployments and replica sets.\n\n**Related**\nDeployments, Replica Sets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/_index/",
      "meta": {
        "weight": 70,
        "rel_path": "reference/kubernetes-api/autoscaling/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Autoscaling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "type": "page",
      "title": "ResourcePoolStatusRequest",
      "summary": "ResourcePoolStatusRequest triggers a one-time calculation of resource pool status based on the provided filters. Once status is set, the request is considered complete and will not be reprocessed. Users should delete and recreate requests to get updated information.",
      "body": "\n\n`apiVersion: resource.k8s.io/v1alpha3`\n\n`import \"k8s.io/api/resource/v1alpha3\"`\n\n\n## ResourcePoolStatusRequest {#ResourcePoolStatusRequest}\n\nResourcePoolStatusRequest triggers a one-time calculation of resource pool status based on the provided filters. Once status is set, the request is considered complete and will not be reprocessed. Users should delete and recreate requests to get updated information.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ResourcePoolStatusRequestSpec</a></em></td>\n      <td>Spec defines the filters for which pools to include in the status. The spec is immutable once created.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">ResourcePoolStatusRequestStatus</a></em></td>\n      <td>Status is populated by the controller with the calculated pool status. When status is non-nil, the request is considered complete and the entire object becomes immutable.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ResourcePoolStatusRequestSpec {#ResourcePoolStatusRequestSpec}\n\nResourcePoolStatusRequestSpec defines the filters for the pool status request.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>driver</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Driver specifies the DRA driver name to filter pools. Only pools from ResourceSlices with this driver will be included. Must be a DNS subdomain (e.g., \"gpu.example.com\").</td>\n    </tr>\n    <tr>\n      <td><code>limit</code><br/><em>integer</em></td>\n      <td>Limit optionally specifies the maximum number of pools to return in the status. If more pools match the filter criteria, the response will be truncated (i.e., len(status.pools) \\< status.poolCount).  Default: 100 Minimum: 1 Maximum: 1000</td>\n    </tr>\n    <tr>\n      <td><code>poolName</code><br/><em>string</em></td>\n      <td>PoolName optionally filters to a specific pool name. If not specified, all pools from the specified driver are included. When specified, must be a non-empty valid resource pool name (DNS subdomains separated by \"/\").</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ResourcePoolStatusRequestStatus {#ResourcePoolStatusRequestStatus}\n\nResourcePoolStatusRequestStatus contains the calculated pool status information.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>conditions</code><br/><em><a href=\"\">Condition array</a></em><br/><em>patch strategy: merge on key <code>type</code></em></td>\n      <td>Conditions provide information about the state of the request. A condition with type=Complete or type=Failed will always be set when the status is populated.  Known condition types: - \"Complete\": True when the request has been processed successfully - \"Failed\": True when the request could not be processed</td>\n    </tr>\n    <tr>\n      <td><code>poolCount</code>&nbsp;<strong>*</strong><br/><em>integer</em></td>\n      <td>PoolCount is \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": null,
          "line_end": null,
          "quote": "ResourcePoolStatusRequest"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcepoolstatusrequest-resourcepoolstatusrequest",
      "type": "concept",
      "title": "ResourcePoolStatusRequest {#ResourcePoolStatusRequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 659,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcepoolstatusrequestspec-resourcepoolstatusrequestspec",
      "type": "concept",
      "title": "ResourcePoolStatusRequestSpec {#ResourcePoolStatusRequestSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 2714,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcepoolstatusrequeststatus-resourcepoolstatusrequeststatus",
      "type": "concept",
      "title": "ResourcePoolStatusRequestStatus {#ResourcePoolStatusRequestStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 3887,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcepoolstatusrequestlist-resourcepoolstatusrequestlist",
      "type": "concept",
      "title": "ResourcePoolStatusRequestList {#ResourcePoolStatusRequestList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 5377,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:poolstatus-poolstatus",
      "type": "concept",
      "title": "PoolStatus {#PoolStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 6854,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "type": "page",
      "title": "ResourceSlice",
      "summary": "ResourceSlice represents one or more resources in a pool of similar resources, managed by a common driver. A pool may span more than one ResourceSlice, and exactly how many ResourceSlices comprise a pool is determined by the driver.\n\nAt the moment, the only supported resources are devices with attributes and capacities. Each device in a given pool, regardless of how many ResourceSlices, must have a unique name. The ResourceSlice in which a device gets published may change over time. The unique identifier for a device is the tuple &lt;driver name&gt;, &lt;pool name&gt;, &lt;device name&gt;.\n\nWhenever a driver needs to update a pool, it increments the pool.Spec.Pool.Generation number and updates all ResourceSlices with that new number and new resource definitions. A consumer must only use ResourceSlices with the highest generation number and ignore all others.\n\nWhen allocating all resources in a pool matching certain criteria or when looking for the best solution among several different alternatives, a consumer should check the number of ResourceSlices in a pool (included in each ResourceSlice) to determine whether its view of a pool is complete and if not, should wait until the driver has completed updating the pool.\n\nFor resources that are not local to a node, the node name is not set. Instead, the driver may use a node selector to specify where the devices are available.",
      "body": "\n\n`apiVersion: resource.k8s.io/v1`\n\n`import \"k8s.io/api/resource/v1\"`\n\n\n## ResourceSlice {#ResourceSlice}\n\nResourceSlice represents one or more resources in a pool of similar resources, managed by a common driver. A pool may span more than one ResourceSlice, and exactly how many ResourceSlices comprise a pool is determined by the driver.\n\nAt the moment, the only supported resources are devices with attributes and capacities. Each device in a given pool, regardless of how many ResourceSlices, must have a unique name. The ResourceSlice in which a device gets published may change over time. The unique identifier for a device is the tuple &lt;driver name&gt;, &lt;pool name&gt;, &lt;device name&gt;.\n\nWhenever a driver needs to update a pool, it increments the pool.Spec.Pool.Generation number and updates all ResourceSlices with that new number and new resource definitions. A consumer must only use ResourceSlices with the highest generation number and ignore all others.\n\nWhen allocating all resources in a pool matching certain criteria or when looking for the best solution among several different alternatives, a consumer should check the number of ResourceSlices in a pool (included in each ResourceSlice) to determine whether its view of a pool is complete and if not, should wait until the driver has completed updating the pool.\n\nFor resources that are not local to a node, the node name is not set. Instead, the driver may use a node selector to specify where the devices are available.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ResourceSliceSpec</a></em></td>\n      <td>Contains the information published by the driver.  Changing the spec automatically increments the metadata.generation number.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ResourceSliceSpec {#ResourceSliceSpec}\n\nResourceSliceSpec contains the information published by the driver in one ResourceSlice.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>allNodes</code><br/><em>boolean</em></td>\n      <td>AllNodes indicates that all nodes have access to the resources in the pool.  Exactly one of NodeName, NodeSelector, AllNodes, and PerDeviceNodeSelection must be set.</td>\n    </tr>\n    <tr>\n      <td><code>devices</code><br/><em><a href=\"\">Device array</a></em></td>\n      <td>Devices lists some or all of the devices in this pool.  Must not have more than 128 entries. If any device uses taints or consumes counters the limit is 64.  Only one of Devices and SharedCounters can be set in a ResourceSlice.</td>\n    </tr>\n    <tr>\n      <td><code>driver</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Driver identifies the DRA driver providing the capacity information. A field selector can be used to list only ResourceSlice objects with a certain driver name.  Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver. It should use only lower case characters. This field is immutabl\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/kubernetes-api/resource/resource-slice-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ResourceSlice"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceslicespec-resourceslicespec",
      "type": "concept",
      "title": "ResourceSliceSpec {#ResourceSliceSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 3435,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceslicelist-resourceslicelist",
      "type": "concept",
      "title": "ResourceSliceList {#ResourceSliceList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 6817,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:capacityrequestpolicy-capacityrequestpolicy",
      "type": "concept",
      "title": "CapacityRequestPolicy {#CapacityRequestPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 8199,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:capacityrequestpolicyrange-capacityrequestpolicyrange",
      "type": "concept",
      "title": "CapacityRequestPolicyRange {#CapacityRequestPolicyRange}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 10142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:counter-counter",
      "type": "concept",
      "title": "Counter {#Counter}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 12011,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:counterset-counterset",
      "type": "concept",
      "title": "CounterSet {#CounterSet}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 12446,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:device-device",
      "type": "concept",
      "title": "Device {#Device}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 13358,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceattribute-deviceattribute",
      "type": "concept",
      "title": "DeviceAttribute {#DeviceAttribute}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 19145,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicecapacity-devicecapacity",
      "type": "concept",
      "title": "DeviceCapacity {#DeviceCapacity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 20905,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicecounterconsumption-devicecounterconsumption",
      "type": "concept",
      "title": "DeviceCounterConsumption {#DeviceCounterConsumption}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 22149,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicetaint-devicetaint",
      "type": "concept",
      "title": "DeviceTaint {#DeviceTaint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 22833,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeallocatableresourcemapping-nodeallocatableresourcemapping",
      "type": "concept",
      "title": "NodeAllocatableResourceMapping {#NodeAllocatableResourceMapping}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 25061,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeselectorrequirement-nodeselectorrequirement",
      "type": "concept",
      "title": "NodeSelectorRequirement {#NodeSelectorRequirement}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 27821,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcepool-resourcepool",
      "type": "concept",
      "title": "ResourcePool {#ResourcePool}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 29057,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/resource/device-class-v1",
      "type": "page",
      "title": "DeviceClass",
      "summary": "DeviceClass is a vendor- or admin-provided resource that contains device configuration and selectors. It can be referenced in the device requests of a claim to apply these presets. Cluster scoped.",
      "body": "\n\n`apiVersion: resource.k8s.io/v1`\n\n`import \"k8s.io/api/resource/v1\"`\n\n\n## DeviceClass {#DeviceClass}\n\nDeviceClass is a vendor- or admin-provided resource that contains device configuration and selectors. It can be referenced in the device requests of a claim to apply these presets. Cluster scoped.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">DeviceClassSpec</a></em></td>\n      <td>Spec defines what can be allocated and how to configure it.  This is mutable. Consumers have to be prepared for classes changing at any time, either because they get updated or replaced. Claim allocations are done once based on whatever was set in classes at the time of allocation.  Changing the spec automatically increments the metadata.generation number.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## DeviceClassSpec {#DeviceClassSpec}\n\nDeviceClassSpec is used in a [DeviceClass] to define what can be allocated and how to configure it.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>config</code><br/><em><a href=\"\">DeviceClassConfiguration array</a></em></td>\n      <td>Config defines configuration parameters that apply to each device that is claimed via this class. Some classses may potentially be satisfied by multiple drivers, so each instance of a vendor configuration applies to exactly one driver.  They are passed to the driver, but are not considered while allocating the claim.</td>\n    </tr>\n    <tr>\n      <td><code>extendedResourceName</code><br/><em>string</em></td>\n      <td>ExtendedResourceName is the extended resource name for the devices of this class. The devices of this class can be used to satisfy a pod's extended resource requests. It has the same format as the name of a pod's extended resource. It should be unique among all the device classes in a cluster. If two device classes have the same name, then the class created later is picked to satisfy a pod's extended resource requests. If two classes are created at the same time, then the name of the class lexicographically sorted first is picked.  This is a beta field.</td>\n    </tr>\n    <tr>\n      <td><code>selectors</code><br/><em><a href=\"\">DeviceSelector array</a></em></td>\n      <td>Each selector must be satisfied by a device which is claimed via this class.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## DeviceClassList {#DeviceClassList}\n\nDeviceClassList is a collection of classes.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">DeviceClass ar\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/resource/device-class-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "DeviceClass"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceclassspec-deviceclassspec",
      "type": "concept",
      "title": "DeviceClassSpec {#DeviceClassSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 2462,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceclasslist-deviceclasslist",
      "type": "concept",
      "title": "DeviceClassList {#DeviceClassList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 4085,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:celdeviceselector-celdeviceselector",
      "type": "concept",
      "title": "CELDeviceSelector {#CELDeviceSelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 5441,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceclassconfiguration-deviceclassconfiguration",
      "type": "concept",
      "title": "DeviceClassConfiguration {#DeviceClassConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 8592,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceselector-deviceselector",
      "type": "concept",
      "title": "DeviceSelector {#DeviceSelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 9027,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:opaquedeviceconfiguration-opaquedeviceconfiguration",
      "type": "concept",
      "title": "OpaqueDeviceConfiguration {#OpaqueDeviceConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 9418,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "type": "page",
      "title": "ResourceClaimTemplate",
      "summary": "ResourceClaimTemplate is used to produce ResourceClaim objects.",
      "body": "\n\n`apiVersion: resource.k8s.io/v1`\n\n`import \"k8s.io/api/resource/v1\"`\n\n\n## ResourceClaimTemplate {#ResourceClaimTemplate}\n\nResourceClaimTemplate is used to produce ResourceClaim objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ResourceClaimTemplateSpec</a></em></td>\n      <td>Describes the ResourceClaim that is to be generated.  This field is immutable. A ResourceClaim will get created by the control plane for a Pod when needed and then not get updated anymore.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ResourceClaimTemplateSpec {#ResourceClaimTemplateSpec}\n\nResourceClaimTemplateSpec contains the metadata and fields for a ResourceClaim.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>ObjectMeta may contain labels and annotations that will be copied into the ResourceClaim when creating it. No other fields are allowed and will be rejected during validation.</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ResourceClaimSpec</a></em></td>\n      <td>Spec for the ResourceClaim. The entire content is copied unchanged into the ResourceClaim that gets created from this template. The same fields as in a ResourceClaim are also valid here.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ResourceClaimTemplateList {#ResourceClaimTemplateList}\n\nResourceClaimTemplateList is a collection of claim templates.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ResourceClaimTemplate array</a></em></td>\n      <td>Items is the list of resource claim templates.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## Operations {#Operations}\n\n<hr>\n\n\n### `post` Create\n\n#### HTTP Request\n\nPOST /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates\n\n\n#### Path Parameters\n\n<table>\n  <thead><tr><th>Name</th><th>Type</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>namespace</c\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/kubernetes-api/resource/resource-claim-template-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ResourceClaimTemplate"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaimtemplate-resourceclaimtemplate",
      "type": "concept",
      "title": "ResourceClaimTemplate {#ResourceClaimTemplate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 647,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaimtemplatespec-resourceclaimtemplatespec",
      "type": "concept",
      "title": "ResourceClaimTemplateSpec {#ResourceClaimTemplateSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 2199,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaimtemplatelist-resourceclaimtemplatelist",
      "type": "concept",
      "title": "ResourceClaimTemplateList {#ResourceClaimTemplateList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 3163,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "type": "page",
      "title": "ResourceClaim",
      "summary": "ResourceClaim describes a request for access to resources in the cluster, for use by workloads. For example, if a workload needs an accelerator device with specific properties, this is how that request is expressed. The status stanza tracks whether this claim has been satisfied and what specific resources have been allocated.",
      "body": "\n\n`apiVersion: resource.k8s.io/v1`\n\n`import \"k8s.io/api/resource/v1\"`\n\n\n## ResourceClaim {#ResourceClaim}\n\nResourceClaim describes a request for access to resources in the cluster, for use by workloads. For example, if a workload needs an accelerator device with specific properties, this is how that request is expressed. The status stanza tracks whether this claim has been satisfied and what specific resources have been allocated.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ResourceClaimSpec</a></em></td>\n      <td>Spec describes what is being requested and how to configure it. The spec is immutable.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">ResourceClaimStatus</a></em></td>\n      <td>Status describes whether the claim is ready to use and what has been allocated.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ResourceClaimSpec {#ResourceClaimSpec}\n\nResourceClaimSpec defines what is being requested in a ResourceClaim and how to configure it.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>devices</code><br/><em><a href=\"\">DeviceClaim</a></em></td>\n      <td>Devices defines how to request devices.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ResourceClaimStatus {#ResourceClaimStatus}\n\nResourceClaimStatus tracks whether the resource has been allocated and what the result of that was.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>allocation</code><br/><em><a href=\"\">AllocationResult</a></em></td>\n      <td>Allocation is set once the claim has been allocated successfully.</td>\n    </tr>\n    <tr>\n      <td><code>devices</code><br/><em><a href=\"\">AllocatedDeviceStatus array</a></em></td>\n      <td>Devices contains the status of each device allocated for this claim, as reported by the driver. This can include driver-specific information. Entries are owned by their respective drivers.</td>\n    </tr>\n    <tr>\n      <td><code>reservedFor</code><br/><em><a href=\"\">ResourceClaimConsumerReference array</a></em><br/><em>patch strategy: merge on key <code>uid</code></em></td>\n      <td>ReservedFor indicates which entities are currently allowed to use the claim. A Pod which references a ResourceClaim which is not reserved for that Pod will not be started. A claim that is in use or might be in use because it has been reserved must not get deallocated.  In a cluster with multiple scheduler instances, two pods might get scheduled concurrently by different schedulers. When they reference the same ResourceClaim which already has reached its maximum number of consumers, only one pod can be scheduled.  Both schedulers try to add their pod to the claim.status.reservedFor field, but only the update that reaches the API server first gets stored. The other one fails with an error and the scheduler which issued it knows that it must put the pod back into the queue, waiting for the ResourceClaim to become usable a\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/resource/resource-claim-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ResourceClaim"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaimspec-resourceclaimspec",
      "type": "concept",
      "title": "ResourceClaimSpec {#ResourceClaimSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 2560,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaimstatus-resourceclaimstatus",
      "type": "concept",
      "title": "ResourceClaimStatus {#ResourceClaimStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 2981,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaimlist-resourceclaimlist",
      "type": "concept",
      "title": "ResourceClaimList {#ResourceClaimList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 4981,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:allocateddevicestatus-allocateddevicestatus",
      "type": "concept",
      "title": "AllocatedDeviceStatus {#AllocatedDeviceStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 6347,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:allocationresult-allocationresult",
      "type": "concept",
      "title": "AllocationResult {#AllocationResult}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 8731,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:capacityrequirements-capacityrequirements",
      "type": "concept",
      "title": "CapacityRequirements {#CapacityRequirements}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 9857,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceallocationconfiguration-deviceallocationconfiguration",
      "type": "concept",
      "title": "DeviceAllocationConfiguration {#DeviceAllocationConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 11506,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceallocationresult-deviceallocationresult",
      "type": "concept",
      "title": "DeviceAllocationResult {#DeviceAllocationResult}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 12758,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceclaim-deviceclaim",
      "type": "concept",
      "title": "DeviceClaim {#DeviceClaim}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 13741,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceclaimconfiguration-deviceclaimconfiguration",
      "type": "concept",
      "title": "DeviceClaimConfiguration {#DeviceClaimConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 14785,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deviceconstraint-deviceconstraint",
      "type": "concept",
      "title": "DeviceConstraint {#DeviceConstraint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 15700,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicerequest-devicerequest",
      "type": "concept",
      "title": "DeviceRequest {#DeviceRequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 18359,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicerequestallocationresult-devicerequestallocationresult",
      "type": "concept",
      "title": "DeviceRequestAllocationResult {#DeviceRequestAllocationResult}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 20449,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicesubrequest-devicesubrequest",
      "type": "concept",
      "title": "DeviceSubRequest {#DeviceSubRequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 24519,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicetoleration-devicetoleration",
      "type": "concept",
      "title": "DeviceToleration {#DeviceToleration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 29071,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exactdevicerequest-exactdevicerequest",
      "type": "concept",
      "title": "ExactDeviceRequest {#ExactDeviceRequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 31546,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networkdevicedata-networkdevicedata",
      "type": "concept",
      "title": "NetworkDeviceData {#NetworkDeviceData}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 35969,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaimconsumerreference-resourceclaimconsumerreference",
      "type": "concept",
      "title": "ResourceClaimConsumerReference {#ResourceClaimConsumerReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 37254,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/resource/_index",
      "type": "page",
      "title": "Resource",
      "summary": "Resources are the units of compute, memory, and storage that pods require.",
      "body": "Resources are the units of compute, memory, and storage that pods require.\n\n**Why it matters**\nResources determine how much of a node's resources are allocated to a pod.\n\n**Key facts**\n- Resource requests and limits can be specified for pods.\n\n**Related**\nPods, Nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/_index/",
      "meta": {
        "weight": 190,
        "rel_path": "reference/kubernetes-api/resource/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Resource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "type": "page",
      "title": "DeviceTaintRule",
      "summary": "DeviceTaintRule adds one taint to all devices which match the selector. This has the same effect as if the taint was specified directly in the ResourceSlice by the DRA driver.",
      "body": "\n\n`apiVersion: resource.k8s.io/v1beta2`\n\n`import \"k8s.io/api/resource/v1beta2\"`\n\n\n## DeviceTaintRule {#DeviceTaintRule}\n\nDeviceTaintRule adds one taint to all devices which match the selector. This has the same effect as if the taint was specified directly in the ResourceSlice by the DRA driver.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">DeviceTaintRuleSpec</a></em></td>\n      <td>Spec specifies the selector and one taint.  Changing the spec automatically increments the metadata.generation number.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">DeviceTaintRuleStatus</a></em></td>\n      <td>Status provides information about what was requested in the spec.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## DeviceTaintRuleSpec {#DeviceTaintRuleSpec}\n\nDeviceTaintRuleSpec specifies the selector and one taint.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>deviceSelector</code><br/><em><a href=\"\">DeviceTaintSelector</a></em></td>\n      <td>DeviceSelector defines which device(s) the taint is applied to. All selector criteria must be satisfied for a device to match. The empty selector matches all devices. Without a selector, no devices are matches.</td>\n    </tr>\n    <tr>\n      <td><code>taint</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">DeviceTaint</a></em></td>\n      <td>The taint that gets applied to matching devices.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## DeviceTaintRuleStatus {#DeviceTaintRuleStatus}\n\nDeviceTaintRuleStatus provides information about an on-going pod eviction.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>conditions</code><br/><em><a href=\"\">Condition array</a></em><br/><em>patch strategy: merge on key <code>type</code></em></td>\n      <td>Conditions provide information about the state of the DeviceTaintRule and the cluster at some point in time, in a machine-readable and human-readable format.  The following condition is currently defined as part of this API, more may get added: - Type: EvictionInProgress - Status: True if there are currently pods which need to be evicted, False otherwise   (includes the effects which don't cause eviction). - Reason: not specified, may change - Message: includes information about number of pending pods and already evicted pods   in a human-readable format, updated periodically, may change  For `effect: None`, the condition above gets set once for each change to the spec, with the message containing information about what would happen if the effect was `NoExecute`. This feedback can be used to decide whether changing the effect to `NoExecute` will work as intended. It only gets set once to avoid having to constantly update the status.  Must have 8 or fewer entries.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## DeviceTaintRuleList {#DeviceTaintRuleList}\n\nDeviceTaintRuleList is a collection of DeviceTaintRules.\n\n<hr>\n\n<table>\n  <thead><tr><th>F\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": null,
          "line_end": null,
          "quote": "DeviceTaintRule"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicetaintrule-devicetaintrule",
      "type": "concept",
      "title": "DeviceTaintRule {#DeviceTaintRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicetaintrulespec-devicetaintrulespec",
      "type": "concept",
      "title": "DeviceTaintRuleSpec {#DeviceTaintRuleSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 2448,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicetaintrulestatus-devicetaintrulestatus",
      "type": "concept",
      "title": "DeviceTaintRuleStatus {#DeviceTaintRuleStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 3255,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicetaintrulelist-devicetaintrulelist",
      "type": "concept",
      "title": "DeviceTaintRuleList {#DeviceTaintRuleList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 4700,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicetaintselector-devicetaintselector",
      "type": "concept",
      "title": "DeviceTaintSelector {#DeviceTaintSelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 6095,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/field-selector-requirement-v1-meta",
      "type": "page",
      "title": "FieldSelectorRequirement",
      "summary": "FieldSelectorRequirement is a selector that contains values, a key, and an operator that relates the key and values.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## FieldSelectorRequirement {#FieldSelectorRequirement}\n\nFieldSelectorRequirement is a selector that contains values, a key, and an operator that relates the key and values.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>key</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>key is the field selector key that the requirement applies to.</td>\n    </tr>\n    <tr>\n      <td><code>operator</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. The list of operators may grow in the future.</td>\n    </tr>\n    <tr>\n      <td><code>values</code><br/><em>string array</em></td>\n      <td>values is 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.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/field-selector-requirement-v1-meta/",
      "meta": {
        "weight": 120,
        "rel_path": "reference/kubernetes-api/definitions/field-selector-requirement-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/field-selector-requirement-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/field-selector-requirement-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "FieldSelectorRequirement"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fieldselectorrequirement-fieldselectorrequirement",
      "type": "concept",
      "title": "FieldSelectorRequirement {#FieldSelectorRequirement}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/field-selector-requirement-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/field-selector-requirement-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/subject-v1-rbac",
      "type": "page",
      "title": "Subject",
      "summary": "Subject contains a reference to the object or user identities a role binding applies to.  This can either hold a direct API object reference, or a value for non-objects such as user and group names.",
      "body": "\n\n`apiVersion: rbac.authorization.k8s.io/v1`\n\n`import \"k8s.io/api/rbac/v1\"`\n\n\n## Subject {#Subject}\n\nSubject contains a reference to the object or user identities a role binding applies to.  This can either hold a direct API object reference, or a value for non-objects such as user and group names.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiGroup</code><br/><em>string</em></td>\n      <td>APIGroup holds the API group of the referenced subject. Defaults to \"\" for ServiceAccount subjects. Defaults to \"rbac.authorization.k8s.io\" for User and Group subjects.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Kind of object being referenced. Values defined by this API group are \"User\", \"Group\", and \"ServiceAccount\". If the Authorizer does not recognized the kind value, the Authorizer should report an error.</td>\n    </tr>\n    <tr>\n      <td><code>name</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Name of the object being referenced.</td>\n    </tr>\n    <tr>\n      <td><code>namespace</code><br/><em>string</em></td>\n      <td>Namespace of the referenced object.  If the object kind is non-namespace, such as \"User\" or \"Group\", and this value is not empty the Authorizer should report an error.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-v1-rbac/",
      "meta": {
        "weight": 540,
        "rel_path": "reference/kubernetes-api/definitions/subject-v1-rbac.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-v1-rbac/",
          "line_start": null,
          "line_end": null,
          "quote": "Subject"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta",
      "type": "page",
      "title": "GroupVersionForDiscovery",
      "summary": "GroupVersion contains the &#34;group/version&#34; and &#34;version&#34; string of a version. It is made a struct to keep extensibility.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## GroupVersionForDiscovery {#GroupVersionForDiscovery}\n\nGroupVersion contains the &#34;group/version&#34; and &#34;version&#34; string of a version. It is made a struct to keep extensibility.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>groupVersion</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>groupVersion specifies the API group and version in the form \"group/version\"</td>\n    </tr>\n    <tr>\n      <td><code>version</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>version specifies the version in the form of \"version\". This is to save the clients the trouble of splitting the GroupVersion.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta/",
      "meta": {
        "weight": 150,
        "rel_path": "reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "GroupVersionForDiscovery"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:groupversionfordiscovery-groupversionfordiscovery",
      "type": "concept",
      "title": "GroupVersionForDiscovery {#GroupVersionForDiscovery}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/typed-local-object-reference-v1",
      "type": "page",
      "title": "TypedLocalObjectReference",
      "summary": "TypedLocalObjectReference contains enough information to let you locate the typed referenced object inside the same namespace.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## TypedLocalObjectReference {#TypedLocalObjectReference}\n\nTypedLocalObjectReference contains enough information to let you locate the typed referenced object inside the same namespace.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiGroup</code><br/><em>string</em></td>\n      <td>APIGroup is the group for the resource being referenced. If APIGroup is not specified, the specified Kind must be in the core API group. For any other third-party types, APIGroup is required.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Kind is the type of resource being referenced</td>\n    </tr>\n    <tr>\n      <td><code>name</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Name is the name of resource being referenced</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/typed-local-object-reference-v1/",
      "meta": {
        "weight": 600,
        "rel_path": "reference/kubernetes-api/definitions/typed-local-object-reference-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/typed-local-object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/typed-local-object-reference-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "TypedLocalObjectReference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:typedlocalobjectreference-typedlocalobjectreference",
      "type": "concept",
      "title": "TypedLocalObjectReference {#TypedLocalObjectReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/typed-local-object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/typed-local-object-reference-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/status-v1-meta",
      "type": "page",
      "title": "Status",
      "summary": "Status is a return value for calls that don&#39;t return other objects.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## Status {#Status}\n\nStatus is a return value for calls that don&#39;t return other objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>code</code><br/><em>integer</em></td>\n      <td>Suggested HTTP return code for this status, 0 if not set.</td>\n    </tr>\n    <tr>\n      <td><code>details</code><br/><em><a href=\"\">StatusDetails</a></em></td>\n      <td>Extended data associated with the reason.  Each reason may define its own extended details. This field is optional and the data returned is not guaranteed to conform to any schema except that defined by the reason type.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>message</code><br/><em>string</em></td>\n      <td>A human-readable description of the status of this operation.</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>reason</code><br/><em>string</em></td>\n      <td>A machine-readable description of why this operation is in the \"Failure\" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em>string</em></td>\n      <td>Status of the operation. One of: \"Success\" or \"Failure\". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-v1-meta/",
      "meta": {
        "weight": 510,
        "rel_path": "reference/kubernetes-api/definitions/status-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "Status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:status-status",
      "type": "concept",
      "title": "Status {#Status}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/param-ref-v1-admissionregistration",
      "type": "page",
      "title": "ParamRef",
      "summary": "ParamRef describes how to locate the params to be used as input to expressions of rules applied by a policy binding.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## ParamRef {#ParamRef}\n\nParamRef describes how to locate the params to be used as input to expressions of rules applied by a policy binding.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>name</code><br/><em>string</em></td>\n      <td>name is the name of the resource being referenced.  One of `name` or `selector` must be set, but `name` and `selector` are mutually exclusive properties. If one is set, the other must be unset.  A single parameter used for all admission requests can be configured by setting the `name` field, leaving `selector` blank, and setting namespace if `paramKind` is namespace-scoped.</td>\n    </tr>\n    <tr>\n      <td><code>namespace</code><br/><em>string</em></td>\n      <td>namespace is the namespace of the referenced resource. Allows limiting the search for params to a specific namespace. Applies to both `name` and `selector` fields.  A per-namespace parameter may be used by specifying a namespace-scoped `paramKind` in the policy and leaving this field empty.  - If `paramKind` is cluster-scoped, this field MUST be unset. Setting this field results in a configuration error.  - If `paramKind` is namespace-scoped, the namespace of the object being evaluated for admission will be used when this field is left unset. Take care that if this is left empty the binding must not match any cluster-scoped resources, which will result in an error.</td>\n    </tr>\n    <tr>\n      <td><code>parameterNotFoundAction</code><br/><em>string</em></td>\n      <td>parameterNotFoundAction controls the behavior of the binding when the resource exists, and name or selector is valid, but there are no parameters matched by the binding. If the value is set to `Allow`, then no matched parameters will be treated as successful validation by the binding. If set to `Deny`, then no matched parameters will be subject to the `failurePolicy` of the policy.  Allowed values are `Allow` or `Deny`  Required</td>\n    </tr>\n    <tr>\n      <td><code>selector</code><br/><em><a href=\"\">LabelSelector</a></em></td>\n      <td>selector can be used to match multiple param objects based on their labels. Supply selector: {} to match all resources of the ParamKind.  If multiple params are found, they are all evaluated with the policy expressions and the results are ANDed together.  One of `name` or `selector` must be set, but `name` and `selector` are mutually exclusive properties. If one is set, the other must be unset.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/param-ref-v1-admissionregistration/",
      "meta": {
        "weight": 350,
        "rel_path": "reference/kubernetes-api/definitions/param-ref-v1-admissionregistration.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/param-ref-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/param-ref-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": "ParamRef"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:paramref-paramref",
      "type": "concept",
      "title": "ParamRef {#ParamRef}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/param-ref-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/param-ref-v1-admissionregistration/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/non-resource-rule-v1-authorization",
      "type": "page",
      "title": "NonResourceRule",
      "summary": "NonResourceRule holds information that describes a rule for the non-resource",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## NonResourceRule {#NonResourceRule}\n\nNonResourceRule holds information that describes a rule for the non-resource\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>nonResourceURLs</code><br/><em>string array</em></td>\n      <td>nonResourceURLs is a set of partial urls that a user should have access to.  *s are allowed, but only as the full, final step in the path.  \"*\" means all.</td>\n    </tr>\n    <tr>\n      <td><code>verbs</code>&nbsp;<strong>*</strong><br/><em>string array</em></td>\n      <td>verbs is a list of kubernetes non-resource API verbs, like: get, post, put, delete, patch, head, options.  \"*\" means all.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/non-resource-rule-v1-authorization/",
      "meta": {
        "weight": 300,
        "rel_path": "reference/kubernetes-api/definitions/non-resource-rule-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/non-resource-rule-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/non-resource-rule-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "NonResourceRule"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nonresourcerule-nonresourcerule",
      "type": "concept",
      "title": "NonResourceRule {#NonResourceRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/non-resource-rule-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/non-resource-rule-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/user-info-v1-authentication",
      "type": "page",
      "title": "UserInfo",
      "summary": "UserInfo holds the information about the user needed to implement the user.Info interface.",
      "body": "\n\n`apiVersion: authentication.k8s.io/v1`\n\n`import \"k8s.io/api/authentication/v1\"`\n\n\n## UserInfo {#UserInfo}\n\nUserInfo holds the information about the user needed to implement the user.Info interface.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>extra</code><br/><em>object</em></td>\n      <td>extra is any additional information provided by the authenticator.</td>\n    </tr>\n    <tr>\n      <td><code>groups</code><br/><em>string array</em></td>\n      <td>groups is the names of groups this user is a part of.</td>\n    </tr>\n    <tr>\n      <td><code>uid</code><br/><em>string</em></td>\n      <td>uid is a unique value that identifies this user across time. If this user is deleted and another user by the same name is added, they will have different UIDs.</td>\n    </tr>\n    <tr>\n      <td><code>username</code><br/><em>string</em></td>\n      <td>username is the name that uniquely identifies this user among all active users.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/user-info-v1-authentication/",
      "meta": {
        "weight": 620,
        "rel_path": "reference/kubernetes-api/definitions/user-info-v1-authentication.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/user-info-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/user-info-v1-authentication/",
          "line_start": null,
          "line_end": null,
          "quote": "UserInfo"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:userinfo-userinfo",
      "type": "concept",
      "title": "UserInfo {#UserInfo}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/user-info-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/user-info-v1-authentication/",
          "line_start": 659,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/resource-rule-v1-authorization",
      "type": "page",
      "title": "ResourceRule",
      "summary": "ResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn&#39;t significant, may contain duplicates, and possibly be incomplete.",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## ResourceRule {#ResourceRule}\n\nResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn&#39;t significant, may contain duplicates, and possibly be incomplete.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiGroups</code><br/><em>string array</em></td>\n      <td>apiGroups is the name of the APIGroup that contains the resources.  If multiple API groups are specified, any action requested against one of the enumerated resources in any API group will be allowed.  \"*\" means all.</td>\n    </tr>\n    <tr>\n      <td><code>resourceNames</code><br/><em>string array</em></td>\n      <td>resourceNames is an optional white list of names that the rule applies to.  An empty set means that everything is allowed.  \"*\" means all.</td>\n    </tr>\n    <tr>\n      <td><code>resources</code><br/><em>string array</em></td>\n      <td>resources is a list of resources this rule applies to.  \"*\" means all in the specified apiGroups.  \"*/foo\" represents the subresource 'foo' for all resources in the specified apiGroups.</td>\n    </tr>\n    <tr>\n      <td><code>verbs</code>&nbsp;<strong>*</strong><br/><em>string array</em></td>\n      <td>verbs is a list of kubernetes resource API verbs, like: get, list, watch, create, update, delete, proxy.  \"*\" means all.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/resource-rule-v1-authorization/",
      "meta": {
        "weight": 410,
        "rel_path": "reference/kubernetes-api/definitions/resource-rule-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/resource-rule-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/resource-rule-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "ResourceRule"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcerule-resourcerule",
      "type": "concept",
      "title": "ResourceRule {#ResourceRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/resource-rule-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/resource-rule-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/toleration-v1",
      "type": "page",
      "title": "Toleration",
      "summary": "The pod this Toleration is attached to tolerates any taint that matches the triple &lt;key,value,effect&gt; using the matching operator &lt;operator&gt;.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## Toleration {#Toleration}\n\nThe pod this Toleration is attached to tolerates any taint that matches the triple &lt;key,value,effect&gt; using the matching operator &lt;operator&gt;.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>effect</code><br/><em>string</em></td>\n      <td>Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.<br/><br/>Possible enum values:<br/> - `\"NoExecute\"` Evict any already-running pods that do not tolerate the taint. Currently enforced by NodeController.<br/> - `\"NoSchedule\"` Do not allow new pods to schedule onto the node unless they tolerate the taint, but allow all pods submitted to Kubelet without going through the scheduler to start, and allow all already-running pods to continue running. Enforced by the scheduler.<br/> - `\"PreferNoSchedule\"` Like TaintEffectNoSchedule, but the scheduler tries not to schedule new pods onto the node, rather than prohibiting new pods from scheduling onto the node entirely. Enforced by the scheduler.</td>\n    </tr>\n    <tr>\n      <td><code>key</code><br/><em>string</em></td>\n      <td>Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys.</td>\n    </tr>\n    <tr>\n      <td><code>operator</code><br/><em>string</em></td>\n      <td>Operator represents a key's relationship to the value. Valid operators are Exists, Equal, Lt, and Gt. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. Lt and Gt perform numeric comparisons (requires feature gate TaintTolerationComparisonOperators).<br/><br/>Possible enum values:<br/> - `\"Equal\"`<br/> - `\"Exists\"`<br/> - `\"Gt\"`<br/> - `\"Lt\"`</td>\n    </tr>\n    <tr>\n      <td><code>tolerationSeconds</code><br/><em>integer</em></td>\n      <td>TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system.</td>\n    </tr>\n    <tr>\n      <td><code>value</code><br/><em>string</em></td>\n      <td>Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/toleration-v1/",
      "meta": {
        "weight": 590,
        "rel_path": "reference/kubernetes-api/definitions/toleration-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/toleration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/toleration-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Toleration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:toleration-toleration",
      "type": "concept",
      "title": "Toleration {#Toleration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/toleration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/toleration-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/role-ref-v1-rbac",
      "type": "page",
      "title": "RoleRef",
      "summary": "RoleRef contains information that points to the role being used",
      "body": "\n\n`apiVersion: rbac.authorization.k8s.io/v1`\n\n`import \"k8s.io/api/rbac/v1\"`\n\n\n## RoleRef {#RoleRef}\n\nRoleRef contains information that points to the role being used\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiGroup</code><br/><em>string</em></td>\n      <td>APIGroup is the group for the resource being referenced</td>\n    </tr>\n    <tr>\n      <td><code>kind</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Kind is the type of resource being referenced</td>\n    </tr>\n    <tr>\n      <td><code>name</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Name is the name of resource being referenced</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/role-ref-v1-rbac/",
      "meta": {
        "weight": 420,
        "rel_path": "reference/kubernetes-api/definitions/role-ref-v1-rbac.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/role-ref-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/role-ref-v1-rbac/",
          "line_start": null,
          "line_end": null,
          "quote": "RoleRef"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:roleref-roleref",
      "type": "concept",
      "title": "RoleRef {#RoleRef}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/role-ref-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/role-ref-v1-rbac/",
          "line_start": 653,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization",
      "type": "page",
      "title": "LocalSubjectAccessReview",
      "summary": "LocalSubjectAccessReview checks whether or not a user or group can perform an action in a given namespace. Having a namespace scoped resource makes it much easier to grant namespace scoped policy that includes permissions checking.",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## LocalSubjectAccessReview {#LocalSubjectAccessReview}\n\nLocalSubjectAccessReview checks whether or not a user or group can perform an action in a given namespace. Having a namespace scoped resource makes it much easier to grant namespace scoped policy that includes permissions checking.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em>SubjectAccessReviewSpec</em></td>\n      <td>spec holds information about the request being evaluated.  spec.namespace must be equal to the namespace you made the request against.  If empty, it is defaulted.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em>SubjectAccessReviewStatus</em></td>\n      <td>status is filled in by the server and indicates whether the request is allowed or not</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization/",
      "meta": {
        "weight": 210,
        "rel_path": "reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "LocalSubjectAccessReview"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:localsubjectaccessreview-localsubjectaccessreview",
      "type": "concept",
      "title": "LocalSubjectAccessReview {#LocalSubjectAccessReview}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization",
      "type": "page",
      "title": "LabelSelectorAttributes",
      "summary": "LabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## LabelSelectorAttributes {#LabelSelectorAttributes}\n\nLabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>rawSelector</code><br/><em>string</em></td>\n      <td>rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.</td>\n    </tr>\n    <tr>\n      <td><code>requirements</code><br/><em><a href=\"\">LabelSelectorRequirement array</a></em></td>\n      <td>requirements is the parsed interpretation of a label selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization/",
      "meta": {
        "weight": 170,
        "rel_path": "reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "LabelSelectorAttributes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:labelselectorattributes-labelselectorattributes",
      "type": "concept",
      "title": "LabelSelectorAttributes {#LabelSelectorAttributes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/event-source-v1",
      "type": "page",
      "title": "EventSource",
      "summary": "EventSource contains information for an event.",
      "body": "EventSource is an object that represents a source of events in Kubernetes.\n\n**Why it matters**\nEventSources are used to notify controllers about changes in the cluster, enabling them to react accordingly.\n\n**Key facts**\n- EventSources are defined as part of the Kubernetes API\n- They provide a way for controllers to be notified about changes in the cluster\n\n**Common pitfalls**\n- Incorrectly configured EventSources can lead to missed notifications or unnecessary processing\n\n**Related**\nControllers, API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/event-source-v1/",
      "meta": {
        "weight": 90,
        "rel_path": "reference/kubernetes-api/definitions/event-source-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/event-source-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/event-source-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "EventSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "concept:eventsource-eventsource",
      "type": "concept",
      "title": "EventSource {#EventSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/event-source-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/event-source-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/api-resource-v1-meta",
      "type": "page",
      "title": "APIResource",
      "summary": "APIResource specifies the name of a resource and whether it is namespaced.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## APIResource {#APIResource}\n\nAPIResource specifies the name of a resource and whether it is namespaced.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>categories</code><br/><em>string array</em></td>\n      <td>categories is a list of the grouped resources this resource belongs to (e.g. 'all')</td>\n    </tr>\n    <tr>\n      <td><code>group</code><br/><em>string</em></td>\n      <td>group is the preferred group of the resource.  Empty implies the group of the containing resource list. For subresources, this may have a different value, for example: Scale\".</td>\n    </tr>\n    <tr>\n      <td><code>kind</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo')</td>\n    </tr>\n    <tr>\n      <td><code>name</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>name is the plural name of the resource.</td>\n    </tr>\n    <tr>\n      <td><code>namespaced</code>&nbsp;<strong>*</strong><br/><em>boolean</em></td>\n      <td>namespaced indicates if a resource is namespaced or not.</td>\n    </tr>\n    <tr>\n      <td><code>shortNames</code><br/><em>string array</em></td>\n      <td>shortNames is a list of suggested short names of the resource.</td>\n    </tr>\n    <tr>\n      <td><code>singularName</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>singularName is the singular name of the resource.  This allows clients to handle plural and singular opaquely. The singularName is more correct for reporting status on a single item and both singular and plural are allowed from the kubectl CLI interface.</td>\n    </tr>\n    <tr>\n      <td><code>storageVersionHash</code><br/><em>string</em></td>\n      <td>The hash value of the storage version, the version this resource is converted to when written to the data store. Value must be treated as opaque by clients. Only equality comparison on the value is valid. This is an alpha feature and may change or be removed in the future. The field is populated by the apiserver only if the StorageVersionHash feature gate is enabled. This field will remain optional even if it graduates.</td>\n    </tr>\n    <tr>\n      <td><code>verbs</code>&nbsp;<strong>*</strong><br/><em>string array</em></td>\n      <td>verbs is a list of supported kube verbs (this includes get, list, watch, create, update, patch, delete, deletecollection, and proxy)</td>\n    </tr>\n    <tr>\n      <td><code>version</code><br/><em>string</em></td>\n      <td>version is the preferred version of the resource.  Empty implies the version of the containing resource list For subresources, this may have a different value, for example: v1 (while inside a v1beta1 version of the core resource's group)\".</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## APIResourceList {#APIResourceList}\n\nAPIResourceList is a list of APIResource, it is used to expose the name of the resources supported in a specific group and version, and if the resource is namespaced.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>groupVersion</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>groupVersion is the group and version this APIResourceList is for.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-resource-v1-meta/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/definitions/api-resource-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-resource-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-resource-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "APIResource"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiresource-apiresource",
      "type": "concept",
      "title": "APIResource {#APIResource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-resource-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-resource-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiresourcelist-apiresourcelist",
      "type": "concept",
      "title": "APIResourceList {#APIResourceList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-resource-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-resource-v1-meta/",
          "line_start": 3472,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/resource-attributes-v1-authorization",
      "type": "page",
      "title": "ResourceAttributes",
      "summary": "ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## ResourceAttributes {#ResourceAttributes}\n\nResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>fieldSelector</code><br/><em><a href=\"\">FieldSelectorAttributes</a></em></td>\n      <td>fieldSelector describes the limitation on access based on field.  It can only limit access, not broaden it.</td>\n    </tr>\n    <tr>\n      <td><code>group</code><br/><em>string</em></td>\n      <td>group is the API Group of the Resource.  \"*\" means all.</td>\n    </tr>\n    <tr>\n      <td><code>labelSelector</code><br/><em><a href=\"\">LabelSelectorAttributes</a></em></td>\n      <td>labelSelector describes the limitation on access based on labels.  It can only limit access, not broaden it.</td>\n    </tr>\n    <tr>\n      <td><code>name</code><br/><em>string</em></td>\n      <td>name is the name of the resource being requested for a \"get\" or deleted for a \"delete\". \"\" (empty) means all.</td>\n    </tr>\n    <tr>\n      <td><code>namespace</code><br/><em>string</em></td>\n      <td>namespace is the namespace of the action being requested.  Currently, there is no distinction between no namespace and all namespaces \"\" (empty) is defaulted for LocalSubjectAccessReviews \"\" (empty) is empty for cluster-scoped resources \"\" (empty) means \"all\" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview</td>\n    </tr>\n    <tr>\n      <td><code>resource</code><br/><em>string</em></td>\n      <td>resource is one of the existing resource types.  \"*\" means all.</td>\n    </tr>\n    <tr>\n      <td><code>subresource</code><br/><em>string</em></td>\n      <td>subresource is one of the existing resource types.  \"\" means none.</td>\n    </tr>\n    <tr>\n      <td><code>verb</code><br/><em>string</em></td>\n      <td>verb is a kubernetes resource API verb, like: get, list, watch, create, update, delete, proxy.  \"*\" means all.</td>\n    </tr>\n    <tr>\n      <td><code>version</code><br/><em>string</em></td>\n      <td>version is the API Version of the Resource.  \"*\" means all.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/resource-attributes-v1-authorization/",
      "meta": {
        "weight": 400,
        "rel_path": "reference/kubernetes-api/definitions/resource-attributes-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/resource-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/resource-attributes-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "ResourceAttributes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceattributes-resourceattributes",
      "type": "concept",
      "title": "ResourceAttributes {#ResourceAttributes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/resource-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/resource-attributes-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/status-cause-v1-meta",
      "type": "page",
      "title": "StatusCause",
      "summary": "StatusCause provides more information about an api.Status failure, including cases when multiple errors are encountered.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## StatusCause {#StatusCause}\n\nStatusCause provides more information about an api.Status failure, including cases when multiple errors are encountered.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>field</code><br/><em>string</em></td>\n      <td>The field of the resource that has caused this error, as named by its JSON serialization. May include dot and postfix notation for nested attributes. Arrays are zero-indexed.  Fields may appear more than once in an array of causes due to fields having multiple errors. Optional.  Examples:   \"name\" - the field \"name\" on the current resource   \"items[0].name\" - the field \"name\" on the first array entry in \"items\"</td>\n    </tr>\n    <tr>\n      <td><code>message</code><br/><em>string</em></td>\n      <td>A human-readable description of the cause of the error.  This field may be presented as-is to a reader.</td>\n    </tr>\n    <tr>\n      <td><code>reason</code><br/><em>string</em></td>\n      <td>A machine-readable description of the cause of the error. If this value is empty there is no information available.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-cause-v1-meta/",
      "meta": {
        "weight": 520,
        "rel_path": "reference/kubernetes-api/definitions/status-cause-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-cause-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-cause-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "StatusCause"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statuscause-statuscause",
      "type": "concept",
      "title": "StatusCause {#StatusCause}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-cause-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-cause-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/condition-v1-meta",
      "type": "page",
      "title": "Condition",
      "summary": "Condition contains details for one aspect of the current state of this API Resource.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## Condition {#Condition}\n\nCondition contains details for one aspect of the current state of this API Resource.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>lastTransitionTime</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">Time</a></em></td>\n      <td>lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed.  If that is not known, then using the time when the API field changed is acceptable.</td>\n    </tr>\n    <tr>\n      <td><code>message</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>message is a human readable message indicating details about the transition. This may be an empty string.</td>\n    </tr>\n    <tr>\n      <td><code>observedGeneration</code><br/><em>integer</em></td>\n      <td>observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.</td>\n    </tr>\n    <tr>\n      <td><code>reason</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.</td>\n    </tr>\n    <tr>\n      <td><code>status</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>status of the condition, one of True, False, Unknown.</td>\n    </tr>\n    <tr>\n      <td><code>type</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>type of condition in CamelCase or in foo.example.com/CamelCase.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/condition-v1-meta/",
      "meta": {
        "weight": 70,
        "rel_path": "reference/kubernetes-api/definitions/condition-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/condition-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/condition-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "Condition"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:condition-condition",
      "type": "concept",
      "title": "Condition {#Condition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/condition-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/condition-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/match-condition-v1-admissionregistration",
      "type": "page",
      "title": "MatchCondition",
      "summary": "MatchCondition represents a condition which must by fulfilled for a request to be sent to a webhook.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## MatchCondition {#MatchCondition}\n\nMatchCondition represents a condition which must by fulfilled for a request to be sent to a webhook.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>expression</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>expression represents the expression which will be evaluated by CEL. Must evaluate to bool. CEL expressions have access to the contents of the AdmissionRequest and Authorizer, organized into CEL variables:  'object' - The object from the incoming request. The value is null for DELETE requests. 'oldObject' - The existing object. The value is null for CREATE requests. 'request' - Attributes of the admission request(/pkg/apis/admission/types.go#AdmissionRequest). 'authorizer' - A CEL Authorizer. May be used to perform authorization checks for the principal (user or service account) of the request.   See https://pkg.go.dev/k8s.io/apiserver/pkg/cel/library#Authz 'authorizer.requestResource' - A CEL ResourceCheck constructed from the 'authorizer' and configured with the   request resource. Documentation on CEL: https://kubernetes.io/docs/reference/using-api/cel/  Required.</td>\n    </tr>\n    <tr>\n      <td><code>name</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>name is an identifier for this match condition, used for strategic merging of MatchConditions, as well as providing an identifier for logging purposes. A good name should be descriptive of the associated expression. Name must be a qualified name consisting of alphanumeric characters, '-', '_' or '.', and must start and end with an alphanumeric character (e.g. 'MyName',  or 'my.name',  or '123-abc', regex used for validation is '([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]') with an optional DNS subdomain prefix and '/' (e.g. 'example.com/MyName')  Required.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/match-condition-v1-admissionregistration/",
      "meta": {
        "weight": 230,
        "rel_path": "reference/kubernetes-api/definitions/match-condition-v1-admissionregistration.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/match-condition-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/match-condition-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": "MatchCondition"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:matchcondition-matchcondition",
      "type": "concept",
      "title": "MatchCondition {#MatchCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/match-condition-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/match-condition-v1-admissionregistration/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/patch-v1-meta",
      "type": "page",
      "title": "Patch",
      "summary": "Patch is provided to give a concrete name and type to the Kubernetes PATCH request body.",
      "body": "Patch is an object that represents a partial update of a resource in Kubernetes.\n\n**Why it matters**\nPatches allow for efficient updates to resources without having to send the entire resource again.\n\n**Key facts**\n- Patches are used to update specific fields of a resource\n- They can be applied to any resource that supports patching\n\n**Common pitfalls**\n- Incorrectly formatted patches can lead to errors or unintended changes\n\n**Related**\nResources, API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/patch-v1-meta/",
      "meta": {
        "weight": 360,
        "rel_path": "reference/kubernetes-api/definitions/patch-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/patch-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/patch-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "Patch"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/eviction-v1-policy",
      "type": "page",
      "title": "Eviction",
      "summary": "Eviction evicts a pod from its node subject to certain policies and safety constraints. This is a subresource of Pod.  A request to cause such an eviction is created by POSTing to .../pods/&lt;pod name&gt;/evictions.",
      "body": "\n\n`apiVersion: policy/v1`\n\n`import \"k8s.io/api/policy/v1\"`\n\n\n## Eviction {#Eviction}\n\nEviction evicts a pod from its node subject to certain policies and safety constraints. This is a subresource of Pod.  A request to cause such an eviction is created by POSTing to .../pods/&lt;pod name&gt;/evictions.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>deleteOptions</code><br/><em><a href=\"\">DeleteOptions</a></em></td>\n      <td>DeleteOptions may be provided</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>ObjectMeta describes the pod that is being evicted.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/eviction-v1-policy/",
      "meta": {
        "weight": 100,
        "rel_path": "reference/kubernetes-api/definitions/eviction-v1-policy.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/eviction-v1-policy.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/eviction-v1-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Eviction"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:eviction-eviction",
      "type": "concept",
      "title": "Eviction {#Eviction}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/eviction-v1-policy.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/eviction-v1-policy/",
          "line_start": 636,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/node-selector-v1",
      "type": "page",
      "title": "NodeSelector",
      "summary": "A node selector represents the union of the results of one or more label queries over a set of nodes; that is, it represents the OR of the selectors represented by the node selector terms.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## NodeSelector {#NodeSelector}\n\nA node selector represents the union of the results of one or more label queries over a set of nodes; that is, it represents the OR of the selectors represented by the node selector terms.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>nodeSelectorTerms</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">NodeSelectorTerm array</a></em></td>\n      <td>Required. A list of node selector terms. The terms are ORed.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/node-selector-v1/",
      "meta": {
        "weight": 270,
        "rel_path": "reference/kubernetes-api/definitions/node-selector-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/node-selector-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/node-selector-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "NodeSelector"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeselector-nodeselector",
      "type": "concept",
      "title": "NodeSelector {#NodeSelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/node-selector-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/node-selector-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/quantity-resource",
      "type": "page",
      "title": "Quantity",
      "summary": "Quantity is a fixed-point representation of a number. It provides convenient marshaling/unmarshaling in JSON and YAML, in addition to String() and AsInt64() accessors.\n\nThe serialization format is:\n\n``` &lt;quantity&gt;        ::= &lt;signedNumber&gt;&lt;suffix&gt;\n\n\t(Note that &lt;suffix&gt; may be empty, from the &#34;&#34; case in &lt;decimalSI&gt;.)\n\n&lt;digit&gt;           ::= 0 | 1 | ... | 9 &lt;digits&gt;          ::= &lt;digit&gt; | &lt;digit&gt;&lt;digits&gt; &lt;number&gt;          ::= &lt;digits&gt; | &lt;digits&gt;.&lt;digits&gt; | &lt;digits&gt;. | .&lt;digits&gt; &lt;sign&gt;            ::= &#34;+&#34; | &#34;-&#34; &lt;signedNumber&gt;    ::= &lt;number&gt; | &lt;sign&gt;&lt;number&gt; &lt;suffix&gt;          ::= &lt;binarySI&gt; | &lt;decimalExponent&gt; | &lt;decimalSI&gt; &lt;binarySI&gt;        ::= Ki | Mi | Gi | Ti | Pi | Ei\n\n\t(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)\n\n&lt;decimalSI&gt;       ::= m | &#34;&#34; | k | M | G | T | P | E\n\n\t(Note that 1024 = 1Ki but 1000 = 1k; I didn&#39;t choose the capitalization.)\n\n&lt;decimalExponent&gt; ::= &#34;e&#34; &lt;signedNumber&gt; | &#34;E&#34; &lt;signedNumber&gt; ```\n\nNo matter which of the three exponent forms is used, no quantity may represent a number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal places. Numbers larger or more precise will be capped or rounded up. (E.g.: 0.1m will rounded up to 1m.) This may be extended in the future if we require larger or smaller quantities.\n\nWhen a Quantity is parsed from a string, it will remember the type of suffix it had, and will use the same type again when it is serialized.\n\nBefore serializing, Quantity will be put in &#34;canonical form&#34;. This means that Exponent/suffix will be adjusted up or down (with a corresponding increase or decrease in Mantissa) such that:\n\n- No precision is lost - No fractional digits will be emitted - The exponent (or suffix) is as large as possible.\n\nThe sign will be omitted unless the number is negative.\n\nExamples:\n\n- 1.5 will be serialized as &#34;1500m&#34; - 1.5Gi will be serialized as &#34;1536Mi&#34;\n\nNote that the quantity will NEVER be internally represented by a floating point number. That is the whole point of this exercise.\n\nNon-canonical values will still parse as long as they are well formed, but will be re-emitted in their canonical form. (So always use canonical form, or don&#39;t diff.)\n\nThis format is intended to make it difficult to use these numbers without writing some sort of special handling code in the hopes that that will cause implementors to also use a fixed point implementation.",
      "body": "\n\n`apiVersion: resource`\n\n`import \"k8s.io/apimachinery/pkg/api/resource\"`\n\n\n## Quantity {#Quantity}\n\nQuantity is a fixed-point representation of a number. It provides convenient marshaling/unmarshaling in JSON and YAML, in addition to String() and AsInt64() accessors.\n\nThe serialization format is:\n\n``` &lt;quantity&gt;        ::= &lt;signedNumber&gt;&lt;suffix&gt;\n\n\t(Note that &lt;suffix&gt; may be empty, from the &#34;&#34; case in &lt;decimalSI&gt;.)\n\n&lt;digit&gt;           ::= 0 | 1 | ... | 9 &lt;digits&gt;          ::= &lt;digit&gt; | &lt;digit&gt;&lt;digits&gt; &lt;number&gt;          ::= &lt;digits&gt; | &lt;digits&gt;.&lt;digits&gt; | &lt;digits&gt;. | .&lt;digits&gt; &lt;sign&gt;            ::= &#34;+&#34; | &#34;-&#34; &lt;signedNumber&gt;    ::= &lt;number&gt; | &lt;sign&gt;&lt;number&gt; &lt;suffix&gt;          ::= &lt;binarySI&gt; | &lt;decimalExponent&gt; | &lt;decimalSI&gt; &lt;binarySI&gt;        ::= Ki | Mi | Gi | Ti | Pi | Ei\n\n\t(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)\n\n&lt;decimalSI&gt;       ::= m | &#34;&#34; | k | M | G | T | P | E\n\n\t(Note that 1024 = 1Ki but 1000 = 1k; I didn&#39;t choose the capitalization.)\n\n&lt;decimalExponent&gt; ::= &#34;e&#34; &lt;signedNumber&gt; | &#34;E&#34; &lt;signedNumber&gt; ```\n\nNo matter which of the three exponent forms is used, no quantity may represent a number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal places. Numbers larger or more precise will be capped or rounded up. (E.g.: 0.1m will rounded up to 1m.) This may be extended in the future if we require larger or smaller quantities.\n\nWhen a Quantity is parsed from a string, it will remember the type of suffix it had, and will use the same type again when it is serialized.\n\nBefore serializing, Quantity will be put in &#34;canonical form&#34;. This means that Exponent/suffix will be adjusted up or down (with a corresponding increase or decrease in Mantissa) such that:\n\n- No precision is lost - No fractional digits will be emitted - The exponent (or suffix) is as large as possible.\n\nThe sign will be omitted unless the number is negative.\n\nExamples:\n\n- 1.5 will be serialized as &#34;1500m&#34; - 1.5Gi will be serialized as &#34;1536Mi&#34;\n\nNote that the quantity will NEVER be internally represented by a floating point number. That is the whole point of this exercise.\n\nNon-canonical values will still parse as long as they are well formed, but will be re-emitted in their canonical form. (So always use canonical form, or don&#39;t diff.)\n\nThis format is intended to make it difficult to use these numbers without writing some sort of special handling code in the hopes that that will cause implementors to also use a fixed point implementation.\n\n<hr>\n\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/quantity-resource/",
      "meta": {
        "weight": 390,
        "rel_path": "reference/kubernetes-api/definitions/quantity-resource.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/quantity-resource.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/quantity-resource/",
          "line_start": null,
          "line_end": null,
          "quote": "Quantity"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:quantity-quantity",
      "type": "concept",
      "title": "Quantity {#Quantity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/quantity-resource.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/quantity-resource/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/basic-device-v1beta1-resource",
      "type": "page",
      "title": "BasicDevice",
      "summary": "BasicDevice defines one device instance.",
      "body": "\n\n`apiVersion: resource.k8s.io/v1beta1`\n\n`import \"k8s.io/api/resource/v1beta1\"`\n\n\n## BasicDevice {#BasicDevice}\n\nBasicDevice defines one device instance.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>allNodes</code><br/><em>boolean</em></td>\n      <td>AllNodes indicates that all nodes have access to the device.  Must only be set if Spec.PerDeviceNodeSelection is set to true. At most one of NodeName, NodeSelector and AllNodes can be set.</td>\n    </tr>\n    <tr>\n      <td><code>allowMultipleAllocations</code><br/><em>boolean</em></td>\n      <td>AllowMultipleAllocations marks whether the device is allowed to be allocated to multiple DeviceRequests.  If AllowMultipleAllocations is set to true, the device can be allocated more than once, and all of its capacity is consumable, regardless of whether the requestPolicy is defined or not.</td>\n    </tr>\n    <tr>\n      <td><code>attributes</code><br/><em>object</em></td>\n      <td>Attributes defines the set of attributes for this device. The name of each attribute must be unique in that set.  The maximum number of attributes and capacities combined is 32.</td>\n    </tr>\n    <tr>\n      <td><code>bindingConditions</code><br/><em>string array</em></td>\n      <td>BindingConditions defines the conditions for proceeding with binding. All of these conditions must be set in the per-device status conditions with a value of True to proceed with binding the pod to the node while scheduling the pod.  The maximum number of binding conditions is 4.  The conditions must be a valid condition type string.  This is a beta field and requires enabling the DRADeviceBindingConditions and DRAResourceClaimDeviceStatus feature gates.</td>\n    </tr>\n    <tr>\n      <td><code>bindingFailureConditions</code><br/><em>string array</em></td>\n      <td>BindingFailureConditions defines the conditions for binding failure. They may be set in the per-device status conditions. If any is true, a binding failure occurred.  The maximum number of binding failure conditions is 4.  The conditions must be a valid condition type string.  This is a beta field and requires enabling the DRADeviceBindingConditions and DRAResourceClaimDeviceStatus feature gates.</td>\n    </tr>\n    <tr>\n      <td><code>bindsToNode</code><br/><em>boolean</em></td>\n      <td>BindsToNode indicates if the usage of an allocation involving this device has to be limited to exactly the node that was chosen when allocating the claim. If set to true, the scheduler will set the ResourceClaim.Status.Allocation.NodeSelector to match the node where the allocation was made.  This is a beta field and requires enabling the DRADeviceBindingConditions and DRAResourceClaimDeviceStatus feature gates.</td>\n    </tr>\n    <tr>\n      <td><code>capacity</code><br/><em>object</em></td>\n      <td>Capacity defines the set of capacities for this device. The name of each capacity must be unique in that set.  The maximum number of attributes and capacities combined is 32.</td>\n    </tr>\n    <tr>\n      <td><code>consumesCounters</code><br/><em><a href=\"\">DeviceCounterConsumption array</a></em></td>\n      <td>ConsumesCounters defines a list of references to sharedCounters and the set of counters that the device will consume from those counter sets.  There can only be a single entry per counterSet.  The maximum number of device counter consumptions per device is 2.</td>\n    </tr>\n    <tr>\n      <td><code>nodeAllocatableResourceMappings</code><br/><em>object</em></td>\n      <td>NodeAllocatableResourceMappings defines the mapping of node resources that are managed by the DRA driver exposing this device. This includes resources currently reported in v1.Node `status.allocatable` that are not extended resources (see https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#extended-resources). Examples include \"cpu\", \"memory\", \"ephemeral-storage\", and hugepages. In addition to standard requests made through th\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/basic-device-v1beta1-resource/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/kubernetes-api/definitions/basic-device-v1beta1-resource.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/basic-device-v1beta1-resource.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/basic-device-v1beta1-resource/",
          "line_start": null,
          "line_end": null,
          "quote": "BasicDevice"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:basicdevice-basicdevice",
      "type": "concept",
      "title": "BasicDevice {#BasicDevice}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/basic-device-v1beta1-resource.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/basic-device-v1beta1-resource/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/preconditions-v1-meta",
      "type": "page",
      "title": "Preconditions",
      "summary": "Preconditions must be fulfilled before an operation (update, delete, etc.) is carried out.",
      "body": "Preconditions is an object that represents a set of conditions that must be met before a resource can be updated.\n\n**Why it matters**\nPreconditions ensure that resources are updated in a consistent and predictable manner.\n\n**Key facts**\n- Preconditions are used to enforce consistency and predictability in updates\n- They can be defined for any resource that supports preconditions\n\n**Common pitfalls**\n- Incorrectly configured preconditions can lead to blocked updates or errors\n\n**Related**\nResources, API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/preconditions-v1-meta/",
      "meta": {
        "weight": 380,
        "rel_path": "reference/kubernetes-api/definitions/preconditions-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/preconditions-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/preconditions-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "Preconditions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "concept:preconditions-preconditions",
      "type": "concept",
      "title": "Preconditions {#Preconditions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/preconditions-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/preconditions-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization",
      "type": "page",
      "title": "SelfSubjectRulesReview",
      "summary": "SelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace. The returned list of actions may be incomplete depending on the server&#39;s authorization mode, and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions, or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns. SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## SelfSubjectRulesReview {#SelfSubjectRulesReview}\n\nSelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace. The returned list of actions may be incomplete depending on the server&#39;s authorization mode, and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions, or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns. SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">SelfSubjectRulesReviewSpec</a></em></td>\n      <td>spec holds information about the request being evaluated.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">SubjectRulesReviewStatus</a></em></td>\n      <td>status is filled in by the server and indicates the set of actions a user can perform.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## SelfSubjectRulesReviewSpec {#SelfSubjectRulesReviewSpec}\n\nSelfSubjectRulesReviewSpec defines the specification for SelfSubjectRulesReview.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>namespace</code><br/><em>string</em></td>\n      <td>namespace to evaluate rules for. Required.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization/",
      "meta": {
        "weight": 470,
        "rel_path": "reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "SelfSubjectRulesReview"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selfsubjectrulesreview-selfsubjectrulesreview",
      "type": "concept",
      "title": "SelfSubjectRulesReview {#SelfSubjectRulesReview}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selfsubjectrulesreviewspec-selfsubjectrulesreviewspec",
      "type": "concept",
      "title": "SelfSubjectRulesReviewSpec {#SelfSubjectRulesReviewSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization/",
          "line_start": 3067,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration",
      "type": "page",
      "title": "NamedRuleWithOperations",
      "summary": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## NamedRuleWithOperations {#NamedRuleWithOperations}\n\nNamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiGroups</code><br/><em>string array</em></td>\n      <td>apiGroups is the API groups the resources belong to. '\\*' is all groups. If '\\*' is present, the length of the slice must be one. Required.</td>\n    </tr>\n    <tr>\n      <td><code>apiVersions</code><br/><em>string array</em></td>\n      <td>apiVersions is the API versions the resources belong to. '\\*' is all versions. If '\\*' is present, the length of the slice must be one. Required.</td>\n    </tr>\n    <tr>\n      <td><code>operations</code><br/><em>string array</em></td>\n      <td>operations is the operations the admission hook cares about - CREATE, UPDATE, DELETE, CONNECT or * for all of those operations and any future admission operations that are added. If '\\*' is present, the length of the slice must be one. Required.</td>\n    </tr>\n    <tr>\n      <td><code>resourceNames</code><br/><em>string array</em></td>\n      <td>resourceNames is an optional white list of names that the rule applies to.  An empty set means that everything is allowed.</td>\n    </tr>\n    <tr>\n      <td><code>resources</code><br/><em>string array</em></td>\n      <td>resources is a list of resources this rule applies to.  For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '\\*' means all resources, but not subresources. 'pods/\\*' means all subresources of pods. '\\*/scale' means all scale subresources. '\\*/\\*' means all resources and their subresources.  If wildcard is present, the validation rule will ensure resources do not overlap with each other.  Depending on the enclosing object, subresources might not be allowed. Required.</td>\n    </tr>\n    <tr>\n      <td><code>scope</code><br/><em>string</em></td>\n      <td>scope specifies the scope of this rule. Valid values are \"Cluster\", \"Namespaced\", and \"*\" \"Cluster\" means that only cluster-scoped resources will match this rule. Namespace API objects are cluster-scoped. \"Namespaced\" means that only namespaced resources will match this rule. \"*\" means that there are no scope restrictions. Subresources match the scope of their parent resource. Default is \"*\".<br/><br/>Possible enum values:<br/> - `\"*\"` means that all scopes are included.<br/> - `\"Cluster\"` means that scope is limited to cluster-scoped objects. Namespace objects are cluster-scoped.<br/> - `\"Namespaced\"` means that scope is limited to namespaced objects.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration/",
      "meta": {
        "weight": 260,
        "rel_path": "reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": "NamedRuleWithOperations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namedrulewithoperations-namedrulewithoperations",
      "type": "concept",
      "title": "NamedRuleWithOperations {#NamedRuleWithOperations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration",
      "type": "page",
      "title": "RuleWithOperations",
      "summary": "RuleWithOperations is a tuple of Operations and Resources. It is recommended to make sure that all the tuple expansions are valid.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## RuleWithOperations {#RuleWithOperations}\n\nRuleWithOperations is a tuple of Operations and Resources. It is recommended to make sure that all the tuple expansions are valid.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiGroups</code><br/><em>string array</em></td>\n      <td>apiGroups is the API groups the resources belong to. '\\*' is all groups. If '\\*' is present, the length of the slice must be one. Required.</td>\n    </tr>\n    <tr>\n      <td><code>apiVersions</code><br/><em>string array</em></td>\n      <td>apiVersions is the API versions the resources belong to. '\\*' is all versions. If '\\*' is present, the length of the slice must be one. Required.</td>\n    </tr>\n    <tr>\n      <td><code>operations</code><br/><em>string array</em></td>\n      <td>operations is the operations the admission hook cares about - CREATE, UPDATE, DELETE, CONNECT or * for all of those operations and any future admission operations that are added. If '\\*' is present, the length of the slice must be one. Required.</td>\n    </tr>\n    <tr>\n      <td><code>resources</code><br/><em>string array</em></td>\n      <td>resources is a list of resources this rule applies to.  For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '\\*' means all resources, but not subresources. 'pods/\\*' means all subresources of pods. '\\*/scale' means all scale subresources. '\\*/\\*' means all resources and their subresources.  If wildcard is present, the validation rule will ensure resources do not overlap with each other.  Depending on the enclosing object, subresources might not be allowed. Required.</td>\n    </tr>\n    <tr>\n      <td><code>scope</code><br/><em>string</em></td>\n      <td>scope specifies the scope of this rule. Valid values are \"Cluster\", \"Namespaced\", and \"*\" \"Cluster\" means that only cluster-scoped resources will match this rule. Namespace API objects are cluster-scoped. \"Namespaced\" means that only namespaced resources will match this rule. \"*\" means that there are no scope restrictions. Subresources match the scope of their parent resource. Default is \"*\".<br/><br/>Possible enum values:<br/> - `\"*\"` means that all scopes are included.<br/> - `\"Cluster\"` means that scope is limited to cluster-scoped objects. Namespace objects are cluster-scoped.<br/> - `\"Namespaced\"` means that scope is limited to namespaced objects.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration/",
      "meta": {
        "weight": 430,
        "rel_path": "reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": "RuleWithOperations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rulewithoperations-rulewithoperations",
      "type": "concept",
      "title": "RuleWithOperations {#RuleWithOperations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/node-selector-term-v1",
      "type": "page",
      "title": "NodeSelectorTerm",
      "summary": "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## NodeSelectorTerm {#NodeSelectorTerm}\n\nA null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>matchExpressions</code><br/><em><a href=\"\">NodeSelectorRequirement array</a></em></td>\n      <td>A list of node selector requirements by node's labels.</td>\n    </tr>\n    <tr>\n      <td><code>matchFields</code><br/><em><a href=\"\">NodeSelectorRequirement array</a></em></td>\n      <td>A list of node selector requirements by node's fields.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/node-selector-term-v1/",
      "meta": {
        "weight": 280,
        "rel_path": "reference/kubernetes-api/definitions/node-selector-term-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/node-selector-term-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/node-selector-term-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "NodeSelectorTerm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeselectorterm-nodeselectorterm",
      "type": "concept",
      "title": "NodeSelectorTerm {#NodeSelectorTerm}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/node-selector-term-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/node-selector-term-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/object-reference-v1",
      "type": "page",
      "title": "ObjectReference",
      "summary": "ObjectReference contains enough information to let you inspect or modify the referred object.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## ObjectReference {#ObjectReference}\n\nObjectReference contains enough information to let you inspect or modify the referred object.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>API version of the referent.</td>\n    </tr>\n    <tr>\n      <td><code>fieldPath</code><br/><em>string</em></td>\n      <td>If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: \"spec.containers{name}\" (where \"name\" refers to the name of the container that triggered the event) or if no container name is specified \"spec.containers[2]\" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>name</code><br/><em>string</em></td>\n      <td>Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names</td>\n    </tr>\n    <tr>\n      <td><code>namespace</code><br/><em>string</em></td>\n      <td>Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/</td>\n    </tr>\n    <tr>\n      <td><code>resourceVersion</code><br/><em>string</em></td>\n      <td>Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency</td>\n    </tr>\n    <tr>\n      <td><code>uid</code><br/><em>string</em></td>\n      <td>UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/object-reference-v1/",
      "meta": {
        "weight": 320,
        "rel_path": "reference/kubernetes-api/definitions/object-reference-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/object-reference-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ObjectReference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:objectreference-objectreference",
      "type": "concept",
      "title": "ObjectReference {#ObjectReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/object-reference-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization",
      "type": "page",
      "title": "FieldSelectorAttributes",
      "summary": "FieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## FieldSelectorAttributes {#FieldSelectorAttributes}\n\nFieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>rawSelector</code><br/><em>string</em></td>\n      <td>rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present.</td>\n    </tr>\n    <tr>\n      <td><code>requirements</code><br/><em><a href=\"\">FieldSelectorRequirement array</a></em></td>\n      <td>requirements is the parsed interpretation of a field selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization/",
      "meta": {
        "weight": 110,
        "rel_path": "reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "FieldSelectorAttributes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fieldselectorattributes-fieldselectorattributes",
      "type": "concept",
      "title": "FieldSelectorAttributes {#FieldSelectorAttributes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/subject-access-review-v1-authorization",
      "type": "page",
      "title": "SubjectAccessReview",
      "summary": "SubjectAccessReview checks whether or not a user or group can perform an action.",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## SubjectAccessReview {#SubjectAccessReview}\n\nSubjectAccessReview checks whether or not a user or group can perform an action.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">SubjectAccessReviewSpec</a></em></td>\n      <td>spec holds information about the request being evaluated</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">SubjectAccessReviewStatus</a></em></td>\n      <td>status is filled in by the server and indicates whether the request is allowed or not</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## SubjectAccessReviewSpec {#SubjectAccessReviewSpec}\n\nSubjectAccessReviewSpec is a description of the access request.  Exactly one of resourceAttributes and nonResourceAttributes must be set\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>extra</code><br/><em>object</em></td>\n      <td>extra corresponds to the user.Info.GetExtra() method from the authenticator.  Since that is input to the authorizer it needs a reflection here.</td>\n    </tr>\n    <tr>\n      <td><code>groups</code><br/><em>string array</em></td>\n      <td>groups is the groups you're testing for.</td>\n    </tr>\n    <tr>\n      <td><code>nonResourceAttributes</code><br/><em><a href=\"\">NonResourceAttributes</a></em></td>\n      <td>nonResourceAttributes describes information for a non-resource access request</td>\n    </tr>\n    <tr>\n      <td><code>resourceAttributes</code><br/><em><a href=\"\">ResourceAttributes</a></em></td>\n      <td>resourceAttributes describes information for a resource access request</td>\n    </tr>\n    <tr>\n      <td><code>uid</code><br/><em>string</em></td>\n      <td>uid information about the requesting user.</td>\n    </tr>\n    <tr>\n      <td><code>user</code><br/><em>string</em></td>\n      <td>user is the user you're testing for. If you specify \"User\" but not \"Groups\", then is it interpreted as \"What if User were not a member of any groups</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## SubjectAccessReviewStatus {#SubjectAccessReviewStatus}\n\nSubjectAccessReviewStatus\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>allowed</code>&nbsp;<strong>*</strong><br/><em>boolean</em></td>\n      <td>allowed is required. True if the action would be allowed, false otherwise.</td>\n    </tr>\n    <tr>\n      <td><code>denied</code><br/><em>boolean</em></td>\n      <td>denied is optional. True if the action would be denied, otherwise false. If both allowed is false and denied is false, then the authorizer has no opinion on whether to authorize the action. Denied may not be true if Allowed is true.</td>\n    </tr>\n    <tr>\n      <td><code>evaluationError</code><br/><em>string</em></td>\n      <td>evaluationError is an indication that some erro\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-access-review-v1-authorization/",
      "meta": {
        "weight": 550,
        "rel_path": "reference/kubernetes-api/definitions/subject-access-review-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-access-review-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "SubjectAccessReview"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:subjectaccessreview-subjectaccessreview",
      "type": "concept",
      "title": "SubjectAccessReview {#SubjectAccessReview}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-access-review-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:subjectaccessreviewspec-subjectaccessreviewspec",
      "type": "concept",
      "title": "SubjectAccessReviewSpec {#SubjectAccessReviewSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-access-review-v1-authorization/",
          "line_start": 2439,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:subjectaccessreviewstatus-subjectaccessreviewstatus",
      "type": "concept",
      "title": "SubjectAccessReviewStatus {#SubjectAccessReviewStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-access-review-v1-authorization/",
          "line_start": 4028,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/policy-rule-v1-rbac",
      "type": "page",
      "title": "PolicyRule",
      "summary": "PolicyRule holds information that describes a policy rule, but does not contain information about who the rule applies to or which namespace the rule applies to.",
      "body": "\n\n`apiVersion: rbac.authorization.k8s.io/v1`\n\n`import \"k8s.io/api/rbac/v1\"`\n\n\n## PolicyRule {#PolicyRule}\n\nPolicyRule holds information that describes a policy rule, but does not contain information about who the rule applies to or which namespace the rule applies to.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiGroups</code><br/><em>string array</em></td>\n      <td>APIGroups is the name of the APIGroup that contains the resources.  If multiple API groups are specified, any action requested against one of the enumerated resources in any API group will be allowed. \"\" represents the core API group and \"*\" represents all API groups.</td>\n    </tr>\n    <tr>\n      <td><code>nonResourceURLs</code><br/><em>string array</em></td>\n      <td>NonResourceURLs is a set of partial urls that a user should have access to.  *s are allowed, but only as the full, final step in the path Since non-resource URLs are not namespaced, this field is only applicable for ClusterRoles referenced from a ClusterRoleBinding. Rules can either apply to API resources (such as \"pods\" or \"secrets\") or non-resource URL paths (such as \"/api\"),  but not both.</td>\n    </tr>\n    <tr>\n      <td><code>resourceNames</code><br/><em>string array</em></td>\n      <td>ResourceNames is an optional white list of names that the rule applies to.  An empty set means that everything is allowed.</td>\n    </tr>\n    <tr>\n      <td><code>resources</code><br/><em>string array</em></td>\n      <td>Resources is a list of resources this rule applies to. '\\*' represents all resources.</td>\n    </tr>\n    <tr>\n      <td><code>verbs</code>&nbsp;<strong>*</strong><br/><em>string array</em></td>\n      <td>Verbs is a list of Verbs that apply to ALL the ResourceKinds contained in this rule. '\\*' represents all verbs.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/policy-rule-v1-rbac/",
      "meta": {
        "weight": 370,
        "rel_path": "reference/kubernetes-api/definitions/policy-rule-v1-rbac.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/policy-rule-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/policy-rule-v1-rbac/",
          "line_start": null,
          "line_end": null,
          "quote": "PolicyRule"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policyrule-policyrule",
      "type": "concept",
      "title": "PolicyRule {#PolicyRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/policy-rule-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/policy-rule-v1-rbac/",
          "line_start": 653,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization",
      "type": "page",
      "title": "NonResourceAttributes",
      "summary": "NonResourceAttributes includes the authorization attributes available for non-resource requests to the Authorizer interface",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## NonResourceAttributes {#NonResourceAttributes}\n\nNonResourceAttributes includes the authorization attributes available for non-resource requests to the Authorizer interface\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>path</code><br/><em>string</em></td>\n      <td>path is the URL path of the request</td>\n    </tr>\n    <tr>\n      <td><code>verb</code><br/><em>string</em></td>\n      <td>verb is the standard HTTP verb</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization/",
      "meta": {
        "weight": 290,
        "rel_path": "reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "NonResourceAttributes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nonresourceattributes-nonresourceattributes",
      "type": "concept",
      "title": "NonResourceAttributes {#NonResourceAttributes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/managed-fields-entry-v1-meta",
      "type": "page",
      "title": "ManagedFieldsEntry",
      "summary": "ManagedFieldsEntry is a workflow-id, a FieldSet and the group version of the resource that the fieldset applies to.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## ManagedFieldsEntry {#ManagedFieldsEntry}\n\nManagedFieldsEntry is a workflow-id, a FieldSet and the group version of the resource that the fieldset applies to.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the version of this resource that this field set applies to. The format is \"group/version\" just like the top-level APIVersion field. It is necessary to track the version of a field set because it cannot be automatically converted.</td>\n    </tr>\n    <tr>\n      <td><code>fieldsType</code><br/><em>string</em></td>\n      <td>FieldsType is the discriminator for the different fields format and version. There is currently only one possible value: \"FieldsV1\"</td>\n    </tr>\n    <tr>\n      <td><code>fieldsV1</code><br/><em><a href=\"\">FieldsV1</a></em></td>\n      <td>FieldsV1 holds the first JSON version format as described in the \"FieldsV1\" type.</td>\n    </tr>\n    <tr>\n      <td><code>manager</code><br/><em>string</em></td>\n      <td>Manager is an identifier of the workflow managing these fields.</td>\n    </tr>\n    <tr>\n      <td><code>operation</code><br/><em>string</em></td>\n      <td>Operation is the type of operation which lead to this ManagedFieldsEntry being created. The only valid values for this field are 'Apply' and 'Update'.</td>\n    </tr>\n    <tr>\n      <td><code>subresource</code><br/><em>string</em></td>\n      <td>Subresource is the name of the subresource used to update that object, or empty string if the object was updated through the main resource. The value of this field is used to distinguish between managers, even if they share the same name. For example, a status update will be distinct from a regular update using the same manager name. Note that the APIVersion field is not related to the Subresource field and it always corresponds to the version of the main resource.</td>\n    </tr>\n    <tr>\n      <td><code>time</code><br/><em><a href=\"\">Time</a></em></td>\n      <td>Time is the timestamp of when the ManagedFields entry was added. The timestamp will also be updated if a field is added, the manager changes any of the owned fields value or removes a field. The timestamp does not update when a field is removed from the entry because another manager took it over.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/managed-fields-entry-v1-meta/",
      "meta": {
        "weight": 220,
        "rel_path": "reference/kubernetes-api/definitions/managed-fields-entry-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/managed-fields-entry-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/managed-fields-entry-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "ManagedFieldsEntry"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managedfieldsentry-managedfieldsentry",
      "type": "concept",
      "title": "ManagedFieldsEntry {#ManagedFieldsEntry}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/managed-fields-entry-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/managed-fields-entry-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/param-kind-v1-admissionregistration",
      "type": "page",
      "title": "ParamKind",
      "summary": "ParamKind is a tuple of Group Kind and Version.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## ParamKind {#ParamKind}\n\nParamKind is a tuple of Group Kind and Version.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>apiVersion is the API group version the resources belong to. In format of \"group/version\". Required.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>kind is the API kind the resources belong to. Required.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/param-kind-v1-admissionregistration/",
      "meta": {
        "weight": 340,
        "rel_path": "reference/kubernetes-api/definitions/param-kind-v1-admissionregistration.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/param-kind-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/param-kind-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": "ParamKind"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:paramkind-paramkind",
      "type": "concept",
      "title": "ParamKind {#ParamKind}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/param-kind-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/param-kind-v1-admissionregistration/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta",
      "type": "page",
      "title": "ServerAddressByClientCIDR",
      "summary": "ServerAddressByClientCIDR helps the client to determine the server address that they should use, depending on the clientCIDR that they match.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## ServerAddressByClientCIDR {#ServerAddressByClientCIDR}\n\nServerAddressByClientCIDR helps the client to determine the server address that they should use, depending on the clientCIDR that they match.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>clientCIDR</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>The CIDR with which clients can match their IP to figure out the server address that they should use.</td>\n    </tr>\n    <tr>\n      <td><code>serverAddress</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Address of this server, suitable for a client that matches the above CIDR. This can be a hostname, hostname:port, IP or IP:port.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta/",
      "meta": {
        "weight": 480,
        "rel_path": "reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "ServerAddressByClientCIDR"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serveraddressbyclientcidr-serveraddressbyclientcidr",
      "type": "concept",
      "title": "ServerAddressByClientCIDR {#ServerAddressByClientCIDR}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/group-resource-v1-meta",
      "type": "page",
      "title": "GroupResource",
      "summary": "GroupResource specifies a Group and a Resource, but does not force a version.  This is useful for identifying concepts during lookup stages without having partially valid types",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## GroupResource {#GroupResource}\n\nGroupResource specifies a Group and a Resource, but does not force a version.  This is useful for identifying concepts during lookup stages without having partially valid types\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>group</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td></td>\n    </tr>\n    <tr>\n      <td><code>resource</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td></td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/group-resource-v1-meta/",
      "meta": {
        "weight": 140,
        "rel_path": "reference/kubernetes-api/definitions/group-resource-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/group-resource-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/group-resource-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "GroupResource"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:groupresource-groupresource",
      "type": "concept",
      "title": "GroupResource {#GroupResource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/group-resource-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/group-resource-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/scale-v1-autoscaling",
      "type": "page",
      "title": "Scale",
      "summary": "Scale represents a scaling request for a resource.",
      "body": "\n\n`apiVersion: autoscaling/v1`\n\n`import \"k8s.io/api/autoscaling/v1\"`\n\n\n## Scale {#Scale}\n\nScale represents a scaling request for a resource.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">ScaleSpec</a></em></td>\n      <td>spec defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">ScaleStatus</a></em></td>\n      <td>status is the current status of the scale. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. Read-only.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ScaleSpec {#ScaleSpec}\n\nScaleSpec describes the attributes of a scale subresource.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>replicas</code><br/><em>integer</em></td>\n      <td>replicas is the desired number of instances for the scaled object.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ScaleStatus {#ScaleStatus}\n\nScaleStatus represents the current status of a scale subresource.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>replicas</code>&nbsp;<strong>*</strong><br/><em>integer</em></td>\n      <td>replicas is the actual number of observed instances of the scaled object.</td>\n    </tr>\n    <tr>\n      <td><code>selector</code><br/><em>string</em></td>\n      <td>selector is the label query over pods that should match the replicas count. This is same as the label selector but in the string format to avoid introspection by clients. The string will be in the same format as the query-param syntax. More info about label selectors: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/scale-v1-autoscaling/",
      "meta": {
        "weight": 440,
        "rel_path": "reference/kubernetes-api/definitions/scale-v1-autoscaling.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/scale-v1-autoscaling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/scale-v1-autoscaling/",
          "line_start": null,
          "line_end": null,
          "quote": "Scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scale-scale",
      "type": "concept",
      "title": "Scale {#Scale}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/scale-v1-autoscaling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/scale-v1-autoscaling/",
          "line_start": 646,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scalespec-scalespec",
      "type": "concept",
      "title": "ScaleSpec {#ScaleSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/scale-v1-autoscaling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/scale-v1-autoscaling/",
          "line_start": 2452,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scalestatus-scalestatus",
      "type": "concept",
      "title": "ScaleStatus {#ScaleStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/scale-v1-autoscaling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/scale-v1-autoscaling/",
          "line_start": 2805,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/delete-options-v1-meta",
      "type": "page",
      "title": "DeleteOptions",
      "summary": "DeleteOptions may be provided when deleting an API object.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## DeleteOptions {#DeleteOptions}\n\nDeleteOptions may be provided when deleting an API object.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>dryRun</code><br/><em>string array</em></td>\n      <td>When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed</td>\n    </tr>\n    <tr>\n      <td><code>gracePeriodSeconds</code><br/><em>integer</em></td>\n      <td>The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.</td>\n    </tr>\n    <tr>\n      <td><code>ignoreStoreReadErrorWithClusterBreakingPotential</code><br/><em>boolean</em></td>\n      <td>if set to true, it will trigger an unsafe deletion of the resource in case the normal deletion flow fails with a corrupt object error. A resource is considered corrupt if it can not be retrieved from the underlying storage successfully because of a) its data can not be transformed e.g. decryption failure, or b) it fails to decode into an object. NOTE: unsafe deletion ignores finalizer constraints, skips precondition checks, and removes the object from the storage. WARNING: This may potentially break the cluster if the workload associated with the resource being unsafe-deleted relies on normal deletion flow. Use only if you REALLY know what you are doing. The default value is false, and the user must opt in to enable it</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>orphanDependents</code><br/><em>boolean</em></td>\n      <td>Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \"orphan\" finalizer will be added to/removed from the object's finalizers list. Either this field or PropagationPolicy may be set, but not both.</td>\n    </tr>\n    <tr>\n      <td><code>preconditions</code><br/><em><a href=\"\">Preconditions</a></em></td>\n      <td>Must be fulfilled before a deletion is carried out. If not possible, a 409 Conflict status will be returned.</td>\n    </tr>\n    <tr>\n      <td><code>propagationPolicy</code><br/><em>string</em></td>\n      <td>Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: 'Orphan' - orphan the dependents; 'Background' - allow the garbage collector to delete the dependents in the background; 'Foreground' - a cascading policy that deletes all dependents in the foreground.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/delete-options-v1-meta/",
      "meta": {
        "weight": 80,
        "rel_path": "reference/kubernetes-api/definitions/delete-options-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/delete-options-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/delete-options-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "DeleteOptions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleteoptions-deleteoptions",
      "type": "concept",
      "title": "DeleteOptions {#DeleteOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/delete-options-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/delete-options-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/label-selector-requirement-v1-meta",
      "type": "page",
      "title": "LabelSelectorRequirement",
      "summary": "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## LabelSelectorRequirement {#LabelSelectorRequirement}\n\nA label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>key</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>key is the label key that the selector applies to.</td>\n    </tr>\n    <tr>\n      <td><code>operator</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.</td>\n    </tr>\n    <tr>\n      <td><code>values</code><br/><em>string array</em></td>\n      <td>values is 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. This array is replaced during a strategic merge patch.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-requirement-v1-meta/",
      "meta": {
        "weight": 180,
        "rel_path": "reference/kubernetes-api/definitions/label-selector-requirement-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-requirement-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-requirement-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "LabelSelectorRequirement"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:labelselectorrequirement-labelselectorrequirement",
      "type": "concept",
      "title": "LabelSelectorRequirement {#LabelSelectorRequirement}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-requirement-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-requirement-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/local-object-reference-v1",
      "type": "page",
      "title": "LocalObjectReference",
      "summary": "LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## LocalObjectReference {#LocalObjectReference}\n\nLocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>name</code><br/><em>string</em></td>\n      <td>Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/local-object-reference-v1/",
      "meta": {
        "weight": 200,
        "rel_path": "reference/kubernetes-api/definitions/local-object-reference-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/local-object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/local-object-reference-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "LocalObjectReference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:localobjectreference-localobjectreference",
      "type": "concept",
      "title": "LocalObjectReference {#LocalObjectReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/local-object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/local-object-reference-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/owner-reference-v1-meta",
      "type": "page",
      "title": "OwnerReference",
      "summary": "OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## OwnerReference {#OwnerReference}\n\nOwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>API version of the referent.</td>\n    </tr>\n    <tr>\n      <td><code>blockOwnerDeletion</code><br/><em>boolean</em></td>\n      <td>If true, AND if the owner has the \"foregroundDeletion\" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion for how the garbage collector interacts with this field and enforces the foreground deletion. Defaults to false. To set this field, a user needs \"delete\" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned.</td>\n    </tr>\n    <tr>\n      <td><code>controller</code><br/><em>boolean</em></td>\n      <td>If true, this reference points to the managing controller.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>name</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names</td>\n    </tr>\n    <tr>\n      <td><code>uid</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/owner-reference-v1-meta/",
      "meta": {
        "weight": 330,
        "rel_path": "reference/kubernetes-api/definitions/owner-reference-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/owner-reference-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/owner-reference-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "OwnerReference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ownerreference-ownerreference",
      "type": "concept",
      "title": "OwnerReference {#OwnerReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/owner-reference-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/owner-reference-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/time-v1-meta",
      "type": "page",
      "title": "Time",
      "summary": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON.  Wrappers are provided for many of the factory methods that the time package offers.",
      "body": "Time is an object that represents a point in time in Kubernetes.\n\n**Why it matters**\nTime objects are used to represent timestamps and scheduling information for resources.\n\n**Key facts**\n- Time objects are used to represent timestamps and scheduling information\n- They can be used with any resource that requires timing information\n\n**Common pitfalls**\n- Incorrectly formatted time objects can lead to errors or unintended behavior\n\n**Related**\nResources, API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/time-v1-meta/",
      "meta": {
        "weight": 570,
        "rel_path": "reference/kubernetes-api/definitions/time-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/time-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/time-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "Time"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "concept:time-time",
      "type": "concept",
      "title": "Time {#Time}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/time-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/time-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/micro-time-v1-meta",
      "type": "page",
      "title": "MicroTime",
      "summary": "MicroTime is version of Time with microsecond level precision.",
      "body": "MicroTime is a Kubernetes API object that represents a time value in microseconds.\n\n**Why it matters**\nMicroTime allows for precise timing and synchronization across the cluster.\n\n**Key facts**\n- Represents a time value in microseconds\n- Used for precise timing and synchronization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/micro-time-v1-meta/",
      "meta": {
        "weight": 250,
        "rel_path": "reference/kubernetes-api/definitions/micro-time-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/micro-time-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/micro-time-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "MicroTime"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "concept:microtime-microtime",
      "type": "concept",
      "title": "MicroTime {#MicroTime}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/micro-time-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/micro-time-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration",
      "type": "page",
      "title": "WebhookClientConfig",
      "summary": "WebhookClientConfig contains the information to make a TLS connection with the webhook",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## WebhookClientConfig {#WebhookClientConfig}\n\nWebhookClientConfig contains the information to make a TLS connection with the webhook\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>caBundle</code><br/><em>string</em></td>\n      <td>caBundle is a PEM encoded CA bundle which will be used to validate the webhook's server certificate. If unspecified, system trust roots on the apiserver are used.</td>\n    </tr>\n    <tr>\n      <td><code>service</code><br/><em><a href=\"\">ServiceReference</a></em></td>\n      <td>service is a reference to the service for this webhook. Either `service` or `url` must be specified.  If the webhook is running within the cluster, then you should use `service`.</td>\n    </tr>\n    <tr>\n      <td><code>url</code><br/><em>string</em></td>\n      <td>url gives the location of the webhook, in standard URL form (`scheme://host:port/path`). Exactly one of `url` or `service` must be specified.  The `host` should not refer to a service running in the cluster; use the `service` field instead. The host might be resolved via external DNS in some apiservers (e.g., `kube-apiserver` cannot resolve in-cluster DNS as that would be a layering violation). `host` may also be an IP address.  Please note that using `localhost` or `127.0.0.1` as a `host` is risky unless you take great care to run this webhook on all hosts which run an apiserver which might need to make calls to this webhook. Such installs are likely to be non-portable, i.e., not easy to turn up in a new cluster.  The scheme must be \"https\"; the URL must begin with \"https://\".  A path is optional, and if present may be any string permissible in a URL. You may use the path to pass an arbitrary string to the webhook, for example, a cluster identifier.  Attempting to use a user or basic auth e.g. \"user:password@\" is not allowed. Fragments (\"#...\") and query parameters (\"?...\") are not allowed, either.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration/",
      "meta": {
        "weight": 650,
        "rel_path": "reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": "WebhookClientConfig"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookclientconfig-webhookclientconfig",
      "type": "concept",
      "title": "WebhookClientConfig {#WebhookClientConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/token-review-v1-authentication",
      "type": "page",
      "title": "TokenReview",
      "summary": "TokenReview attempts to authenticate a token to a known user. Note: TokenReview requests may be cached by the webhook token authenticator plugin in the kube-apiserver.",
      "body": "\n\n`apiVersion: authentication.k8s.io/v1`\n\n`import \"k8s.io/api/authentication/v1\"`\n\n\n## TokenReview {#TokenReview}\n\nTokenReview attempts to authenticate a token to a known user. Note: TokenReview requests may be cached by the webhook token authenticator plugin in the kube-apiserver.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">TokenReviewSpec</a></em></td>\n      <td>spec holds information about the request being evaluated</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">TokenReviewStatus</a></em></td>\n      <td>status is filled in by the server and indicates whether the request can be authenticated.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## TokenReviewSpec {#TokenReviewSpec}\n\nTokenReviewSpec is a description of the token authentication request.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>audiences</code><br/><em>string array</em></td>\n      <td>audiences is a list of the identifiers that the resource server presented with the token identifies as. Audience-aware token authenticators will verify that the token was intended for at least one of the audiences in this list. If no audiences are provided, the audience will default to the audience of the Kubernetes apiserver.</td>\n    </tr>\n    <tr>\n      <td><code>token</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>token is the opaque bearer token.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## TokenReviewStatus {#TokenReviewStatus}\n\nTokenReviewStatus is the result of the token authentication request.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>audiences</code><br/><em>string array</em></td>\n      <td>audiences are audience identifiers chosen by the authenticator that are compatible with both the TokenReview and token. An identifier is any identifier in the intersection of the TokenReviewSpec audiences and the token's audiences. A client of the TokenReview API that sets the spec.audiences field should validate that a compatible audience identifier is returned in the status.audiences field to ensure that the TokenReview server is audience aware. If a TokenReview returns an empty status.audience field where status.authenticated is \"true\", the token is valid against the audience of the Kubernetes API server.</td>\n    </tr>\n    <tr>\n      <td><code>authenticated</code><br/><em>boolean</em></td>\n      <td>authenticated indicates that the token was associated with a known user.</td>\n    </tr>\n    <tr>\n      <td><code>error</code><br/><em>string</em></td>\n      <td>error indicates that the token couldn't be checked</td>\n    </tr>\n    <tr>\n      <td><code>user</code><br/><em><a href=\"\">UserInfo</a></em></td>\n      <td>user is the UserInfo associated with the provided token.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/token-review-v1-authentication/",
      "meta": {
        "weight": 580,
        "rel_path": "reference/kubernetes-api/definitions/token-review-v1-authentication.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/token-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/token-review-v1-authentication/",
          "line_start": null,
          "line_end": null,
          "quote": "TokenReview"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tokenreview-tokenreview",
      "type": "concept",
      "title": "TokenReview {#TokenReview}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/token-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/token-review-v1-authentication/",
          "line_start": 659,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tokenreviewspec-tokenreviewspec",
      "type": "concept",
      "title": "TokenReviewSpec {#TokenReviewSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/token-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/token-review-v1-authentication/",
          "line_start": 2488,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tokenreviewstatus-tokenreviewstatus",
      "type": "concept",
      "title": "TokenReviewStatus {#TokenReviewStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/token-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/token-review-v1-authentication/",
          "line_start": 3278,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/watch-event-v1-meta",
      "type": "page",
      "title": "WatchEvent",
      "summary": "Event represents a single event to a watched resource.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## WatchEvent {#WatchEvent}\n\nEvent represents a single event to a watched resource.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>object</code>&nbsp;<strong>*</strong><br/><em></em></td>\n      <td>Object is:  * If Type is Added or Modified: the new state of the object.  * If Type is Deleted: the state of the object immediately before deletion.  * If Type is Error: *Status is recommended; other types may make sense    depending on context.</td>\n    </tr>\n    <tr>\n      <td><code>type</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td></td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/watch-event-v1-meta/",
      "meta": {
        "weight": 640,
        "rel_path": "reference/kubernetes-api/definitions/watch-event-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/watch-event-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/watch-event-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "WatchEvent"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:watchevent-watchevent",
      "type": "concept",
      "title": "WatchEvent {#WatchEvent}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/watch-event-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/watch-event-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/api-group-v1-meta",
      "type": "page",
      "title": "APIGroup",
      "summary": "APIGroup contains the name, the supported versions, and the preferred version of a group.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## APIGroup {#APIGroup}\n\nAPIGroup contains the name, the supported versions, and the preferred version of a group.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>name</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>name is the name of the group.</td>\n    </tr>\n    <tr>\n      <td><code>preferredVersion</code><br/><em><a href=\"\">GroupVersionForDiscovery</a></em></td>\n      <td>preferredVersion is the version preferred by the API server, which probably is the storage version.</td>\n    </tr>\n    <tr>\n      <td><code>serverAddressByClientCIDRs</code><br/><em><a href=\"\">ServerAddressByClientCIDR array</a></em></td>\n      <td>a map of client CIDR to server address that is serving this group. This is to help clients reach servers in the most network-efficient way possible. Clients can use the appropriate server address as per the CIDR that they match. In case of multiple matches, clients should use the longest matching CIDR. The server returns only those CIDRs that it thinks that the client can match. For example: the master will return an internal IP CIDR only, if the client reaches the server using an internal IP. Server looks at X-Forwarded-For header or X-Real-Ip header or request.RemoteAddr (in that order) to get the client IP.</td>\n    </tr>\n    <tr>\n      <td><code>versions</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">GroupVersionForDiscovery array</a></em></td>\n      <td>versions are the versions supported in this group.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## APIGroupList {#APIGroupList}\n\nAPIGroupList is a list of APIGroup, to allow clients to discover the API at /apis.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>groups</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">APIGroup array</a></em></td>\n      <td>groups is a list of APIGroup.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-group-v1-meta/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/definitions/api-group-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-group-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-group-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "APIGroup"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apigroup-apigroup",
      "type": "concept",
      "title": "APIGroup {#APIGroup}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-group-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-group-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apigrouplist-apigrouplist",
      "type": "concept",
      "title": "APIGroupList {#APIGroupList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-group-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-group-v1-meta/",
          "line_start": 3205,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/service-reference-v1-admissionregistration",
      "type": "page",
      "title": "ServiceReference",
      "summary": "ServiceReference holds a reference to Service.legacy.k8s.io",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## ServiceReference {#ServiceReference}\n\nServiceReference holds a reference to Service.legacy.k8s.io\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>name</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>name is the name of the service. Required</td>\n    </tr>\n    <tr>\n      <td><code>namespace</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>namespace is the namespace of the service. Required</td>\n    </tr>\n    <tr>\n      <td><code>path</code><br/><em>string</em></td>\n      <td>path is an optional URL path which will be sent in any request to this service.</td>\n    </tr>\n    <tr>\n      <td><code>port</code><br/><em>integer</em></td>\n      <td>port is the port on the service that hosts the webhook. Default to 443 for backward compatibility. `port` should be a valid port number (1-65535, inclusive).</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/service-reference-v1-admissionregistration/",
      "meta": {
        "weight": 490,
        "rel_path": "reference/kubernetes-api/definitions/service-reference-v1-admissionregistration.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/service-reference-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/service-reference-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceReference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/fields-v1-v1-meta",
      "type": "page",
      "title": "FieldsV1",
      "summary": "FieldsV1 stores a set of fields in a data structure like a Trie, in JSON format.\n\nEach key is either a &#39;.&#39; representing the field itself, and will always map to an empty set, or a string representing a sub-field or item. The string will follow one of these four formats: &#39;f:&lt;name&gt;&#39;, where &lt;name&gt; is the name of a field in a struct, or key in a map &#39;v:&lt;value&gt;&#39;, where &lt;value&gt; is the exact json formatted value of a list item &#39;i:&lt;index&gt;&#39;, where &lt;index&gt; is position of a item in a list &#39;k:&lt;keys&gt;&#39;, where &lt;keys&gt; is a map of  a list item&#39;s key fields to their unique values If a key maps to an empty Fields value, the field that key represents is part of the set.\n\nThe exact format is defined in sigs.k8s.io/structured-merge-diff",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## FieldsV1 {#FieldsV1}\n\nFieldsV1 stores a set of fields in a data structure like a Trie, in JSON format.\n\nEach key is either a &#39;.&#39; representing the field itself, and will always map to an empty set, or a string representing a sub-field or item. The string will follow one of these four formats: &#39;f:&lt;name&gt;&#39;, where &lt;name&gt; is the name of a field in a struct, or key in a map &#39;v:&lt;value&gt;&#39;, where &lt;value&gt; is the exact json formatted value of a list item &#39;i:&lt;index&gt;&#39;, where &lt;index&gt; is position of a item in a list &#39;k:&lt;keys&gt;&#39;, where &lt;keys&gt; is a map of  a list item&#39;s key fields to their unique values If a key maps to an empty Fields value, the field that key represents is part of the set.\n\nThe exact format is defined in sigs.k8s.io/structured-merge-diff\n\n<hr>\n\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/fields-v1-v1-meta/",
      "meta": {
        "weight": 130,
        "rel_path": "reference/kubernetes-api/definitions/fields-v1-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/fields-v1-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/fields-v1-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "FieldsV1"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fieldsv1-fieldsv1",
      "type": "concept",
      "title": "FieldsV1 {#FieldsV1}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/fields-v1-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/fields-v1-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/object-meta-v1-meta",
      "type": "page",
      "title": "ObjectMeta",
      "summary": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## ObjectMeta {#ObjectMeta}\n\nObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>annotations</code><br/><em>object</em></td>\n      <td>Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations</td>\n    </tr>\n    <tr>\n      <td><code>creationTimestamp</code><br/><em><a href=\"\">Time</a></em></td>\n      <td>CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.  Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>deletionGracePeriodSeconds</code><br/><em>integer</em></td>\n      <td>Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only.</td>\n    </tr>\n    <tr>\n      <td><code>deletionTimestamp</code><br/><em><a href=\"\">Time</a></em></td>\n      <td>DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field, once the finalizers list is empty. As long as the finalizers list contains items, deletion is blocked. Once the deletionTimestamp is set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested.  Populated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>finalizers</code><br/><em>string array</em><br/><em>patch strategy: merge</em></td>\n      <td>Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order.  Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/object-meta-v1-meta/",
      "meta": {
        "weight": 310,
        "rel_path": "reference/kubernetes-api/definitions/object-meta-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/object-meta-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/object-meta-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "ObjectMeta"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:objectmeta-objectmeta",
      "type": "concept",
      "title": "ObjectMeta {#ObjectMeta}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/object-meta-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/object-meta-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/binding-v1",
      "type": "page",
      "title": "Binding",
      "summary": "Binding ties one object to another; for example, a pod is bound to a node by a scheduler.",
      "body": "\n\n`apiVersion: v1`\n\n`import \"k8s.io/api/core/v1\"`\n\n\n## Binding {#Binding}\n\nBinding ties one object to another; for example, a pod is bound to a node by a scheduler.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>target</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ObjectReference</a></em></td>\n      <td>The target object that you want to bind to the standard object.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/binding-v1/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/kubernetes-api/definitions/binding-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/binding-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Binding"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:binding-binding",
      "type": "concept",
      "title": "Binding {#Binding}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/binding-v1/",
          "line_start": 627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/list-meta-v1-meta",
      "type": "page",
      "title": "ListMeta",
      "summary": "ListMeta describes metadata that synthetic resources must have, including lists and various status objects. A resource may have only one of {ObjectMeta, ListMeta}.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## ListMeta {#ListMeta}\n\nListMeta describes metadata that synthetic resources must have, including lists and various status objects. A resource may have only one of {ObjectMeta, ListMeta}.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>continue</code><br/><em>string</em></td>\n      <td>continue may be set if the user set a limit on the number of items returned, and indicates that the server has more data available. The value is opaque and may be used to issue another request to the endpoint that served this list to retrieve the next set of available objects. Continuing a consistent list may not be possible if the server configuration has changed or more than a few minutes have passed. The resourceVersion field returned when using this continue value will be identical to the value in the first response, unless you have received this token from an error message.</td>\n    </tr>\n    <tr>\n      <td><code>remainingItemCount</code><br/><em>integer</em></td>\n      <td>remainingItemCount is the number of subsequent items in the list which are not included in this list response. If the list request contained label or field selectors, then the number of remaining items is unknown and the field will be left unset and omitted during serialization. If the list is complete (either because it is not chunking or because this is the last chunk), then there are no more remaining items and this field will be left unset and omitted during serialization. Servers older than v1.15 do not set this field. The intended use of the remainingItemCount is *estimating* the size of a collection. Clients should not rely on the remainingItemCount to be set or to be exact.</td>\n    </tr>\n    <tr>\n      <td><code>resourceVersion</code><br/><em>string</em></td>\n      <td>String that identifies the server's internal version of this object that can be used by clients to determine when objects have changed. Value must be treated as opaque by clients and passed unmodified back to the server. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency</td>\n    </tr>\n    <tr>\n      <td><code>selfLink</code><br/><em>string</em></td>\n      <td>Deprecated: selfLink is a legacy read-only field that is no longer populated by the system.</td>\n    </tr>\n    <tr>\n      <td><code>shardInfo</code><br/><em><a href=\"\">ShardInfo</a></em></td>\n      <td>shardInfo is set when the list is a filtered subset of the full collection, as selected by a shard selector on the request. It echoes back the selector so clients can verify which shard they received and merge sharded responses. Clients should not cache sharded list responses as a full representation of the collection.  This is an alpha field and requires enabling the ShardedListAndWatch feature gate.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/list-meta-v1-meta/",
      "meta": {
        "weight": 190,
        "rel_path": "reference/kubernetes-api/definitions/list-meta-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/list-meta-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/list-meta-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "ListMeta"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:listmeta-listmeta",
      "type": "concept",
      "title": "ListMeta {#ListMeta}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/list-meta-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/list-meta-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/label-selector-v1-meta",
      "type": "page",
      "title": "LabelSelector",
      "summary": "A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## LabelSelector {#LabelSelector}\n\nA label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>matchExpressions</code><br/><em><a href=\"\">LabelSelectorRequirement array</a></em></td>\n      <td>matchExpressions is a list of label selector requirements. The requirements are ANDed.</td>\n    </tr>\n    <tr>\n      <td><code>matchLabels</code><br/><em>object</em></td>\n      <td>matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-v1-meta/",
      "meta": {
        "weight": 160,
        "rel_path": "reference/kubernetes-api/definitions/label-selector-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "LabelSelector"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:labelselector-labelselector",
      "type": "concept",
      "title": "LabelSelector {#LabelSelector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/self-subject-review-v1-authentication",
      "type": "page",
      "title": "SelfSubjectReview",
      "summary": "SelfSubjectReview contains the user information that the kube-apiserver has about the user making this request. When using impersonation, users will receive the user info of the user being impersonated.  If impersonation or request header authentication is used, any extra keys will have their case ignored and returned as lowercase.",
      "body": "\n\n`apiVersion: authentication.k8s.io/v1`\n\n`import \"k8s.io/api/authentication/v1\"`\n\n\n## SelfSubjectReview {#SelfSubjectReview}\n\nSelfSubjectReview contains the user information that the kube-apiserver has about the user making this request. When using impersonation, users will receive the user info of the user being impersonated.  If impersonation or request header authentication is used, any extra keys will have their case ignored and returned as lowercase.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">SelfSubjectReviewStatus</a></em></td>\n      <td>status is filled in by the server with the user attributes.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## SelfSubjectReviewStatus {#SelfSubjectReviewStatus}\n\nSelfSubjectReviewStatus is filled by the kube-apiserver and sent back to a user.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>userInfo</code><br/><em><a href=\"\">UserInfo</a></em></td>\n      <td>userInfo is a set of attributes belonging to the user making this request.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-review-v1-authentication/",
      "meta": {
        "weight": 460,
        "rel_path": "reference/kubernetes-api/definitions/self-subject-review-v1-authentication.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-review-v1-authentication/",
          "line_start": null,
          "line_end": null,
          "quote": "SelfSubjectReview"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selfsubjectreview-selfsubjectreview",
      "type": "concept",
      "title": "SelfSubjectReview {#SelfSubjectReview}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-review-v1-authentication/",
          "line_start": 659,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selfsubjectreviewstatus-selfsubjectreviewstatus",
      "type": "concept",
      "title": "SelfSubjectReviewStatus {#SelfSubjectReviewStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-review-v1-authentication/",
          "line_start": 2422,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization",
      "type": "page",
      "title": "SelfSubjectAccessReview",
      "summary": "SelfSubjectAccessReview checks whether or the current user can perform an action.  Not filling in a spec.namespace means &#34;in all namespaces&#34;.  Self is a special case, because users should always be able to check whether they can perform an action",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## SelfSubjectAccessReview {#SelfSubjectAccessReview}\n\nSelfSubjectAccessReview checks whether or the current user can perform an action.  Not filling in a spec.namespace means &#34;in all namespaces&#34;.  Self is a special case, because users should always be able to check whether they can perform an action\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>metadata is the standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">SelfSubjectAccessReviewSpec</a></em></td>\n      <td>spec holds information about the request being evaluated.  user and groups must be empty</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em>SubjectAccessReviewStatus</em></td>\n      <td>status is filled in by the server and indicates whether the request is allowed or not</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## SelfSubjectAccessReviewSpec {#SelfSubjectAccessReviewSpec}\n\nSelfSubjectAccessReviewSpec is a description of the access request.  Exactly one of resourceAttributes and nonResourceAttributes must be set\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>nonResourceAttributes</code><br/><em><a href=\"\">NonResourceAttributes</a></em></td>\n      <td>nonResourceAttributes describes information for a non-resource access request</td>\n    </tr>\n    <tr>\n      <td><code>resourceAttributes</code><br/><em><a href=\"\">ResourceAttributes</a></em></td>\n      <td>resourceAttributes describes information for a resource access request</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization/",
      "meta": {
        "weight": 450,
        "rel_path": "reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "SelfSubjectAccessReview"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selfsubjectaccessreview-selfsubjectaccessreview",
      "type": "concept",
      "title": "SelfSubjectAccessReview {#SelfSubjectAccessReview}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selfsubjectaccessreviewspec-selfsubjectaccessreviewspec",
      "type": "concept",
      "title": "SelfSubjectAccessReviewSpec {#SelfSubjectAccessReviewSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization/",
          "line_start": 2606,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/variable-v1-admissionregistration",
      "type": "page",
      "title": "Variable",
      "summary": "Variable is the definition of a variable that is used for composition. A variable is defined as a named expression.",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## Variable {#Variable}\n\nVariable is the definition of a variable that is used for composition. A variable is defined as a named expression.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>expression</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>expression is the expression that will be evaluated as the value of the variable. The CEL expression has access to the same identifiers as the CEL expressions in Validation.</td>\n    </tr>\n    <tr>\n      <td><code>name</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>name is the name of the variable. The name must be a valid CEL identifier and unique among all variables. The variable can be accessed in other expressions through `variables` For example, if name is \"foo\", the variable will be available as `variables.foo`</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/variable-v1-admissionregistration/",
      "meta": {
        "weight": 630,
        "rel_path": "reference/kubernetes-api/definitions/variable-v1-admissionregistration.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/variable-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/variable-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": "Variable"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:variable-variable",
      "type": "concept",
      "title": "Variable {#Variable}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/variable-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/variable-v1-admissionregistration/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/api-versions-v1-meta",
      "type": "page",
      "title": "APIVersions",
      "summary": "APIVersions lists the versions that are available, to allow clients to discover the API at /api, which is the root path of the legacy v1 API.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## APIVersions {#APIVersions}\n\nAPIVersions lists the versions that are available, to allow clients to discover the API at /api, which is the root path of the legacy v1 API.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>serverAddressByClientCIDRs</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ServerAddressByClientCIDR array</a></em></td>\n      <td>a map of client CIDR to server address that is serving this group. This is to help clients reach servers in the most network-efficient way possible. Clients can use the appropriate server address as per the CIDR that they match. In case of multiple matches, clients should use the longest matching CIDR. The server returns only those CIDRs that it thinks that the client can match. For example: the master will return an internal IP CIDR only, if the client reaches the server using an internal IP. Server looks at X-Forwarded-For header or X-Real-Ip header or request.RemoteAddr (in that order) to get the client IP.</td>\n    </tr>\n    <tr>\n      <td><code>versions</code>&nbsp;<strong>*</strong><br/><em>string array</em></td>\n      <td>versions are the api versions that are available.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-versions-v1-meta/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/kubernetes-api/definitions/api-versions-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-versions-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-versions-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "APIVersions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiversions-apiversions",
      "type": "concept",
      "title": "APIVersions {#APIVersions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-versions-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-versions-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling",
      "type": "page",
      "title": "TypedLocalObjectReference",
      "summary": "TypedLocalObjectReference allows to reference typed object inside the same namespace.",
      "body": "\n\n`apiVersion: scheduling.k8s.io/v1alpha2`\n\n`import \"k8s.io/api/scheduling/v1alpha2\"`\n\n\n## TypedLocalObjectReference {#TypedLocalObjectReference}\n\nTypedLocalObjectReference allows to reference typed object inside the same namespace.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiGroup</code><br/><em>string</em></td>\n      <td>APIGroup is the group for the resource being referenced. If APIGroup is empty, the specified Kind must be in the core API group. For any other third-party types, setting APIGroup is required. It must be a DNS subdomain.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Kind is the type of resource being referenced. It must be a path segment name.</td>\n    </tr>\n    <tr>\n      <td><code>name</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>Name is the name of resource being referenced. It must be a path segment name.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling/",
      "meta": {
        "weight": 610,
        "rel_path": "reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling/",
          "line_start": null,
          "line_end": null,
          "quote": "TypedLocalObjectReference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization",
      "type": "page",
      "title": "SubjectRulesReviewStatus",
      "summary": "SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on the set of authorizers the server is configured with and any errors experienced during evaluation. Because authorization rules are additive, if a rule appears in a list it&#39;s safe to assume the subject has that permission, even if that list is incomplete.",
      "body": "\n\n`apiVersion: authorization.k8s.io/v1`\n\n`import \"k8s.io/api/authorization/v1\"`\n\n\n## SubjectRulesReviewStatus {#SubjectRulesReviewStatus}\n\nSubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on the set of authorizers the server is configured with and any errors experienced during evaluation. Because authorization rules are additive, if a rule appears in a list it&#39;s safe to assume the subject has that permission, even if that list is incomplete.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>evaluationError</code><br/><em>string</em></td>\n      <td>evaluationError can appear in combination with Rules. It indicates an error occurred during rule evaluation, such as an authorizer that doesn't support rule evaluation, and that ResourceRules and/or NonResourceRules may be incomplete.</td>\n    </tr>\n    <tr>\n      <td><code>incomplete</code>&nbsp;<strong>*</strong><br/><em>boolean</em></td>\n      <td>incomplete is true when the rules returned by this call are incomplete. This is most commonly encountered when an authorizer, such as an external authorizer, doesn't support rules evaluation.</td>\n    </tr>\n    <tr>\n      <td><code>nonResourceRules</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">NonResourceRule array</a></em></td>\n      <td>nonResourceRules is the list of actions the subject is allowed to perform on non-resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.</td>\n    </tr>\n    <tr>\n      <td><code>resourceRules</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ResourceRule array</a></em></td>\n      <td>resourceRules is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization/",
      "meta": {
        "weight": 560,
        "rel_path": "reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "SubjectRulesReviewStatus"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:subjectrulesreviewstatus-subjectrulesreviewstatus",
      "type": "concept",
      "title": "SubjectRulesReviewStatus {#SubjectRulesReviewStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/status-details-v1-meta",
      "type": "page",
      "title": "StatusDetails",
      "summary": "StatusDetails is a set of additional properties that MAY be set by the server to provide additional information about a response. The Reason field of a Status object defines what attributes will be set. Clients must ignore fields that do not match the defined type of each attribute, and should assume that any attribute may be empty, invalid, or under defined.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## StatusDetails {#StatusDetails}\n\nStatusDetails is a set of additional properties that MAY be set by the server to provide additional information about a response. The Reason field of a Status object defines what attributes will be set. Clients must ignore fields that do not match the defined type of each attribute, and should assume that any attribute may be empty, invalid, or under defined.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>causes</code><br/><em><a href=\"\">StatusCause array</a></em></td>\n      <td>The Causes array includes more details associated with the StatusReason failure. Not all StatusReasons may provide detailed causes.</td>\n    </tr>\n    <tr>\n      <td><code>group</code><br/><em>string</em></td>\n      <td>The group attribute of the resource associated with the status StatusReason.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>The kind attribute of the resource associated with the status StatusReason. On some operations may differ from the requested resource Kind. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>name</code><br/><em>string</em></td>\n      <td>The name attribute of the resource associated with the status StatusReason (when there is a single name which can be described).</td>\n    </tr>\n    <tr>\n      <td><code>retryAfterSeconds</code><br/><em>integer</em></td>\n      <td>If specified, the time in seconds before the operation should be retried. Some errors may indicate the client must take an alternate action - for those errors this field may indicate how long to wait before taking the alternate action.</td>\n    </tr>\n    <tr>\n      <td><code>uid</code><br/><em>string</em></td>\n      <td>UID of the resource. (when there is a single resource which can be described). More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-details-v1-meta/",
      "meta": {
        "weight": 530,
        "rel_path": "reference/kubernetes-api/definitions/status-details-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-details-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-details-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "StatusDetails"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statusdetails-statusdetails",
      "type": "concept",
      "title": "StatusDetails {#StatusDetails}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-details-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-details-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/_index",
      "type": "page",
      "title": "Definitions",
      "summary": "Definitions is a collection of Kubernetes API object definitions.",
      "body": "Definitions is a collection of Kubernetes API object definitions.\n\n**Why it matters**\nDefinitions provide a centralized location for API object documentation.\n\n**Key facts**\n- Collection of Kubernetes API object definitions\n- Provides centralized location for API object documentation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/_index/",
      "meta": {
        "weight": 230,
        "rel_path": "reference/kubernetes-api/definitions/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Definitions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/shard-info-v1-meta",
      "type": "page",
      "title": "ShardInfo",
      "summary": "ShardInfo describes the shard selector that was applied to produce a list response. Its presence on a list response indicates the list is a filtered subset.",
      "body": "\n\n`apiVersion: meta/v1`\n\n`import \"k8s.io/apimachinery/pkg/apis/meta/v1\"`\n\n\n## ShardInfo {#ShardInfo}\n\nShardInfo describes the shard selector that was applied to produce a list response. Its presence on a list response indicates the list is a filtered subset.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>selector</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>selector is the shard selector string from the request, echoed back so clients can verify which shard they received and merge responses from multiple shards.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n\n\n\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/shard-info-v1-meta/",
      "meta": {
        "weight": 500,
        "rel_path": "reference/kubernetes-api/definitions/shard-info-v1-meta.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/shard-info-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/shard-info-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": "ShardInfo"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:shardinfo-shardinfo",
      "type": "concept",
      "title": "ShardInfo {#ShardInfo}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/shard-info-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/shard-info-v1-meta/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/definitions/match-resources-v1-admissionregistration",
      "type": "page",
      "title": "MatchResources",
      "summary": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
      "body": "\n\n`apiVersion: admissionregistration.k8s.io/v1`\n\n`import \"k8s.io/api/admissionregistration/v1\"`\n\n\n## MatchResources {#MatchResources}\n\nMatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>excludeResourceRules</code><br/><em><a href=\"\">NamedRuleWithOperations array</a></em></td>\n      <td>excludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)</td>\n    </tr>\n    <tr>\n      <td><code>matchPolicy</code><br/><em>string</em></td>\n      <td>matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".  - Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.  - Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.  Defaults to \"Equivalent\"<br/><br/>Possible enum values:<br/> - `\"Equivalent\"` means requests should be sent to the webhook if they modify a resource listed in rules via another API group or version.<br/> - `\"Exact\"` means requests should only be sent to the webhook if they exactly match a given rule.</td>\n    </tr>\n    <tr>\n      <td><code>namespaceSelector</code><br/><em><a href=\"\">LabelSelector</a></em></td>\n      <td>namespaceSelector decides whether to run the admission control policy on an object based on whether the namespace for that object matches the selector. If the object itself is a namespace, the matching is performed on object.metadata.labels. If the object is another cluster scoped resource, it never skips the policy.  For example, to run the webhook on any objects whose namespace is not associated with \"runlevel\" of \"0\" or \"1\";  you will set the selector as follows: \"namespaceSelector\": {   \"matchExpressions\": [     {       \"key\": \"runlevel\",       \"operator\": \"NotIn\",       \"values\": [         \"0\",         \"1\"       ]     }   ] }  If instead you want to only run the policy on any objects whose namespace is associated with the \"environment\" of \"prod\" or \"staging\"; you will set the selector as follows: \"namespaceSelector\": {   \"matchExpressions\": [     {       \"key\": \"environment\",       \"operator\": \"In\",       \"values\": [         \"prod\",         \"staging\"       ]     }   ] }  See https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ for more examples of label selectors.  Default to the empty LabelSelector, which matches everything.</td>\n    </tr>\n    <tr>\n      <td><code>objectSelector</code><br/><em><a href=\"\">LabelSelector</a></em></td>\n      <td>objectSelector decides whether to run the validation based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the cel validation, and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match.\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/match-resources-v1-admissionregistration/",
      "meta": {
        "weight": 240,
        "rel_path": "reference/kubernetes-api/definitions/match-resources-v1-admissionregistration.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/match-resources-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/match-resources-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": "MatchResources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:matchresources-matchresources",
      "type": "concept",
      "title": "MatchResources {#MatchResources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/match-resources-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/match-resources-v1-admissionregistration/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "type": "page",
      "title": "StorageVersionMigration",
      "summary": "StorageVersionMigration represents a migration of stored data to the latest storage version.",
      "body": "\n\n`apiVersion: storagemigration.k8s.io/v1beta1`\n\n`import \"k8s.io/api/storagemigration/v1beta1\"`\n\n\n## StorageVersionMigration {#StorageVersionMigration}\n\nStorageVersionMigration represents a migration of stored data to the latest storage version.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">StorageVersionMigrationSpec</a></em></td>\n      <td>Specification of the migration.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">StorageVersionMigrationStatus</a></em></td>\n      <td>Status of the migration.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## StorageVersionMigrationSpec {#StorageVersionMigrationSpec}\n\nSpec of the storage version migration.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>resource</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">GroupResource</a></em></td>\n      <td>The resource that is being migrated. The migrator sends requests to the endpoint serving the resource. Immutable.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## StorageVersionMigrationStatus {#StorageVersionMigrationStatus}\n\nStatus of the storage version migration.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>conditions</code><br/><em><a href=\"\">Condition array</a></em><br/><em>patch strategy: merge on key <code>type</code></em></td>\n      <td>The latest available observations of the migration's current state.</td>\n    </tr>\n    <tr>\n      <td><code>resourceVersion</code><br/><em>string</em></td>\n      <td>ResourceVersion to compare with the GC cache for performing the migration. This is the current resource version of given group, version and resource when kube-controller-manager first observes this StorageVersionMigration resource.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## StorageVersionMigrationList {#StorageVersionMigrationList}\n\nStorageVersionMigrationList is a collection of storage version migrations.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">StorageVersionMigration array</a></em></td>\n      <td>Items is the list of StorageVersionMigration</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.i\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": "StorageVersionMigration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageversionmigration-storageversionmigration",
      "type": "concept",
      "title": "StorageVersionMigration {#StorageVersionMigration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageversionmigrationspec-storageversionmigrationspec",
      "type": "concept",
      "title": "StorageVersionMigrationSpec {#StorageVersionMigrationSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 2382,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageversionmigrationstatus-storageversionmigrationstatus",
      "type": "concept",
      "title": "StorageVersionMigrationStatus {#StorageVersionMigrationStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 2908,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageversionmigrationlist-storageversionmigrationlist",
      "type": "concept",
      "title": "StorageVersionMigrationList {#StorageVersionMigrationList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 3755,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/storagemigration/_index",
      "type": "page",
      "title": "Storagemigration",
      "summary": "Storagemigration is a Kubernetes API object that represents storage migration.",
      "body": "Storagemigration is a Kubernetes API object that represents storage migration.\n\n**Why it matters**\nStoragemigration enables the movement of persistent volumes between nodes.\n\n**Key facts**\n- Represents storage migration\n- Enables movement of persistent volumes between nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/_index/",
      "meta": {
        "weight": 220,
        "rel_path": "reference/kubernetes-api/storagemigration/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Storagemigration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "type": "page",
      "title": "DaemonSet",
      "summary": "DaemonSet represents the configuration of a daemon set.",
      "body": "\n\n`apiVersion: apps/v1`\n\n`import \"k8s.io/api/apps/v1\"`\n\n\n## DaemonSet {#DaemonSet}\n\nDaemonSet represents the configuration of a daemon set.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">DaemonSetSpec</a></em></td>\n      <td>The desired behavior of this daemon set. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">DaemonSetStatus</a></em></td>\n      <td>The current status of this daemon set. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## DaemonSetSpec {#DaemonSetSpec}\n\nDaemonSetSpec is the specification of a daemon set.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>minReadySeconds</code><br/><em>integer</em></td>\n      <td>The minimum number of seconds for which a newly created DaemonSet pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready).</td>\n    </tr>\n    <tr>\n      <td><code>revisionHistoryLimit</code><br/><em>integer</em></td>\n      <td>The number of old history to retain to allow rollback. This is a pointer to distinguish between explicit zero and not specified. Defaults to 10.</td>\n    </tr>\n    <tr>\n      <td><code>selector</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">LabelSelector</a></em></td>\n      <td>A label query over pods that are managed by the daemon set. Must match in order to be controlled. It must match the pod template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors</td>\n    </tr>\n    <tr>\n      <td><code>template</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">PodTemplateSpec</a></em></td>\n      <td>An object that describes the pod that will be created. The DaemonSet will create exactly one copy of this pod on every node that matches the template's node selector (or on every node if no node selector is specified). The only allowed template.spec.restartPolicy value is \"Always\". More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template</td>\n    </tr>\n    <tr>\n      <td><code>updateStrategy</code><br/><em><a href=\"\">DaemonSetUpdateStrategy</a></em></td>\n      <td>An update strategy to replace existing DaemonSet pods with new pods.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## DaemonSetStatus {#DaemonSetStatus}\n\nDaemonSetStatus represents the current status of a daemon set.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>collisionCount</code><br/><em>integer</em></td\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubernetes-api/apps/daemon-set-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "DaemonSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonset-daemonset",
      "type": "concept",
      "title": "DaemonSet {#DaemonSet}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 632,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonsetspec-daemonsetspec",
      "type": "concept",
      "title": "DaemonSetSpec {#DaemonSetSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 2556,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonsetstatus-daemonsetstatus",
      "type": "concept",
      "title": "DaemonSetStatus {#DaemonSetStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 4589,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonsetlist-daemonsetlist",
      "type": "concept",
      "title": "DaemonSetList {#DaemonSetList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 7433,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonsetcondition-daemonsetcondition",
      "type": "concept",
      "title": "DaemonSetCondition {#DaemonSetCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 8870,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonsetupdatestrategy-daemonsetupdatestrategy",
      "type": "concept",
      "title": "DaemonSetUpdateStrategy {#DaemonSetUpdateStrategy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 9922,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "type": "page",
      "title": "ReplicaSet",
      "summary": "ReplicaSet ensures that a specified number of pod replicas are running at any given time.",
      "body": "\n\n`apiVersion: apps/v1`\n\n`import \"k8s.io/api/apps/v1\"`\n\n\n## ReplicaSet {#ReplicaSet}\n\nReplicaSet ensures that a specified number of pod replicas are running at any given time.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) that the ReplicaSet manages. Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">ReplicaSetSpec</a></em></td>\n      <td>Spec defines the specification of the desired behavior of the ReplicaSet. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">ReplicaSetStatus</a></em></td>\n      <td>Status is the most recently observed status of the ReplicaSet. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ReplicaSetSpec {#ReplicaSetSpec}\n\nReplicaSetSpec is the specification of a ReplicaSet.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>minReadySeconds</code><br/><em>integer</em></td>\n      <td>Minimum number of seconds for which a newly created pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready)</td>\n    </tr>\n    <tr>\n      <td><code>replicas</code><br/><em>integer</em></td>\n      <td>Replicas is the number of desired pods. This is a pointer to distinguish between explicit zero and unspecified. Defaults to 1. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicaset</td>\n    </tr>\n    <tr>\n      <td><code>selector</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">LabelSelector</a></em></td>\n      <td>Selector is a label query over pods that should match the replica count. Label keys and values that must match in order to be controlled by this replica set. It must match the pod template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors</td>\n    </tr>\n    <tr>\n      <td><code>template</code><br/><em><a href=\"\">PodTemplateSpec</a></em></td>\n      <td>Template is the object that describes the pod that will be created if insufficient replicas are detected. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/#pod-template</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ReplicaSetStatus {#ReplicaSetStatus}\n\nReplicaSetStatus represents the current status of a ReplicaSet.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>availableReplicas</code><br/><em>integer</em></td>\n      <td>The number of available non-terminating pods (ready for at least minReadySeconds\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/kubernetes-api/apps/replica-set-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ReplicaSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicaset-replicaset",
      "type": "concept",
      "title": "ReplicaSet {#ReplicaSet}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 632,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicasetspec-replicasetspec",
      "type": "concept",
      "title": "ReplicaSetSpec {#ReplicaSetSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 2771,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicasetstatus-replicasetstatus",
      "type": "concept",
      "title": "ReplicaSetStatus {#ReplicaSetStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 4455,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicasetlist-replicasetlist",
      "type": "concept",
      "title": "ReplicaSetList {#ReplicaSetList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 6421,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicasetcondition-replicasetcondition",
      "type": "concept",
      "title": "ReplicaSetCondition {#ReplicaSetCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 7945,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "type": "page",
      "title": "StatefulSet",
      "summary": "StatefulSet represents a set of pods with consistent identities. Identities are defined as:\n  - Network: A single stable DNS and hostname.\n  - Storage: As many VolumeClaims as requested.\n\nThe StatefulSet guarantees that a given network identity will always map to the same storage identity.",
      "body": "\n\n`apiVersion: apps/v1`\n\n`import \"k8s.io/api/apps/v1\"`\n\n\n## StatefulSet {#StatefulSet}\n\nStatefulSet represents a set of pods with consistent identities. Identities are defined as:\n  - Network: A single stable DNS and hostname.\n  - Storage: As many VolumeClaims as requested.\n\nThe StatefulSet guarantees that a given network identity will always map to the same storage identity.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">StatefulSetSpec</a></em></td>\n      <td>Spec defines the desired identities of pods in this set.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">StatefulSetStatus</a></em></td>\n      <td>Status is the current status of Pods in this StatefulSet. This data may be out of date by some window of time.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## StatefulSetSpec {#StatefulSetSpec}\n\nA StatefulSetSpec is the specification of a StatefulSet.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>minReadySeconds</code><br/><em>integer</em></td>\n      <td>Minimum number of seconds for which a newly created pod should be ready without any of its container crashing for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready)</td>\n    </tr>\n    <tr>\n      <td><code>ordinals</code><br/><em><a href=\"\">StatefulSetOrdinals</a></em></td>\n      <td>ordinals controls the numbering of replica indices in a StatefulSet. The default ordinals behavior assigns a \"0\" index to the first replica and increments the index by one for each additional replica requested.</td>\n    </tr>\n    <tr>\n      <td><code>persistentVolumeClaimRetentionPolicy</code><br/><em><a href=\"\">StatefulSetPersistentVolumeClaimRetentionPolicy</a></em></td>\n      <td>persistentVolumeClaimRetentionPolicy describes the lifecycle of persistent volume claims created from volumeClaimTemplates. By default, all persistent volume claims are created as needed and retained until manually deleted. This policy allows the lifecycle to be altered, for example by deleting persistent volume claims when their stateful set is deleted, or when their pod is scaled down.</td>\n    </tr>\n    <tr>\n      <td><code>podManagementPolicy</code><br/><em>string</em></td>\n      <td>podManagementPolicy controls how pods are created during initial scale up, when replacing pods on nodes, or when scaling down. The default policy is `OrderedReady`, where pods are created in increasing order (pod-0, then pod-1, etc) and the controller will wait until each pod is ready before continuing. When scaling down, the pods are removed in the opposite order. The alternative policy is `Parallel` which will create pods in parallel to match the desired scale without waiting, and on scale down will delete all pods at once.<br/><br/>Possible enum values:<br/> - `\"OrderedReady\"` will create pods in strictly increasing order on\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/kubernetes-api/apps/stateful-set-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "StatefulSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulset-statefulset",
      "type": "concept",
      "title": "StatefulSet {#StatefulSet}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 632,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulsetspec-statefulsetspec",
      "type": "concept",
      "title": "StatefulSetSpec {#StatefulSetSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 2580,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulsetstatus-statefulsetstatus",
      "type": "concept",
      "title": "StatefulSetStatus {#StatefulSetStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 8303,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulsetlist-statefulsetlist",
      "type": "concept",
      "title": "StatefulSetList {#StatefulSetList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 10920,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rollingupdatestatefulsetstrategy-rollingupdatestatefulsetstrategy",
      "type": "concept",
      "title": "RollingUpdateStatefulSetStrategy {#RollingUpdateStatefulSetStrategy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 12385,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulsetcondition-statefulsetcondition",
      "type": "concept",
      "title": "StatefulSetCondition {#StatefulSetCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 13802,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulsetordinals-statefulsetordinals",
      "type": "concept",
      "title": "StatefulSetOrdinals {#StatefulSetOrdinals}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 14864,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulsetpersistentvolumeclaimretentionpolicy-statefulsetpersistentvolumeclaimretentionpolicy",
      "type": "concept",
      "title": "StatefulSetPersistentVolumeClaimRetentionPolicy {#StatefulSetPersistentVolumeClaimRetentionPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 15655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulsetupdatestrategy-statefulsetupdatestrategy",
      "type": "concept",
      "title": "StatefulSetUpdateStrategy {#StatefulSetUpdateStrategy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 16758,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "type": "page",
      "title": "ControllerRevision",
      "summary": "ControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.",
      "body": "\n\n`apiVersion: apps/v1`\n\n`import \"k8s.io/api/apps/v1\"`\n\n\n## ControllerRevision {#ControllerRevision}\n\nControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>data</code><br/><em></em></td>\n      <td>Data is the serialized representation of the state.</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>revision</code>&nbsp;<strong>*</strong><br/><em>integer</em></td>\n      <td>Revision indicates the revision of the state represented by Data.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## ControllerRevisionList {#ControllerRevisionList}\n\nControllerRevisionList is a resource containing a list of ControllerRevision objects.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>items</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">ControllerRevision array</a></em></td>\n      <td>Items is the list of ControllerRevisions</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ListMeta</a></em></td>\n      <td>More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n  </tbody>\n</table>\n\n\n\n## Operations {#Operations}\n\n<hr>\n\n\n### `post` Create\n\n#### HTTP Request\n\nPOST /apis/apps/v1/namespaces/{namespace}/controllerrevisions\n\n\n#### Path Parameters\n\n<table>\n  <thead><tr><th>Name</th><th>Type</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>namespace</code></td>\n      <td><em>string</em></td>\n      <td>object name and auth scope, such as \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/apps/controller-revision-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "ControllerRevision"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controllerrevision-controllerrevision",
      "type": "concept",
      "title": "ControllerRevision {#ControllerRevision}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 632,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controllerrevisionlist-controllerrevisionlist",
      "type": "concept",
      "title": "ControllerRevisionList {#ControllerRevisionList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 2852,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/apps/deployment-v1",
      "type": "page",
      "title": "Deployment",
      "summary": "Deployment enables declarative updates for Pods and ReplicaSets.",
      "body": "\n\n`apiVersion: apps/v1`\n\n`import \"k8s.io/api/apps/v1\"`\n\n\n## Deployment {#Deployment}\n\nDeployment enables declarative updates for Pods and ReplicaSets.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">DeploymentSpec</a></em></td>\n      <td>Specification of the desired behavior of the Deployment.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">DeploymentStatus</a></em></td>\n      <td>Most recently observed status of the Deployment.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## DeploymentSpec {#DeploymentSpec}\n\nDeploymentSpec is the specification of the desired behavior of the Deployment.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>minReadySeconds</code><br/><em>integer</em></td>\n      <td>Minimum number of seconds for which a newly created pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready)</td>\n    </tr>\n    <tr>\n      <td><code>paused</code><br/><em>boolean</em></td>\n      <td>Indicates that the deployment is paused.</td>\n    </tr>\n    <tr>\n      <td><code>progressDeadlineSeconds</code><br/><em>integer</em></td>\n      <td>The maximum time in seconds for a deployment to make progress before it is considered to be failed. The deployment controller will continue to process failed deployments and a condition with a ProgressDeadlineExceeded reason will be surfaced in the deployment status. Note that progress will not be estimated during the time a deployment is paused. Defaults to 600s.</td>\n    </tr>\n    <tr>\n      <td><code>replicas</code><br/><em>integer</em></td>\n      <td>Number of desired pods. This is a pointer to distinguish between explicit zero and not specified. Defaults to 1.</td>\n    </tr>\n    <tr>\n      <td><code>revisionHistoryLimit</code><br/><em>integer</em></td>\n      <td>The number of old ReplicaSets to retain to allow rollback. This is a pointer to distinguish between explicit zero and not specified. Defaults to 10.</td>\n    </tr>\n    <tr>\n      <td><code>selector</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">LabelSelector</a></em></td>\n      <td>Label selector for pods. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment. It must match the pod template's labels.</td>\n    </tr>\n    <tr>\n      <td><code>strategy</code><br/><em><a href=\"\">DeploymentStrategy</a></em><br/><em>patch strategy: retainKeys</em></td>\n      <td>The deployment strategy to use to replace existing pods with new ones.</td>\n    </tr>\n    <tr>\n      <td><code>strategy.rollingUpdate</code><br/><em><a href=\"\">RollingUpdateDeployment</a></em></td>\n      <td>Rolling update config params. Present only if DeploymentStrategyType = RollingUpdate.</td>\n    </tr>\n    <tr>\n      <td><code>strategy.rollingUpdate.maxSurge</code><br/><em>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/apps/deployment-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Deployment"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deployment-deployment",
      "type": "concept",
      "title": "Deployment {#Deployment}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 632,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploymentspec-deploymentspec",
      "type": "concept",
      "title": "DeploymentSpec {#DeploymentSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 2286,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploymentstatus-deploymentstatus",
      "type": "concept",
      "title": "DeploymentStatus {#DeploymentStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 7066,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploymentlist-deploymentlist",
      "type": "concept",
      "title": "DeploymentList {#DeploymentList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 9599,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploymentcondition-deploymentcondition",
      "type": "concept",
      "title": "DeploymentCondition {#DeploymentCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 10942,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/apps/_index",
      "type": "page",
      "title": "Apps",
      "summary": "Apps is a collection of Kubernetes API objects related to application management.",
      "body": "Apps is a collection of Kubernetes API objects related to application management.\n\n**Why it matters**\nApps provide a centralized location for application configuration and deployment.\n\n**Key facts**\n- Collection of Kubernetes API objects related to application management\n- Provides centralized location for application configuration and deployment",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/_index/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/kubernetes-api/apps/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Apps"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "type": "page",
      "title": "CustomResourceDefinition",
      "summary": "CustomResourceDefinition represents a resource that should be exposed on the API server.  Its name MUST be in the format &lt;.spec.name&gt;.&lt;.spec.group&gt;.",
      "body": "\n\n`apiVersion: apiextensions.k8s.io/v1`\n\n`import \"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1\"`\n\n\n## CustomResourceDefinition {#CustomResourceDefinition}\n\nCustomResourceDefinition represents a resource that should be exposed on the API server.  Its name MUST be in the format &lt;.spec.name&gt;.&lt;.spec.group&gt;.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">CustomResourceDefinitionSpec</a></em></td>\n      <td>spec describes how the user wants the resources to appear</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">CustomResourceDefinitionStatus</a></em></td>\n      <td>status indicates the actual state of the CustomResourceDefinition</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## CustomResourceDefinitionSpec {#CustomResourceDefinitionSpec}\n\nCustomResourceDefinitionSpec describes how a user wants their resource to appear\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>conversion</code><br/><em><a href=\"\">CustomResourceConversion</a></em></td>\n      <td>conversion defines conversion settings for the CRD.</td>\n    </tr>\n    <tr>\n      <td><code>group</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>group is the API group of the defined custom resource. The custom resources are served under `/apis/\\<group>/...`. Must match the name of the CustomResourceDefinition (in the form `\\<names.plural>.\\<group>`).</td>\n    </tr>\n    <tr>\n      <td><code>names</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">CustomResourceDefinitionNames</a></em></td>\n      <td>names specify the resource and kind names for the custom resource.</td>\n    </tr>\n    <tr>\n      <td><code>preserveUnknownFields</code><br/><em>boolean</em></td>\n      <td>preserveUnknownFields indicates that object fields which are not specified in the OpenAPI schema should be preserved when persisting to storage. apiVersion, kind, metadata and known fields inside metadata are always preserved. This field is deprecated in favor of setting `x-preserve-unknown-fields` to true in `spec.versions[*].schema.openAPIV3Schema`. See https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#field-pruning for details.</td>\n    </tr>\n    <tr>\n      <td><code>scope</code>&nbsp;<strong>*</strong><br/><em>string</em></td>\n      <td>scope indicates whether the defined custom resource is cluster- or namespace-scoped. Allowed values are `Cluster` and `Namespaced`.</td>\n    </tr>\n    <tr>\n      <td><code>versions</code>&nbsp;<strong>*</strong><br/><em><a href=\"\">CustomResourceDefinitionVersion array</a></em></td>\n      <td>versions is the list of all API versions of the defined custom resource. Version names are used to compute the order in which served versions are listed in API discovery. If the version string is \"kube-like\", it will sort above non \"kub\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcedefinition-customresourcedefinition",
      "type": "concept",
      "title": "CustomResourceDefinition {#CustomResourceDefinition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 686,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcedefinitionspec-customresourcedefinitionspec",
      "type": "concept",
      "title": "CustomResourceDefinitionSpec {#CustomResourceDefinitionSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 2561,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcedefinitionstatus-customresourcedefinitionstatus",
      "type": "concept",
      "title": "CustomResourceDefinitionStatus {#CustomResourceDefinitionStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 5401,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcedefinitionlist-customresourcedefinitionlist",
      "type": "concept",
      "title": "CustomResourceDefinitionList {#CustomResourceDefinitionList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 6911,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcecolumndefinition-customresourcecolumndefinition",
      "type": "concept",
      "title": "CustomResourceColumnDefinition {#CustomResourceColumnDefinition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 8489,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourceconversion-customresourceconversion",
      "type": "concept",
      "title": "CustomResourceConversion {#CustomResourceConversion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 10280,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcedefinitioncondition-customresourcedefinitioncondition",
      "type": "concept",
      "title": "CustomResourceDefinitionCondition {#CustomResourceDefinitionCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 11329,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcedefinitionnames-customresourcedefinitionnames",
      "type": "concept",
      "title": "CustomResourceDefinitionNames {#CustomResourceDefinitionNames}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 12958,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcedefinitionversion-customresourcedefinitionversion",
      "type": "concept",
      "title": "CustomResourceDefinitionVersion {#CustomResourceDefinitionVersion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 14821,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcesubresourcescale-customresourcesubresourcescale",
      "type": "concept",
      "title": "CustomResourceSubresourceScale {#CustomResourceSubresourceScale}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 17826,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcesubresourcestatus-customresourcesubresourcestatus",
      "type": "concept",
      "title": "CustomResourceSubresourceStatus {#CustomResourceSubresourceStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 19817,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcesubresources-customresourcesubresources",
      "type": "concept",
      "title": "CustomResourceSubresources {#CustomResourceSubresources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 20351,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:customresourcevalidation-customresourcevalidation",
      "type": "concept",
      "title": "CustomResourceValidation {#CustomResourceValidation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 21400,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:externaldocumentation-externaldocumentation",
      "type": "concept",
      "title": "ExternalDocumentation {#ExternalDocumentation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 21871,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:json-json",
      "type": "concept",
      "title": "JSON {#JSON}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 22302,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jsonschemaprops-jsonschemaprops",
      "type": "concept",
      "title": "JSONSchemaProps {#JSONSchemaProps}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 22470,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jsonschemapropsorarray-jsonschemapropsorarray",
      "type": "concept",
      "title": "JSONSchemaPropsOrArray {#JSONSchemaPropsOrArray}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 33100,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jsonschemapropsorbool-jsonschemapropsorbool",
      "type": "concept",
      "title": "JSONSchemaPropsOrBool {#JSONSchemaPropsOrBool}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 33313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:selectablefield-selectablefield",
      "type": "concept",
      "title": "SelectableField {#SelectableField}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 33485,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validationrule-validationrule",
      "type": "concept",
      "title": "ValidationRule {#ValidationRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 35213,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookconversion-webhookconversion",
      "type": "concept",
      "title": "WebhookConversion {#WebhookConversion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 46324,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/apiextensions/_index",
      "type": "page",
      "title": "Apiextensions",
      "summary": "Apiextensions is a Kubernetes API that allows users to manage and extend the Kubernetes cluster's configuration.",
      "body": "Apiextensions is a Kubernetes API that allows users to manage and extend the Kubernetes cluster's configuration.\n\n**Why it matters**\nApiextensions enables users to customize their Kubernetes clusters by adding custom resources, validating configurations, and managing cluster-wide settings.\n\n**Key facts**\n- Apiextensions provides a way to create custom resources\n- It allows for validation of user configurations\n\n**Common pitfalls**\n- Incorrect usage can lead to cluster instability\n\n**Related**\nCustom Resources (CRDs), Validation Webhooks",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubernetes-api/apiextensions/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Apiextensions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "type": "page",
      "title": "PodDisruptionBudget",
      "summary": "PodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods",
      "body": "\n\n`apiVersion: policy/v1`\n\n`import \"k8s.io/api/policy/v1\"`\n\n\n## PodDisruptionBudget {#PodDisruptionBudget}\n\nPodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>apiVersion</code><br/><em>string</em></td>\n      <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td>\n    </tr>\n    <tr>\n      <td><code>kind</code><br/><em>string</em></td>\n      <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td>\n    </tr>\n    <tr>\n      <td><code>metadata</code><br/><em><a href=\"\">ObjectMeta</a></em></td>\n      <td>Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td>\n    </tr>\n    <tr>\n      <td><code>spec</code><br/><em><a href=\"\">PodDisruptionBudgetSpec</a></em></td>\n      <td>Specification of the desired behavior of the PodDisruptionBudget.</td>\n    </tr>\n    <tr>\n      <td><code>status</code><br/><em><a href=\"\">PodDisruptionBudgetStatus</a></em></td>\n      <td>Most recently observed status of the PodDisruptionBudget.</td>\n    </tr>\n  </tbody>\n</table>\n\n\n## PodDisruptionBudgetSpec {#PodDisruptionBudgetSpec}\n\nPodDisruptionBudgetSpec is a description of a PodDisruptionBudget.\n\n<hr>\n\n<table>\n  <thead><tr><th>Field</th><th>Description</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><code>maxUnavailable</code><br/><em></em></td>\n      <td>An eviction is allowed if at most \"maxUnavailable\" pods selected by \"selector\" are unavailable after the eviction, i.e. even in absence of the evicted pod. For example, one can prevent all voluntary evictions by specifying 0. This is a mutually exclusive setting with \"minAvailable\".</td>\n    </tr>\n    <tr>\n      <td><code>minAvailable</code><br/><em></em></td>\n      <td>An eviction is allowed if at least \"minAvailable\" pods selected by \"selector\" will still be available after the eviction, i.e. even in the absence of the evicted pod.  So for example you can prevent all voluntary evictions by specifying \"100%\".</td>\n    </tr>\n    <tr>\n      <td><code>selector</code><br/><em><a href=\"\">LabelSelector</a></em><br/><em>patch strategy: replace</em></td>\n      <td>Label query over pods whose evictions are managed by the disruption budget. A null selector will match no pods, while an empty ({}) selector will select all pods within the namespace.</td>\n    </tr>\n    <tr>\n      <td><code>unhealthyPodEvictionPolicy</code><br/><em>string</em></td>\n      <td>UnhealthyPodEvictionPolicy defines the criteria for when unhealthy pods should be considered for eviction. Current implementation considers healthy pods, as pods that have status.conditions item with type=\"Ready\",status=\"True\".  Valid policies are IfHealthyBudget and AlwaysAllow. If no policy is specified, the default behavior will be used, which corresponds to the IfHealthyBudget policy.  IfHealthyBudget policy means that running pods (status.phase=\"Running\"), but not yet healthy can be evicted only if the guarded application is not disrupted (status.currentHealthy is at least equal to status.desiredHealthy). Healthy pods will be subject to the PDB for eviction.  AlwaysAllow policy means that all running pods (status.phase=\"Running\"), but not yet healthy are considered disrupted and can be evicted regardless of whether the criteria in a PDB is met. This means perspective running pods of a disrupted application might not get a chance to become healthy\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": null,
          "line_end": null,
          "quote": "PodDisruptionBudget"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:poddisruptionbudget-poddisruptionbudget",
      "type": "concept",
      "title": "PodDisruptionBudget {#PodDisruptionBudget}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 636,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:poddisruptionbudgetspec-poddisruptionbudgetspec",
      "type": "concept",
      "title": "PodDisruptionBudgetSpec {#PodDisruptionBudgetSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 2402,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:poddisruptionbudgetstatus-poddisruptionbudgetstatus",
      "type": "concept",
      "title": "PodDisruptionBudgetStatus {#PodDisruptionBudgetStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 5732,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:poddisruptionbudgetlist-poddisruptionbudgetlist",
      "type": "concept",
      "title": "PodDisruptionBudgetList {#PodDisruptionBudgetList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 8925,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubernetes-api/policy/_index",
      "type": "page",
      "title": "Policy",
      "summary": "Policy is a Kubernetes API that provides features for managing and enforcing cluster-wide policies.",
      "body": "Policy is a Kubernetes API that provides features for managing and enforcing cluster-wide policies.\n\n**Why it matters**\nPolicy enables users to define and enforce rules for their clusters, ensuring compliance with organizational standards and regulations.\n\n**Key facts**\n- Policy provides features for managing cluster-wide policies\n- It allows for enforcement of rules and regulations\n\n**Common pitfalls**\n- Incorrect policy configuration can lead to security vulnerabilities\n\n**Related**\nClusterRoleBinding, PodDisruptionBudget",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/_index/",
      "meta": {
        "weight": 170,
        "rel_path": "reference/kubernetes-api/policy/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Policy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/labels-annotations-taints/audit-annotations",
      "type": "page",
      "title": "Audit Annotations",
      "summary": "",
      "body": "\n\nThis page serves as a reference for the audit annotations of the kubernetes.io\nnamespace. These annotations apply to `Event` object from API group\n`audit.k8s.io`.\n\n\n> **Note:** The following annotations are not used within the Kubernetes API. When you\n[enable auditing](/docs/tasks/debug/debug-cluster/audit/) in your cluster,\naudit event data is written using `Event` from API group `audit.k8s.io`.\nThe annotations apply to audit events. Audit events are different from objects in the\n[Event API](/docs/reference/kubernetes-api/cluster-resources/event-v1/) (API group\n`events.k8s.io`).\n\n\n\n\n## k8s.io/deprecated\n\nExample: `k8s.io/deprecated: \"true\"`\n\nValue **must** be \"true\" or \"false\". The value \"true\" indicates that the\nrequest used a deprecated API version.\n\n## k8s.io/removed-release\n\nExample: `k8s.io/removed-release: \"1.22\"`\n\nValue **must** be in the format \"\\<MAJOR>\\.\\<MINOR>\\\". It is set to target the removal release\non requests made to deprecated API versions with a target removal release.\n\n## pod-security.kubernetes.io/exempt\n\nExample: `pod-security.kubernetes.io/exempt: namespace`\n\nValue **must** be one of `user`, `namespace`, or `runtimeClass` which correspond to\n[Pod Security Exemption](/docs/concepts/security/pod-security-admission/#exemptions)\ndimensions. This annotation indicates on which dimension was based the exemption\nfrom the PodSecurity enforcement.\n\n\n## pod-security.kubernetes.io/enforce-policy\n\nExample: `pod-security.kubernetes.io/enforce-policy: restricted:latest`\n\nValue **must** be `privileged:<version>`, `baseline:<version>`,\n`restricted:<version>` which correspond to [Pod Security\nStandard](/docs/concepts/security/pod-security-standards) levels accompanied by\na version which **must** be `latest` or a valid Kubernetes version in the format\n`v<MAJOR>.<MINOR>`. This annotations informs about the enforcement level that\nallowed or denied the pod during PodSecurity admission.\n\nSee [Pod Security Standards](/docs/concepts/security/pod-security-standards/)\nfor more information.\n\n## pod-security.kubernetes.io/audit-violations\n\nExample:  `pod-security.kubernetes.io/audit-violations: would violate\nPodSecurity \"restricted:latest\": allowPrivilegeEscalation != false (container\n\"example\" must set securityContext.allowPrivilegeEscalation=false), ...`\n\nValue details an audit policy violation, it contains the\n[Pod Security Standard](/docs/concepts/security/pod-security-standards/) level\nthat was transgressed as well as the specific policies on the fields that were\nviolated from the PodSecurity enforcement.\n\nSee [Pod Security Standards](/docs/concepts/security/pod-security-standards/)\nfor more information.\n\n## audit.k8s.io/truncated\n\nExample: `audit.k8s.io/truncated: \"true\"`\n\nValue is always \"true\". This annotation indicates that the audit event has been truncated\nbecause the event size exceeded the configured maximum. Truncation is disabled by default\nand must be explicitly enabled via the API server flags.\n\nSee [Auditing](/docs/tasks/debug/debug-cluster/audit/) for more information.\n\n## apiserver.latency.k8s.io/etcd\n\nExample: `apiserver.latency.k8s.io/etcd: \"4.730661757s\"`\n\nThis annotation indicates the measure of latency incurred inside the storage layer,\nit accounts for the time it takes to send data to the etcd and get the complete response back.\n\nThe value of this audit annotation does not include the time incurred in admission, or validation.\n\n## apiserver.latency.k8s.io/decode-response-object\n\nExample: `apiserver.latency.k8s.io/decode-response-object: \"450.6649ns\"`\n\nThis annotation records the time taken to decode the response received from the storage layer (etcd)\n\n## apiserver.latency.k8s.io/apf-queue-wait\n\nExample: `apiserver.latency.k8s.io/apf-queue-wait: \"100ns\"`\n\nThis annotation records the time that a request spent queued due to API server priorities.\n\nSee [API Priority and Fairness](/docs/concepts/cluster-administration/flow-control/) (APF)\nfor more information about this mechanism.\n\n## authorization.k8s.io/dec\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/labels-annotations-taints/audit-annotations.md"
      },
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": null,
          "line_end": null,
          "quote": "Audit Annotations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-io-deprecated",
      "type": "concept",
      "title": "k8s.io/deprecated",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-io-removed-release",
      "type": "concept",
      "title": "k8s.io/removed-release",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 810,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-kubernetes-io-exempt",
      "type": "concept",
      "title": "pod-security.kubernetes.io/exempt",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 1051,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-kubernetes-io-enforce-policy",
      "type": "concept",
      "title": "pod-security.kubernetes.io/enforce-policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 1432,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-kubernetes-io-audit-violations",
      "type": "concept",
      "title": "pod-security.kubernetes.io/audit-violations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 2069,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:audit-k8s-io-truncated",
      "type": "concept",
      "title": "audit.k8s.io/truncated",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 2699,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiserver-latency-k8s-io-etcd",
      "type": "concept",
      "title": "apiserver.latency.k8s.io/etcd",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 3085,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiserver-latency-k8s-io-decode-response-object",
      "type": "concept",
      "title": "apiserver.latency.k8s.io/decode-response-object",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 3457,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiserver-latency-k8s-io-apf-queue-wait",
      "type": "concept",
      "title": "apiserver.latency.k8s.io/apf-queue-wait",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 3685,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorization-k8s-io-decision",
      "type": "concept",
      "title": "authorization.k8s.io/decision",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 4017,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorization-k8s-io-reason",
      "type": "concept",
      "title": "authorization.k8s.io/reason",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 4313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:missing-san-invalid-cert-kubernetes-io-hostname",
      "type": "concept",
      "title": "missing-san.invalid-cert.kubernetes.io/$hostname",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 4612,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:insecure-sha1-invalid-cert-kubernetes-io-hostname",
      "type": "concept",
      "title": "insecure-sha1.invalid-cert.kubernetes.io/$hostname",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 5454,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validation-policy-admission-k8s-io-validation-failure",
      "type": "concept",
      "title": "validation.policy.admission.k8s.io/validation_failure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 6210,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/labels-annotations-taints/_index",
      "type": "page",
      "title": "Well-Known Labels, Annotations and Taints",
      "summary": "",
      "body": "\n\nKubernetes reserves all labels, annotations and taints in the `kubernetes.io` and `k8s.io` namespaces.\n\nThis document serves both as a reference to the values and as a coordination point for assigning values.\n\n\n\n## Labels, annotations and taints used on API objects\n\n\n### apf.kubernetes.io/autoupdate-spec\n\nType: Annotation\n\nExample: `apf.kubernetes.io/autoupdate-spec: \"true\"`\n\nUsed on: [`FlowSchema` and `PriorityLevelConfiguration` Objects](/docs/concepts/cluster-administration/flow-control/#defaults)\n\nIf this annotation is set to true on a FlowSchema or PriorityLevelConfiguration, the `spec` for that object\nis managed by the kube-apiserver. If the API server does not recognize an APF object, and you annotate it\nfor automatic update, the API server deletes the entire object. Otherwise, the API server does not manage the\nobject spec.\nFor more details, read  [Maintenance of the Mandatory and Suggested Configuration Objects](/docs/concepts/cluster-administration/flow-control/#maintenance-of-the-mandatory-and-suggested-configuration-objects).\n\n### app.kubernetes.io/component\n\nType: Label\n\nExample: `app.kubernetes.io/component: \"database\"`\n\nUsed on: All Objects (typically used on [workload resources](/docs/reference/kubernetes-api/workload-resources/)).\n\nThe component within the application architecture.\n\nOne of the [recommended labels](/docs/concepts/overview/working-with-objects/common-labels/#labels).\n\n### app.kubernetes.io/created-by (deprecated)\n\nType: Label\n\nExample: `app.kubernetes.io/created-by: \"controller-manager\"`\n\nUsed on: All Objects (typically used on [workload resources](/docs/reference/kubernetes-api/workload-resources/)).\n\nThe controller/user who created this resource.\n\n\n> **Note:** Starting from v1.9, this label is deprecated.\n\n\n### app.kubernetes.io/instance\n\nType: Label\n\nExample: `app.kubernetes.io/instance: \"mysql-abcxyz\"`\n\nUsed on: All Objects (typically used on\n[workload resources](/docs/reference/kubernetes-api/workload-resources/)).\n\nA unique name identifying the instance of an application.\nTo assign a non-unique name, use [app.kubernetes.io/name](#app-kubernetes-io-name).\n\nOne of the [recommended labels](/docs/concepts/overview/working-with-objects/common-labels/#labels).\n\n### app.kubernetes.io/managed-by\n\nType: Label\n\nExample: `app.kubernetes.io/managed-by: \"helm\"`\n\nUsed on: All Objects (typically used on\n[workload resources](/docs/reference/kubernetes-api/workload-resources/)).\n\nThe tool being used to manage the operation of an application.\n\nOne of the [recommended labels](/docs/concepts/overview/working-with-objects/common-labels/#labels).\n\n### app.kubernetes.io/name\n\nType: Label\n\nExample: `app.kubernetes.io/name: \"mysql\"`\n\nUsed on: All Objects (typically used on\n[workload resources](/docs/reference/kubernetes-api/workload-resources/)).\n\nThe name of the application.\n\nOne of the [recommended labels](/docs/concepts/overview/working-with-objects/common-labels/#labels).\n\n### app.kubernetes.io/part-of\n\nType: Label\n\nExample: `app.kubernetes.io/part-of: \"wordpress\"`\n\nUsed on: All Objects (typically used on\n[workload resources](/docs/reference/kubernetes-api/workload-resources/)).\n\nThe name of a higher-level application this object is part of.\n\nOne of the [recommended labels](/docs/concepts/overview/working-with-objects/common-labels/#labels).\n\n### app.kubernetes.io/version\n\nType: Label\n\nExample: `app.kubernetes.io/version: \"5.7.21\"`\n\nUsed on: All Objects (typically used on\n[workload resources](/docs/reference/kubernetes-api/workload-resources/)).\n\nThe current version of the application.\n\nCommon forms of values include:\n\n- [semantic version](https://semver.org/spec/v1.0.0.html)\n- the Git [revision hash](https://git-scm.com/book/en/v2/Git-Tools-Revision-Selection#_single_revisions)\n  for the source code.\n\nOne of the [recommended labels](/docs/concepts/overview/working-with-objects/common-labels/#labels).\n\n### applyset.kubernetes.io/additional-namespaces (alpha) {#applyset-kubernetes-io-additional-namespaces}\n\nT\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/labels-annotations-taints/_index.md"
      },
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Well-Known Labels, Annotations and Taints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:labels-annotations-and-taints-used-on-api-objects",
      "type": "concept",
      "title": "Labels, annotations and taints used on API objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 245,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:annotations-used-for-audit",
      "type": "concept",
      "title": "Annotations used for audit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 111925,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apf-kubernetes-io-autoupdate-spec",
      "type": "concept",
      "title": "apf.kubernetes.io/autoupdate-spec",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 301,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:app-kubernetes-io-component",
      "type": "concept",
      "title": "app.kubernetes.io/component",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1088,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:app-kubernetes-io-created-by-deprecated",
      "type": "concept",
      "title": "app.kubernetes.io/created-by (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1456,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:app-kubernetes-io-instance",
      "type": "concept",
      "title": "app.kubernetes.io/instance",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1817,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:app-kubernetes-io-managed-by",
      "type": "concept",
      "title": "app.kubernetes.io/managed-by",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2278,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:app-kubernetes-io-name",
      "type": "concept",
      "title": "app.kubernetes.io/name",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2656,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:app-kubernetes-io-part-of",
      "type": "concept",
      "title": "app.kubernetes.io/part-of",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2989,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:app-kubernetes-io-version",
      "type": "concept",
      "title": "app.kubernetes.io/version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 3366,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applyset-kubernetes-io-additional-namespaces-alpha-applyset-kubernetes-io-additional-namespaces",
      "type": "concept",
      "title": "applyset.kubernetes.io/additional-namespaces (alpha) {#applyset-kubernetes-io-additional-namespaces}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 3937,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applyset-kubernetes-io-contains-group-kinds-alpha-applyset-kubernetes-io-contains-group-kinds",
      "type": "concept",
      "title": "applyset.kubernetes.io/contains-group-kinds (alpha) {#applyset-kubernetes-io-contains-group-kinds}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 4990,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applyset-kubernetes-io-contains-group-resources-deprecated-applyset-kubernetes-io-contains-group-resources",
      "type": "concept",
      "title": "applyset.kubernetes.io/contains-group-resources (deprecated) {#applyset-kubernetes-io-contains-group-resources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 6218,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applyset-kubernetes-io-id-alpha-applyset-kubernetes-io-id",
      "type": "concept",
      "title": "applyset.kubernetes.io/id (alpha) {#applyset-kubernetes-io-id}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 7663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applyset-kubernetes-io-is-parent-type-alpha-applyset-kubernetes-io-is-parent-type",
      "type": "concept",
      "title": "applyset.kubernetes.io/is-parent-type (alpha) {#applyset-kubernetes-io-is-parent-type}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 8782,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applyset-kubernetes-io-part-of-alpha-applyset-kubernetes-io-part-of",
      "type": "concept",
      "title": "applyset.kubernetes.io/part-of (alpha) {#applyset-kubernetes-io-part-of}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 9506,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:applyset-kubernetes-io-tooling-alpha-applyset-kubernetes-io-tooling",
      "type": "concept",
      "title": "applyset.kubernetes.io/tooling (alpha) {#applyset-kubernetes-io-tooling}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 10106,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apps-kubernetes-io-pod-index-beta-apps-kubernetes-io-pod-index",
      "type": "concept",
      "title": "apps.kubernetes.io/pod-index (beta) {#apps-kubernetes.io-pod-index}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 11024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-kubernetes-io-pod-claim-name",
      "type": "concept",
      "title": "resource.kubernetes.io/pod-claim-name",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 11623,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-autoscaler-kubernetes-io-safe-to-evict",
      "type": "concept",
      "title": "cluster-autoscaler.kubernetes.io/safe-to-evict",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 12310,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:config-kubernetes-io-local-config",
      "type": "concept",
      "title": "config.kubernetes.io/local-config",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 12857,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-apparmor-security-beta-kubernetes-io-deprecated-container-apparmor-security-beta-kubernetes-io",
      "type": "concept",
      "title": "container.apparmor.security.beta.kubernetes.io/* (deprecated) {#container-apparmor-security-beta-kubernetes-io}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 13663,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deployment-kubernetes-io-desired-replicas",
      "type": "concept",
      "title": "deployment.kubernetes.io/desired-replicas",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 14452,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deployment-kubernetes-io-max-replicas",
      "type": "concept",
      "title": "deployment.kubernetes.io/max-replicas",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 15019,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deployment-kubernetes-io-revision",
      "type": "concept",
      "title": "deployment.kubernetes.io/revision",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 15645,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deployment-kubernetes-io-revision-history",
      "type": "concept",
      "title": "deployment.kubernetes.io/revision-history",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 16345,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:internal-config-kubernetes-io-reserved-prefix-internal-config-kubernetes-io-reserved-wildcard",
      "type": "concept",
      "title": "internal.config.kubernetes.io/* (reserved prefix) {#internal.config.kubernetes.io-reserved-wildcard}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 16952,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:internal-config-kubernetes-io-path",
      "type": "concept",
      "title": "internal.config.kubernetes.io/path",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 17811,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:internal-config-kubernetes-io-index",
      "type": "concept",
      "title": "internal.config.kubernetes.io/index",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 18519,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-bind-result",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/bind-result",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 19298,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-filter-result",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/filter-result",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 19593,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-finalscore-result",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/finalscore-result",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 20681,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-permit-result",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/permit-result",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 21490,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-permit-result-timeout",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/permit-result-timeout",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 21796,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-postfilter-result",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/postfilter-result",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 22127,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-prebind-result",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/prebind-result",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 22444,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-prefilter-result",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/prefilter-result",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 22748,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-prefilter-result-status",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/prefilter-result-status",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 23070,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-prescore-result",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/prescore-result",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 23579,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-reserve-result",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/reserve-result",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 24019,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-result-history",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/result-history",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 24323,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-score-result",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/score-result",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 24617,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-scheduler-simulator-sigs-k8s-io-selected-node",
      "type": "concept",
      "title": "kube-scheduler-simulator.sigs.k8s.io/selected-node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 25347,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-arch",
      "type": "concept",
      "title": "kubernetes.io/arch",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 25640,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-os",
      "type": "concept",
      "title": "kubernetes.io/os",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 25855,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-metadata-name",
      "type": "concept",
      "title": "kubernetes.io/metadata.name",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 26841,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-limit-ranger",
      "type": "concept",
      "title": "kubernetes.io/limit-ranger",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 27332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-config-hash",
      "type": "concept",
      "title": "kubernetes.io/config.hash",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 28127,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-config-mirror",
      "type": "concept",
      "title": "kubernetes.io/config.mirror",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 28547,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-config-source",
      "type": "concept",
      "title": "kubernetes.io/config.source",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 29229,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-config-seen",
      "type": "concept",
      "title": "kubernetes.io/config.seen",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 29647,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:addonmanager-kubernetes-io-mode",
      "type": "concept",
      "title": "addonmanager.kubernetes.io/mode",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 29926,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:beta-kubernetes-io-arch-deprecated",
      "type": "concept",
      "title": "beta.kubernetes.io/arch (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 31028,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:beta-kubernetes-io-os-deprecated",
      "type": "concept",
      "title": "beta.kubernetes.io/os (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 31180,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-aggregator-kubernetes-io-automanaged-kube-aggregator-kubernetesio-automanaged",
      "type": "concept",
      "title": "kube-aggregator.kubernetes.io/automanaged {#kube-aggregator-kubernetesio-automanaged}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 31326,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-alpha-kubernetes-io-tolerate-unready-endpoints-deprecated",
      "type": "concept",
      "title": "service.alpha.kubernetes.io/tolerate-unready-endpoints (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 32154,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:autoscaling-alpha-kubernetes-io-behavior-deprecated-autoscaling-alpha-kubernetes-io-behavior",
      "type": "concept",
      "title": "autoscaling.alpha.kubernetes.io/behavior (deprecated) {#autoscaling-alpha-kubernetes-io-behavior}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 32611,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-hostname-kubernetesiohostname",
      "type": "concept",
      "title": "kubernetes.io/hostname {#kubernetesiohostname}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 33102,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-change-cause-change-cause",
      "type": "concept",
      "title": "kubernetes.io/change-cause {#change-cause}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 33584,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-description-description",
      "type": "concept",
      "title": "kubernetes.io/description {#description}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 33904,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-enforce-mountable-secrets-deprecated-enforce-mountable-secrets",
      "type": "concept",
      "title": "kubernetes.io/enforce-mountable-secrets (deprecated) {#enforce-mountable-secrets}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 34134,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-alpha-kubernetes-io-ttl-deprecated",
      "type": "concept",
      "title": "node.alpha.kubernetes.io/ttl (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 35822,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-exclude-from-external-load-balancers",
      "type": "concept",
      "title": "node.kubernetes.io/exclude-from-external-load-balancers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 36282,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controller-kubernetes-io-pod-deletion-cost-pod-deletion-cost",
      "type": "concept",
      "title": "controller.kubernetes.io/pod-deletion-cost {#pod-deletion-cost}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 36785,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-autoscaler-kubernetes-io-enable-ds-eviction",
      "type": "concept",
      "title": "cluster-autoscaler.kubernetes.io/enable-ds-eviction",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 37179,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-ingress-bandwidth",
      "type": "concept",
      "title": "kubernetes.io/ingress-bandwidth",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 38012,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-egress-bandwidth",
      "type": "concept",
      "title": "kubernetes.io/egress-bandwidth",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 38989,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:beta-kubernetes-io-instance-type-deprecated",
      "type": "concept",
      "title": "beta.kubernetes.io/instance-type (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 39950,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-instance-type-nodekubernetesioinstance-type",
      "type": "concept",
      "title": "node.kubernetes.io/instance-type {#nodekubernetesioinstance-type}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 40166,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:failure-domain-beta-kubernetes-io-region-deprecated-failure-domainbetakubernetesioregion",
      "type": "concept",
      "title": "failure-domain.beta.kubernetes.io/region (deprecated) {#failure-domainbetakubernetesioregion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 40795,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:failure-domain-beta-kubernetes-io-zone-deprecated-failure-domainbetakubernetesiozone",
      "type": "concept",
      "title": "failure-domain.beta.kubernetes.io/zone (deprecated) {#failure-domainbetakubernetesiozone}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 41053,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pv-kubernetes-io-bind-completed-pv-kubernetesiobind-completed",
      "type": "concept",
      "title": "pv.kubernetes.io/bind-completed {#pv-kubernetesiobind-completed}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 41303,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pv-kubernetes-io-bound-by-controller-pv-kubernetesioboundby-controller",
      "type": "concept",
      "title": "pv.kubernetes.io/bound-by-controller {#pv-kubernetesioboundby-controller}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 41782,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pv-kubernetes-io-provisioned-by-pv-kubernetesiodynamically-provisioned",
      "type": "concept",
      "title": "pv.kubernetes.io/provisioned-by {#pv-kubernetesiodynamically-provisioned}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 42459,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pv-kubernetes-io-migrated-to-pv-kubernetesio-migratedto",
      "type": "concept",
      "title": "pv.kubernetes.io/migrated-to {#pv-kubernetesio-migratedto}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 42946,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulset-kubernetes-io-pod-name-statefulsetkubernetesiopod-name",
      "type": "concept",
      "title": "statefulset.kubernetes.io/pod-name {#statefulsetkubernetesiopod-name}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 43469,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-alpha-kubernetes-io-node-selector-schedulerkubernetesnode-selector",
      "type": "concept",
      "title": "scheduler.alpha.kubernetes.io/node-selector {#schedulerkubernetesnode-selector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 43942,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-kubernetes-io-region-topologykubernetesioregion",
      "type": "concept",
      "title": "topology.kubernetes.io/region {#topologykubernetesioregion}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 44317,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:topology-kubernetes-io-zone-topologykubernetesiozone",
      "type": "concept",
      "title": "topology.kubernetes.io/zone {#topologykubernetesiozone}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 44546,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-alpha-kubernetes-io-node-affinity-deprecated-volume-alpha-kubernetes-io-node-affinity",
      "type": "concept",
      "title": "volume.alpha.kubernetes.io/node-affinity (deprecated) {#volume-alpha-kubernetes-io-node-affinity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 48165,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-beta-kubernetes-io-storage-provisioner-deprecated",
      "type": "concept",
      "title": "volume.beta.kubernetes.io/storage-provisioner (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 48689,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-beta-kubernetes-io-storage-class-deprecated",
      "type": "concept",
      "title": "volume.beta.kubernetes.io/storage-class (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 49030,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-beta-kubernetes-io-mount-options-deprecated-mount-options",
      "type": "concept",
      "title": "volume.beta.kubernetes.io/mount-options (deprecated) {#mount-options}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 49804,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-kubernetes-io-storage-provisioner-volume-kubernetes-io-storage-provisioner",
      "type": "concept",
      "title": "volume.kubernetes.io/storage-provisioner  {#volume-kubernetes-io-storage-provisioner}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 50163,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volume-kubernetes-io-selected-node",
      "type": "concept",
      "title": "volume.kubernetes.io/selected-node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 50481,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumes-kubernetes-io-controller-managed-attach-detach",
      "type": "concept",
      "title": "volumes.kubernetes.io/controller-managed-attach-detach",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 50714,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-windows-build-nodekubernetesiowindows-build",
      "type": "concept",
      "title": "node.kubernetes.io/windows-build {#nodekubernetesiowindows-build}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 51095,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storage-alpha-kubernetes-io-migrated-plugins-storagealphakubernetesiomigrated-plugins",
      "type": "concept",
      "title": "storage.alpha.kubernetes.io/migrated-plugins {#storagealphakubernetesiomigrated-plugins}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 51462,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-kubernetes-io-headless-servicekubernetesioheadless",
      "type": "concept",
      "title": "service.kubernetes.io/headless {#servicekubernetesioheadless}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 52163,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-kubernetes-io-topology-aware-hints-deprecated-servicekubernetesiotopology-aware-hints",
      "type": "concept",
      "title": "service.kubernetes.io/topology-aware-hints (deprecated) {#servicekubernetesiotopology-aware-hints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 52747,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-kubernetes-io-topology-mode",
      "type": "concept",
      "title": "service.kubernetes.io/topology-mode",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 53092,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-service-name-kubernetesioservice-name",
      "type": "concept",
      "title": "kubernetes.io/service-name {#kubernetesioservice-name}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 53627,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-service-account-name",
      "type": "concept",
      "title": "kubernetes.io/service-account.name",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 54161,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-service-account-uid",
      "type": "concept",
      "title": "kubernetes.io/service-account.uid",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 54492,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-legacy-token-last-used",
      "type": "concept",
      "title": "kubernetes.io/legacy-token-last-used",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 54853,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-legacy-token-invalid-since",
      "type": "concept",
      "title": "kubernetes.io/legacy-token-invalid-since",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 55401,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpoints-kubernetes-io-managed-by-deprecated-endpoints-kubernetes-io-managed-by",
      "type": "concept",
      "title": "endpoints.kubernetes.io/managed-by (deprecated) {#endpoints-kubernetes-io-managed-by}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 55949,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslice-kubernetes-io-managed-by-endpointslicekubernetesiomanaged-by",
      "type": "concept",
      "title": "endpointslice.kubernetes.io/managed-by {#endpointslicekubernetesiomanaged-by}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 56522,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslice-kubernetes-io-skip-mirror-endpointslicekubernetesioskip-mirror",
      "type": "concept",
      "title": "endpointslice.kubernetes.io/skip-mirror {#endpointslicekubernetesioskip-mirror}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 57155,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-kubernetes-io-service-proxy-name-servicekubernetesioservice-proxy-name",
      "type": "concept",
      "title": "service.kubernetes.io/service-proxy-name {#servicekubernetesioservice-proxy-name}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 57500,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:experimental-windows-kubernetes-io-isolation-type-deprecated-experimental-windows-kubernetes-io-isolation-type",
      "type": "concept",
      "title": "experimental.windows.kubernetes.io/isolation-type (deprecated) {#experimental-windows-kubernetes-io-isolation-type}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 58125,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:gateway-networking-k8s-io-generator",
      "type": "concept",
      "title": "gateway.networking.k8s.io/generator",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 58554,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ingressclass-kubernetes-io-is-default-class",
      "type": "concept",
      "title": "ingressclass.kubernetes.io/is-default-class",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 59070,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-ingress-class-deprecated",
      "type": "concept",
      "title": "kubernetes.io/ingress.class (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 59375,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-cluster-service-deprecated-kubernetes-io-cluster-service",
      "type": "concept",
      "title": "kubernetes.io/cluster-service (deprecated) {#kubernetes-io-cluster-service}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 59571,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageclass-kubernetes-io-is-default-class",
      "type": "concept",
      "title": "storageclass.kubernetes.io/is-default-class",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 59991,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alpha-kubernetes-io-provided-node-ip-alpha-alpha-kubernetes-io-provided-node-ip",
      "type": "concept",
      "title": "alpha.kubernetes.io/provided-node-ip (alpha) {#alpha-kubernetes-io-provided-node-ip}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 60317,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:batch-kubernetes-io-job-completion-index",
      "type": "concept",
      "title": "batch.kubernetes.io/job-completion-index",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 60927,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:batch-kubernetes-io-cronjob-scheduled-timestamp",
      "type": "concept",
      "title": "batch.kubernetes.io/cronjob-scheduled-timestamp",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 61463,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cronjob-kubernetes-io-instantiate-cronjob-kubernetes-io-instantiate",
      "type": "concept",
      "title": "cronjob.kubernetes.io/instantiate {#cronjob-kubernetes-io-instantiate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 62028,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-kubernetes-io-default-container",
      "type": "concept",
      "title": "kubectl.kubernetes.io/default-container",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 62612,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-kubernetes-io-default-logs-container-deprecated",
      "type": "concept",
      "title": "kubectl.kubernetes.io/default-logs-container (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 62939,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-kubernetes-io-last-applied-configuration",
      "type": "concept",
      "title": "kubectl.kubernetes.io/last-applied-configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 63536,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-kubernetes-io-restartedat-kubectl-k8s-io-restart-at",
      "type": "concept",
      "title": "kubectl.kubernetes.io/restartedAt {#kubectl-k8s-io-restart-at}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 64308,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpoints-kubernetes-io-over-capacity-deprecated-endpoints-kubernetes-io-over-capacity",
      "type": "concept",
      "title": "endpoints.kubernetes.io/over-capacity (deprecated) {#endpoints-kubernetes-io-over-capacity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 65285,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpoints-kubernetes-io-last-change-trigger-time-deprecated-endpoints-kubernetes-io-last-change-trigger-time",
      "type": "concept",
      "title": "endpoints.kubernetes.io/last-change-trigger-time (deprecated) {#endpoints-kubernetes-io-last-change-trigger-time}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 66307,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-alpha-kubernetes-io-leader-deprecated-control-plane-alpha-kubernetes-io-leader",
      "type": "concept",
      "title": "control-plane.alpha.kubernetes.io/leader (deprecated) {#control-plane-alpha-kubernetes-io-leader}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 67125,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:batch-kubernetes-io-job-tracking-deprecated-batch-kubernetes-io-job-tracking",
      "type": "concept",
      "title": "batch.kubernetes.io/job-tracking (deprecated) {#batch-kubernetes-io-job-tracking}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 68190,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:job-name-deprecated-job-name",
      "type": "concept",
      "title": "job-name (deprecated) {#job-name}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 68686,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controller-uid-deprecated-controller-uid",
      "type": "concept",
      "title": "controller-uid (deprecated) {#controller-uid}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 68976,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:batch-kubernetes-io-job-name-batchkubernetesio-job-name",
      "type": "concept",
      "title": "batch.kubernetes.io/job-name {#batchkubernetesio-job-name}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 69292,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:batch-kubernetes-io-controller-uid-batchkubernetesio-controller-uid",
      "type": "concept",
      "title": "batch.kubernetes.io/controller-uid {#batchkubernetesio-controller-uid}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 69651,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-alpha-kubernetes-io-defaulttolerations-scheduleralphakubernetesio-defaulttolerations",
      "type": "concept",
      "title": "scheduler.alpha.kubernetes.io/defaultTolerations {#scheduleralphakubernetesio-defaulttolerations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 70062,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-alpha-kubernetes-io-tolerationswhitelist-schedulerkubernetestolerations-whitelist",
      "type": "concept",
      "title": "scheduler.alpha.kubernetes.io/tolerationsWhitelist {#schedulerkubernetestolerations-whitelist}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 70678,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-alpha-kubernetes-io-preferavoidpods-deprecated-scheduleralphakubernetesio-preferavoidpods",
      "type": "concept",
      "title": "scheduler.alpha.kubernetes.io/preferAvoidPods (deprecated) {#scheduleralphakubernetesio-preferavoidpods}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 71447,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-not-ready",
      "type": "concept",
      "title": "node.kubernetes.io/not-ready",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 71874,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-unreachable",
      "type": "concept",
      "title": "node.kubernetes.io/unreachable",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 72112,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-unschedulable",
      "type": "concept",
      "title": "node.kubernetes.io/unschedulable",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 72386,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-memory-pressure",
      "type": "concept",
      "title": "node.kubernetes.io/memory-pressure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 72598,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-disk-pressure",
      "type": "concept",
      "title": "node.kubernetes.io/disk-pressure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 73017,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-network-unavailable",
      "type": "concept",
      "title": "node.kubernetes.io/network-unavailable",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 73475,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-pid-pressure",
      "type": "concept",
      "title": "node.kubernetes.io/pid-pressure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 73846,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-kubernetes-io-out-of-service",
      "type": "concept",
      "title": "node.kubernetes.io/out-of-service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 74329,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-cloudprovider-kubernetes-io-uninitialized",
      "type": "concept",
      "title": "node.cloudprovider.kubernetes.io/uninitialized",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 75058,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-cloudprovider-kubernetes-io-shutdown",
      "type": "concept",
      "title": "node.cloudprovider.kubernetes.io/shutdown",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 75426,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:feature-node-kubernetes-io",
      "type": "concept",
      "title": "feature.node.kubernetes.io/*",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 75750,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nfd-node-kubernetes-io-master-version",
      "type": "concept",
      "title": "nfd.node.kubernetes.io/master.version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 76346,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nfd-node-kubernetes-io-worker-version",
      "type": "concept",
      "title": "nfd.node.kubernetes.io/worker.version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 76736,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nfd-node-kubernetes-io-feature-labels",
      "type": "concept",
      "title": "nfd.node.kubernetes.io/feature-labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 77108,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nfd-node-kubernetes-io-extended-resources",
      "type": "concept",
      "title": "nfd.node.kubernetes.io/extended-resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 77576,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nfd-node-kubernetes-io-node-name",
      "type": "concept",
      "title": "nfd.node.kubernetes.io/node-name",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 78111,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-access-log-emit-interval-beta-service-beta-kubernetes-io-aws-load-balancer-access-log-emit-interval",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-access-log-emit-interval (beta) {#service-beta-kubernetes-io-aws-load-balancer-access-log-emit-interval}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 78750,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-access-log-enabled-beta-service-beta-kubernetes-io-aws-load-balancer-access-log-enabled",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-access-log-enabled (beta) {#service-beta-kubernetes-io-aws-load-balancer-access-log-enabled}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 79300,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-access-log-s3-bucket-name-beta-service-beta-kubernetes-io-aws-load-balancer-access-log-s3-bucket-name",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-name (beta) {#service-beta-kubernetes-io-aws-load-balancer-access-log-s3-bucket-name}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 79752,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-access-log-s3-bucket-prefix-beta-service-beta-kubernetes-io-aws-load-balancer-access-log-s3-bucket-prefix",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-prefix (beta) {#service-beta-kubernetes-io-aws-load-balancer-access-log-s3-bucket-prefix}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 80235,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-additional-resource-tags-beta-service-beta-kubernetes-io-aws-load-balancer-additional-resource-tags",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-additional-resource-tags (beta) {#service-beta-kubernetes-io-aws-load-balancer-additional-resource-tags}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 80725,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-alpn-policy-beta-service-beta-kubernetes-io-aws-load-balancer-alpn-policy",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-alpn-policy (beta) {#service-beta-kubernetes-io-aws-load-balancer-alpn-policy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 81221,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-attributes-beta-service-beta-kubernetes-io-aws-load-balancer-attributes",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-attributes (beta) {#service-beta-kubernetes-io-aws-load-balancer-attributes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 81742,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-backend-protocol-beta-service-beta-kubernetes-io-aws-load-balancer-backend-protocol",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-backend-protocol (beta) {#service-beta-kubernetes-io-aws-load-balancer-backend-protocol}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 82281,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-connection-draining-enabled-beta-service-beta-kubernetes-io-aws-load-balancer-connection-draining-enabled",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-connection-draining-enabled (beta) {#service-beta-kubernetes-io-aws-load-balancer-connection-draining-enabled}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 82668,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-connection-draining-timeout-beta-service-beta-kubernetes-io-aws-load-balancer-connection-draining-timeout",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-connection-draining-timeout (beta) {#service-beta-kubernetes-io-aws-load-balancer-connection-draining-timeout}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 83148,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-ip-address-type-beta-service-beta-kubernetes-io-aws-load-balancer-ip-address-type",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-ip-address-type (beta) {#service-beta-kubernetes-io-aws-load-balancer-ip-address-type}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 83734,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-connection-idle-timeout-beta-service-beta-kubernetes-io-aws-load-balancer-connection-idle-timeout",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-connection-idle-timeout (beta) {#service-beta-kubernetes-io-aws-load-balancer-connection-idle-timeout}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 84258,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-cross-zone-load-balancing-enabled-beta-service-beta-kubernetes-io-aws-load-balancer-cross-zone-load-balancing-enabled",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-cross-zone-load-balancing-enabled (beta) {#service-beta-kubernetes-io-aws-load-balancer-cross-zone-load-balancing-enabled}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 84872,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-eip-allocations-beta-service-beta-kubernetes-io-aws-load-balancer-eip-allocations",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-eip-allocations (beta) {#service-beta-kubernetes-io-aws-load-balancer-eip-allocations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 85720,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-extra-security-groups-beta-service-beta-kubernetes-io-aws-load-balancer-extra-security-groups",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-extra-security-groups (beta) {#service-beta-kubernetes-io-aws-load-balancer-extra-security-groups}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 86335,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-healthy-threshold-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-healthy-threshold",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-healthcheck-healthy-threshold (beta) {#service-beta-kubernetes-io-aws-load-balancer-healthcheck-healthy-threshold}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 86855,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-interval-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-interval",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-healthcheck-interval (beta) {#service-beta-kubernetes-io-aws-load-balancer-healthcheck-interval}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 87399,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-path-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-papth",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-healthcheck-path (beta) {#service-beta-kubernetes-io-aws-load-balancer-healthcheck-papth}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 87887,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-port-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-port",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-healthcheck-port (beta) {#service-beta-kubernetes-io-aws-load-balancer-healthcheck-port}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 88354,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-protocol-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-protocol",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-healthcheck-protocol (beta) {#service-beta-kubernetes-io-aws-load-balancer-healthcheck-protocol}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 88822,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-timeout-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-timeout",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-healthcheck-timeout (beta) {#service-beta-kubernetes-io-aws-load-balancer-healthcheck-timeout}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 89289,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-unhealthy-threshold-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-unhealthy-threshold",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-healthcheck-unhealthy-threshold (beta) {#service-beta-kubernetes-io-aws-load-balancer-healthcheck-unhealthy-threshold}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 89798,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-internal-beta-service-beta-kubernetes-io-aws-load-balancer-internal",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-internal (beta) {#service-beta-kubernetes-io-aws-load-balancer-internal}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 90352,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-manage-backend-security-group-rules-beta-service-beta-kubernetes-io-aws-load-balancer-manage-backend-security-group-rules",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-manage-backend-security-group-rules (beta) {#service-beta-kubernetes-io-aws-load-balancer-manage-backend-security-group-rules}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 91016,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-name-beta-service-beta-kubernetes-io-aws-load-balancer-name",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-name (beta) {#service-beta-kubernetes-io-aws-load-balancer-name}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 91602,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-nlb-target-type-beta-service-beta-kubernetes-io-aws-load-balancer-nlb-target-type",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type (beta) {#service-beta-kubernetes-io-aws-load-balancer-nlb-target-type}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 92367,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-private-ipv4-addresses-beta-service-beta-kubernetes-io-aws-load-balancer-private-ipv4-addresses",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-private-ipv4-addresses (beta) {#service-beta-kubernetes-io-aws-load-balancer-private-ipv4-addresses}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 92893,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-proxy-protocol-beta-service-beta-kubernetes-io-aws-load-balancer-proxy-protocol",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-proxy-protocol (beta) {#service-beta-kubernetes-io-aws-load-balancer-proxy-protocol}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 93462,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-scheme-beta-service-beta-kubernetes-io-aws-load-balancer-scheme",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-scheme (beta) {#service-beta-kubernetes-io-aws-load-balancer-scheme}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 93960,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-security-groups-deprecated-service-beta-kubernetes-io-aws-load-balancer-security-groups",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-security-groups (deprecated) {#service-beta-kubernetes-io-aws-load-balancer-security-groups}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 94461,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-load-balancer-source-ranges-deprecated-service-beta-kubernetes-io-load-balancer-source-ranges",
      "type": "concept",
      "title": "service.beta.kubernetes.io/load-balancer-source-ranges (deprecated) {#service-beta-kubernetes-io-load-balancer-source-ranges}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 95548,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-ssl-cert-beta-service-beta-kubernetes-io-aws-load-balancer-ssl-cert",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-ssl-cert (beta) {#service-beta-kubernetes-io-aws-load-balancer-ssl-cert}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 95976,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-ssl-negotiation-policy-beta-service-beta-kubernetes-io-aws-load-balancer-ssl-negotiation-policy",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-ssl-negotiation-policy (beta) {#service-beta-kubernetes-io-aws-load-balancer-ssl-negotiation-policy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 96612,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-ssl-ports-beta-service-beta-kubernetes-io-aws-load-balancer-ssl-ports",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-ssl-ports (beta) {#service-beta-kubernetes-io-aws-load-balancer-ssl-ports}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 97112,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-subnets-beta-service-beta-kubernetes-io-aws-load-balancer-subnets",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-subnets (beta) {#service-beta-kubernetes-io-aws-load-balancer-subnets}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 97603,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-target-group-attributes-beta-service-beta-kubernetes-io-aws-load-balancer-target-group-attributes",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-target-group-attributes (beta) {#service-beta-kubernetes-io-aws-load-balancer-target-group-attributes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 98098,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-target-node-labels-beta-service-beta-kubernetes-io-aws-target-node-labels",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-target-node-labels (beta) {#service-beta-kubernetes-io-aws-target-node-labels}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 98693,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-aws-load-balancer-type-beta-service-beta-kubernetes-io-aws-load-balancer-type",
      "type": "concept",
      "title": "service.beta.kubernetes.io/aws-load-balancer-type (beta) {#service-beta-kubernetes-io-aws-load-balancer-type}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 99130,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-beta-kubernetes-io-azure-load-balancer-disable-tcp-reset-deprecated-service-beta-kubernetes-azure-load-balancer-disble-tcp-reset",
      "type": "concept",
      "title": "service.beta.kubernetes.io/azure-load-balancer-disable-tcp-reset (deprecated) {#service-beta-kubernetes-azure-load-balancer-disble-tcp-reset}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 100445,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-kubernetes-io-enforce",
      "type": "concept",
      "title": "pod-security.kubernetes.io/enforce",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 101306,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-kubernetes-io-enforce-version",
      "type": "concept",
      "title": "pod-security.kubernetes.io/enforce-version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 101894,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-kubernetes-io-audit",
      "type": "concept",
      "title": "pod-security.kubernetes.io/audit",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 102424,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-kubernetes-io-audit-version",
      "type": "concept",
      "title": "pod-security.kubernetes.io/audit-version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 103049,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-kubernetes-io-warn",
      "type": "concept",
      "title": "pod-security.kubernetes.io/warn",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 103575,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-security-kubernetes-io-warn-version",
      "type": "concept",
      "title": "pod-security.kubernetes.io/warn-version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 104353,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rbac-authorization-kubernetes-io-autoupdate",
      "type": "concept",
      "title": "rbac.authorization.kubernetes.io/autoupdate",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 105033,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-io-psp-deprecated-kubernetes-io-psp",
      "type": "concept",
      "title": "kubernetes.io/psp (deprecated) {#kubernetes-io-psp}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 105853,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:seccomp-security-alpha-kubernetes-io-pod-non-functional-seccomp-security-alpha-kubernetes-io-pod",
      "type": "concept",
      "title": "seccomp.security.alpha.kubernetes.io/pod (non-functional) {#seccomp-security-alpha-kubernetes-io-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 106424,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:container-seccomp-security-alpha-kubernetes-io-name-non-functional-container-seccomp-security-alpha-kubernetes-io",
      "type": "concept",
      "title": "container.seccomp.security.alpha.kubernetes.io/[NAME] (non-functional) {#container-seccomp-security-alpha-kubernetes-io}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 106809,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:snapshot-storage-kubernetes-io-allow-volume-mode-change",
      "type": "concept",
      "title": "snapshot.storage.kubernetes.io/allow-volume-mode-change",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 107213,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-alpha-kubernetes-io-critical-pod-deprecated",
      "type": "concept",
      "title": "scheduler.alpha.kubernetes.io/critical-pod (deprecated)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 107807,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobset-sigs-k8s-io-jobset-name",
      "type": "concept",
      "title": "jobset.sigs.k8s.io/jobset-name",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 108258,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobset-sigs-k8s-io-replicatedjob-replicas",
      "type": "concept",
      "title": "jobset.sigs.k8s.io/replicatedjob-replicas",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 108597,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobset-sigs-k8s-io-replicatedjob-name",
      "type": "concept",
      "title": "jobset.sigs.k8s.io/replicatedjob-name",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 108826,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobset-sigs-k8s-io-job-index",
      "type": "concept",
      "title": "jobset.sigs.k8s.io/job-index",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 109082,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobset-sigs-k8s-io-job-key",
      "type": "concept",
      "title": "jobset.sigs.k8s.io/job-key",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 109361,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alpha-jobset-sigs-k8s-io-exclusive-topology",
      "type": "concept",
      "title": "alpha.jobset.sigs.k8s.io/exclusive-topology",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 109722,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alpha-jobset-sigs-k8s-io-node-selector",
      "type": "concept",
      "title": "alpha.jobset.sigs.k8s.io/node-selector",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 110132,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alpha-jobset-sigs-k8s-io-namespaced-job",
      "type": "concept",
      "title": "alpha.jobset.sigs.k8s.io/namespaced-job",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 110591,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alpha-jobset-sigs-k8s-io-no-schedule",
      "type": "concept",
      "title": "alpha.jobset.sigs.k8s.io/no-schedule",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 111080,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobset-sigs-k8s-io-coordinator",
      "type": "concept",
      "title": "jobset.sigs.k8s.io/coordinator",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 111551,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-alpha-kubernetes-io-cri-socket-deprecated-kubeadm-alpha-kubernetes-io-cri-socket",
      "type": "concept",
      "title": "kubeadm.alpha.kubernetes.io/cri-socket (deprecated) {#kubeadm-alpha-kubernetes-io-cri-socket}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 113311,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-kubernetes-io-etcd-advertise-client-urls",
      "type": "concept",
      "title": "kubeadm.kubernetes.io/etcd.advertise-client-urls",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 113662,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-kubernetes-io-kube-apiserver-advertise-address-endpoint",
      "type": "concept",
      "title": "kubeadm.kubernetes.io/kube-apiserver.advertise-address.endpoint",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 114026,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-kubernetes-io-component-config-hash",
      "type": "concept",
      "title": "kubeadm.kubernetes.io/component-config.hash",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 114393,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-role-kubernetes-io-control-plane",
      "type": "concept",
      "title": "node-role.kubernetes.io/control-plane",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 114836,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-role-kubernetes-io",
      "type": "concept",
      "title": "node-role.kubernetes.io/*",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 115488,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-role-kubernetes-io-control-plane-node-role-kubernetes-io-control-plane-taint",
      "type": "concept",
      "title": "node-role.kubernetes.io/control-plane {#node-role-kubernetes-io-control-plane-taint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 116078,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-role-kubernetes-io-master-deprecated-node-role-kubernetes-io-master-taint",
      "type": "concept",
      "title": "node-role.kubernetes.io/master (deprecated) {#node-role-kubernetes-io-master-taint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 116665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-kubernetes-io-admin-access-resource-kubernetes-io-admin-access",
      "type": "concept",
      "title": "resource.kubernetes.io/admin-access {resource-kubernetes-io-admin-access}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 117117,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/tools/_index",
      "type": "page",
      "title": "Other Tools",
      "summary": "",
      "body": "\nKubernetes contains several tools to help you work with the Kubernetes system.\n\n\n\n## crictl\n\n[`crictl`](https://github.com/kubernetes-sigs/cri-tools) is a command-line\ninterface for inspecting and debugging [CRI](#gloss:cri)-compatible\ncontainer runtimes.\n\n## Dashboard\n\n[`Dashboard`](/docs/tasks/access-application-cluster/web-ui-dashboard/), the web-based user interface of Kubernetes, allows you to deploy containerized applications\nto a Kubernetes cluster, troubleshoot them, and manage the cluster and its\nresources itself.\n\n## Headlamp\n\n[Headlamp](https://headlamp.dev/) is an extensible Kubernetes graphical user\ninterface, and is an optional Kubernetes cluster component.\nHeadlamp is part of the Kubernetes project.\n\nHeadlamp provides:\n\n* A modern, user-friendly graphical interface for cluster management and troubleshooting\n* Support for both in-cluster deployment and desktop application modes\n* Extensibility through a plugin system\n* RBAC-based controls that adapt to user permissions\n\n## Helm\n\n\n[Helm](https://helm.sh/) is a tool for managing packages of pre-configured\nKubernetes resources. These packages are known as _Helm charts_.\n\nUse Helm to:\n\n* Find and use popular software packaged as Kubernetes charts\n* Share your own applications as Kubernetes charts\n* Create reproducible builds of your Kubernetes applications\n* Intelligently manage your Kubernetes manifest files\n* Manage releases of Helm packages\n\n## kind\n\n[`kind`](https://kind.sigs.k8s.io/) is a tool for running local Kubernetes\nclusters using Docker container nodes. kind is primarily designed for testing\nKubernetes itself, but may also be used for local development or CI.\n\n## Kompose\n\n[`Kompose`](https://github.com/kubernetes/kompose) is a tool to help Docker Compose users move to Kubernetes.\n\nUse Kompose to:\n\n* Translate a Docker Compose file into Kubernetes objects\n* Go from local Docker development to managing your application via Kubernetes\n* Convert v1 or v2 Docker Compose `yaml` files or [Distributed Application Bundles](https://docs.docker.com/compose/bundles/)\n\n## Kui\n\n[`Kui`](https://github.com/kubernetes-sigs/kui) is a GUI tool that takes your normal `kubectl` command line requests and responds with graphics.\nInstead of ASCII tables, Kui provides a GUI rendering with tables that you can sort.\n\nKui lets you:\n\n* Directly click on long, auto-generated resource names instead of copying and pasting\n* Type in `kubectl` commands and see them execute, even sometimes faster than `kubectl` itself\n* Query a [Job](#gloss:job) and see its execution rendered\n  as a waterfall diagram\n* Click through resources in your cluster using a tabbed UI \n\n## Minikube\n\n[`minikube`](https://minikube.sigs.k8s.io/docs/) is a tool that\nruns a single-node Kubernetes cluster locally on your workstation for\ndevelopment and testing purposes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/tools/_index/",
      "meta": {
        "weight": 150,
        "rel_path": "reference/tools/_index.md"
      },
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Other Tools"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:crictl",
      "type": "concept",
      "title": "crictl",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dashboard",
      "type": "concept",
      "title": "Dashboard",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:headlamp",
      "type": "concept",
      "title": "Headlamp",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 592,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:helm",
      "type": "concept",
      "title": "Helm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 1061,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kompose",
      "type": "concept",
      "title": "Kompose",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 1762,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kui",
      "type": "concept",
      "title": "Kui",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 2166,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/external-api/custom-metrics.v1beta2",
      "type": "page",
      "title": "Kubernetes Custom Metrics (v1beta2)",
      "summary": "",
      "body": "<p>Package v1beta2 is the v1beta2 version of the custom_metrics API.</p>\n\n\n## Resource Types \n\n\n- [MetricListOptions](#custom-metrics-k8s-io-v1beta2-MetricListOptions)\n- [MetricValue](#custom-metrics-k8s-io-v1beta2-MetricValue)\n- [MetricValueList](#custom-metrics-k8s-io-v1beta2-MetricValueList)\n  \n    \n\n## `MetricListOptions`     {#custom-metrics-k8s-io-v1beta2-MetricListOptions}\n    \n\n\n<p>MetricListOptions is used to select metrics by their label selectors</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>custom.metrics.k8s.io/v1beta2</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>MetricListOptions</code></td></tr>\n    \n  \n<tr><td><code>labelSelector</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>A selector to restrict the list of returned objects by their labels.\nDefaults to everything.</p>\n</td>\n</tr>\n<tr><td><code>metricLabelSelector</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>A selector to restrict the list of returned metrics by their labels</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `MetricValue`     {#custom-metrics-k8s-io-v1beta2-MetricValue}\n    \n\n**Appears in:**\n\n- [MetricValueList](#custom-metrics-k8s-io-v1beta2-MetricValueList)\n\n\n<p>MetricValue is the metric value for some object</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>custom.metrics.k8s.io/v1beta2</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>MetricValue</code></td></tr>\n    \n  \n<tr><td><code>describedObject</code> <B>[Required]</B><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#objectreference-v1-core\"><code>core/v1.ObjectReference</code></a>\n</td>\n<td>\n   <p>a reference to the described object</p>\n</td>\n</tr>\n<tr><td><code>metric</code> <B>[Required]</B><br/>\n<a href=\"#custom-metrics-k8s-io-v1beta2-MetricIdentifier\"><code>MetricIdentifier</code></a>\n</td>\n<td>\n   <span class=\"text-muted\">No description provided.</span></td>\n</tr>\n<tr><td><code>timestamp</code> <B>[Required]</B><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#time-v1-meta\"><code>meta/v1.Time</code></a>\n</td>\n<td>\n   <p>indicates the time at which the metrics were produced</p>\n</td>\n</tr>\n<tr><td><code>windowSeconds</code> <B>[Required]</B><br/>\n<code>int64</code>\n</td>\n<td>\n   <p>indicates the window ([Timestamp-Window, Timestamp]) from\nwhich these metrics were calculated, when returning rate\nmetrics calculated from cumulative metrics (or zero for\nnon-calculated instantaneous metrics).</p>\n</td>\n</tr>\n<tr><td><code>value</code> <B>[Required]</B><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/api/resource#Quantity\"><code>k8s.io/apimachinery/pkg/api/resource.Quantity</code></a>\n</td>\n<td>\n   <p>the value of the metric for this</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `MetricValueList`     {#custom-metrics-k8s-io-v1beta2-MetricValueList}\n    \n\n\n<p>MetricValueList is a list of values for a given metric for some set of objects</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>custom.metrics.k8s.io/v1beta2</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>MetricValueList</code></td></tr>\n    \n  \n<tr><td><code>metadata</code> <B>[Required]</B><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#listmeta-v1-meta\"><code>meta/v1.ListMeta</code></a>\n</td>\n<td>\n   <span class=\"text-muted\">No description provided.</span></td>\n</tr>\n<tr><td><code>items</code> <B>[Required]</B><br/>\n<a href=\"#custom-metrics-k8s-io-v1beta2-MetricValue\"><code>[]MetricValue</code></a>\n</td>\n<td>\n   <p>the value of the metric across the described objects</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `MetricIde\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
      "meta": {
        "weight": null,
        "rel_path": "reference/external-api/custom-metrics.v1beta2.md"
      },
      "provenance": [
        {
          "source": "reference/external-api/custom-metrics.v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Custom Metrics (v1beta2)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metriclistoptions-custom-metrics-k8s-io-v1beta2-metriclistoptions",
      "type": "concept",
      "title": "`MetricListOptions`     {#custom-metrics-k8s-io-v1beta2-MetricListOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/custom-metrics.v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
          "line_start": 306,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metricvalue-custom-metrics-k8s-io-v1beta2-metricvalue",
      "type": "concept",
      "title": "`MetricValue`     {#custom-metrics-k8s-io-v1beta2-MetricValue}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/custom-metrics.v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
          "line_start": 1145,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metricvaluelist-custom-metrics-k8s-io-v1beta2-metricvaluelist",
      "type": "concept",
      "title": "`MetricValueList`     {#custom-metrics-k8s-io-v1beta2-MetricValueList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/custom-metrics.v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
          "line_start": 3013,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metricidentifier-custom-metrics-k8s-io-v1beta2-metricidentifier",
      "type": "concept",
      "title": "`MetricIdentifier`     {#custom-metrics-k8s-io-v1beta2-MetricIdentifier}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/custom-metrics.v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
          "line_start": 3988,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/external-api/metrics.v1beta1",
      "type": "page",
      "title": "Kubernetes Metrics (v1beta1)",
      "summary": "",
      "body": "<p>Package v1beta1 is the v1beta1 version of the metrics API.</p>\n\n\n## Resource Types \n\n\n- [NodeMetrics](#metrics-k8s-io-v1beta1-NodeMetrics)\n- [NodeMetricsList](#metrics-k8s-io-v1beta1-NodeMetricsList)\n- [PodMetrics](#metrics-k8s-io-v1beta1-PodMetrics)\n- [PodMetricsList](#metrics-k8s-io-v1beta1-PodMetricsList)\n  \n    \n\n## `NodeMetrics`     {#metrics-k8s-io-v1beta1-NodeMetrics}\n    \n\n**Appears in:**\n\n- [NodeMetricsList](#metrics-k8s-io-v1beta1-NodeMetricsList)\n\n\n<p>NodeMetrics sets resource usage metrics of a node.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>metrics.k8s.io/v1beta1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>NodeMetrics</code></td></tr>\n    \n  \n<tr><td><code>metadata</code><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#objectmeta-v1-meta\"><code>meta/v1.ObjectMeta</code></a>\n</td>\n<td>\n   <p>Standard object's metadata.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</p>\nRefer to the Kubernetes API documentation for the fields of the <code>metadata</code> field.</td>\n</tr>\n<tr><td><code>timestamp</code> <B>[Required]</B><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#time-v1-meta\"><code>meta/v1.Time</code></a>\n</td>\n<td>\n   <p>The following fields define time interval from which metrics were\ncollected from the interval [Timestamp-Window, Timestamp].</p>\n</td>\n</tr>\n<tr><td><code>window</code> <B>[Required]</B><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#Duration\"><code>meta/v1.Duration</code></a>\n</td>\n<td>\n   <span class=\"text-muted\">No description provided.</span></td>\n</tr>\n<tr><td><code>usage</code> <B>[Required]</B><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#resourcelist-v1-core\"><code>core/v1.ResourceList</code></a>\n</td>\n<td>\n   <p>The memory usage is the memory working set.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `NodeMetricsList`     {#metrics-k8s-io-v1beta1-NodeMetricsList}\n    \n\n\n<p>NodeMetricsList is a list of NodeMetrics.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>metrics.k8s.io/v1beta1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>NodeMetricsList</code></td></tr>\n    \n  \n<tr><td><code>metadata</code> <B>[Required]</B><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#listmeta-v1-meta\"><code>meta/v1.ListMeta</code></a>\n</td>\n<td>\n   <p>Standard list metadata.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</p>\n</td>\n</tr>\n<tr><td><code>items</code> <B>[Required]</B><br/>\n<a href=\"#metrics-k8s-io-v1beta1-NodeMetrics\"><code>[]NodeMetrics</code></a>\n</td>\n<td>\n   <p>List of node metrics.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `PodMetrics`     {#metrics-k8s-io-v1beta1-PodMetrics}\n    \n\n**Appears in:**\n\n- [PodMetricsList](#metrics-k8s-io-v1beta1-PodMetricsList)\n\n\n<p>PodMetrics sets resource usage metrics of a pod.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>metrics.k8s.io/v1beta1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>PodMetrics</code></td></tr>\n    \n  \n<tr><td><code>metadata</code><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#objectmeta-v1-meta\"><code>meta/v1.ObjectMeta</code></a>\n</td>\n<td>\n   <p>Standard object's metadata.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</p>\nRefer to the Kubernetes API documentation for the fields of the <code>metadata</code> field.</td>\n</tr>\n<tr><td><code\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/external-api/metrics.v1beta1.md"
      },
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Metrics (v1beta1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodemetrics-metrics-k8s-io-v1beta1-nodemetrics",
      "type": "concept",
      "title": "`NodeMetrics`     {#metrics-k8s-io-v1beta1-NodeMetrics}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 323,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodemetricslist-metrics-k8s-io-v1beta1-nodemetricslist",
      "type": "concept",
      "title": "`NodeMetricsList`     {#metrics-k8s-io-v1beta1-NodeMetricsList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 2105,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podmetrics-metrics-k8s-io-v1beta1-podmetrics",
      "type": "concept",
      "title": "`PodMetrics`     {#metrics-k8s-io-v1beta1-PodMetrics}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 3073,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podmetricslist-metrics-k8s-io-v1beta1-podmetricslist",
      "type": "concept",
      "title": "`PodMetricsList`     {#metrics-k8s-io-v1beta1-PodMetricsList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 4828,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:containermetrics-metrics-k8s-io-v1beta1-containermetrics",
      "type": "concept",
      "title": "`ContainerMetrics`     {#metrics-k8s-io-v1beta1-ContainerMetrics}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 5788,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/external-api/external-metrics.v1beta1",
      "type": "page",
      "title": "Kubernetes External Metrics (v1beta1)",
      "summary": "",
      "body": "<p>Package v1beta1 is the v1beta1 version of the external metrics API.</p>\n\n\n## Resource Types \n\n\n- [ExternalMetricValue](#external-metrics-k8s-io-v1beta1-ExternalMetricValue)\n- [ExternalMetricValueList](#external-metrics-k8s-io-v1beta1-ExternalMetricValueList)\n  \n    \n\n## `ExternalMetricValue`     {#external-metrics-k8s-io-v1beta1-ExternalMetricValue}\n    \n\n**Appears in:**\n\n- [ExternalMetricValueList](#external-metrics-k8s-io-v1beta1-ExternalMetricValueList)\n\n\n<p>ExternalMetricValue is a metric value for external metric\nA single metric value is identified by metric name and a set of string labels.\nFor one metric there can be multiple values with different sets of labels.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>external.metrics.k8s.io/v1beta1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>ExternalMetricValue</code></td></tr>\n    \n  \n<tr><td><code>metricName</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>the name of the metric</p>\n</td>\n</tr>\n<tr><td><code>metricLabels</code> <B>[Required]</B><br/>\n<code>map[string]string</code>\n</td>\n<td>\n   <p>a set of labels that identify a single time series for the metric</p>\n</td>\n</tr>\n<tr><td><code>timestamp</code> <B>[Required]</B><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#time-v1-meta\"><code>meta/v1.Time</code></a>\n</td>\n<td>\n   <p>indicates the time at which the metrics were produced</p>\n</td>\n</tr>\n<tr><td><code>window</code> <B>[Required]</B><br/>\n<code>int64</code>\n</td>\n<td>\n   <p>indicates the window ([Timestamp-Window, Timestamp]) from\nwhich these metrics were calculated, when returning rate\nmetrics calculated from cumulative metrics (or zero for\nnon-calculated instantaneous metrics).</p>\n</td>\n</tr>\n<tr><td><code>value</code> <B>[Required]</B><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/api/resource#Quantity\"><code>k8s.io/apimachinery/pkg/api/resource.Quantity</code></a>\n</td>\n<td>\n   <p>the value of the metric</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `ExternalMetricValueList`     {#external-metrics-k8s-io-v1beta1-ExternalMetricValueList}\n    \n\n\n<p>ExternalMetricValueList is a list of values for a given metric for some set labels</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>external.metrics.k8s.io/v1beta1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>ExternalMetricValueList</code></td></tr>\n    \n  \n<tr><td><code>metadata</code> <B>[Required]</B><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#listmeta-v1-meta\"><code>meta/v1.ListMeta</code></a>\n</td>\n<td>\n   <span class=\"text-muted\">No description provided.</span></td>\n</tr>\n<tr><td><code>items</code> <B>[Required]</B><br/>\n<a href=\"#external-metrics-k8s-io-v1beta1-ExternalMetricValue\"><code>[]ExternalMetricValue</code></a>\n</td>\n<td>\n   <p>value of the metric matching a given set of labels</p>\n</td>\n</tr>\n</tbody>\n</table>\n  ",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/external-api/external-metrics.v1beta1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/external-api/external-metrics.v1beta1.md"
      },
      "provenance": [
        {
          "source": "reference/external-api/external-metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/external-metrics.v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes External Metrics (v1beta1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:externalmetricvalue-external-metrics-k8s-io-v1beta1-externalmetricvalue",
      "type": "concept",
      "title": "`ExternalMetricValue`     {#external-metrics-k8s-io-v1beta1-ExternalMetricValue}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/external-metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/external-metrics.v1beta1/",
          "line_start": 272,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:externalmetricvaluelist-external-metrics-k8s-io-v1beta1-externalmetricvaluelist",
      "type": "concept",
      "title": "`ExternalMetricValueList`     {#external-metrics-k8s-io-v1beta1-ExternalMetricValueList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/external-api/external-metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/external-metrics.v1beta1/",
          "line_start": 2154,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/external-api/_index",
      "type": "page",
      "title": "External APIs",
      "summary": "External APIs are external interfaces that allow users to interact with the Kubernetes cluster from outside the cluster.",
      "body": "External APIs are external interfaces that allow users to interact with the Kubernetes cluster from outside the cluster.\n\n**Why it matters**\nExternal APIs enable users to integrate their applications with the Kubernetes cluster, providing a way to manage and monitor cluster resources remotely.\n\n**Key facts**\n- External APIs provide an interface for interacting with the cluster\n- They allow for remote management and monitoring of cluster resources\n\n**Common pitfalls**\n- Security risks associated with exposing external interfaces\n\n**Related**\nKubernetes API Server, ClusterIP Services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/external-api/_index/",
      "meta": {
        "weight": 135,
        "rel_path": "reference/external-api/_index.md"
      },
      "provenance": [
        {
          "source": "reference/external-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/external-api/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "External APIs"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/scheduling/policies",
      "type": "page",
      "title": "Scheduling Policies",
      "summary": "",
      "body": "\n\nIn Kubernetes versions before v1.23, a scheduling policy can be used to specify the *predicates* and *priorities* process. For example, you can set a scheduling policy by\nrunning `kube-scheduler --policy-config-file <filename>` or `kube-scheduler --policy-configmap <ConfigMap>`.\n\nThis scheduling policy is not supported since Kubernetes v1.23. Associated flags `policy-config-file`, `policy-configmap`, `policy-configmap-namespace` and `use-legacy-policy-config` are also not supported. Instead, use the [Scheduler Configuration](/docs/reference/scheduling/config/) to achieve similar behavior.\n\n## \n\n* Learn about [scheduling](/docs/concepts/scheduling-eviction/kube-scheduler/)\n* Learn about [kube-scheduler Configuration](/docs/reference/scheduling/config/)\n* Read the [kube-scheduler configuration reference (v1)](/docs/reference/config-api/kube-scheduler-config.v1/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/scheduling/policies/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/scheduling/policies.md"
      },
      "provenance": [
        {
          "source": "reference/scheduling/policies.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/policies/",
          "line_start": null,
          "line_end": null,
          "quote": "Scheduling Policies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/scheduling/config",
      "type": "page",
      "title": "Scheduler Configuration",
      "summary": "",
      "body": "\n\nYou can customize the behavior of the `kube-scheduler` by writing a configuration\nfile and passing its path as a command line argument.\n\n\n\n\n\nA scheduling Profile allows you to configure the different stages of scheduling\nin the [kube-scheduler](#gloss:kube-scheduler).\nEach stage is exposed in an extension point. Plugins provide scheduling behaviors\nby implementing one or more of these extension points.\n\nYou can specify scheduling profiles by running `kube-scheduler --config <filename>`,\nusing the\nKubeSchedulerConfiguration [v1](/docs/reference/config-api/kube-scheduler-config.v1/)\nstruct.\n\nA minimal configuration looks as follows:\n\n```yaml\napiVersion: kubescheduler.config.k8s.io/v1\nkind: KubeSchedulerConfiguration\nclientConnection:\n  kubeconfig: /etc/srv/kubernetes/kube-scheduler/kubeconfig\n```\n\n\n> **Note:** KubeSchedulerConfiguration v1beta3 is deprecated in v1.26 and is removed in v1.29.\nPlease migrate KubeSchedulerConfiguration to [v1](/docs/reference/config-api/kube-scheduler-config.v1/).\n\n\n## Profiles\n\nA scheduling Profile allows you to configure the different stages of scheduling\nin the [kube-scheduler](#gloss:kube-scheduler).\nEach stage is exposed in an [extension point](#extension-points).\n[Plugins](#scheduling-plugins) provide scheduling behaviors by implementing one\nor more of these extension points.\n\nYou can configure a single instance of `kube-scheduler` to run\n[multiple profiles](#multiple-profiles).\n\n### Extension points\n\nScheduling happens in a series of stages that are exposed through the following\nextension points:\n\n1. `queueSort`: These plugins provide an ordering function that is used to\n   sort pending Pods in the scheduling queue. Exactly one queue sort plugin\n   may be enabled at a time.\n1. `placementGenerate`: These plugins generate potential placements (sets of\n   nodes) where a considered PodGroup could be scheduled. This extension point\n   is only applicable to PodGroup scheduling and requires Workload scheduling\n   to be enabled.\n1. `placementScore`: These plugins score the placements proposed by\n   `placementGenerate`, to pick the optimal placement for the considered\n    PodGroup.\n1. `preFilter`: These plugins are used to pre-process or check information\n   about a Pod or the cluster before filtering. They can mark a pod as\n   unschedulable.\n1. `filter`: These plugins are the equivalent of Predicates in a scheduling\n   Policy and are used to filter out nodes that can not run the Pod. Filters\n   are called in the configured order. A pod is marked as unschedulable if no\n   nodes pass all the filters.\n1. `postFilter`: These plugins are called in their configured order when no\n   feasible nodes were found for the pod. If any `postFilter` plugin marks the\n   Pod _schedulable_, the remaining plugins are not called.\n1. `preScore`: This is an informational extension point that can be used\n   for doing pre-scoring work.\n1. `score`: These plugins provide a score to each node that has passed the\n   filtering phase. The scheduler will then select the node with the highest\n   weighted scores sum.\n1. `reserve`: This is an informational extension point that notifies plugins\n   when resources have been reserved for a given Pod. Plugins also implement an\n   `Unreserve` call that gets called in the case of failure during or after\n   `Reserve`.\n1. `permit`: These plugins can prevent or delay the binding of a Pod.\n1. `preBind`: These plugins perform any work required before a Pod is bound.\n1. `bind`: The plugins bind a Pod to a Node. `bind` plugins are called in order\n   and once one has done the binding, the remaining plugins are skipped. At\n   least one bind plugin is required.\n1. `postBind`: This is an informational extension point that is called after\n   a Pod has been bound.\n1. `multiPoint`: This is a config-only field that allows plugins to be enabled\n   or disabled for all of their applicable extension points simultaneously.\n\nFor each extension point, you could disable specific [default plugins](#scheduling-pl\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/scheduling/config/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/scheduling/config.md"
      },
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": null,
          "line_end": null,
          "quote": "Scheduler Configuration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:profiles",
      "type": "concept",
      "title": "Profiles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 1148,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduler-configuration-migrations",
      "type": "concept",
      "title": "Scheduler configuration migrations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 16938,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scheduling-plugins",
      "type": "concept",
      "title": "Scheduling plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 4673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:multiple-profiles",
      "type": "concept",
      "title": "Multiple profiles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 9048,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:plugins-that-apply-to-multiple-extension-points-multipoint",
      "type": "concept",
      "title": "Plugins that apply to multiple extension points {#multipoint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 10865,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/scheduling/_index",
      "type": "page",
      "title": "Scheduling",
      "summary": "Scheduling is a Kubernetes feature that manages the allocation of resources to pods within the cluster.",
      "body": "Scheduling is a Kubernetes feature that manages the allocation of resources to pods within the cluster.\n\n**Why it matters**\nScheduling ensures that pods are allocated with sufficient resources, such as CPU and memory, to run efficiently and effectively.\n\n**Key facts**\n- Scheduling allocates resources to pods\n- It ensures efficient use of cluster resources\n\n**Common pitfalls**\n- Incorrect scheduling configuration can lead to resource underutilization or overcommitment\n\n**Related**\nPods, Node Selection",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/scheduling/_index/",
      "meta": {
        "weight": 140,
        "rel_path": "reference/scheduling/_index.md"
      },
      "provenance": [
        {
          "source": "reference/scheduling/_index.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Scheduling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/networking/virtual-ips",
      "type": "page",
      "title": "Virtual IPs and Service Proxies",
      "summary": "",
      "body": "\nEvery [node](#gloss:node) in a Kubernetes\n[cluster](#gloss:cluster) runs a\n[kube-proxy](/docs/reference/command-line-tools-reference/kube-proxy/)\n(unless you have deployed your own alternative component in place of `kube-proxy`).\n\nThe `kube-proxy` component is responsible for implementing a _virtual IP_\nmechanism for [Services](#gloss:service)\nof `type` other than\n[`ExternalName`](/docs/concepts/services-networking/service/#externalname).\nEach instance of kube-proxy watches the Kubernetes\n[control plane](#gloss:control-plane)\nfor the addition and removal of Service and [EndpointSlice](#gloss:endpoint-slice)\n[objects](#gloss:object). For each Service, kube-proxy\ncalls appropriate APIs (depending on the kube-proxy mode) to configure\nthe node to capture traffic to the Service's `clusterIP` and `port`,\nand redirect that traffic to one of the Service's endpoints\n(usually a Pod, but possibly an arbitrary user-provided IP address). A control\nloop ensures that the rules on each node are reliably synchronized with\nthe Service and EndpointSlice state as indicated by the API server.\n\n\n![](/images/docs/services-iptables-overview.svg)\n\n\nA question that pops up every now and then is why Kubernetes relies on\nproxying to forward inbound traffic to backends. What about other\napproaches? For example, would it be possible to configure DNS records that\nhave multiple A values (or AAAA for IPv6), and rely on round-robin name\nresolution?\n\nThere are a few reasons for using proxying for Services:\n\n* There is a long history of DNS implementations not respecting record TTLs,\n  and caching the results of name lookups after they should have expired.\n* Some apps do DNS lookups only once and cache the results indefinitely.\n* Even if apps and libraries did proper re-resolution, the low or zero TTLs\n  on the DNS records could impose a high load on DNS that then becomes\n  difficult to manage.\n\nLater in this page you can read about how various kube-proxy implementations work.\nOverall, you should note that, when running `kube-proxy`, kernel level rules may be modified\n(for example, iptables rules might get created), which won't get cleaned up, in some\ncases until you reboot. Thus, running kube-proxy is something that should only be done\nby an administrator who understands the consequences of having a low level, privileged\nnetwork proxying service on a computer. Although the `kube-proxy` executable supports a\n`cleanup` function, this function is not an official feature and thus is only available\nto use as-is.\n\n<a id=\"example\"></a>\nSome of the details in this reference refer to an example: the backend\n[Pods](#gloss:pod) for a stateless\nimage-processing workloads, running with\nthree replicas. Those replicas are\nfungible&mdash;frontends do not care which backend they use. While the actual Pods that\ncompose the backend set may change, the frontend clients should not need to be aware of that,\nnor should they need to keep track of the set of backends themselves.\n\n\n\n## Proxy modes\n\nThe kube-proxy starts up in different modes, which are determined by its configuration.\n\nOn Linux nodes, the available modes for kube-proxy are:\n\n[`iptables`](#proxy-mode-iptables)\n: A mode where the kube-proxy configures packet forwarding rules using iptables.\n\n[`ipvs`](#proxy-mode-ipvs)\n: a mode where the kube-proxy configures packet forwarding rules using ipvs.\n\n[`nftables`](#proxy-mode-nftables)\n: a mode where the kube-proxy configures packet forwarding rules using nftables.\n\nThere is only one mode available for kube-proxy on Windows:\n\n[`kernelspace`](#proxy-mode-kernelspace)\n: a mode where the kube-proxy configures packet forwarding rules in the Windows kernel\n\n### `iptables` proxy mode {#proxy-mode-iptables}\n\n_This proxy mode is only available on Linux nodes._\n\nIn this mode, kube-proxy configures packet forwarding rules using the\niptables API of the kernel netfilter subsystem. For each endpoint, it\ninstalls iptables rules which, by default, select a backend Pod at\nrandom.\n\n#### Example\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/networking/virtual-ips.md"
      },
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": null,
          "line_end": null,
          "quote": "Virtual IPs and Service Proxies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:proxy-modes",
      "type": "concept",
      "title": "Proxy modes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 3332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:session-affinity",
      "type": "concept",
      "title": "Session affinity",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 19811,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ip-address-assignment-to-services",
      "type": "concept",
      "title": "IP address assignment to Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 20625,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:iptables-proxy-mode-proxy-mode-iptables",
      "type": "concept",
      "title": "`iptables` proxy mode {#proxy-mode-iptables}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 4023,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ipvs-proxy-mode-proxy-mode-ipvs",
      "type": "concept",
      "title": "IPVS proxy mode {#proxy-mode-ipvs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 9527,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nftables-proxy-mode-proxy-mode-nftables",
      "type": "concept",
      "title": "`nftables` proxy mode {#proxy-mode-nftables}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 14299,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kernelspace-proxy-mode-proxy-mode-kernelspace",
      "type": "concept",
      "title": "`kernelspace` proxy mode {#proxy-mode-kernelspace}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 18016,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:session-stickiness-timeout",
      "type": "concept",
      "title": "Session stickiness timeout",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 20277,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:avoiding-collisions",
      "type": "concept",
      "title": "Avoiding collisions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 21175,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ip-address-allocation-tracking",
      "type": "concept",
      "title": "IP address allocation tracking",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 21875,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ip-address-ranges-for-service-virtual-ip-addresses-service-ip-static-sub-range",
      "type": "concept",
      "title": "IP address ranges for Service virtual IP addresses {#service-ip-static-sub-range}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 26618,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:internal-traffic-policy",
      "type": "concept",
      "title": "Internal traffic policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 27572,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-traffic-policy",
      "type": "concept",
      "title": "External traffic policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 28051,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:traffic-to-terminating-endpoints",
      "type": "concept",
      "title": "Traffic to terminating endpoints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 31714,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:comparison-with-service-kubernetes-io-topology-mode-auto",
      "type": "concept",
      "title": "Comparison with `service.kubernetes.io/topology-mode: Auto`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 34488,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:interaction-with-traffic-policies",
      "type": "concept",
      "title": "Interaction with Traffic Policies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 35893,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:considerations-for-using-traffic-distribution-control",
      "type": "concept",
      "title": "Considerations for using traffic distribution control",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 36897,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/networking/ports-and-protocols",
      "type": "page",
      "title": "Ports and Protocols",
      "summary": "",
      "body": "When running Kubernetes in an environment with strict network boundaries, such \nas on-premises datacenter with physical network firewalls or Virtual \nNetworks in Public Cloud, it is useful to be aware of the ports and protocols \nused by Kubernetes components.\n\n## Control plane\n\n| Protocol | Direction | Port Range | Purpose                 | Used By                   |\n|----------|-----------|------------|-------------------------|---------------------------|\n| TCP      | Inbound   | 6443       | Kubernetes API server   | All                       |\n| TCP      | Inbound   | 2379-2380  | etcd server client API  | kube-apiserver, etcd      |\n| TCP      | Inbound   | 10250      | Kubelet API             | Self, Control plane       |\n| TCP      | Inbound   | 10259      | kube-scheduler          | Self                      |\n| TCP      | Inbound   | 10257      | kube-controller-manager | Self                      |\n\nAlthough etcd ports are included in control plane section, you can also host your own\netcd cluster externally or on custom ports. \n\n## Worker node(s) {#node}\n\n| Protocol | Direction | Port Range  | Purpose               | Used By                 |\n|----------|-----------|-------------|-----------------------|-------------------------|\n| TCP      | Inbound   | 10250       | Kubelet API           | Self, Control plane     |\n| TCP      | Inbound   | 10256       | kube-proxy            | Self, Load balancers    |\n| TCP      | Inbound   | 30000-32767 | NodePort Services†    | All                     |\n| UDP      | Inbound   | 30000-32767 | NodePort Services†    | All                     |\n\n† Default port range for [NodePort Services](/docs/concepts/services-networking/service/).\n\nAll default port numbers can be overridden. When custom ports are used those \nports need to be open instead of defaults mentioned here. \n\nOne common example is API server port that is sometimes switched\nto 443. Alternatively, the default port is kept as is and API server is put \nbehind a load balancer that listens on 443 and routes the requests to API server\non the default port.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/networking/ports-and-protocols/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/networking/ports-and-protocols.md"
      },
      "provenance": [
        {
          "source": "reference/networking/ports-and-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/ports-and-protocols/",
          "line_start": null,
          "line_end": null,
          "quote": "Ports and Protocols"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane",
      "type": "concept",
      "title": "Control plane",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/ports-and-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/ports-and-protocols/",
          "line_start": 262,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:worker-node-s-node",
      "type": "concept",
      "title": "Worker node(s) {#node}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/ports-and-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/ports-and-protocols/",
          "line_start": 1057,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/networking/service-protocols",
      "type": "page",
      "title": "Protocols for Services",
      "summary": "",
      "body": "\nIf you configure a [Service](#gloss:service),\nyou can select from any network protocol that Kubernetes supports.\n\nKubernetes supports the following protocols with Services:\n\n- [`SCTP`](#protocol-sctp)\n- [`TCP`](#protocol-tcp) _(the default)_\n- [`UDP`](#protocol-udp)\n\nWhen you define a Service, you can also specify the\n[application protocol](/docs/concepts/services-networking/service/#application-protocol)\nthat it uses.\n\nThis document details some special cases, all of them typically using TCP\nas a transport protocol:\n\n- [HTTP](#protocol-http-special) and [HTTPS](#protocol-http-special)\n- [PROXY protocol](#protocol-proxy-special)\n- [TLS](#protocol-tls-special) termination at the load balancer\n\n\n## Supported protocols {#protocol-support}\n\nThere are 3 valid values for the `protocol` of a port for a Service:\n\n### `SCTP` {#protocol-sctp}\n\n\n\nWhen using a network plugin that supports SCTP traffic, you can use SCTP for\nmost Services. For `type: LoadBalancer` Services, SCTP support depends on the cloud\nprovider offering this facility. (Most do not).\n\nSCTP is not supported on nodes that run Windows.\n\n#### Support for multihomed SCTP associations {#caveat-sctp-multihomed}\n\nThe support of multihomed SCTP associations requires that the CNI plugin can support the assignment of multiple interfaces and IP addresses to a Pod.\n\nNAT for multihomed SCTP associations requires special logic in the corresponding kernel modules.\n\n### `TCP` {#protocol-tcp}\n\nYou can use TCP for any kind of Service, and it's the default network protocol.\n\n### `UDP` {#protocol-udp}\n\nYou can use UDP for most Services. For `type: LoadBalancer` Services,\nUDP support depends on the cloud provider offering this facility.\n\n\n## Special cases\n\n### HTTP {#protocol-http-special}\n\nIf your cloud provider supports it, you can use a Service in LoadBalancer mode to\nconfigure a load balancer outside of your Kubernetes cluster, in a special mode\nwhere your cloud provider's load balancer implements HTTP / HTTPS reverse proxying,\nwith traffic forwarded to the backend endpoints for that Service.\n\nTypically, you set the protocol for the Service to `TCP` and add an\n[annotation](#gloss:annotation)\n(usually specific to your cloud provider) that configures the load balancer\nto handle traffic at the HTTP level.\nThis configuration might also include serving HTTPS (HTTP over TLS) and\nreverse-proxying plain HTTP to your workload.\n\n\n> **Note:** You can also use an  to expose\nHTTP/HTTPS Services.\n\n\nYou might additionally want to specify that the\n[application protocol](/docs/concepts/services-networking/service/#application-protocol)\nof the connection is `http` or `https`. Use `http` if the session from the\nload balancer to your workload is HTTP without TLS, and use `https` if the\nsession from the load balancer to your workload uses TLS encryption.\n\n### PROXY protocol {#protocol-proxy-special}\n\nIf your cloud provider supports it, you can use a Service set to `type: LoadBalancer`\nto configure a load balancer outside of Kubernetes itself, that will forward connections\nwrapped with the\n[PROXY protocol](https://www.haproxy.org/download/2.5/doc/proxy-protocol.txt).\n\nThe load balancer then sends an initial series of octets describing the\nincoming connection, similar to this example (PROXY protocol v1):\n\n```\nPROXY TCP4 192.0.2.202 10.0.42.7 12345 7\\r\\n\n```\n\nThe data after the proxy protocol preamble are the original\ndata from the client. When either side closes the connection,\nthe load balancer also triggers a connection close and sends\nany remaining data where feasible.\n\nTypically, you define a Service with the protocol to `TCP`.\nYou also set an annotation, specific to your\ncloud provider, that configures the load balancer to wrap each incoming connection in the PROXY protocol.\n\n### TLS {#protocol-tls-special}\n\nIf your cloud provider supports it, you can use a Service set to `type: LoadBalancer` as\na way to set up external reverse proxying, where the connection from client to load\nbalancer is TLS encrypted \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/networking/service-protocols.md"
      },
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": null,
          "line_end": null,
          "quote": "Protocols for Services"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:supported-protocols-protocol-support",
      "type": "concept",
      "title": "Supported protocols {#protocol-support}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 767,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:special-cases",
      "type": "concept",
      "title": "Special cases",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 1827,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sctp-protocol-sctp",
      "type": "concept",
      "title": "`SCTP` {#protocol-sctp}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 881,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tcp-protocol-tcp",
      "type": "concept",
      "title": "`TCP` {#protocol-tcp}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 1554,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:udp-protocol-udp",
      "type": "concept",
      "title": "`UDP` {#protocol-udp}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 1662,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:http-protocol-http-special",
      "type": "concept",
      "title": "HTTP {#protocol-http-special}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 1845,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:proxy-protocol-protocol-proxy-special",
      "type": "concept",
      "title": "PROXY protocol {#protocol-proxy-special}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 3036,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tls-protocol-tls-special",
      "type": "concept",
      "title": "TLS {#protocol-tls-special}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 3978,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/networking/_index",
      "type": "page",
      "title": "Networking Reference",
      "summary": "A collection of networking-related resources and guides.",
      "body": "A collection of networking-related resources and guides.\n\n**Why it matters**\nProvides a centralized location for networking information, making it easier to find relevant documentation.\n\n**Key facts**\n- Networking Reference is a comprehensive resource.\n- It covers various aspects of Kubernetes networking.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/networking/_index/",
      "meta": {
        "weight": 85,
        "rel_path": "reference/networking/_index.md"
      },
      "provenance": [
        {
          "source": "reference/networking/_index.md",
          "url": "https://kubernetes.io/docs/reference/networking/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Networking Reference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/config-api/kubeadm-config.v1beta3",
      "type": "page",
      "title": "kubeadm Configuration (v1beta3)",
      "summary": "",
      "body": "<h2>Overview</h2>\n<p>Package v1beta3 defines the v1beta3 version of the kubeadm configuration file format.\nThis version improves on the v1beta2 format by fixing some minor issues and adding a few new fields.</p>\n<p>A list of changes since v1beta2:</p>\n<ul>\n<li>The deprecated &quot;ClusterConfiguration.useHyperKubeImage&quot; field has been removed.\nKubeadm no longer supports the hyperkube image.</li>\n<li>The &quot;ClusterConfiguration.dns.type&quot; field has been removed since CoreDNS is the only supported\nDNS server type by kubeadm.</li>\n<li>Include &quot;datapolicy&quot; tags on the fields that hold secrets.\nThis would result in the field values to be omitted when API structures are printed with klog.</li>\n<li>Add &quot;InitConfiguration.skipPhases&quot;, &quot;JoinConfiguration.skipPhases&quot; to allow skipping\na list of phases during kubeadm init/join command execution.</li>\n<li>Add &quot;InitConfiguration.nodeRegistration.imagePullPolicy&quot; and &quot;JoinConfiguration.nodeRegistration.imagePullPolicy&quot;\nto allow specifying the images pull policy during kubeadm &quot;init&quot; and &quot;join&quot;.\nThe value must be one of &quot;Always&quot;, &quot;Never&quot; or &quot;IfNotPresent&quot;.\n&quot;IfNotPresent&quot; is the default, which has been the existing behavior prior to this addition.</li>\n<li>Add &quot;InitConfiguration.patches.directory&quot;, &quot;JoinConfiguration.patches.directory&quot; to allow\nthe user to configure a directory from which to take patches for components deployed by kubeadm.</li>\n<li>Move the BootstrapToken* API and related utilities out of the &quot;kubeadm&quot; API group to a new group\n&quot;bootstraptoken&quot;. The kubeadm API version v1beta3 no longer contains the BootstrapToken* structures.</li>\n</ul>\n<p>Migration from old kubeadm config versions</p>\n<ul>\n<li>kubeadm v1.15.x and newer can be used to migrate from v1beta1 to v1beta2.</li>\n<li>kubeadm v1.22.x and newer no longer support v1beta1 and older APIs, but can be used to migrate v1beta2 to v1beta3.</li>\n<li>kubeadm v1.27.x and newer no longer support v1beta2 and older APIs,</li>\n</ul>\n<h2>Basics</h2>\n<p>The preferred way to configure kubeadm is to pass an YAML configuration file with the <code>--config</code> option. Some of the\nconfiguration options defined in the kubeadm config file are also available as command line flags, but only\nthe most common/simple use case are supported with this approach.</p>\n<p>A kubeadm config file could contain multiple configuration types separated using three dashes (<code>---</code>).</p>\n<p>kubeadm supports the following configuration types:</p>\n<pre style=\"background-color:#fff\"><span style=\"color:#000;font-weight:bold\">apiVersion</span>:<span style=\"color:#bbb\"> </span>kubeadm.k8s.io/v1beta3<span style=\"color:#bbb\">\n</span><span style=\"color:#bbb\"></span><span style=\"color:#000;font-weight:bold\">kind</span>:<span style=\"color:#bbb\"> </span>InitConfiguration<span style=\"color:#bbb\">\n</span><span style=\"color:#bbb\">\n</span><span style=\"color:#bbb\"></span><span style=\"color:#000;font-weight:bold\">apiVersion</span>:<span style=\"color:#bbb\"> </span>kubeadm.k8s.io/v1beta3<span style=\"color:#bbb\">\n</span><span style=\"color:#bbb\"></span><span style=\"color:#000;font-weight:bold\">kind</span>:<span style=\"color:#bbb\"> </span>ClusterConfiguration<span style=\"color:#bbb\">\n</span><span style=\"color:#bbb\">\n</span><span style=\"color:#bbb\"></span><span style=\"color:#000;font-weight:bold\">apiVersion</span>:<span style=\"color:#bbb\"> </span>kubelet.config.k8s.io/v1beta1<span style=\"color:#bbb\">\n</span><span style=\"color:#bbb\"></span><span style=\"color:#000;font-weight:bold\">kind</span>:<span style=\"color:#bbb\"> </span>KubeletConfiguration<span style=\"color:#bbb\">\n</span><span style=\"color:#bbb\">\n</span><span style=\"color:#bbb\"></span><span style=\"color:#000;font-weight:bold\">apiVersion</span>:<span style=\"color:#bbb\"> </span>kubeproxy.config.k8s.io/v1alpha1<span style=\"color:#bbb\">\n</span><span style=\"color:#b\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kubeadm-config.v1beta3.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm Configuration (v1beta3)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bootstraptoken-bootstraptoken",
      "type": "concept",
      "title": "`BootstrapToken`     {#BootstrapToken}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 30190,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bootstraptokenstring-bootstraptokenstring",
      "type": "concept",
      "title": "`BootstrapTokenString`     {#BootstrapTokenString}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 32249,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clusterconfiguration-kubeadm-k8s-io-v1beta3-clusterconfiguration",
      "type": "concept",
      "title": "`ClusterConfiguration`     {#kubeadm-k8s-io-v1beta3-ClusterConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 33127,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:initconfiguration-kubeadm-k8s-io-v1beta3-initconfiguration",
      "type": "concept",
      "title": "`InitConfiguration`     {#kubeadm-k8s-io-v1beta3-InitConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 37221,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:joinconfiguration-kubeadm-k8s-io-v1beta3-joinconfiguration",
      "type": "concept",
      "title": "`JoinConfiguration`     {#kubeadm-k8s-io-v1beta3-JoinConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 40464,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiendpoint-kubeadm-k8s-io-v1beta3-apiendpoint",
      "type": "concept",
      "title": "`APIEndpoint`     {#kubeadm-k8s-io-v1beta3-APIEndpoint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 42682,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiserver-kubeadm-k8s-io-v1beta3-apiserver",
      "type": "concept",
      "title": "`APIServer`     {#kubeadm-k8s-io-v1beta3-APIServer}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 43470,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bootstraptokendiscovery-kubeadm-k8s-io-v1beta3-bootstraptokendiscovery",
      "type": "concept",
      "title": "`BootstrapTokenDiscovery`     {#kubeadm-k8s-io-v1beta3-BootstrapTokenDiscovery}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 44637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controlplanecomponent-kubeadm-k8s-io-v1beta3-controlplanecomponent",
      "type": "concept",
      "title": "`ControlPlaneComponent`     {#kubeadm-k8s-io-v1beta3-ControlPlaneComponent}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 46379,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dns-kubeadm-k8s-io-v1beta3-dns",
      "type": "concept",
      "title": "`DNS`     {#kubeadm-k8s-io-v1beta3-DNS}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 47369,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:discovery-kubeadm-k8s-io-v1beta3-discovery",
      "type": "concept",
      "title": "`Discovery`     {#kubeadm-k8s-io-v1beta3-Discovery}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 48009,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:etcd-kubeadm-k8s-io-v1beta3-etcd",
      "type": "concept",
      "title": "`Etcd`     {#kubeadm-k8s-io-v1beta3-Etcd}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 49719,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:externaletcd-kubeadm-k8s-io-v1beta3-externaletcd",
      "type": "concept",
      "title": "`ExternalEtcd`     {#kubeadm-k8s-io-v1beta3-ExternalEtcd}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 50635,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:filediscovery-kubeadm-k8s-io-v1beta3-filediscovery",
      "type": "concept",
      "title": "`FileDiscovery`     {#kubeadm-k8s-io-v1beta3-FileDiscovery}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 51878,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostpathmount-kubeadm-k8s-io-v1beta3-hostpathmount",
      "type": "concept",
      "title": "`HostPathMount`     {#kubeadm-k8s-io-v1beta3-HostPathMount}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 52510,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagemeta-kubeadm-k8s-io-v1beta3-imagemeta",
      "type": "concept",
      "title": "`ImageMeta`     {#kubeadm-k8s-io-v1beta3-ImageMeta}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 53868,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:joincontrolplane-kubeadm-k8s-io-v1beta3-joincontrolplane",
      "type": "concept",
      "title": "`JoinControlPlane`     {#kubeadm-k8s-io-v1beta3-JoinControlPlane}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 54842,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:localetcd-kubeadm-k8s-io-v1beta3-localetcd",
      "type": "concept",
      "title": "`LocalEtcd`     {#kubeadm-k8s-io-v1beta3-LocalEtcd}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 55919,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networking-kubeadm-k8s-io-v1beta3-networking",
      "type": "concept",
      "title": "`Networking`     {#kubeadm-k8s-io-v1beta3-Networking}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 57587,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:noderegistrationoptions-kubeadm-k8s-io-v1beta3-noderegistrationoptions",
      "type": "concept",
      "title": "`NodeRegistrationOptions`     {#kubeadm-k8s-io-v1beta3-NodeRegistrationOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 58492,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:patches-kubeadm-k8s-io-v1beta3-patches",
      "type": "concept",
      "title": "`Patches`     {#kubeadm-k8s-io-v1beta3-Patches}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 61832,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/apiserver-audit.v1",
      "type": "page",
      "title": "kube-apiserver Audit Configuration (v1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [Event](#audit-k8s-io-v1-Event)\n- [EventList](#audit-k8s-io-v1-EventList)\n- [Policy](#audit-k8s-io-v1-Policy)\n- [PolicyList](#audit-k8s-io-v1-PolicyList)\n  \n\n## `Event`     {#audit-k8s-io-v1-Event}\n    \n\n**Appears in:**\n\n- [EventList](#audit-k8s-io-v1-EventList)\n\n\n<p>Event captures all the information that can be included in an API audit log.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>audit.k8s.io/v1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>Event</code></td></tr>\n    \n  \n<tr><td><code>level</code> <B>[Required]</B><br/>\n<a href=\"#audit-k8s-io-v1-Level\"><code>Level</code></a>\n</td>\n<td>\n   <p>AuditLevel at which event was generated</p>\n</td>\n</tr>\n<tr><td><code>auditID</code> <B>[Required]</B><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/types#UID\"><code>k8s.io/apimachinery/pkg/types.UID</code></a>\n</td>\n<td>\n   <p>Unique audit ID, generated for each request.</p>\n</td>\n</tr>\n<tr><td><code>stage</code> <B>[Required]</B><br/>\n<a href=\"#audit-k8s-io-v1-Stage\"><code>Stage</code></a>\n</td>\n<td>\n   <p>Stage of the request handling when this event instance was generated.</p>\n</td>\n</tr>\n<tr><td><code>requestURI</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>RequestURI is the request URI as sent by the client to a server.</p>\n</td>\n</tr>\n<tr><td><code>verb</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Verb is the kubernetes verb associated with the request.\nFor non-resource requests, this is the lower-cased HTTP method.</p>\n</td>\n</tr>\n<tr><td><code>user</code> <B>[Required]</B><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.36/#userinfo-v1-authentication-k8s-io\"><code>authentication/v1.UserInfo</code></a>\n</td>\n<td>\n   <p>Authenticated user information.</p>\n</td>\n</tr>\n<tr><td><code>impersonatedUser</code><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.36/#userinfo-v1-authentication-k8s-io\"><code>authentication/v1.UserInfo</code></a>\n</td>\n<td>\n   <p>Impersonated user information.</p>\n</td>\n</tr>\n<tr><td><code>authenticationMetadata</code><br/>\n<a href=\"#audit-k8s-io-v1-AuthenticationMetadata\"><code>AuthenticationMetadata</code></a>\n</td>\n<td>\n   <p>AuthenticationMetadata contains details about how the request was authenticated.</p>\n</td>\n</tr>\n<tr><td><code>sourceIPs</code><br/>\n<code>[]string</code>\n</td>\n<td>\n   <p>Source IPs, from where the request originated and intermediate proxies.\nThe source IPs are listed from (in order):</p>\n<ol>\n<li>X-Forwarded-For request header IPs</li>\n<li>X-Real-Ip header, if not present in the X-Forwarded-For list</li>\n<li>The remote address for the connection, if it doesn't match the last\nIP in the list up to here (X-Forwarded-For or X-Real-Ip).\nNote: All but the last IP can be arbitrarily set by the client.</li>\n</ol>\n</td>\n</tr>\n<tr><td><code>userAgent</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>UserAgent records the user agent string reported by the client.\nNote that the UserAgent is provided by the client, and must not be trusted.</p>\n</td>\n</tr>\n<tr><td><code>objectRef</code><br/>\n<a href=\"#audit-k8s-io-v1-ObjectReference\"><code>ObjectReference</code></a>\n</td>\n<td>\n   <p>Object reference this request is targeted at.\nDoes not apply for List-type requests, or non-resource requests.</p>\n</td>\n</tr>\n<tr><td><code>responseStatus</code><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.36/#status-v1-meta\"><code>meta/v1.Status</code></a>\n</td>\n<td>\n   <p>The response status, populated even when the ResponseObject is not a Status type.\nFor successful responses, this will only include the Code and StatusSuccess.\nFor non-status type error responses, this will be auto-populated with the error Message.</p>\n</td>\n</tr>\n<tr><td><code>requestObject</code><br/>\n<a href=\"https://pkg.go.dev/k\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/apiserver-audit.v1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-apiserver Audit Configuration (v1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:event-audit-k8s-io-v1-event",
      "type": "concept",
      "title": "`Event`     {#audit-k8s-io-v1-Event}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:eventlist-audit-k8s-io-v1-eventlist",
      "type": "concept",
      "title": "`EventList`     {#audit-k8s-io-v1-EventList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 6047,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policy-audit-k8s-io-v1-policy",
      "type": "concept",
      "title": "`Policy`     {#audit-k8s-io-v1-Policy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 6886,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policylist-audit-k8s-io-v1-policylist",
      "type": "concept",
      "title": "`PolicyList`     {#audit-k8s-io-v1-PolicyList}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 9003,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authenticationmetadata-audit-k8s-io-v1-authenticationmetadata",
      "type": "concept",
      "title": "`AuthenticationMetadata`     {#audit-k8s-io-v1-AuthenticationMetadata}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 9850,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:groupresources-audit-k8s-io-v1-groupresources",
      "type": "concept",
      "title": "`GroupResources`     {#audit-k8s-io-v1-GroupResources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 10441,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:level-audit-k8s-io-v1-level",
      "type": "concept",
      "title": "`Level`     {#audit-k8s-io-v1-Level}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 11960,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:objectreference-audit-k8s-io-v1-objectreference",
      "type": "concept",
      "title": "`ObjectReference`     {#audit-k8s-io-v1-ObjectReference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 12198,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policyrule-audit-k8s-io-v1-policyrule",
      "type": "concept",
      "title": "`PolicyRule`     {#audit-k8s-io-v1-PolicyRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 13843,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:stage-audit-k8s-io-v1-stage",
      "type": "concept",
      "title": "`Stage`     {#audit-k8s-io-v1-Stage}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 16787,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/client-authentication.v1beta1",
      "type": "page",
      "title": "Client Authentication (v1beta1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [ExecCredential](#client-authentication-k8s-io-v1beta1-ExecCredential)\n  \n\n## `ExecCredential`     {#client-authentication-k8s-io-v1beta1-ExecCredential}\n    \n\n\n<p>ExecCredential is used by exec-based plugins to communicate credentials to\nHTTP transports.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>client.authentication.k8s.io/v1beta1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>ExecCredential</code></td></tr>\n    \n  \n<tr><td><code>spec</code> <B>[Required]</B><br/>\n<a href=\"#client-authentication-k8s-io-v1beta1-ExecCredentialSpec\"><code>ExecCredentialSpec</code></a>\n</td>\n<td>\n   <p>Spec holds information passed to the plugin by the transport.</p>\n</td>\n</tr>\n<tr><td><code>status</code><br/>\n<a href=\"#client-authentication-k8s-io-v1beta1-ExecCredentialStatus\"><code>ExecCredentialStatus</code></a>\n</td>\n<td>\n   <p>Status is filled in by the plugin and holds the credentials that the transport\nshould use to contact the API.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `Cluster`     {#client-authentication-k8s-io-v1beta1-Cluster}\n    \n\n**Appears in:**\n\n- [ExecCredentialSpec](#client-authentication-k8s-io-v1beta1-ExecCredentialSpec)\n\n\n<p>Cluster contains information to allow an exec plugin to communicate\nwith the kubernetes cluster being authenticated to.</p>\n<p>To ensure that this struct contains everything someone would need to communicate\nwith a kubernetes cluster (just like they would via a kubeconfig), the fields\nshould shadow &quot;k8s.io/client-go/tools/clientcmd/api/v1&quot;.Cluster, with the exception\nof CertificateAuthority, since CA data will always be passed to the plugin as bytes.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>server</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Server is the address of the kubernetes cluster (https://hostname:port).</p>\n</td>\n</tr>\n<tr><td><code>tls-server-name</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>TLSServerName is passed to the server for SNI and is used in the client to\ncheck server certificates against. If ServerName is empty, the hostname\nused to contact the server is used.</p>\n</td>\n</tr>\n<tr><td><code>insecure-skip-tls-verify</code><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>InsecureSkipTLSVerify skips the validity check for the server's certificate.\nThis will make your HTTPS connections insecure.</p>\n</td>\n</tr>\n<tr><td><code>certificate-authority-data</code><br/>\n<code>[]byte</code>\n</td>\n<td>\n   <p>CAData contains PEM-encoded certificate authority certificates.\nIf empty, system roots should be used.</p>\n</td>\n</tr>\n<tr><td><code>proxy-url</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>ProxyURL is the URL to the proxy to be used for all requests to this\ncluster.</p>\n</td>\n</tr>\n<tr><td><code>disable-compression</code><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>DisableCompression allows client to opt-out of response compression for all requests to the server. This is useful\nto speed up requests (specifically lists) when client-server network bandwidth is ample, by saving time on\ncompression (server-side) and decompression (client-side): https://github.com/kubernetes/kubernetes/issues/112296.</p>\n</td>\n</tr>\n<tr><td><code>config</code><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/runtime/#RawExtension\"><code>k8s.io/apimachinery/pkg/runtime.RawExtension</code></a>\n</td>\n<td>\n   <p>Config holds additional config data that is specific to the exec\nplugin with regards to the cluster being authenticated to.</p>\n<p>This data is sourced from the clientcmd Cluster object's\nextensions[client.authentication.k8s.io/exec] field:</p>\n<p>clusters:</p>\n<ul>\n<li>name: my-cluster\ncluster:\n...\nextensions:\n<ul>\n<li>name: client.authentication.k8s.io/exec  # reserved extension name for per cluster exec config\nextensio\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/client-authentication.v1beta1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": "Client Authentication (v1beta1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execcredential-client-authentication-k8s-io-v1beta1-execcredential",
      "type": "concept",
      "title": "`ExecCredential`     {#client-authentication-k8s-io-v1beta1-ExecCredential}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-client-authentication-k8s-io-v1beta1-cluster",
      "type": "concept",
      "title": "`Cluster`     {#client-authentication-k8s-io-v1beta1-Cluster}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
          "line_start": 1143,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execcredentialspec-client-authentication-k8s-io-v1beta1-execcredentialspec",
      "type": "concept",
      "title": "`ExecCredentialSpec`     {#client-authentication-k8s-io-v1beta1-ExecCredentialSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
          "line_start": 4553,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execcredentialstatus-client-authentication-k8s-io-v1beta1-execcredentialstatus",
      "type": "concept",
      "title": "`ExecCredentialStatus`     {#client-authentication-k8s-io-v1beta1-ExecCredentialStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
          "line_start": 5555,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/kubelet-config.v1beta1",
      "type": "page",
      "title": "Kubelet Configuration (v1beta1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [CredentialProviderConfig](#kubelet-config-k8s-io-v1beta1-CredentialProviderConfig)\n- [ImagePullIntent](#kubelet-config-k8s-io-v1beta1-ImagePullIntent)\n- [ImagePulledRecord](#kubelet-config-k8s-io-v1beta1-ImagePulledRecord)\n- [KubeletConfiguration](#kubelet-config-k8s-io-v1beta1-KubeletConfiguration)\n- [SerializedNodeConfigSource](#kubelet-config-k8s-io-v1beta1-SerializedNodeConfigSource)\n  \n    \n    \n\n## `FormatOptions`     {#FormatOptions}\n    \n\n**Appears in:**\n\n- [LoggingConfiguration](#LoggingConfiguration)\n\n\n<p>FormatOptions contains options for the different logging formats.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>text</code> <B>[Required]</B><br/>\n<a href=\"#TextOptions\"><code>TextOptions</code></a>\n</td>\n<td>\n   <p>[Alpha] Text contains options for logging format &quot;text&quot;.\nOnly available when the LoggingAlphaOptions feature gate is enabled.</p>\n</td>\n</tr>\n<tr><td><code>json</code> <B>[Required]</B><br/>\n<a href=\"#JSONOptions\"><code>JSONOptions</code></a>\n</td>\n<td>\n   <p>[Alpha] JSON contains options for logging format &quot;json&quot;.\nOnly available when the LoggingAlphaOptions feature gate is enabled.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `JSONOptions`     {#JSONOptions}\n    \n\n**Appears in:**\n\n- [FormatOptions](#FormatOptions)\n\n\n<p>JSONOptions contains options for logging format &quot;json&quot;.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>OutputRoutingOptions</code> <B>[Required]</B><br/>\n<a href=\"#OutputRoutingOptions\"><code>OutputRoutingOptions</code></a>\n</td>\n<td>(Members of <code>OutputRoutingOptions</code> are embedded into this type.)\n   <span class=\"text-muted\">No description provided.</span></td>\n</tr>\n</tbody>\n</table>\n\n## `LogFormatFactory`     {#LogFormatFactory}\n    \n\n\n<p>LogFormatFactory provides support for a certain additional,\nnon-default log format.</p>\n\n\n\n\n## `LoggingConfiguration`     {#LoggingConfiguration}\n    \n\n**Appears in:**\n\n- [KubeletConfiguration](#kubelet-config-k8s-io-v1beta1-KubeletConfiguration)\n\n\n<p>LoggingConfiguration contains logging options.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>format</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Format Flag specifies the structure of log messages.\ndefault value of format is <code>text</code></p>\n</td>\n</tr>\n<tr><td><code>flushFrequency</code> <B>[Required]</B><br/>\n<a href=\"#TimeOrMetaDuration\"><code>TimeOrMetaDuration</code></a>\n</td>\n<td>\n   <p>Maximum time between log flushes.\nIf a string, parsed as a duration (i.e. &quot;1s&quot;)\nIf an int, the maximum number of nanoseconds (i.e. 1s = 1000000000).\nIgnored if the selected logging backend writes log messages without buffering.</p>\n</td>\n</tr>\n<tr><td><code>verbosity</code> <B>[Required]</B><br/>\n<a href=\"#VerbosityLevel\"><code>VerbosityLevel</code></a>\n</td>\n<td>\n   <p>Verbosity is the threshold that determines which log messages are\nlogged. Default is zero which logs only the most important\nmessages. Higher values enable additional messages. Error messages\nare always logged.</p>\n</td>\n</tr>\n<tr><td><code>vmodule</code> <B>[Required]</B><br/>\n<a href=\"#VModuleConfiguration\"><code>VModuleConfiguration</code></a>\n</td>\n<td>\n   <p>VModule overrides the verbosity threshold for individual files.\nOnly supported for &quot;text&quot; log format.</p>\n</td>\n</tr>\n<tr><td><code>options</code> <B>[Required]</B><br/>\n<a href=\"#FormatOptions\"><code>FormatOptions</code></a>\n</td>\n<td>\n   <p>[Alpha] Options holds additional parameters that are specific\nto the different logging formats. Only the options for the selected\nformat get used, but all of them get validated.\nOnly available when the LoggingAlphaOptions feature gate is enabled.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `LoggingOptions`     {#L\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kubelet-config.v1beta1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet Configuration (v1beta1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:formatoptions-formatoptions",
      "type": "concept",
      "title": "`FormatOptions`     {#FormatOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 430,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jsonoptions-jsonoptions",
      "type": "concept",
      "title": "`JSONOptions`     {#JSONOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 1286,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:logformatfactory-logformatfactory",
      "type": "concept",
      "title": "`LogFormatFactory`     {#LogFormatFactory}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 1876,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:loggingconfiguration-loggingconfiguration",
      "type": "concept",
      "title": "`LoggingConfiguration`     {#LoggingConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:loggingoptions-loggingoptions",
      "type": "concept",
      "title": "`LoggingOptions`     {#LoggingOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 3974,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:outputroutingoptions-outputroutingoptions",
      "type": "concept",
      "title": "`OutputRoutingOptions`     {#OutputRoutingOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 4683,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:textoptions-textoptions",
      "type": "concept",
      "title": "`TextOptions`     {#TextOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 5842,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:timeormetaduration-timeormetaduration",
      "type": "concept",
      "title": "`TimeOrMetaDuration`     {#TimeOrMetaDuration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 6432,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tracingconfiguration-tracingconfiguration",
      "type": "concept",
      "title": "`TracingConfiguration`     {#TracingConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 7233,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:vmoduleconfiguration-vmoduleconfiguration",
      "type": "concept",
      "title": "`VModuleConfiguration`     {#VModuleConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 8199,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verbositylevel-verbositylevel",
      "type": "concept",
      "title": "`VerbosityLevel`     {#VerbosityLevel}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 8515,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialproviderconfig-kubelet-config-k8s-io-v1beta1-credentialproviderconfig",
      "type": "concept",
      "title": "`CredentialProviderConfig`     {#kubelet-config-k8s-io-v1beta1-CredentialProviderConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 8727,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepullintent-kubelet-config-k8s-io-v1beta1-imagepullintent",
      "type": "concept",
      "title": "`ImagePullIntent`     {#kubelet-config-k8s-io-v1beta1-ImagePullIntent}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 9980,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepulledrecord-kubelet-config-k8s-io-v1beta1-imagepulledrecord",
      "type": "concept",
      "title": "`ImagePulledRecord`     {#kubelet-config-k8s-io-v1beta1-ImagePulledRecord}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 10743,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeletconfiguration-kubelet-config-k8s-io-v1beta1-kubeletconfiguration",
      "type": "concept",
      "title": "`KubeletConfiguration`     {#kubelet-config-k8s-io-v1beta1-KubeletConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 12769,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serializednodeconfigsource-kubelet-config-k8s-io-v1beta1-serializednodeconfigsource",
      "type": "concept",
      "title": "`SerializedNodeConfigSource`     {#kubelet-config-k8s-io-v1beta1-SerializedNodeConfigSource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 60179,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:crashloopbackoffconfig-kubelet-config-k8s-io-v1beta1-crashloopbackoffconfig",
      "type": "concept",
      "title": "`CrashLoopBackOffConfig`     {#kubelet-config-k8s-io-v1beta1-CrashLoopBackOffConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 61142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialprovider-kubelet-config-k8s-io-v1beta1-credentialprovider",
      "type": "concept",
      "title": "`CredentialProvider`     {#kubelet-config-k8s-io-v1beta1-CredentialProvider}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 61871,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execenvvar-kubelet-config-k8s-io-v1beta1-execenvvar",
      "type": "concept",
      "title": "`ExecEnvVar`     {#kubelet-config-k8s-io-v1beta1-ExecEnvVar}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 65398,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepullcredentials-kubelet-config-k8s-io-v1beta1-imagepullcredentials",
      "type": "concept",
      "title": "`ImagePullCredentials`     {#kubelet-config-k8s-io-v1beta1-ImagePullCredentials}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 66102,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepullcredentialsverificationpolicy-kubelet-config-k8s-io-v1beta1-imagepullcredentialsverificationpolicy",
      "type": "concept",
      "title": "`ImagePullCredentialsVerificationPolicy`     {#kubelet-config-k8s-io-v1beta1-ImagePullCredentialsVerificationPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 67439,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepullsecret-kubelet-config-k8s-io-v1beta1-imagepullsecret",
      "type": "concept",
      "title": "`ImagePullSecret`     {#kubelet-config-k8s-io-v1beta1-ImagePullSecret}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 67834,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepullserviceaccount-kubelet-config-k8s-io-v1beta1-imagepullserviceaccount",
      "type": "concept",
      "title": "`ImagePullServiceAccount`     {#kubelet-config-k8s-io-v1beta1-ImagePullServiceAccount}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 69024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeletanonymousauthentication-kubelet-config-k8s-io-v1beta1-kubeletanonymousauthentication",
      "type": "concept",
      "title": "`KubeletAnonymousAuthentication`     {#kubelet-config-k8s-io-v1beta1-KubeletAnonymousAuthentication}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 70017,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeletauthentication-kubelet-config-k8s-io-v1beta1-kubeletauthentication",
      "type": "concept",
      "title": "`KubeletAuthentication`     {#kubelet-config-k8s-io-v1beta1-KubeletAuthentication}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 70722,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeletauthorization-kubelet-config-k8s-io-v1beta1-kubeletauthorization",
      "type": "concept",
      "title": "`KubeletAuthorization`     {#kubelet-config-k8s-io-v1beta1-KubeletAuthorization}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 71799,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeletauthorizationmode-kubelet-config-k8s-io-v1beta1-kubeletauthorizationmode",
      "type": "concept",
      "title": "`KubeletAuthorizationMode`     {#kubelet-config-k8s-io-v1beta1-KubeletAuthorizationMode}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 72745,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeletwebhookauthentication-kubelet-config-k8s-io-v1beta1-kubeletwebhookauthentication",
      "type": "concept",
      "title": "`KubeletWebhookAuthentication`     {#kubelet-config-k8s-io-v1beta1-KubeletWebhookAuthentication}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 72963,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeletwebhookauthorization-kubelet-config-k8s-io-v1beta1-kubeletwebhookauthorization",
      "type": "concept",
      "title": "`KubeletWebhookAuthorization`     {#kubelet-config-k8s-io-v1beta1-KubeletWebhookAuthorization}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 73707,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeletx509authentication-kubelet-config-k8s-io-v1beta1-kubeletx509authentication",
      "type": "concept",
      "title": "`KubeletX509Authentication`     {#kubelet-config-k8s-io-v1beta1-KubeletX509Authentication}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 74609,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memoryreservation-kubelet-config-k8s-io-v1beta1-memoryreservation",
      "type": "concept",
      "title": "`MemoryReservation`     {#kubelet-config-k8s-io-v1beta1-MemoryReservation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 75328,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memoryreservationpolicy-kubelet-config-k8s-io-v1beta1-memoryreservationpolicy",
      "type": "concept",
      "title": "`MemoryReservationPolicy`     {#kubelet-config-k8s-io-v1beta1-MemoryReservationPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 76160,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:memoryswapconfiguration-kubelet-config-k8s-io-v1beta1-memoryswapconfiguration",
      "type": "concept",
      "title": "`MemorySwapConfiguration`     {#kubelet-config-k8s-io-v1beta1-MemorySwapConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 76469,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcechangedetectionstrategy-kubelet-config-k8s-io-v1beta1-resourcechangedetectionstrategy",
      "type": "concept",
      "title": "`ResourceChangeDetectionStrategy`     {#kubelet-config-k8s-io-v1beta1-ResourceChangeDetectionStrategy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 77169,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:shutdowngraceperiodbypodpriority-kubelet-config-k8s-io-v1beta1-shutdowngraceperiodbypodpriority",
      "type": "concept",
      "title": "`ShutdownGracePeriodByPodPriority`     {#kubelet-config-k8s-io-v1beta1-ShutdownGracePeriodByPodPriority}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 77535,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:usernamespaces-kubelet-config-k8s-io-v1beta1-usernamespaces",
      "type": "concept",
      "title": "`UserNamespaces`     {#kubelet-config-k8s-io-v1beta1-UserNamespaces}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 78376,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/apiserver-webhookadmission.v1",
      "type": "page",
      "title": "WebhookAdmission Configuration (v1)",
      "summary": "",
      "body": "<p>Package v1 is the v1 version of the API.</p>\n\n\n## Resource Types \n\n\n- [WebhookAdmission](#apiserver-config-k8s-io-v1-WebhookAdmission)\n  \n\n## `WebhookAdmission`     {#apiserver-config-k8s-io-v1-WebhookAdmission}\n    \n\n\n<p>WebhookAdmission provides configuration for the webhook admission controller.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>apiserver.config.k8s.io/v1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>WebhookAdmission</code></td></tr>\n    \n  \n<tr><td><code>kubeConfigFile</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>KubeConfigFile is the path to the kubeconfig file.</p>\n</td>\n</tr>\n<tr><td><code>staticManifestsDir</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>StaticManifestsDir is the path to a directory containing static webhook\nconfigurations to be loaded at startup. Files with extensions .yaml,\n.yml, and .json are read. Only admissionregistration.k8s.io/v1\nValidatingWebhookConfiguration and MutatingWebhookConfiguration\nresources are supported.\nUsing this field requires the ManifestBasedAdmissionControlConfig\nfeature gate to be enabled.</p>\n</td>\n</tr>\n</tbody>\n</table>\n  ",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/apiserver-webhookadmission.v1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/apiserver-webhookadmission.v1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/apiserver-webhookadmission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-webhookadmission.v1/",
          "line_start": null,
          "line_end": null,
          "quote": "WebhookAdmission Configuration (v1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookadmission-apiserver-config-k8s-io-v1-webhookadmission",
      "type": "concept",
      "title": "`WebhookAdmission`     {#apiserver-config-k8s-io-v1-WebhookAdmission}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-webhookadmission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-webhookadmission.v1/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/kubeconfig.v1",
      "type": "page",
      "title": "kubeconfig (v1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [Config](#Config)\n  \n    \n    \n\n## `Config`     {#Config}\n    \n\n\n<p>Config holds the information needed to build connect to remote kubernetes clusters as a given user</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>/v1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>Config</code></td></tr>\n    \n  \n<tr><td><code>kind</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Legacy field from pkg/api/types.go TypeMeta.\nTODO(jlowdermilk): remove this after eliminating downstream dependencies.</p>\n</td>\n</tr>\n<tr><td><code>apiVersion</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Legacy field from pkg/api/types.go TypeMeta.\nTODO(jlowdermilk): remove this after eliminating downstream dependencies.</p>\n</td>\n</tr>\n<tr><td><code>preferences,omitzero</code> <B>[Required]</B><br/>\n<a href=\"#Preferences\"><code>Preferences</code></a>\n</td>\n<td>\n   <p>Preferences holds general information to be use for cli interactions\nDeprecated: this field is deprecated in v1.34. It is not used by any of the Kubernetes components.</p>\n</td>\n</tr>\n<tr><td><code>clusters</code> <B>[Required]</B><br/>\n<a href=\"#NamedCluster\"><code>[]NamedCluster</code></a>\n</td>\n<td>\n   <p>Clusters is a map of referencable names to cluster configs</p>\n</td>\n</tr>\n<tr><td><code>users</code> <B>[Required]</B><br/>\n<a href=\"#NamedAuthInfo\"><code>[]NamedAuthInfo</code></a>\n</td>\n<td>\n   <p>AuthInfos is a map of referencable names to user configs</p>\n</td>\n</tr>\n<tr><td><code>contexts</code> <B>[Required]</B><br/>\n<a href=\"#NamedContext\"><code>[]NamedContext</code></a>\n</td>\n<td>\n   <p>Contexts is a map of referencable names to context configs</p>\n</td>\n</tr>\n<tr><td><code>current-context</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>CurrentContext is the name of the context that you would like to use by default</p>\n</td>\n</tr>\n<tr><td><code>extensions</code><br/>\n<a href=\"#NamedExtension\"><code>[]NamedExtension</code></a>\n</td>\n<td>\n   <p>Extensions holds additional information. This is useful for extenders so that reads and writes don't clobber unknown fields</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `AuthInfo`     {#AuthInfo}\n    \n\n**Appears in:**\n\n- [NamedAuthInfo](#NamedAuthInfo)\n\n\n<p>AuthInfo contains information that describes identity information.  This is use to tell the kubernetes cluster who you are.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>client-certificate</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>ClientCertificate is the path to a client cert file for TLS.</p>\n</td>\n</tr>\n<tr><td><code>client-certificate-data</code><br/>\n<code>[]byte</code>\n</td>\n<td>\n   <p>ClientCertificateData contains PEM-encoded data from a client cert file for TLS. Overrides ClientCertificate</p>\n</td>\n</tr>\n<tr><td><code>client-key</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>ClientKey is the path to a client key file for TLS.</p>\n</td>\n</tr>\n<tr><td><code>client-key-data</code><br/>\n<code>[]byte</code>\n</td>\n<td>\n   <p>ClientKeyData contains PEM-encoded data from a client key file for TLS. Overrides ClientKey</p>\n</td>\n</tr>\n<tr><td><code>token</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Token is the bearer token for authentication to the kubernetes cluster.</p>\n</td>\n</tr>\n<tr><td><code>tokenFile</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>TokenFile is a pointer to a file that contains a bearer token (as described above).  If both Token and TokenFile are present,\nthe TokenFile will be periodically read and the last successfully read value takes precedence over Token.</p>\n</td>\n</tr>\n<tr><td><code>as</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Impersonate is the username to impersonate.  The name matches the flag.</p>\n</td>\n</tr>\n<tr><td><code>as-uid</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Imperson\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kubeconfig.v1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeconfig (v1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:config-config",
      "type": "concept",
      "title": "`Config`     {#Config}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authinfo-authinfo",
      "type": "concept",
      "title": "`AuthInfo`     {#AuthInfo}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 2260,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authproviderconfig-authproviderconfig",
      "type": "concept",
      "title": "`AuthProviderConfig`     {#AuthProviderConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 5395,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-cluster",
      "type": "concept",
      "title": "`Cluster`     {#Cluster}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 6020,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:context-context",
      "type": "concept",
      "title": "`Context`     {#Context}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 8665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execconfig-execconfig",
      "type": "concept",
      "title": "`ExecConfig`     {#ExecConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 9806,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execenvvar-execenvvar",
      "type": "concept",
      "title": "`ExecEnvVar`     {#ExecEnvVar}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 12550,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execinteractivemode-execinteractivemode",
      "type": "concept",
      "title": "`ExecInteractiveMode`     {#ExecInteractiveMode}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 13178,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namedauthinfo-namedauthinfo",
      "type": "concept",
      "title": "`NamedAuthInfo`     {#NamedAuthInfo}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 13412,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namedcluster-namedcluster",
      "type": "concept",
      "title": "`NamedCluster`     {#NamedCluster}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 13991,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namedcontext-namedcontext",
      "type": "concept",
      "title": "`NamedContext`     {#NamedContext}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 14572,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namedextension-namedextension",
      "type": "concept",
      "title": "`NamedExtension`     {#NamedExtension}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 15153,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preferences-preferences",
      "type": "concept",
      "title": "`Preferences`     {#Preferences}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 15945,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/client-authentication.v1",
      "type": "page",
      "title": "Client Authentication (v1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [ExecCredential](#client-authentication-k8s-io-v1-ExecCredential)\n  \n\n## `ExecCredential`     {#client-authentication-k8s-io-v1-ExecCredential}\n    \n\n\n<p>ExecCredential is used by exec-based plugins to communicate credentials to\nHTTP transports.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>client.authentication.k8s.io/v1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>ExecCredential</code></td></tr>\n    \n  \n<tr><td><code>spec</code> <B>[Required]</B><br/>\n<a href=\"#client-authentication-k8s-io-v1-ExecCredentialSpec\"><code>ExecCredentialSpec</code></a>\n</td>\n<td>\n   <p>Spec holds information passed to the plugin by the transport.</p>\n</td>\n</tr>\n<tr><td><code>status</code><br/>\n<a href=\"#client-authentication-k8s-io-v1-ExecCredentialStatus\"><code>ExecCredentialStatus</code></a>\n</td>\n<td>\n   <p>Status is filled in by the plugin and holds the credentials that the transport\nshould use to contact the API.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `Cluster`     {#client-authentication-k8s-io-v1-Cluster}\n    \n\n**Appears in:**\n\n- [ExecCredentialSpec](#client-authentication-k8s-io-v1-ExecCredentialSpec)\n\n\n<p>Cluster contains information to allow an exec plugin to communicate\nwith the kubernetes cluster being authenticated to.</p>\n<p>To ensure that this struct contains everything someone would need to communicate\nwith a kubernetes cluster (just like they would via a kubeconfig), the fields\nshould shadow &quot;k8s.io/client-go/tools/clientcmd/api/v1&quot;.Cluster, with the exception\nof CertificateAuthority, since CA data will always be passed to the plugin as bytes.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>server</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Server is the address of the kubernetes cluster (https://hostname:port).</p>\n</td>\n</tr>\n<tr><td><code>tls-server-name</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>TLSServerName is passed to the server for SNI and is used in the client to\ncheck server certificates against. If ServerName is empty, the hostname\nused to contact the server is used.</p>\n</td>\n</tr>\n<tr><td><code>insecure-skip-tls-verify</code><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>InsecureSkipTLSVerify skips the validity check for the server's certificate.\nThis will make your HTTPS connections insecure.</p>\n</td>\n</tr>\n<tr><td><code>certificate-authority-data</code><br/>\n<code>[]byte</code>\n</td>\n<td>\n   <p>CAData contains PEM-encoded certificate authority certificates.\nIf empty, system roots should be used.</p>\n</td>\n</tr>\n<tr><td><code>proxy-url</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>ProxyURL is the URL to the proxy to be used for all requests to this\ncluster.</p>\n</td>\n</tr>\n<tr><td><code>disable-compression</code><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>DisableCompression allows client to opt-out of response compression for all requests to the server. This is useful\nto speed up requests (specifically lists) when client-server network bandwidth is ample, by saving time on\ncompression (server-side) and decompression (client-side): https://github.com/kubernetes/kubernetes/issues/112296.</p>\n</td>\n</tr>\n<tr><td><code>config</code><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/runtime/#RawExtension\"><code>k8s.io/apimachinery/pkg/runtime.RawExtension</code></a>\n</td>\n<td>\n   <p>Config holds additional config data that is specific to the exec\nplugin with regards to the cluster being authenticated to.</p>\n<p>This data is sourced from the clientcmd Cluster object's\nextensions[client.authentication.k8s.io/exec] field:</p>\n<p>clusters:</p>\n<ul>\n<li>name: my-cluster\ncluster:\n...\nextensions:\n<ul>\n<li>name: client.authentication.k8s.io/exec  # reserved extension name for per cluster exec config\nextension:\naudience: 06e3fbd18de8  # arbitr\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/client-authentication.v1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Client Authentication (v1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execcredential-client-authentication-k8s-io-v1-execcredential",
      "type": "concept",
      "title": "`ExecCredential`     {#client-authentication-k8s-io-v1-ExecCredential}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-client-authentication-k8s-io-v1-cluster",
      "type": "concept",
      "title": "`Cluster`     {#client-authentication-k8s-io-v1-Cluster}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
          "line_start": 1118,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execcredentialspec-client-authentication-k8s-io-v1-execcredentialspec",
      "type": "concept",
      "title": "`ExecCredentialSpec`     {#client-authentication-k8s-io-v1-ExecCredentialSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
          "line_start": 4518,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execcredentialstatus-client-authentication-k8s-io-v1-execcredentialstatus",
      "type": "concept",
      "title": "`ExecCredentialStatus`     {#client-authentication-k8s-io-v1-ExecCredentialStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
          "line_start": 5505,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/kube-scheduler-config.v1",
      "type": "page",
      "title": "kube-scheduler Configuration (v1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [DefaultPreemptionArgs](#kubescheduler-config-k8s-io-v1-DefaultPreemptionArgs)\n- [DynamicResourcesArgs](#kubescheduler-config-k8s-io-v1-DynamicResourcesArgs)\n- [InterPodAffinityArgs](#kubescheduler-config-k8s-io-v1-InterPodAffinityArgs)\n- [KubeSchedulerConfiguration](#kubescheduler-config-k8s-io-v1-KubeSchedulerConfiguration)\n- [NodeAffinityArgs](#kubescheduler-config-k8s-io-v1-NodeAffinityArgs)\n- [NodeResourcesBalancedAllocationArgs](#kubescheduler-config-k8s-io-v1-NodeResourcesBalancedAllocationArgs)\n- [NodeResourcesFitArgs](#kubescheduler-config-k8s-io-v1-NodeResourcesFitArgs)\n- [PodTopologySpreadArgs](#kubescheduler-config-k8s-io-v1-PodTopologySpreadArgs)\n- [VolumeBindingArgs](#kubescheduler-config-k8s-io-v1-VolumeBindingArgs)\n  \n    \n    \n\n## `ClientConnectionConfiguration`     {#ClientConnectionConfiguration}\n    \n\n**Appears in:**\n\n- [KubeSchedulerConfiguration](#kubescheduler-config-k8s-io-v1-KubeSchedulerConfiguration)\n\n\n<p>ClientConnectionConfiguration contains details for constructing a client.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>kubeconfig</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>kubeconfig is the path to a KubeConfig file.</p>\n</td>\n</tr>\n<tr><td><code>acceptContentTypes</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>acceptContentTypes defines the Accept header sent by clients when connecting to a server, overriding the\ndefault value of 'application/json'. This field will control all connections to the server used by a particular\nclient.</p>\n</td>\n</tr>\n<tr><td><code>contentType</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>contentType is the content type used when sending data to the server from this client.</p>\n</td>\n</tr>\n<tr><td><code>qps</code> <B>[Required]</B><br/>\n<code>float32</code>\n</td>\n<td>\n   <p>qps controls the number of queries per second allowed for this connection.</p>\n</td>\n</tr>\n<tr><td><code>burst</code> <B>[Required]</B><br/>\n<code>int32</code>\n</td>\n<td>\n   <p>burst allows extra queries to accumulate when a client is exceeding its rate.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `DebuggingConfiguration`     {#DebuggingConfiguration}\n    \n\n**Appears in:**\n\n- [KubeSchedulerConfiguration](#kubescheduler-config-k8s-io-v1-KubeSchedulerConfiguration)\n\n\n<p>DebuggingConfiguration holds configuration for Debugging related features.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>enableProfiling</code> <B>[Required]</B><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>enableProfiling enables profiling via web interface host:port/debug/pprof/</p>\n</td>\n</tr>\n<tr><td><code>enableContentionProfiling</code> <B>[Required]</B><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>enableContentionProfiling enables block profiling, if\nenableProfiling is true.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `LeaderElectionConfiguration`     {#LeaderElectionConfiguration}\n    \n\n**Appears in:**\n\n- [KubeSchedulerConfiguration](#kubescheduler-config-k8s-io-v1-KubeSchedulerConfiguration)\n\n\n<p>LeaderElectionConfiguration defines the configuration of leader election\nclients for components that can run with leader election enabled.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>leaderElect</code> <B>[Required]</B><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>leaderElect enables a leader election client to gain leadership\nbefore executing the main loop. Enable this when running replicated\ncomponents for high availability.</p>\n</td>\n</tr>\n<tr><td><code>leaseDuration</code> <B>[Required]</B><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#Duration\"><code>meta/v1.Duration</code></a>\n</td>\n<td>\n   <p>leaseDuration is the duration that non-leader candidates will wait\nafter observing a leadership renewal un\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kube-scheduler-config.v1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-scheduler Configuration (v1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clientconnectionconfiguration-clientconnectionconfiguration",
      "type": "concept",
      "title": "`ClientConnectionConfiguration`     {#ClientConnectionConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 779,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debuggingconfiguration-debuggingconfiguration",
      "type": "concept",
      "title": "`DebuggingConfiguration`     {#DebuggingConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 2225,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:leaderelectionconfiguration-leaderelectionconfiguration",
      "type": "concept",
      "title": "`LeaderElectionConfiguration`     {#LeaderElectionConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 2997,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defaultpreemptionargs-kubescheduler-config-k8s-io-v1-defaultpreemptionargs",
      "type": "concept",
      "title": "`DefaultPreemptionArgs`     {#kubescheduler-config-k8s-io-v1-DefaultPreemptionArgs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 5737,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dynamicresourcesargs-kubescheduler-config-k8s-io-v1-dynamicresourcesargs",
      "type": "concept",
      "title": "`DynamicResourcesArgs`     {#kubescheduler-config-k8s-io-v1-DynamicResourcesArgs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 7194,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:interpodaffinityargs-kubescheduler-config-k8s-io-v1-interpodaffinityargs",
      "type": "concept",
      "title": "`InterPodAffinityArgs`     {#kubescheduler-config-k8s-io-v1-InterPodAffinityArgs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 10974,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeschedulerconfiguration-kubescheduler-config-k8s-io-v1-kubeschedulerconfiguration",
      "type": "concept",
      "title": "`KubeSchedulerConfiguration`     {#kubescheduler-config-k8s-io-v1-KubeSchedulerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 12037,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeaffinityargs-kubescheduler-config-k8s-io-v1-nodeaffinityargs",
      "type": "concept",
      "title": "`NodeAffinityArgs`     {#kubescheduler-config-k8s-io-v1-NodeAffinityArgs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 16396,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:noderesourcesbalancedallocationargs-kubescheduler-config-k8s-io-v1-noderesourcesbalancedallocationargs",
      "type": "concept",
      "title": "`NodeResourcesBalancedAllocationArgs`     {#kubescheduler-config-k8s-io-v1-NodeResourcesBalancedAllocationArgs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 17457,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:noderesourcesfitargs-kubescheduler-config-k8s-io-v1-noderesourcesfitargs",
      "type": "concept",
      "title": "`NodeResourcesFitArgs`     {#kubescheduler-config-k8s-io-v1-NodeResourcesFitArgs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 18311,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podtopologyspreadargs-kubescheduler-config-k8s-io-v1-podtopologyspreadargs",
      "type": "concept",
      "title": "`PodTopologySpreadArgs`     {#kubescheduler-config-k8s-io-v1-PodTopologySpreadArgs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 19885,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumebindingargs-kubescheduler-config-k8s-io-v1-volumebindingargs",
      "type": "concept",
      "title": "`VolumeBindingArgs`     {#kubescheduler-config-k8s-io-v1-VolumeBindingArgs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 21588,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extender-kubescheduler-config-k8s-io-v1-extender",
      "type": "concept",
      "title": "`Extender`     {#kubescheduler-config-k8s-io-v1-Extender}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 23205,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extendermanagedresource-kubescheduler-config-k8s-io-v1-extendermanagedresource",
      "type": "concept",
      "title": "`ExtenderManagedResource`     {#kubescheduler-config-k8s-io-v1-ExtenderManagedResource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 27288,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extendertlsconfig-kubescheduler-config-k8s-io-v1-extendertlsconfig",
      "type": "concept",
      "title": "`ExtenderTLSConfig`     {#kubescheduler-config-k8s-io-v1-ExtenderTLSConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 28048,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeschedulerprofile-kubescheduler-config-k8s-io-v1-kubeschedulerprofile",
      "type": "concept",
      "title": "`KubeSchedulerProfile`     {#kubescheduler-config-k8s-io-v1-KubeSchedulerProfile}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 30020,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:plugin-kubescheduler-config-k8s-io-v1-plugin",
      "type": "concept",
      "title": "`Plugin`     {#kubescheduler-config-k8s-io-v1-Plugin}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 32552,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pluginconfig-kubescheduler-config-k8s-io-v1-pluginconfig",
      "type": "concept",
      "title": "`PluginConfig`     {#kubescheduler-config-k8s-io-v1-PluginConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 33271,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pluginset-kubescheduler-config-k8s-io-v1-pluginset",
      "type": "concept",
      "title": "`PluginSet`     {#kubescheduler-config-k8s-io-v1-PluginSet}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 34320,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:plugins-kubescheduler-config-k8s-io-v1-plugins",
      "type": "concept",
      "title": "`Plugins`     {#kubescheduler-config-k8s-io-v1-Plugins}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 35536,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podtopologyspreadconstraintsdefaulting-kubescheduler-config-k8s-io-v1-podtopologyspreadconstraintsdefaulting",
      "type": "concept",
      "title": "`PodTopologySpreadConstraintsDefaulting`     {#kubescheduler-config-k8s-io-v1-PodTopologySpreadConstraintsDefaulting}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 41737,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:requestedtocapacityratioparam-kubescheduler-config-k8s-io-v1-requestedtocapacityratioparam",
      "type": "concept",
      "title": "`RequestedToCapacityRatioParam`     {#kubescheduler-config-k8s-io-v1-RequestedToCapacityRatioParam}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 42107,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcespec-kubescheduler-config-k8s-io-v1-resourcespec",
      "type": "concept",
      "title": "`ResourceSpec`     {#kubescheduler-config-k8s-io-v1-ResourceSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 42765,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scoringstrategy-kubescheduler-config-k8s-io-v1-scoringstrategy",
      "type": "concept",
      "title": "`ScoringStrategy`     {#kubescheduler-config-k8s-io-v1-ScoringStrategy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 43469,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scoringstrategytype-kubescheduler-config-k8s-io-v1-scoringstrategytype",
      "type": "concept",
      "title": "`ScoringStrategyType`     {#kubescheduler-config-k8s-io-v1-ScoringStrategyType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 44749,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:utilizationshapepoint-kubescheduler-config-k8s-io-v1-utilizationshapepoint",
      "type": "concept",
      "title": "`UtilizationShapePoint`     {#kubescheduler-config-k8s-io-v1-UtilizationShapePoint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 45039,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/kubelet-credentialprovider.v1",
      "type": "page",
      "title": "Kubelet CredentialProvider (v1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [CredentialProviderRequest](#credentialprovider-kubelet-k8s-io-v1-CredentialProviderRequest)\n- [CredentialProviderResponse](#credentialprovider-kubelet-k8s-io-v1-CredentialProviderResponse)\n  \n\n## `CredentialProviderRequest`     {#credentialprovider-kubelet-k8s-io-v1-CredentialProviderRequest}\n    \n\n\n<p>CredentialProviderRequest includes the image that the kubelet requires authentication for.\nKubelet will pass this request object to the plugin via stdin. In general, plugins should\nprefer responding with the same apiVersion they were sent.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>credentialprovider.kubelet.k8s.io/v1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>CredentialProviderRequest</code></td></tr>\n    \n  \n<tr><td><code>image</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>image is the container image that is being pulled as part of the\ncredential provider plugin request. Plugins may optionally parse the image\nto extract any information required to fetch credentials.</p>\n</td>\n</tr>\n<tr><td><code>serviceAccountToken</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>serviceAccountToken is the service account token bound to the pod for which\nthe image is being pulled. This token is only sent to the plugin if the\ntokenAttributes.serviceAccountTokenAudience field is configured in the kubelet's credential\nprovider configuration.</p>\n</td>\n</tr>\n<tr><td><code>serviceAccountAnnotations</code> <B>[Required]</B><br/>\n<code>map[string]string</code>\n</td>\n<td>\n   <p>serviceAccountAnnotations is a map of annotations on the service account bound to the\npod for which the image is being pulled. The list of annotations in the service account\nthat need to be passed to the plugin is configured in the kubelet's credential provider\nconfiguration.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `CredentialProviderResponse`     {#credentialprovider-kubelet-k8s-io-v1-CredentialProviderResponse}\n    \n\n\n<p>CredentialProviderResponse holds credentials that the kubelet should use for the specified\nimage provided in the original request. Kubelet will read the response from the plugin via stdout.\nThis response should be set to the same apiVersion as CredentialProviderRequest.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>credentialprovider.kubelet.k8s.io/v1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>CredentialProviderResponse</code></td></tr>\n    \n  \n<tr><td><code>cacheKeyType</code> <B>[Required]</B><br/>\n<a href=\"#credentialprovider-kubelet-k8s-io-v1-PluginCacheKeyType\"><code>PluginCacheKeyType</code></a>\n</td>\n<td>\n   <p>cacheKeyType indiciates the type of caching key to use based on the image provided\nin the request. There are three valid values for the cache key type: Image, Registry, and\nGlobal. If an invalid value is specified, the response will NOT be used by the kubelet.</p>\n</td>\n</tr>\n<tr><td><code>cacheDuration</code><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#Duration\"><code>meta/v1.Duration</code></a>\n</td>\n<td>\n   <p>cacheDuration indicates the duration the provided credentials should be cached for.\nThe kubelet will use this field to set the in-memory cache duration for credentials\nin the AuthConfig. If null, the kubelet will use defaultCacheDuration provided in\nCredentialProviderConfig. If set to 0, the kubelet will not cache the provided AuthConfig.</p>\n</td>\n</tr>\n<tr><td><code>auth</code><br/>\n<a href=\"#credentialprovider-kubelet-k8s-io-v1-AuthConfig\"><code>map[string]AuthConfig</code></a>\n</td>\n<td>\n   <p>auth is a map containing authentication information passed into the kubelet.\nEach key is a match image string (more on this below). The corresponding authConfig v\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kubelet-credentialprovider.v1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kubelet-credentialprovider.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet CredentialProvider (v1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialproviderrequest-credentialprovider-kubelet-k8s-io-v1-credentialproviderrequest",
      "type": "concept",
      "title": "`CredentialProviderRequest`     {#credentialprovider-kubelet-k8s-io-v1-CredentialProviderRequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-credentialprovider.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
          "line_start": 218,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialproviderresponse-credentialprovider-kubelet-k8s-io-v1-credentialproviderresponse",
      "type": "concept",
      "title": "`CredentialProviderResponse`     {#credentialprovider-kubelet-k8s-io-v1-CredentialProviderResponse}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-credentialprovider.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
          "line_start": 2006,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authconfig-credentialprovider-kubelet-k8s-io-v1-authconfig",
      "type": "concept",
      "title": "`AuthConfig`     {#credentialprovider-kubelet-k8s-io-v1-AuthConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-credentialprovider.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
          "line_start": 5573,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:plugincachekeytype-credentialprovider-kubelet-k8s-io-v1-plugincachekeytype",
      "type": "concept",
      "title": "`PluginCacheKeyType`     {#credentialprovider-kubelet-k8s-io-v1-PluginCacheKeyType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-credentialprovider.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
          "line_start": 6521,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/apiserver-config.v1beta1",
      "type": "page",
      "title": "kube-apiserver Configuration (v1beta1)",
      "summary": "",
      "body": "<p>Package v1beta1 is the v1beta1 version of the API.</p>\n\n\n## Resource Types \n\n\n- [AuthenticationConfiguration](#apiserver-k8s-io-v1beta1-AuthenticationConfiguration)\n- [AuthorizationConfiguration](#apiserver-k8s-io-v1beta1-AuthorizationConfiguration)\n- [EgressSelectorConfiguration](#apiserver-k8s-io-v1beta1-EgressSelectorConfiguration)\n- [TracingConfiguration](#apiserver-k8s-io-v1beta1-TracingConfiguration)\n  \n    \n    \n\n## `TracingConfiguration`     {#TracingConfiguration}\n    \n\n**Appears in:**\n\n- [KubeletConfiguration](#kubelet-config-k8s-io-v1beta1-KubeletConfiguration)\n\n- [TracingConfiguration](#apiserver-k8s-io-v1alpha1-TracingConfiguration)\n\n- [TracingConfiguration](#apiserver-k8s-io-v1beta1-TracingConfiguration)\n\n\n<p>TracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>endpoint</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Endpoint of the collector this component will report traces to.\nThe connection is insecure, and does not currently support TLS.\nRecommended is unset, and endpoint is the otlp grpc default, localhost:4317.</p>\n</td>\n</tr>\n<tr><td><code>samplingRatePerMillion</code><br/>\n<code>int32</code>\n</td>\n<td>\n   <p>SamplingRatePerMillion is the number of samples to collect per million spans.\nRecommended is unset. If unset, sampler respects its parent span's sampling\nrate, but otherwise never samples.</p>\n</td>\n</tr>\n</tbody>\n</table>\n  \n\n## `AuthenticationConfiguration`     {#apiserver-k8s-io-v1beta1-AuthenticationConfiguration}\n    \n\n\n<p>AuthenticationConfiguration provides versioned configuration for authentication.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>apiserver.k8s.io/v1beta1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>AuthenticationConfiguration</code></td></tr>\n    \n  \n<tr><td><code>jwt</code> <B>[Required]</B><br/>\n<a href=\"#apiserver-k8s-io-v1beta1-JWTAuthenticator\"><code>[]JWTAuthenticator</code></a>\n</td>\n<td>\n   <p>jwt is a list of authenticator to authenticate Kubernetes users using\nJWT compliant tokens. The authenticator will attempt to parse a raw ID token,\nverify it's been signed by the configured issuer. The public key to verify the\nsignature is discovered from the issuer's public endpoint using OIDC discovery.\nFor an incoming token, each JWT authenticator will be attempted in\nthe order in which it is specified in this list.  Note however that\nother authenticators may run before or after the JWT authenticators.\nThe specific position of JWT authenticators in relation to other\nauthenticators is neither defined nor stable across releases.  Since\neach JWT authenticator must have a unique issuer URL, at most one\nJWT authenticator will attempt to cryptographically validate the token.</p>\n<p>The minimum valid JWT payload must contain the following claims:\n{\n&quot;iss&quot;: &quot;https://issuer.example.com&quot;,\n&quot;aud&quot;: [&quot;audience&quot;],\n&quot;exp&quot;: 1234567890,\n&quot;&quot;: &quot;username&quot;\n}</p>\n</td>\n</tr>\n<tr><td><code>anonymous</code> <B>[Required]</B><br/>\n<a href=\"#apiserver-k8s-io-v1beta1-AnonymousAuthConfig\"><code>AnonymousAuthConfig</code></a>\n</td>\n<td>\n   <p>If present --anonymous-auth must not be set</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `AuthorizationConfiguration`     {#apiserver-k8s-io-v1beta1-AuthorizationConfiguration}\n    \n\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>apiserver.k8s.io/v1beta1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>AuthorizationConfiguration</code></td></tr>\n    \n  \n<tr><td><code>authorizers</code> <B>[Required]</B><br/>\n<a href=\"#apiserver-k8s-io-v1beta1-AuthorizerConfiguration\"\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/apiserver-config.v1beta1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-apiserver Configuration (v1beta1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authenticationconfiguration-apiserver-k8s-io-v1beta1-authenticationconfiguration",
      "type": "concept",
      "title": "`AuthenticationConfiguration`     {#apiserver-k8s-io-v1beta1-AuthenticationConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 1546,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorizationconfiguration-apiserver-k8s-io-v1beta1-authorizationconfiguration",
      "type": "concept",
      "title": "`AuthorizationConfiguration`     {#apiserver-k8s-io-v1beta1-AuthorizationConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 3504,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:egressselectorconfiguration-apiserver-k8s-io-v1beta1-egressselectorconfiguration",
      "type": "concept",
      "title": "`EgressSelectorConfiguration`     {#apiserver-k8s-io-v1beta1-EgressSelectorConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 4286,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tracingconfiguration-apiserver-k8s-io-v1beta1-tracingconfiguration",
      "type": "concept",
      "title": "`TracingConfiguration`     {#apiserver-k8s-io-v1beta1-TracingConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 5071,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:anonymousauthcondition-apiserver-k8s-io-v1beta1-anonymousauthcondition",
      "type": "concept",
      "title": "`AnonymousAuthCondition`     {#apiserver-k8s-io-v1beta1-AnonymousAuthCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 5861,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:anonymousauthconfig-apiserver-k8s-io-v1beta1-anonymousauthconfig",
      "type": "concept",
      "title": "`AnonymousAuthConfig`     {#apiserver-k8s-io-v1beta1-AnonymousAuthConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 6414,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:audiencematchpolicytype-apiserver-k8s-io-v1beta1-audiencematchpolicytype",
      "type": "concept",
      "title": "`AudienceMatchPolicyType`     {#apiserver-k8s-io-v1beta1-AudienceMatchPolicyType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 7244,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorizerconfiguration-apiserver-k8s-io-v1beta1-authorizerconfiguration",
      "type": "concept",
      "title": "`AuthorizerConfiguration`     {#apiserver-k8s-io-v1beta1-AuthorizerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 7510,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claimmappings-apiserver-k8s-io-v1beta1-claimmappings",
      "type": "concept",
      "title": "`ClaimMappings`     {#apiserver-k8s-io-v1beta1-ClaimMappings}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 8787,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claimorexpression-apiserver-k8s-io-v1beta1-claimorexpression",
      "type": "concept",
      "title": "`ClaimOrExpression`     {#apiserver-k8s-io-v1beta1-ClaimOrExpression}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 13142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claimvalidationrule-apiserver-k8s-io-v1beta1-claimvalidationrule",
      "type": "concept",
      "title": "`ClaimValidationRule`     {#apiserver-k8s-io-v1beta1-ClaimValidationRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 14298,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:connection-apiserver-k8s-io-v1beta1-connection",
      "type": "concept",
      "title": "`Connection`     {#apiserver-k8s-io-v1beta1-Connection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 16226,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:egressselection-apiserver-k8s-io-v1beta1-egressselection",
      "type": "concept",
      "title": "`EgressSelection`     {#apiserver-k8s-io-v1beta1-EgressSelection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 17127,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:egressselectortype-apiserver-k8s-io-v1beta1-egressselectortype",
      "type": "concept",
      "title": "`EgressSelectorType`     {#apiserver-k8s-io-v1beta1-EgressSelectorType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 18116,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extramapping-apiserver-k8s-io-v1beta1-extramapping",
      "type": "concept",
      "title": "`ExtraMapping`     {#apiserver-k8s-io-v1beta1-ExtraMapping}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 18389,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:issuer-apiserver-k8s-io-v1beta1-issuer",
      "type": "concept",
      "title": "`Issuer`     {#apiserver-k8s-io-v1beta1-Issuer}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 19993,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jwtauthenticator-apiserver-k8s-io-v1beta1-jwtauthenticator",
      "type": "concept",
      "title": "`JWTAuthenticator`     {#apiserver-k8s-io-v1beta1-JWTAuthenticator}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 25238,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prefixedclaimorexpression-apiserver-k8s-io-v1beta1-prefixedclaimorexpression",
      "type": "concept",
      "title": "`PrefixedClaimOrExpression`     {#apiserver-k8s-io-v1beta1-PrefixedClaimOrExpression}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 26888,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protocoltype-apiserver-k8s-io-v1beta1-protocoltype",
      "type": "concept",
      "title": "`ProtocolType`     {#apiserver-k8s-io-v1beta1-ProtocolType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 28315,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tcptransport-apiserver-k8s-io-v1beta1-tcptransport",
      "type": "concept",
      "title": "`TCPTransport`     {#apiserver-k8s-io-v1beta1-TCPTransport}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 28553,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tlsconfig-apiserver-k8s-io-v1beta1-tlsconfig",
      "type": "concept",
      "title": "`TLSConfig`     {#apiserver-k8s-io-v1beta1-TLSConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 29356,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:transport-apiserver-k8s-io-v1beta1-transport",
      "type": "concept",
      "title": "`Transport`     {#apiserver-k8s-io-v1beta1-Transport}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 30977,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:udstransport-apiserver-k8s-io-v1beta1-udstransport",
      "type": "concept",
      "title": "`UDSTransport`     {#apiserver-k8s-io-v1beta1-UDSTransport}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 31954,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uservalidationrule-apiserver-k8s-io-v1beta1-uservalidationrule",
      "type": "concept",
      "title": "`UserValidationRule`     {#apiserver-k8s-io-v1beta1-UserValidationRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 32604,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookconfiguration-apiserver-k8s-io-v1beta1-webhookconfiguration",
      "type": "concept",
      "title": "`WebhookConfiguration`     {#apiserver-k8s-io-v1beta1-WebhookConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 33891,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookconnectioninfo-apiserver-k8s-io-v1beta1-webhookconnectioninfo",
      "type": "concept",
      "title": "`WebhookConnectionInfo`     {#apiserver-k8s-io-v1beta1-WebhookConnectionInfo}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 38061,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookmatchcondition-apiserver-k8s-io-v1beta1-webhookmatchcondition",
      "type": "concept",
      "title": "`WebhookMatchCondition`     {#apiserver-k8s-io-v1beta1-WebhookMatchCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 39013,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/kubelet-config.v1",
      "type": "page",
      "title": "Kubelet Configuration (v1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [CredentialProviderConfig](#kubelet-config-k8s-io-v1-CredentialProviderConfig)\n  \n\n## `CredentialProviderConfig`     {#kubelet-config-k8s-io-v1-CredentialProviderConfig}\n    \n\n\n<p>CredentialProviderConfig is the configuration containing information about\neach exec credential provider. Kubelet reads this configuration from disk and enables\neach provider as specified by the CredentialProvider type.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>kubelet.config.k8s.io/v1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>CredentialProviderConfig</code></td></tr>\n    \n  \n<tr><td><code>providers</code> <B>[Required]</B><br/>\n<a href=\"#kubelet-config-k8s-io-v1-CredentialProvider\"><code>[]CredentialProvider</code></a>\n</td>\n<td>\n   <p>providers is a list of credential provider plugins that will be enabled by the kubelet.\nMultiple providers may match against a single image, in which case credentials\nfrom all providers will be returned to the kubelet. If multiple providers are called\nfor a single image, the results are combined. If providers return overlapping\nauth keys, the value from the provider earlier in this list is attempted first.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `CredentialProvider`     {#kubelet-config-k8s-io-v1-CredentialProvider}\n    \n\n**Appears in:**\n\n- [CredentialProviderConfig](#kubelet-config-k8s-io-v1-CredentialProviderConfig)\n\n\n<p>CredentialProvider represents an exec plugin to be invoked by the kubelet. The plugin is only\ninvoked when an image being pulled matches the images handled by the plugin (see matchImages).</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>name</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>name is the required name of the credential provider. It must match the name of the\nprovider executable as seen by the kubelet. The executable must be in the kubelet's\nbin directory (set by the --image-credential-provider-bin-dir flag).\nRequired to be unique across all providers.</p>\n</td>\n</tr>\n<tr><td><code>matchImages</code> <B>[Required]</B><br/>\n<code>[]string</code>\n</td>\n<td>\n   <p>matchImages is a required list of strings used to match against images in order to\ndetermine if this provider should be invoked. If one of the strings matches the\nrequested image from the kubelet, the plugin will be invoked and given a chance\nto provide credentials. Images are expected to contain the registry domain\nand URL path.</p>\n<p>Each entry in matchImages is a pattern which can optionally contain a port and a path.\nGlobs can be used in the domain, but not in the port or the path. Globs are supported\nas subdomains like '<em>.k8s.io' or 'k8s.</em>.io', and top-level-domains such as 'k8s.<em>'.\nMatching partial subdomains like 'app</em>.k8s.io' is also supported. Each glob can only match\na single subdomain segment, so *.io does not match *.k8s.io.</p>\n<p>A match exists between an image and a matchImage when all of the below are true:</p>\n<ul>\n<li>Both contain the same number of domain parts and each part matches.</li>\n<li>The URL path of an imageMatch must be a prefix of the target image URL path.</li>\n<li>If the imageMatch contains a port, then the port must match in the image as well.</li>\n</ul>\n<p>Example values of matchImages:</p>\n<ul>\n<li>123456789.dkr.ecr.us-east-1.amazonaws.com</li>\n<li>*.azurecr.io</li>\n<li>gcr.io</li>\n<li><em>.</em>.registry.io</li>\n<li>registry.io:8080/path</li>\n</ul>\n</td>\n</tr>\n<tr><td><code>defaultCacheDuration</code> <B>[Required]</B><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#Duration\"><code>meta/v1.Duration</code></a>\n</td>\n<td>\n   <p>defaultCacheDuration is the default duration the plugin will cache credentials in-memory\nif a cache duration is not provided in the plugin response. This field is requ\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kubelet-config.v1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet Configuration (v1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialproviderconfig-kubelet-config-k8s-io-v1-credentialproviderconfig",
      "type": "concept",
      "title": "`CredentialProviderConfig`     {#kubelet-config-k8s-io-v1-CredentialProviderConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 107,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialprovider-kubelet-config-k8s-io-v1-credentialprovider",
      "type": "concept",
      "title": "`CredentialProvider`     {#kubelet-config-k8s-io-v1-CredentialProvider}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 1345,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execenvvar-kubelet-config-k8s-io-v1-execenvvar",
      "type": "concept",
      "title": "`ExecEnvVar`     {#kubelet-config-k8s-io-v1-ExecEnvVar}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 6654,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccounttokenattributes-kubelet-config-k8s-io-v1-serviceaccounttokenattributes",
      "type": "concept",
      "title": "`ServiceAccountTokenAttributes`     {#kubelet-config-k8s-io-v1-ServiceAccountTokenAttributes}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 7348,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccounttokencachetype-kubelet-config-k8s-io-v1-serviceaccounttokencachetype",
      "type": "concept",
      "title": "`ServiceAccountTokenCacheType`     {#kubelet-config-k8s-io-v1-ServiceAccountTokenCacheType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 11182,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/kubelet-config.v1alpha1",
      "type": "page",
      "title": "Kubelet Configuration (v1alpha1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [CredentialProviderConfig](#kubelet-config-k8s-io-v1alpha1-CredentialProviderConfig)\n- [ImagePullIntent](#kubelet-config-k8s-io-v1alpha1-ImagePullIntent)\n- [ImagePulledRecord](#kubelet-config-k8s-io-v1alpha1-ImagePulledRecord)\n  \n\n## `CredentialProviderConfig`     {#kubelet-config-k8s-io-v1alpha1-CredentialProviderConfig}\n    \n\n\n<p>CredentialProviderConfig is the configuration containing information about\neach exec credential provider. Kubelet reads this configuration from disk and enables\neach provider as specified by the CredentialProvider type.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>kubelet.config.k8s.io/v1alpha1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>CredentialProviderConfig</code></td></tr>\n    \n  \n<tr><td><code>providers</code> <B>[Required]</B><br/>\n<a href=\"#kubelet-config-k8s-io-v1alpha1-CredentialProvider\"><code>[]CredentialProvider</code></a>\n</td>\n<td>\n   <p>providers is a list of credential provider plugins that will be enabled by the kubelet.\nMultiple providers may match against a single image, in which case credentials\nfrom all providers will be returned to the kubelet. If multiple providers are called\nfor a single image, the results are combined. If providers return overlapping\nauth keys, the value from the provider earlier in this list is attempted first.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `ImagePullIntent`     {#kubelet-config-k8s-io-v1alpha1-ImagePullIntent}\n    \n\n\n<p>ImagePullIntent is a record of the kubelet attempting to pull an image.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>kubelet.config.k8s.io/v1alpha1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>ImagePullIntent</code></td></tr>\n    \n  \n<tr><td><code>image</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Image is the image spec from a Container's <code>image</code> field.\nThe filename is a SHA-256 hash of this value. This is to avoid filename-unsafe\ncharacters like ':' and '/'.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `ImagePulledRecord`     {#kubelet-config-k8s-io-v1alpha1-ImagePulledRecord}\n    \n\n\n<p>ImagePullRecord is a record of an image that was pulled by the kubelet.</p>\n<p>If there are no records in the <code>kubernetesSecrets</code> field and both <code>nodeWideCredentials</code>\nand <code>anonymous</code> are <code>false</code>, credentials must be re-checked the next time an\nimage represented by this record is being requested.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>kubelet.config.k8s.io/v1alpha1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>ImagePulledRecord</code></td></tr>\n    \n  \n<tr><td><code>lastUpdatedTime</code> <B>[Required]</B><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.36/#time-v1-meta\"><code>meta/v1.Time</code></a>\n</td>\n<td>\n   <p>LastUpdatedTime is the time of the last update to this record</p>\n</td>\n</tr>\n<tr><td><code>imageRef</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>ImageRef is a reference to the image represented by this file as received\nfrom the CRI.\nThe filename is a SHA-256 hash of this value. This is to avoid filename-unsafe\ncharacters like ':' and '/'.</p>\n</td>\n</tr>\n<tr><td><code>credentialMapping</code> <B>[Required]</B><br/>\n<a href=\"#kubelet-config-k8s-io-v1alpha1-ImagePullCredentials\"><code>map[string]ImagePullCredentials</code></a>\n</td>\n<td>\n   <p>CredentialMapping maps <code>image</code> to the set of credentials that it was\npreviously pulled with.\n<code>image</code> in this case is the content of a pod's container <code>image</code> field that's\ngot its ta\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kubelet-config.v1alpha1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet Configuration (v1alpha1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialproviderconfig-kubelet-config-k8s-io-v1alpha1-credentialproviderconfig",
      "type": "concept",
      "title": "`CredentialProviderConfig`     {#kubelet-config-k8s-io-v1alpha1-CredentialProviderConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 255,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepullintent-kubelet-config-k8s-io-v1alpha1-imagepullintent",
      "type": "concept",
      "title": "`ImagePullIntent`     {#kubelet-config-k8s-io-v1alpha1-ImagePullIntent}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 1511,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepulledrecord-kubelet-config-k8s-io-v1alpha1-imagepulledrecord",
      "type": "concept",
      "title": "`ImagePulledRecord`     {#kubelet-config-k8s-io-v1alpha1-ImagePulledRecord}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 2276,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialprovider-kubelet-config-k8s-io-v1alpha1-credentialprovider",
      "type": "concept",
      "title": "`CredentialProvider`     {#kubelet-config-k8s-io-v1alpha1-CredentialProvider}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 4305,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:execenvvar-kubelet-config-k8s-io-v1alpha1-execenvvar",
      "type": "concept",
      "title": "`ExecEnvVar`     {#kubelet-config-k8s-io-v1alpha1-ExecEnvVar}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 7950,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepullcredentials-kubelet-config-k8s-io-v1alpha1-imagepullcredentials",
      "type": "concept",
      "title": "`ImagePullCredentials`     {#kubelet-config-k8s-io-v1alpha1-ImagePullCredentials}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 8656,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepullsecret-kubelet-config-k8s-io-v1alpha1-imagepullsecret",
      "type": "concept",
      "title": "`ImagePullSecret`     {#kubelet-config-k8s-io-v1alpha1-ImagePullSecret}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 9996,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepullserviceaccount-kubelet-config-k8s-io-v1alpha1-imagepullserviceaccount",
      "type": "concept",
      "title": "`ImagePullServiceAccount`     {#kubelet-config-k8s-io-v1alpha1-ImagePullServiceAccount}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 11188,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/apiserver-eventratelimit.v1alpha1",
      "type": "page",
      "title": "Event Rate Limit Configuration (v1alpha1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [Configuration](#eventratelimit-admission-k8s-io-v1alpha1-Configuration)\n  \n\n## `Configuration`     {#eventratelimit-admission-k8s-io-v1alpha1-Configuration}\n    \n\n\n<p>Configuration provides configuration for the EventRateLimit admission\ncontroller.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>eventratelimit.admission.k8s.io/v1alpha1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>Configuration</code></td></tr>\n    \n  \n<tr><td><code>limits</code> <B>[Required]</B><br/>\n<a href=\"#eventratelimit-admission-k8s-io-v1alpha1-Limit\"><code>[]Limit</code></a>\n</td>\n<td>\n   <p>limits are the limits to place on event queries received.\nLimits can be placed on events received server-wide, per namespace,\nper user, and per source+object.\nAt least one limit is required.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `Limit`     {#eventratelimit-admission-k8s-io-v1alpha1-Limit}\n    \n\n**Appears in:**\n\n- [Configuration](#eventratelimit-admission-k8s-io-v1alpha1-Configuration)\n\n\n<p>Limit is the configuration for a particular limit type</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>type</code> <B>[Required]</B><br/>\n<a href=\"#eventratelimit-admission-k8s-io-v1alpha1-LimitType\"><code>LimitType</code></a>\n</td>\n<td>\n   <p>type is the type of limit to which this configuration applies</p>\n</td>\n</tr>\n<tr><td><code>qps</code> <B>[Required]</B><br/>\n<code>int32</code>\n</td>\n<td>\n   <p>qps is the number of event queries per second that are allowed for this\ntype of limit. The qps and burst fields are used together to determine if\na particular event query is accepted. The qps determines how many queries\nare accepted once the burst amount of queries has been exhausted.</p>\n</td>\n</tr>\n<tr><td><code>burst</code> <B>[Required]</B><br/>\n<code>int32</code>\n</td>\n<td>\n   <p>burst is the burst number of event queries that are allowed for this type\nof limit. The qps and burst fields are used together to determine if a\nparticular event query is accepted. The burst determines the maximum size\nof the allowance granted for a particular bucket. For example, if the burst\nis 10 and the qps is 3, then the admission control will accept 10 queries\nbefore blocking any queries. Every second, 3 more queries will be allowed.\nIf some of that allowance is not used, then it will roll over to the next\nsecond, until the maximum allowance of 10 is reached.</p>\n</td>\n</tr>\n<tr><td><code>cacheSize</code><br/>\n<code>int32</code>\n</td>\n<td>\n   <p>cacheSize is the size of the LRU cache for this type of limit. If a bucket\nis evicted from the cache, then the allowance for that bucket is reset. If\nmore queries are later received for an evicted bucket, then that bucket\nwill re-enter the cache with a clean slate, giving that bucket a full\nallowance of burst queries.</p>\n<p>The default cache size is 4096.</p>\n<p>If limitType is 'server', then cacheSize is ignored.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `LimitType`     {#eventratelimit-admission-k8s-io-v1alpha1-LimitType}\n    \n(Alias of `string`)\n\n**Appears in:**\n\n- [Limit](#eventratelimit-admission-k8s-io-v1alpha1-Limit)\n\n\n<p>LimitType is the type of the limit (e.g., per-namespace)</p>\n\n\n\n  ",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/apiserver-eventratelimit.v1alpha1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/apiserver-eventratelimit.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/",
          "line_start": null,
          "line_end": null,
          "quote": "Event Rate Limit Configuration (v1alpha1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuration-eventratelimit-admission-k8s-io-v1alpha1-configuration",
      "type": "concept",
      "title": "`Configuration`     {#eventratelimit-admission-k8s-io-v1alpha1-Configuration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-eventratelimit.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limit-eventratelimit-admission-k8s-io-v1alpha1-limit",
      "type": "concept",
      "title": "`Limit`     {#eventratelimit-admission-k8s-io-v1alpha1-Limit}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-eventratelimit.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/",
          "line_start": 968,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limittype-eventratelimit-admission-k8s-io-v1alpha1-limittype",
      "type": "concept",
      "title": "`LimitType`     {#eventratelimit-admission-k8s-io-v1alpha1-LimitType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-eventratelimit.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/",
          "line_start": 3125,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "type": "page",
      "title": "kube-controller-manager Configuration (v1alpha1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [CloudControllerManagerConfiguration](#cloudcontrollermanager-config-k8s-io-v1alpha1-CloudControllerManagerConfiguration)\n- [LeaderMigrationConfiguration](#controllermanager-config-k8s-io-v1alpha1-LeaderMigrationConfiguration)\n- [KubeControllerManagerConfiguration](#kubecontrollermanager-config-k8s-io-v1alpha1-KubeControllerManagerConfiguration)\n  \n    \n    \n\n## `ClientConnectionConfiguration`     {#ClientConnectionConfiguration}\n    \n\n**Appears in:**\n\n- [KubeSchedulerConfiguration](#kubescheduler-config-k8s-io-v1-KubeSchedulerConfiguration)\n\n- [GenericControllerManagerConfiguration](#controllermanager-config-k8s-io-v1alpha1-GenericControllerManagerConfiguration)\n\n\n<p>ClientConnectionConfiguration contains details for constructing a client.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>kubeconfig</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>kubeconfig is the path to a KubeConfig file.</p>\n</td>\n</tr>\n<tr><td><code>acceptContentTypes</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>acceptContentTypes defines the Accept header sent by clients when connecting to a server, overriding the\ndefault value of 'application/json'. This field will control all connections to the server used by a particular\nclient.</p>\n</td>\n</tr>\n<tr><td><code>contentType</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>contentType is the content type used when sending data to the server from this client.</p>\n</td>\n</tr>\n<tr><td><code>qps</code> <B>[Required]</B><br/>\n<code>float32</code>\n</td>\n<td>\n   <p>qps controls the number of queries per second allowed for this connection.</p>\n</td>\n</tr>\n<tr><td><code>burst</code> <B>[Required]</B><br/>\n<code>int32</code>\n</td>\n<td>\n   <p>burst allows extra queries to accumulate when a client is exceeding its rate.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `DebuggingConfiguration`     {#DebuggingConfiguration}\n    \n\n**Appears in:**\n\n- [KubeSchedulerConfiguration](#kubescheduler-config-k8s-io-v1-KubeSchedulerConfiguration)\n\n- [GenericControllerManagerConfiguration](#controllermanager-config-k8s-io-v1alpha1-GenericControllerManagerConfiguration)\n\n\n<p>DebuggingConfiguration holds configuration for Debugging related features.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>enableProfiling</code> <B>[Required]</B><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>enableProfiling enables profiling via web interface host:port/debug/pprof/</p>\n</td>\n</tr>\n<tr><td><code>enableContentionProfiling</code> <B>[Required]</B><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>enableContentionProfiling enables block profiling, if\nenableProfiling is true.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `LeaderElectionConfiguration`     {#LeaderElectionConfiguration}\n    \n\n**Appears in:**\n\n- [KubeSchedulerConfiguration](#kubescheduler-config-k8s-io-v1-KubeSchedulerConfiguration)\n\n- [GenericControllerManagerConfiguration](#controllermanager-config-k8s-io-v1alpha1-GenericControllerManagerConfiguration)\n\n\n<p>LeaderElectionConfiguration defines the configuration of leader election\nclients for components that can run with leader election enabled.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>leaderElect</code> <B>[Required]</B><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>leaderElect enables a leader election client to gain leadership\nbefore executing the main loop. Enable this when running replicated\ncomponents for high availability.</p>\n</td>\n</tr>\n<tr><td><code>leaseDuration</code> <B>[Required]</B><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#Duration\"><code>meta/v1.Duration</code></a>\n</td>\n<td>\n   <p>leaseDuration is the duration that non-leader candidates will wait\nafter observing a leadership renewal until attempting to acq\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kube-controller-manager-config.v1alpha1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-controller-manager Configuration (v1alpha1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodecontrollerconfiguration-nodecontrollerconfiguration",
      "type": "concept",
      "title": "`NodeControllerConfiguration`     {#NodeControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 5713,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:servicecontrollerconfiguration-servicecontrollerconfiguration",
      "type": "concept",
      "title": "`ServiceControllerConfiguration`     {#ServiceControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 6605,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cloudcontrollermanagerconfiguration-cloudcontrollermanager-config-k8s-io-v1alpha1-cloudcontrollermanagerconfiguration",
      "type": "concept",
      "title": "`CloudControllerManagerConfiguration`     {#cloudcontrollermanager-config-k8s-io-v1alpha1-CloudControllerManagerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 7461,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cloudproviderconfiguration-cloudcontrollermanager-config-k8s-io-v1alpha1-cloudproviderconfiguration",
      "type": "concept",
      "title": "`CloudProviderConfiguration`     {#cloudcontrollermanager-config-k8s-io-v1alpha1-CloudProviderConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 9811,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubecloudsharedconfiguration-cloudcontrollermanager-config-k8s-io-v1alpha1-kubecloudsharedconfiguration",
      "type": "concept",
      "title": "`KubeCloudSharedConfiguration`     {#cloudcontrollermanager-config-k8s-io-v1alpha1-KubeCloudSharedConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 10598,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookconfiguration-cloudcontrollermanager-config-k8s-io-v1alpha1-webhookconfiguration",
      "type": "concept",
      "title": "`WebhookConfiguration`     {#cloudcontrollermanager-config-k8s-io-v1alpha1-WebhookConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 14212,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:leadermigrationconfiguration-controllermanager-config-k8s-io-v1alpha1-leadermigrationconfiguration",
      "type": "concept",
      "title": "`LeaderMigrationConfiguration`     {#controllermanager-config-k8s-io-v1alpha1-LeaderMigrationConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 15030,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controllerleaderconfiguration-controllermanager-config-k8s-io-v1alpha1-controllerleaderconfiguration",
      "type": "concept",
      "title": "`ControllerLeaderConfiguration`     {#controllermanager-config-k8s-io-v1alpha1-ControllerLeaderConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 16492,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:genericcontrollermanagerconfiguration-controllermanager-config-k8s-io-v1alpha1-genericcontrollermanagerconfiguration",
      "type": "concept",
      "title": "`GenericControllerManagerConfiguration`     {#controllermanager-config-k8s-io-v1alpha1-GenericControllerManagerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 17525,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubecontrollermanagerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-kubecontrollermanagerconfiguration",
      "type": "concept",
      "title": "`KubeControllerManagerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-KubeControllerManagerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 20743,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:attachdetachcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-attachdetachcontrollerconfiguration",
      "type": "concept",
      "title": "`AttachDetachControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-AttachDetachControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 31904,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csrsigningconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-csrsigningconfiguration",
      "type": "concept",
      "title": "`CSRSigningConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-CSRSigningConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 33397,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:csrsigningcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-csrsigningcontrollerconfiguration",
      "type": "concept",
      "title": "`CSRSigningControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-CSRSigningControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 34264,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cronjobcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-cronjobcontrollerconfiguration",
      "type": "concept",
      "title": "`CronJobControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-CronJobControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 37103,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:daemonsetcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-daemonsetcontrollerconfiguration",
      "type": "concept",
      "title": "`DaemonSetControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-DaemonSetControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 37867,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploymentcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-deploymentcontrollerconfiguration",
      "type": "concept",
      "title": "`DeploymentControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-DeploymentControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 38652,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deprecatedcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-deprecatedcontrollerconfiguration",
      "type": "concept",
      "title": "`DeprecatedControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-DeprecatedControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 39446,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:devicetaintevictioncontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-devicetaintevictioncontrollerconfiguration",
      "type": "concept",
      "title": "`DeviceTaintEvictionControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-DeviceTaintEvictionControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 39795,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-endpointcontrollerconfiguration",
      "type": "concept",
      "title": "`EndpointControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-EndpointControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 40662,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslicecontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-endpointslicecontrollerconfiguration",
      "type": "concept",
      "title": "`EndpointSliceControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-EndpointSliceControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 41897,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:endpointslicemirroringcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-endpointslicemirroringcontrollerconfiguration",
      "type": "concept",
      "title": "`EndpointSliceMirroringControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-EndpointSliceMirroringControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 43489,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ephemeralvolumecontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-ephemeralvolumecontrollerconfiguration",
      "type": "concept",
      "title": "`EphemeralVolumeControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-EphemeralVolumeControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 45254,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:garbagecollectorcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-garbagecollectorcontrollerconfiguration",
      "type": "concept",
      "title": "`GarbageCollectorControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-GarbageCollectorControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 46099,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:groupresource-kubecontrollermanager-config-k8s-io-v1alpha1-groupresource",
      "type": "concept",
      "title": "`GroupResource`     {#kubecontrollermanager-config-k8s-io-v1alpha1-GroupResource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 47400,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hpacontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-hpacontrollerconfiguration",
      "type": "concept",
      "title": "`HPAControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-HPAControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 48134,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jobcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-jobcontrollerconfiguration",
      "type": "concept",
      "title": "`JobControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-JobControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 50766,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:legacysatokencleanerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-legacysatokencleanerconfiguration",
      "type": "concept",
      "title": "`LegacySATokenCleanerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-LegacySATokenCleanerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 51504,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespacecontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-namespacecontrollerconfiguration",
      "type": "concept",
      "title": "`NamespaceControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-NamespaceControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 52322,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodeipamcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-nodeipamcontrollerconfiguration",
      "type": "concept",
      "title": "`NodeIPAMControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-NodeIPAMControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 53313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodelifecyclecontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-nodelifecyclecontrollerconfiguration",
      "type": "concept",
      "title": "`NodeLifecycleControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-NodeLifecycleControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 54799,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumebindercontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-persistentvolumebindercontrollerconfiguration",
      "type": "concept",
      "title": "`PersistentVolumeBinderControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-PersistentVolumeBinderControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 57526,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumerecyclerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-persistentvolumerecyclerconfiguration",
      "type": "concept",
      "title": "`PersistentVolumeRecyclerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-PersistentVolumeRecyclerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 58655,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podgccontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-podgccontrollerconfiguration",
      "type": "concept",
      "title": "`PodGCControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-PodGCControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 60951,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicasetcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-replicasetcontrollerconfiguration",
      "type": "concept",
      "title": "`ReplicaSetControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-ReplicaSetControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 61757,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:replicationcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-replicationcontrollerconfiguration",
      "type": "concept",
      "title": "`ReplicationControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-ReplicationControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 62538,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceclaimcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-resourceclaimcontrollerconfiguration",
      "type": "concept",
      "title": "`ResourceClaimControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-ResourceClaimControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 63332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourcequotacontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-resourcequotacontrollerconfiguration",
      "type": "concept",
      "title": "`ResourceQuotaControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-ResourceQuotaControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 64174,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sacontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-sacontrollerconfiguration",
      "type": "concept",
      "title": "`SAControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-SAControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 65282,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statefulsetcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-statefulsetcontrollerconfiguration",
      "type": "concept",
      "title": "`StatefulSetControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-StatefulSetControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 66471,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ttlafterfinishedcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-ttlafterfinishedcontrollerconfiguration",
      "type": "concept",
      "title": "`TTLAfterFinishedControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-TTLAfterFinishedControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 67273,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingadmissionpolicystatuscontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-validatingadmissionpolicystatuscontrollerconfiguration",
      "type": "concept",
      "title": "`ValidatingAdmissionPolicyStatusControllerConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-ValidatingAdmissionPolicyStatusControllerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 68017,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:volumeconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-volumeconfiguration",
      "type": "concept",
      "title": "`VolumeConfiguration`     {#kubecontrollermanager-config-k8s-io-v1alpha1-VolumeConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 68901,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "type": "page",
      "title": "kube-proxy Configuration (v1alpha1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [KubeProxyConfiguration](#kubeproxy-config-k8s-io-v1alpha1-KubeProxyConfiguration)\n  \n    \n    \n\n## `FormatOptions`     {#FormatOptions}\n    \n\n**Appears in:**\n\n- [LoggingConfiguration](#LoggingConfiguration)\n\n\n<p>FormatOptions contains options for the different logging formats.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>text</code> <B>[Required]</B><br/>\n<a href=\"#TextOptions\"><code>TextOptions</code></a>\n</td>\n<td>\n   <p>[Alpha] Text contains options for logging format &quot;text&quot;.\nOnly available when the LoggingAlphaOptions feature gate is enabled.</p>\n</td>\n</tr>\n<tr><td><code>json</code> <B>[Required]</B><br/>\n<a href=\"#JSONOptions\"><code>JSONOptions</code></a>\n</td>\n<td>\n   <p>[Alpha] JSON contains options for logging format &quot;json&quot;.\nOnly available when the LoggingAlphaOptions feature gate is enabled.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `JSONOptions`     {#JSONOptions}\n    \n\n**Appears in:**\n\n- [FormatOptions](#FormatOptions)\n\n\n<p>JSONOptions contains options for logging format &quot;json&quot;.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>OutputRoutingOptions</code> <B>[Required]</B><br/>\n<a href=\"#OutputRoutingOptions\"><code>OutputRoutingOptions</code></a>\n</td>\n<td>(Members of <code>OutputRoutingOptions</code> are embedded into this type.)\n   <span class=\"text-muted\">No description provided.</span></td>\n</tr>\n</tbody>\n</table>\n\n## `LogFormatFactory`     {#LogFormatFactory}\n    \n\n\n<p>LogFormatFactory provides support for a certain additional,\nnon-default log format.</p>\n\n\n\n\n## `LoggingConfiguration`     {#LoggingConfiguration}\n    \n\n**Appears in:**\n\n- [KubeProxyConfiguration](#kubeproxy-config-k8s-io-v1alpha1-KubeProxyConfiguration)\n\n- [KubeletConfiguration](#kubelet-config-k8s-io-v1beta1-KubeletConfiguration)\n\n\n<p>LoggingConfiguration contains logging options.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>format</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Format Flag specifies the structure of log messages.\ndefault value of format is <code>text</code></p>\n</td>\n</tr>\n<tr><td><code>flushFrequency</code> <B>[Required]</B><br/>\n<a href=\"#TimeOrMetaDuration\"><code>TimeOrMetaDuration</code></a>\n</td>\n<td>\n   <p>Maximum time between log flushes.\nIf a string, parsed as a duration (i.e. &quot;1s&quot;)\nIf an int, the maximum number of nanoseconds (i.e. 1s = 1000000000).\nIgnored if the selected logging backend writes log messages without buffering.</p>\n</td>\n</tr>\n<tr><td><code>verbosity</code> <B>[Required]</B><br/>\n<a href=\"#VerbosityLevel\"><code>VerbosityLevel</code></a>\n</td>\n<td>\n   <p>Verbosity is the threshold that determines which log messages are\nlogged. Default is zero which logs only the most important\nmessages. Higher values enable additional messages. Error messages\nare always logged.</p>\n</td>\n</tr>\n<tr><td><code>vmodule</code> <B>[Required]</B><br/>\n<a href=\"#VModuleConfiguration\"><code>VModuleConfiguration</code></a>\n</td>\n<td>\n   <p>VModule overrides the verbosity threshold for individual files.\nOnly supported for &quot;text&quot; log format.</p>\n</td>\n</tr>\n<tr><td><code>options</code> <B>[Required]</B><br/>\n<a href=\"#FormatOptions\"><code>FormatOptions</code></a>\n</td>\n<td>\n   <p>[Alpha] Options holds additional parameters that are specific\nto the different logging formats. Only the options for the selected\nformat get used, but all of them get validated.\nOnly available when the LoggingAlphaOptions feature gate is enabled.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `LoggingOptions`     {#LoggingOptions}\n    \n\n\n<p>LoggingOptions can be used with ValidateAndApplyWithOptions to override\ncertain global defaults.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kube-proxy-config.v1alpha1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-proxy Configuration (v1alpha1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeproxyconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxyconfiguration",
      "type": "concept",
      "title": "`KubeProxyConfiguration`     {#kubeproxy-config-k8s-io-v1alpha1-KubeProxyConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 12964,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:detectlocalconfiguration-kubeproxy-config-k8s-io-v1alpha1-detectlocalconfiguration",
      "type": "concept",
      "title": "`DetectLocalConfiguration`     {#kubeproxy-config-k8s-io-v1alpha1-DetectLocalConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 20339,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeproxyconntrackconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxyconntrackconfiguration",
      "type": "concept",
      "title": "`KubeProxyConntrackConfiguration`     {#kubeproxy-config-k8s-io-v1alpha1-KubeProxyConntrackConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 21405,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeproxyiptablesconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxyiptablesconfiguration",
      "type": "concept",
      "title": "`KubeProxyIPTablesConfiguration`     {#kubeproxy-config-k8s-io-v1alpha1-KubeProxyIPTablesConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 23995,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeproxyipvsconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxyipvsconfiguration",
      "type": "concept",
      "title": "`KubeProxyIPVSConfiguration`     {#kubeproxy-config-k8s-io-v1alpha1-KubeProxyIPVSConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 26129,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeproxynftablesconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxynftablesconfiguration",
      "type": "concept",
      "title": "`KubeProxyNFTablesConfiguration`     {#kubeproxy-config-k8s-io-v1alpha1-KubeProxyNFTablesConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 28949,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeproxywinkernelconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxywinkernelconfiguration",
      "type": "concept",
      "title": "`KubeProxyWinkernelConfiguration`     {#kubeproxy-config-k8s-io-v1alpha1-KubeProxyWinkernelConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 30692,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:localmode-kubeproxy-config-k8s-io-v1alpha1-localmode",
      "type": "concept",
      "title": "`LocalMode`     {#kubeproxy-config-k8s-io-v1alpha1-LocalMode}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 32131,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:proxymode-kubeproxy-config-k8s-io-v1alpha1-proxymode",
      "type": "concept",
      "title": "`ProxyMode`     {#kubeproxy-config-k8s-io-v1alpha1-ProxyMode}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 32402,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/apiserver-admission.v1",
      "type": "page",
      "title": "kube-apiserver Admission (v1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [AdmissionReview](#admission-k8s-io-v1-AdmissionReview)\n  \n\n## `AdmissionReview`     {#admission-k8s-io-v1-AdmissionReview}\n    \n\n\n<p>AdmissionReview describes an admission review request/response.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>admission.k8s.io/v1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>AdmissionReview</code></td></tr>\n    \n  \n<tr><td><code>request</code><br/>\n<a href=\"#admission-k8s-io-v1-AdmissionRequest\"><code>AdmissionRequest</code></a>\n</td>\n<td>\n   <p>request describes the attributes for the admission request.</p>\n</td>\n</tr>\n<tr><td><code>response</code><br/>\n<a href=\"#admission-k8s-io-v1-AdmissionResponse\"><code>AdmissionResponse</code></a>\n</td>\n<td>\n   <p>response describes the attributes for the admission response.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `AdmissionRequest`     {#admission-k8s-io-v1-AdmissionRequest}\n    \n\n**Appears in:**\n\n- [AdmissionReview](#admission-k8s-io-v1-AdmissionReview)\n\n\n<p>AdmissionRequest describes the admission.Attributes for the admission request.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>uid</code><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/types#UID\"><code>k8s.io/apimachinery/pkg/types.UID</code></a>\n</td>\n<td>\n   <p>uid is an identifier for the individual request/response. It allows us to distinguish instances of requests which are\notherwise identical (parallel requests, requests when earlier requests did not modify etc)\nThe UID is meant to track the round trip (request/response) between the KAS and the WebHook, not the user request.\nIt is suitable for correlating log entries between the webhook and apiserver, for either auditing or debugging.</p>\n</td>\n</tr>\n<tr><td><code>kind</code><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#GroupVersionKind\"><code>meta/v1.GroupVersionKind</code></a>\n</td>\n<td>\n   <p>kind is the fully-qualified type of object being submitted (for example, v1.Pod or autoscaling.v1.Scale)</p>\n</td>\n</tr>\n<tr><td><code>resource</code><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#GroupVersionResource\"><code>meta/v1.GroupVersionResource</code></a>\n</td>\n<td>\n   <p>resource is the fully-qualified resource being requested (for example, v1.pods)</p>\n</td>\n</tr>\n<tr><td><code>subResource</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>subResource is the subresource being requested, if any (for example, &quot;status&quot; or &quot;scale&quot;)</p>\n</td>\n</tr>\n<tr><td><code>requestKind</code><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#GroupVersionKind\"><code>meta/v1.GroupVersionKind</code></a>\n</td>\n<td>\n   <p>requestKind is the fully-qualified type of the original API request (for example, v1.Pod or autoscaling.v1.Scale).\nIf this is specified and differs from the value in &quot;kind&quot;, an equivalent match and conversion was performed.</p>\n<p>For example, if deployments can be modified via apps/v1 and apps/v1beta1, and a webhook registered a rule of\n<code>apiGroups:[&quot;apps&quot;], apiVersions:[&quot;v1&quot;], resources: [&quot;deployments&quot;]</code> and <code>matchPolicy: Equivalent</code>,\nan API request to apps/v1beta1 deployments would be converted and sent to the webhook\nwith <code>kind: {group:&quot;apps&quot;, version:&quot;v1&quot;, kind:&quot;Deployment&quot;}</code> (matching the rule the webhook registered for),\nand <code>requestKind: {group:&quot;apps&quot;, version:&quot;v1beta1&quot;, kind:&quot;Deployment&quot;}</code> (indicating the kind of the original API request).</p>\n<p>See documentation for the &quot;matchPolicy&quot; field in the webhook configuration type for more details.</p>\n</td>\n</tr>\n<tr><td><code>requestResource</code><br/>\n<a href=\"https://pkg.go.dev/k8s.io/apimachinery/p\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/apiserver-admission.v1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-apiserver Admission (v1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admissionreview-admission-k8s-io-v1-admissionreview",
      "type": "concept",
      "title": "`AdmissionReview`     {#admission-k8s-io-v1-AdmissionReview}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admissionrequest-admission-k8s-io-v1-admissionrequest",
      "type": "concept",
      "title": "`AdmissionRequest`     {#admission-k8s-io-v1-AdmissionRequest}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 962,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admissionresponse-admission-k8s-io-v1-admissionresponse",
      "type": "concept",
      "title": "`AdmissionResponse`     {#admission-k8s-io-v1-AdmissionResponse}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 8013,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:operation-admission-k8s-io-v1-operation",
      "type": "concept",
      "title": "`Operation`     {#admission-k8s-io-v1-Operation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 10489,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:patchtype-admission-k8s-io-v1-patchtype",
      "type": "concept",
      "title": "`PatchType`     {#admission-k8s-io-v1-PatchType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 10737,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/apiserver-config.v1alpha1",
      "type": "page",
      "title": "kube-apiserver Configuration (v1alpha1)",
      "summary": "",
      "body": "<p>Package v1alpha1 is the v1alpha1 version of the API.</p>\n\n\n## Resource Types \n\n\n- [AdmissionConfiguration](#apiserver-k8s-io-v1alpha1-AdmissionConfiguration)\n- [AuthenticationConfiguration](#apiserver-k8s-io-v1alpha1-AuthenticationConfiguration)\n- [AuthorizationConfiguration](#apiserver-k8s-io-v1alpha1-AuthorizationConfiguration)\n- [EgressSelectorConfiguration](#apiserver-k8s-io-v1alpha1-EgressSelectorConfiguration)\n- [TracingConfiguration](#apiserver-k8s-io-v1alpha1-TracingConfiguration)\n  \n    \n    \n\n## `TracingConfiguration`     {#TracingConfiguration}\n    \n\n**Appears in:**\n\n- [KubeletConfiguration](#kubelet-config-k8s-io-v1beta1-KubeletConfiguration)\n\n- [TracingConfiguration](#apiserver-k8s-io-v1alpha1-TracingConfiguration)\n\n\n<p>TracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>endpoint</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Endpoint of the collector this component will report traces to.\nThe connection is insecure, and does not currently support TLS.\nRecommended is unset, and endpoint is the otlp grpc default, localhost:4317.</p>\n</td>\n</tr>\n<tr><td><code>samplingRatePerMillion</code><br/>\n<code>int32</code>\n</td>\n<td>\n   <p>SamplingRatePerMillion is the number of samples to collect per million spans.\nRecommended is unset. If unset, sampler respects its parent span's sampling\nrate, but otherwise never samples.</p>\n</td>\n</tr>\n</tbody>\n</table>\n  \n\n## `AdmissionConfiguration`     {#apiserver-k8s-io-v1alpha1-AdmissionConfiguration}\n    \n\n\n<p>AdmissionConfiguration provides versioned configuration for admission controllers.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>apiserver.k8s.io/v1alpha1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>AdmissionConfiguration</code></td></tr>\n    \n  \n<tr><td><code>plugins</code><br/>\n<a href=\"#apiserver-k8s-io-v1alpha1-AdmissionPluginConfiguration\"><code>[]AdmissionPluginConfiguration</code></a>\n</td>\n<td>\n   <p>Plugins allows specifying a configuration per admission control plugin.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `AuthenticationConfiguration`     {#apiserver-k8s-io-v1alpha1-AuthenticationConfiguration}\n    \n\n\n<p>AuthenticationConfiguration provides versioned configuration for authentication.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>apiserver.k8s.io/v1alpha1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>AuthenticationConfiguration</code></td></tr>\n    \n  \n<tr><td><code>jwt</code> <B>[Required]</B><br/>\n<a href=\"#apiserver-k8s-io-v1alpha1-JWTAuthenticator\"><code>[]JWTAuthenticator</code></a>\n</td>\n<td>\n   <p>jwt is a list of authenticator to authenticate Kubernetes users using\nJWT compliant tokens. The authenticator will attempt to parse a raw ID token,\nverify it's been signed by the configured issuer. The public key to verify the\nsignature is discovered from the issuer's public endpoint using OIDC discovery.\nFor an incoming token, each JWT authenticator will be attempted in\nthe order in which it is specified in this list.  Note however that\nother authenticators may run before or after the JWT authenticators.\nThe specific position of JWT authenticators in relation to other\nauthenticators is neither defined nor stable across releases.  Since\neach JWT authenticator must have a unique issuer URL, at most one\nJWT authenticator will attempt to cryptographically validate the token.</p>\n<p>The minimum valid JWT payload must contain the following claims:\n{\n&quot;iss&quot;: &quot;https://issuer.example.com&quot;,\n&quot;aud&quot;: [&quot;audience&quot;],\n&quot;exp&quot;: 1234567890,\n&quot;&quot;: &quot;username&quot;\n}</p>\n</td\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/apiserver-config.v1alpha1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-apiserver Configuration (v1alpha1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admissionconfiguration-apiserver-k8s-io-v1alpha1-admissionconfiguration",
      "type": "concept",
      "title": "`AdmissionConfiguration`     {#apiserver-k8s-io-v1alpha1-AdmissionConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 1556,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authenticationconfiguration-apiserver-k8s-io-v1alpha1-authenticationconfiguration",
      "type": "concept",
      "title": "`AuthenticationConfiguration`     {#apiserver-k8s-io-v1alpha1-AuthenticationConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 2316,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorizationconfiguration-apiserver-k8s-io-v1alpha1-authorizationconfiguration",
      "type": "concept",
      "title": "`AuthorizationConfiguration`     {#apiserver-k8s-io-v1alpha1-AuthorizationConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 4278,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:egressselectorconfiguration-apiserver-k8s-io-v1alpha1-egressselectorconfiguration",
      "type": "concept",
      "title": "`EgressSelectorConfiguration`     {#apiserver-k8s-io-v1alpha1-EgressSelectorConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 5063,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tracingconfiguration-apiserver-k8s-io-v1alpha1-tracingconfiguration",
      "type": "concept",
      "title": "`TracingConfiguration`     {#apiserver-k8s-io-v1alpha1-TracingConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 5851,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admissionpluginconfiguration-apiserver-k8s-io-v1alpha1-admissionpluginconfiguration",
      "type": "concept",
      "title": "`AdmissionPluginConfiguration`     {#apiserver-k8s-io-v1alpha1-AdmissionPluginConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 6643,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:anonymousauthcondition-apiserver-k8s-io-v1alpha1-anonymousauthcondition",
      "type": "concept",
      "title": "`AnonymousAuthCondition`     {#apiserver-k8s-io-v1alpha1-AnonymousAuthCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 7789,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:anonymousauthconfig-apiserver-k8s-io-v1alpha1-anonymousauthconfig",
      "type": "concept",
      "title": "`AnonymousAuthConfig`     {#apiserver-k8s-io-v1alpha1-AnonymousAuthConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 8344,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:audiencematchpolicytype-apiserver-k8s-io-v1alpha1-audiencematchpolicytype",
      "type": "concept",
      "title": "`AudienceMatchPolicyType`     {#apiserver-k8s-io-v1alpha1-AudienceMatchPolicyType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 9177,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorizerconfiguration-apiserver-k8s-io-v1alpha1-authorizerconfiguration",
      "type": "concept",
      "title": "`AuthorizerConfiguration`     {#apiserver-k8s-io-v1alpha1-AuthorizerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 9445,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claimmappings-apiserver-k8s-io-v1alpha1-claimmappings",
      "type": "concept",
      "title": "`ClaimMappings`     {#apiserver-k8s-io-v1alpha1-ClaimMappings}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 10725,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claimorexpression-apiserver-k8s-io-v1alpha1-claimorexpression",
      "type": "concept",
      "title": "`ClaimOrExpression`     {#apiserver-k8s-io-v1alpha1-ClaimOrExpression}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 15086,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claimvalidationrule-apiserver-k8s-io-v1alpha1-claimvalidationrule",
      "type": "concept",
      "title": "`ClaimValidationRule`     {#apiserver-k8s-io-v1alpha1-ClaimValidationRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 16244,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:connection-apiserver-k8s-io-v1alpha1-connection",
      "type": "concept",
      "title": "`Connection`     {#apiserver-k8s-io-v1alpha1-Connection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 18174,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:egressselection-apiserver-k8s-io-v1alpha1-egressselection",
      "type": "concept",
      "title": "`EgressSelection`     {#apiserver-k8s-io-v1alpha1-EgressSelection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 19079,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:egressselectortype-apiserver-k8s-io-v1alpha1-egressselectortype",
      "type": "concept",
      "title": "`EgressSelectorType`     {#apiserver-k8s-io-v1alpha1-EgressSelectorType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 20071,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extramapping-apiserver-k8s-io-v1alpha1-extramapping",
      "type": "concept",
      "title": "`ExtraMapping`     {#apiserver-k8s-io-v1alpha1-ExtraMapping}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 20346,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:issuer-apiserver-k8s-io-v1alpha1-issuer",
      "type": "concept",
      "title": "`Issuer`     {#apiserver-k8s-io-v1alpha1-Issuer}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 21952,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jwtauthenticator-apiserver-k8s-io-v1alpha1-jwtauthenticator",
      "type": "concept",
      "title": "`JWTAuthenticator`     {#apiserver-k8s-io-v1alpha1-JWTAuthenticator}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 27201,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prefixedclaimorexpression-apiserver-k8s-io-v1alpha1-prefixedclaimorexpression",
      "type": "concept",
      "title": "`PrefixedClaimOrExpression`     {#apiserver-k8s-io-v1alpha1-PrefixedClaimOrExpression}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 28857,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protocoltype-apiserver-k8s-io-v1alpha1-protocoltype",
      "type": "concept",
      "title": "`ProtocolType`     {#apiserver-k8s-io-v1alpha1-ProtocolType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 30286,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tcptransport-apiserver-k8s-io-v1alpha1-tcptransport",
      "type": "concept",
      "title": "`TCPTransport`     {#apiserver-k8s-io-v1alpha1-TCPTransport}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 30526,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tlsconfig-apiserver-k8s-io-v1alpha1-tlsconfig",
      "type": "concept",
      "title": "`TLSConfig`     {#apiserver-k8s-io-v1alpha1-TLSConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 31332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:transport-apiserver-k8s-io-v1alpha1-transport",
      "type": "concept",
      "title": "`Transport`     {#apiserver-k8s-io-v1alpha1-Transport}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 32955,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:udstransport-apiserver-k8s-io-v1alpha1-udstransport",
      "type": "concept",
      "title": "`UDSTransport`     {#apiserver-k8s-io-v1alpha1-UDSTransport}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 33936,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uservalidationrule-apiserver-k8s-io-v1alpha1-uservalidationrule",
      "type": "concept",
      "title": "`UserValidationRule`     {#apiserver-k8s-io-v1alpha1-UserValidationRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 34588,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookconfiguration-apiserver-k8s-io-v1alpha1-webhookconfiguration",
      "type": "concept",
      "title": "`WebhookConfiguration`     {#apiserver-k8s-io-v1alpha1-WebhookConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 35877,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookconnectioninfo-apiserver-k8s-io-v1alpha1-webhookconnectioninfo",
      "type": "concept",
      "title": "`WebhookConnectionInfo`     {#apiserver-k8s-io-v1alpha1-WebhookConnectionInfo}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 40051,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookmatchcondition-apiserver-k8s-io-v1alpha1-webhookmatchcondition",
      "type": "concept",
      "title": "`WebhookMatchCondition`     {#apiserver-k8s-io-v1alpha1-WebhookMatchCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 41005,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/imagepolicy.v1alpha1",
      "type": "page",
      "title": "Image Policy API (v1alpha1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [ImageReview](#imagepolicy-k8s-io-v1alpha1-ImageReview)\n  \n\n## `ImageReview`     {#imagepolicy-k8s-io-v1alpha1-ImageReview}\n    \n\n\n<p>ImageReview checks if the set of images in a pod are allowed.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>imagepolicy.k8s.io/v1alpha1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>ImageReview</code></td></tr>\n    \n  \n<tr><td><code>metadata</code><br/>\n<a href=\"https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.36/#objectmeta-v1-meta\"><code>meta/v1.ObjectMeta</code></a>\n</td>\n<td>\n   <p>Standard object's metadata.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</p>\nRefer to the Kubernetes API documentation for the fields of the <code>metadata</code> field.</td>\n</tr>\n<tr><td><code>spec</code><br/>\n<a href=\"#imagepolicy-k8s-io-v1alpha1-ImageReviewSpec\"><code>ImageReviewSpec</code></a>\n</td>\n<td>\n   <p>Spec holds information about the pod being evaluated</p>\n</td>\n</tr>\n<tr><td><code>status</code><br/>\n<a href=\"#imagepolicy-k8s-io-v1alpha1-ImageReviewStatus\"><code>ImageReviewStatus</code></a>\n</td>\n<td>\n   <p>Status is filled in by the backend and indicates whether the pod should be allowed.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `ImageReviewContainerSpec`     {#imagepolicy-k8s-io-v1alpha1-ImageReviewContainerSpec}\n    \n\n**Appears in:**\n\n- [ImageReviewSpec](#imagepolicy-k8s-io-v1alpha1-ImageReviewSpec)\n\n\n<p>ImageReviewContainerSpec is a description of a container within the pod creation request.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>image</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>This can be in the form image:tag or image@SHA:012345679abcdef.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `ImageReviewSpec`     {#imagepolicy-k8s-io-v1alpha1-ImageReviewSpec}\n    \n\n**Appears in:**\n\n- [ImageReview](#imagepolicy-k8s-io-v1alpha1-ImageReview)\n\n\n<p>ImageReviewSpec is a description of the pod creation request.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>containers</code><br/>\n<a href=\"#imagepolicy-k8s-io-v1alpha1-ImageReviewContainerSpec\"><code>[]ImageReviewContainerSpec</code></a>\n</td>\n<td>\n   <p>Containers is a list of a subset of the information in each container of the Pod being created.</p>\n</td>\n</tr>\n<tr><td><code>annotations</code><br/>\n<code>map[string]string</code>\n</td>\n<td>\n   <p>Annotations is a list of key-value pairs extracted from the Pod's annotations.\nIt only includes keys which match the pattern <code>*.image-policy.k8s.io/*</code>.\nIt is up to each webhook backend to determine how to interpret these annotations, if at all.</p>\n</td>\n</tr>\n<tr><td><code>namespace</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Namespace is the namespace the pod is being created in.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `ImageReviewStatus`     {#imagepolicy-k8s-io-v1alpha1-ImageReviewStatus}\n    \n\n**Appears in:**\n\n- [ImageReview](#imagepolicy-k8s-io-v1alpha1-ImageReview)\n\n\n<p>ImageReviewStatus is the result of the review for the pod creation request.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>allowed</code><br/>\n<code>bool</code>\n</td>\n<td>\n   <p>Allowed indicates that all images were allowed to be run.</p>\n</td>\n</tr>\n<tr><td><code>reason</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Reason should be empty unless Allowed is false in which case it\nmay contain a short description of what is wrong.  Kubernetes\nmay truncate excessively long errors when displaying to the user.</p>\n</td>\n</tr>\n<tr><td><code>auditAnnotations</code><br/>\n<code>map[string]string</code>\n</td>\n<td>\n   <p>AuditAnnotations will be added to \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/imagepolicy.v1alpha1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/imagepolicy.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
          "line_start": null,
          "line_end": null,
          "quote": "Image Policy API (v1alpha1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagereview-imagepolicy-k8s-io-v1alpha1-imagereview",
      "type": "concept",
      "title": "`ImageReview`     {#imagepolicy-k8s-io-v1alpha1-ImageReview}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/imagepolicy.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagereviewcontainerspec-imagepolicy-k8s-io-v1alpha1-imagereviewcontainerspec",
      "type": "concept",
      "title": "`ImageReviewContainerSpec`     {#imagepolicy-k8s-io-v1alpha1-ImageReviewContainerSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/imagepolicy.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
          "line_start": 1414,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagereviewspec-imagepolicy-k8s-io-v1alpha1-imagereviewspec",
      "type": "concept",
      "title": "`ImageReviewSpec`     {#imagepolicy-k8s-io-v1alpha1-ImageReviewSpec}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/imagepolicy.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
          "line_start": 1971,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagereviewstatus-imagepolicy-k8s-io-v1alpha1-imagereviewstatus",
      "type": "concept",
      "title": "`ImageReviewStatus`     {#imagepolicy-k8s-io-v1alpha1-ImageReviewStatus}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/imagepolicy.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
          "line_start": 3102,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/apiserver-config.v1",
      "type": "page",
      "title": "kube-apiserver Configuration (v1)",
      "summary": "",
      "body": "<p>Package v1 is the v1 version of the API.</p>\n\n\n## Resource Types \n\n\n- [AdmissionConfiguration](#apiserver-config-k8s-io-v1-AdmissionConfiguration)\n- [AuthenticationConfiguration](#apiserver-config-k8s-io-v1-AuthenticationConfiguration)\n- [AuthorizationConfiguration](#apiserver-config-k8s-io-v1-AuthorizationConfiguration)\n- [EncryptionConfiguration](#apiserver-config-k8s-io-v1-EncryptionConfiguration)\n- [TracingConfiguration](#apiserver-config-k8s-io-v1-TracingConfiguration)\n  \n    \n    \n\n## `TracingConfiguration`     {#TracingConfiguration}\n    \n\n**Appears in:**\n\n- [KubeletConfiguration](#kubelet-config-k8s-io-v1beta1-KubeletConfiguration)\n\n- [TracingConfiguration](#apiserver-config-k8s-io-v1-TracingConfiguration)\n\n- [TracingConfiguration](#apiserver-k8s-io-v1alpha1-TracingConfiguration)\n\n- [TracingConfiguration](#apiserver-k8s-io-v1beta1-TracingConfiguration)\n\n\n<p>TracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>endpoint</code><br/>\n<code>string</code>\n</td>\n<td>\n   <p>Endpoint of the collector this component will report traces to.\nThe connection is insecure, and does not currently support TLS.\nRecommended is unset, and endpoint is the otlp grpc default, localhost:4317.</p>\n</td>\n</tr>\n<tr><td><code>samplingRatePerMillion</code><br/>\n<code>int32</code>\n</td>\n<td>\n   <p>SamplingRatePerMillion is the number of samples to collect per million spans.\nRecommended is unset. If unset, sampler respects its parent span's sampling\nrate, but otherwise never samples.</p>\n</td>\n</tr>\n</tbody>\n</table>\n  \n\n## `AdmissionConfiguration`     {#apiserver-config-k8s-io-v1-AdmissionConfiguration}\n    \n\n\n<p>AdmissionConfiguration provides versioned configuration for admission controllers.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>apiserver.config.k8s.io/v1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>AdmissionConfiguration</code></td></tr>\n    \n  \n<tr><td><code>plugins</code><br/>\n<a href=\"#apiserver-config-k8s-io-v1-AdmissionPluginConfiguration\"><code>[]AdmissionPluginConfiguration</code></a>\n</td>\n<td>\n   <p>Plugins allows specifying a configuration per admission control plugin.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `AuthenticationConfiguration`     {#apiserver-config-k8s-io-v1-AuthenticationConfiguration}\n    \n\n\n<p>AuthenticationConfiguration provides versioned configuration for authentication.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>apiserver.config.k8s.io/v1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>AuthenticationConfiguration</code></td></tr>\n    \n  \n<tr><td><code>jwt</code> <B>[Required]</B><br/>\n<a href=\"#apiserver-config-k8s-io-v1-JWTAuthenticator\"><code>[]JWTAuthenticator</code></a>\n</td>\n<td>\n   <p>jwt is a list of authenticator to authenticate Kubernetes users using\nJWT compliant tokens. The authenticator will attempt to parse a raw ID token,\nverify it's been signed by the configured issuer. The public key to verify the\nsignature is discovered from the issuer's public endpoint using OIDC discovery.\nFor an incoming token, each JWT authenticator will be attempted in\nthe order in which it is specified in this list.  Note however that\nother authenticators may run before or after the JWT authenticators.\nThe specific position of JWT authenticators in relation to other\nauthenticators is neither defined nor stable across releases.  Since\neach JWT authenticator must have a unique issuer URL, at most one\nJWT authenticator will attempt to cryptographically validate the token.</p>\n<p>The minimum valid JWT payload must contain the following claims:\n{\n&quot;iss&quot;: &quot;https://\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/apiserver-config.v1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-apiserver Configuration (v1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admissionconfiguration-apiserver-config-k8s-io-v1-admissionconfiguration",
      "type": "concept",
      "title": "`AdmissionConfiguration`     {#apiserver-config-k8s-io-v1-AdmissionConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 1691,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authenticationconfiguration-apiserver-config-k8s-io-v1-authenticationconfiguration",
      "type": "concept",
      "title": "`AuthenticationConfiguration`     {#apiserver-config-k8s-io-v1-AuthenticationConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 2454,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorizationconfiguration-apiserver-config-k8s-io-v1-authorizationconfiguration",
      "type": "concept",
      "title": "`AuthorizationConfiguration`     {#apiserver-config-k8s-io-v1-AuthorizationConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 4420,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:encryptionconfiguration-apiserver-config-k8s-io-v1-encryptionconfiguration",
      "type": "concept",
      "title": "`EncryptionConfiguration`     {#apiserver-config-k8s-io-v1-EncryptionConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 5208,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tracingconfiguration-apiserver-config-k8s-io-v1-tracingconfiguration",
      "type": "concept",
      "title": "`TracingConfiguration`     {#apiserver-config-k8s-io-v1-TracingConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 7280,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aesconfiguration-apiserver-config-k8s-io-v1-aesconfiguration",
      "type": "concept",
      "title": "`AESConfiguration`     {#apiserver-config-k8s-io-v1-AESConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 8074,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admissionpluginconfiguration-apiserver-config-k8s-io-v1-admissionpluginconfiguration",
      "type": "concept",
      "title": "`AdmissionPluginConfiguration`     {#apiserver-config-k8s-io-v1-AdmissionPluginConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 8754,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:anonymousauthcondition-apiserver-config-k8s-io-v1-anonymousauthcondition",
      "type": "concept",
      "title": "`AnonymousAuthCondition`     {#apiserver-config-k8s-io-v1-AnonymousAuthCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 9902,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:anonymousauthconfig-apiserver-config-k8s-io-v1-anonymousauthconfig",
      "type": "concept",
      "title": "`AnonymousAuthConfig`     {#apiserver-config-k8s-io-v1-AnonymousAuthConfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 10459,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:audiencematchpolicytype-apiserver-config-k8s-io-v1-audiencematchpolicytype",
      "type": "concept",
      "title": "`AudienceMatchPolicyType`     {#apiserver-config-k8s-io-v1-AudienceMatchPolicyType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 11295,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorizerconfiguration-apiserver-config-k8s-io-v1-authorizerconfiguration",
      "type": "concept",
      "title": "`AuthorizerConfiguration`     {#apiserver-config-k8s-io-v1-AuthorizerConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 11565,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claimmappings-apiserver-config-k8s-io-v1-claimmappings",
      "type": "concept",
      "title": "`ClaimMappings`     {#apiserver-config-k8s-io-v1-ClaimMappings}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 12848,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claimorexpression-apiserver-config-k8s-io-v1-claimorexpression",
      "type": "concept",
      "title": "`ClaimOrExpression`     {#apiserver-config-k8s-io-v1-ClaimOrExpression}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 17215,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:claimvalidationrule-apiserver-config-k8s-io-v1-claimvalidationrule",
      "type": "concept",
      "title": "`ClaimValidationRule`     {#apiserver-config-k8s-io-v1-ClaimValidationRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 18375,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:egressselectortype-apiserver-config-k8s-io-v1-egressselectortype",
      "type": "concept",
      "title": "`EgressSelectorType`     {#apiserver-config-k8s-io-v1-EgressSelectorType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 20307,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extramapping-apiserver-config-k8s-io-v1-extramapping",
      "type": "concept",
      "title": "`ExtraMapping`     {#apiserver-config-k8s-io-v1-ExtraMapping}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 20584,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:identityconfiguration-apiserver-config-k8s-io-v1-identityconfiguration",
      "type": "concept",
      "title": "`IdentityConfiguration`     {#apiserver-config-k8s-io-v1-IdentityConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 22192,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:issuer-apiserver-config-k8s-io-v1-issuer",
      "type": "concept",
      "title": "`Issuer`     {#apiserver-config-k8s-io-v1-Issuer}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 22486,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:jwtauthenticator-apiserver-config-k8s-io-v1-jwtauthenticator",
      "type": "concept",
      "title": "`JWTAuthenticator`     {#apiserver-config-k8s-io-v1-JWTAuthenticator}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 27739,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kmsconfiguration-apiserver-config-k8s-io-v1-kmsconfiguration",
      "type": "concept",
      "title": "`KMSConfiguration`     {#apiserver-config-k8s-io-v1-KMSConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 29401,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:key-apiserver-config-k8s-io-v1-key",
      "type": "concept",
      "title": "`Key`     {#apiserver-config-k8s-io-v1-Key}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 30843,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prefixedclaimorexpression-apiserver-config-k8s-io-v1-prefixedclaimorexpression",
      "type": "concept",
      "title": "`PrefixedClaimOrExpression`     {#apiserver-config-k8s-io-v1-PrefixedClaimOrExpression}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 31585,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:providerconfiguration-apiserver-config-k8s-io-v1-providerconfiguration",
      "type": "concept",
      "title": "`ProviderConfiguration`     {#apiserver-config-k8s-io-v1-ProviderConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 33016,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceconfiguration-apiserver-config-k8s-io-v1-resourceconfiguration",
      "type": "concept",
      "title": "`ResourceConfiguration`     {#apiserver-config-k8s-io-v1-ResourceConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 34664,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:secretboxconfiguration-apiserver-config-k8s-io-v1-secretboxconfiguration",
      "type": "concept",
      "title": "`SecretboxConfiguration`     {#apiserver-config-k8s-io-v1-SecretboxConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 36098,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uservalidationrule-apiserver-config-k8s-io-v1-uservalidationrule",
      "type": "concept",
      "title": "`UserValidationRule`     {#apiserver-config-k8s-io-v1-UserValidationRule}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 36761,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookconfiguration-apiserver-config-k8s-io-v1-webhookconfiguration",
      "type": "concept",
      "title": "`WebhookConfiguration`     {#apiserver-config-k8s-io-v1-WebhookConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 38052,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookconnectioninfo-apiserver-config-k8s-io-v1-webhookconnectioninfo",
      "type": "concept",
      "title": "`WebhookConnectionInfo`     {#apiserver-config-k8s-io-v1-WebhookConnectionInfo}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 42230,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhookmatchcondition-apiserver-config-k8s-io-v1-webhookmatchcondition",
      "type": "concept",
      "title": "`WebhookMatchCondition`     {#apiserver-config-k8s-io-v1-WebhookMatchCondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 43186,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/kuberc.v1alpha1",
      "type": "page",
      "title": "kuberc (v1alpha1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [Preference](#kubectl-config-k8s-io-v1alpha1-Preference)\n  \n\n## `Preference`     {#kubectl-config-k8s-io-v1alpha1-Preference}\n    \n\n\n<p>Preference stores elements of KubeRC configuration file</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>kubectl.config.k8s.io/v1alpha1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>Preference</code></td></tr>\n    \n  \n<tr><td><code>overrides</code> <B>[Required]</B><br/>\n<a href=\"#kubectl-config-k8s-io-v1alpha1-CommandDefaults\"><code>[]CommandDefaults</code></a>\n</td>\n<td>\n   <p>overrides allows changing default flag values of commands.\nThis is especially useful, when user doesn't want to explicitly\nset flags each time.</p>\n</td>\n</tr>\n<tr><td><code>aliases</code> <B>[Required]</B><br/>\n<a href=\"#kubectl-config-k8s-io-v1alpha1-AliasOverride\"><code>[]AliasOverride</code></a>\n</td>\n<td>\n   <p>aliases allow defining command aliases for existing kubectl commands, with optional default flag values.\nIf the alias name collides with a built-in command, built-in command always takes precedence.\nFlag overrides defined in the overrides section do NOT apply to aliases for the same command.\nkubectl [ALIAS NAME] [USER_FLAGS] [USER_EXPLICIT_ARGS] expands to\nkubectl [COMMAND] # built-in command alias points to\n[KUBERC_PREPEND_ARGS]\n[USER_FLAGS]\n[KUBERC_FLAGS] # rest of the flags that are not passed by user in [USER_FLAGS]\n[USER_EXPLICIT_ARGS]\n[KUBERC_APPEND_ARGS]\ne.g.</p>\n<ul>\n<li>name: runx\ncommand: run\nflags:\n<ul>\n<li>name: image\ndefault: nginx\nappendArgs:</li>\n</ul>\n<hr>\n<ul>\n<li>custom-arg1\nFor example, if user invokes &quot;kubectl runx test-pod&quot; command,\nthis will be expanded to &quot;kubectl run --image=nginx test-pod -- custom-arg1&quot;</li>\n</ul>\n</li>\n<li>name: getn\ncommand: get\nflags:\n<ul>\n<li>name: output\ndefault: wide\nprependArgs:</li>\n<li>node\n&quot;kubectl getn control-plane-1&quot; expands to &quot;kubectl get node control-plane-1 --output=wide&quot;\n&quot;kubectl getn control-plane-1 --output=json&quot; expands to &quot;kubectl get node --output=json control-plane-1&quot;</li>\n</ul>\n</li>\n</ul>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `AliasOverride`     {#kubectl-config-k8s-io-v1alpha1-AliasOverride}\n    \n\n**Appears in:**\n\n- [Preference](#kubectl-config-k8s-io-v1alpha1-Preference)\n\n\n<p>AliasOverride stores the alias definitions.</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n  \n<tr><td><code>name</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>name is the name of alias that can only include alphabetical characters\nIf the alias name conflicts with the built-in command,\nbuilt-in command will be used.</p>\n</td>\n</tr>\n<tr><td><code>command</code> <B>[Required]</B><br/>\n<code>string</code>\n</td>\n<td>\n   <p>command is the single or set of commands to execute, such as &quot;set env&quot; or &quot;create&quot;</p>\n</td>\n</tr>\n<tr><td><code>prependArgs</code> <B>[Required]</B><br/>\n<code>[]string</code>\n</td>\n<td>\n   <p>prependArgs stores the arguments such as resource names, etc.\nThese arguments are inserted after the alias name.</p>\n</td>\n</tr>\n<tr><td><code>appendArgs</code> <B>[Required]</B><br/>\n<code>[]string</code>\n</td>\n<td>\n   <p>appendArgs stores the arguments such as resource names, etc.\nThese arguments are appended to the USER_ARGS.</p>\n</td>\n</tr>\n<tr><td><code>flags</code> <B>[Required]</B><br/>\n<a href=\"#kubectl-config-k8s-io-v1alpha1-CommandOptionDefault\"><code>[]CommandOptionDefault</code></a>\n</td>\n<td>\n   <p>flags is allocated to store the flag definitions of alias.\nflags only modifies the default value of the flag and if\nuser explicitly passes a value, explicit one is used.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `CommandDefaults`     {#kubectl-config-k8s-io-v1alpha1-CommandDefaults}\n    \n\n**Appears in:**\n\n- [Preference](#kubectl-config-k8\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kuberc.v1alpha1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
          "line_start": null,
          "line_end": null,
          "quote": "kuberc (v1alpha1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preference-kubectl-config-k8s-io-v1alpha1-preference",
      "type": "concept",
      "title": "`Preference`     {#kubectl-config-k8s-io-v1alpha1-Preference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aliasoverride-kubectl-config-k8s-io-v1alpha1-aliasoverride",
      "type": "concept",
      "title": "`AliasOverride`     {#kubectl-config-k8s-io-v1alpha1-AliasOverride}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
          "line_start": 2268,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:commanddefaults-kubectl-config-k8s-io-v1alpha1-commanddefaults",
      "type": "concept",
      "title": "`CommandDefaults`     {#kubectl-config-k8s-io-v1alpha1-CommandDefaults}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
          "line_start": 3870,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:commandoptiondefault-kubectl-config-k8s-io-v1alpha1-commandoptiondefault",
      "type": "concept",
      "title": "`CommandOptionDefault`     {#kubectl-config-k8s-io-v1alpha1-CommandOptionDefault}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
          "line_start": 4665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/kubeadm-config.v1beta4",
      "type": "page",
      "title": "kubeadm Configuration (v1beta4)",
      "summary": "",
      "body": "<h2>Overview</h2>\n<p>Package v1beta4 defines the v1beta4 version of the kubeadm configuration file format.\nThis version improves on the v1beta3 format by fixing some minor issues and adding a few new fields.</p>\n<p>A list of changes since v1beta3:</p>\n<p>v1.35:</p>\n<ul>\n<li>Add <code>httpEndpoints</code> field to <code>ClusterConfiguration.etcd.externalEtcd</code> that can be used to\nconfigure the HTTP endpoints for etcd communication in v1beta4.\nThis field is used to separate the HTTP traffic (such as <code>/metrics</code> and <code>/health</code> endpoints)\nfrom the gRPC traffic handled by <code>endpoints</code>.\nThis separation allows for better access control, as HTTP endpoints can be exposed without\nexposing the primary gRPC interface.\nCorresponds to etcd's <code>--listen-client-http-urls</code> configuration.\nIf not provided, <code>endpoints</code> will be used for both gRPC and HTTP traffic.</li>\n</ul>\n<p>v1.34:</p>\n<ul>\n<li>Add &quot;ECDSA-P384&quot; to the allowed encryption algorithm options for <code>ClusterConfiguration.encryptionAlgorithm</code>.</li>\n</ul>\n<p>v1.33:</p>\n<ul>\n<li>Add an <code>EtcdUpgrade</code> field to <code>UpgradeConfiguration.plan</code> that can be used to\ncontrol whether the etcd upgrade plan should be displayed.</li>\n</ul>\n<p>v1.31:</p>\n<ul>\n<li>Support custom environment variables in control plane components under <code>ClusterConfiguration</code>.\nUse <code>apiServer.extraEnvs</code>, <code>controllerManager.extraEnvs</code>, <code>scheduler.extraEnvs</code>,\n<code>etcd.local.extraEnvs</code>.</li>\n<li>The <code>ResetConfiguration</code> API type is now supported in v1beta4.\nUsers are able to reset a node by passing a <code>--config</code> file to <code>kubeadm reset</code>.</li>\n<li>Dry run mode is now configureable in <code>InitConfiguration</code> and <code>JoinConfiguration</code>B.</li>\n<li>Replace the existing string/string extra argument maps with structured extra arguments\nthat support duplicates. The change applies to <code>ClusterConfiguration</code> - <code>apiServer.extraArgs</code>,\n<code>controllerManager.extraArgs</code>, <code>scheduler.extraArgs</code>, <code>etcd.local.extraArgs</code>.\nAlso to <code>nodeRegistration.kubeletExtraArgs</code>.</li>\n<li>Add <code>ClusterConfiguration.encryptionAlgorithm</code> that can be used to set the asymmetric\nencryption algorithm used for this cluster's keys and certificates. Can be one of\n<code>&quot;RSA-2048&quot;</code> (default), <code>&quot;RSA-3072&quot;</code>, <code>&quot;RSA-4096&quot;</code> or <code>&quot;ECDSA-P256&quot;</code>.</li>\n<li>Add <code>ClusterConfiguration.dns.disabled</code> and <code>ClusterConfiguration.proxy.disabled</code>\nthat can be used to disable the CoreDNS and kube-proxy addons during cluster\ninitialization. Skipping the related addons phases, during cluster creation will\nset the same fields to <code>true</code>.</li>\n<li>Add the <code>nodeRegistration.imagePullSerial</code> field in <code>InitConfiguration</code> and <code>JoinConfiguration</code>, which\ncan be used to control if kubeadm pulls images serially or in parallel.</li>\n<li>The <code>UpgradeConfiguration</code> kubeadm API is now supported in v1beta4 when passing\n<code>--config</code> to <code>kubeadm upgrade</code> subcommands. Usage of component configuration for <code>kubelet</code> and <code>kube-proxy</code>,\n<code>InitConfiguration</code> and <code>ClusterConfiguration</code> is deprecated and will be ignored when passing <code>--config</code> to\n<code>upgrade</code> subcommands.</li>\n<li>Add a <code>Timeouts</code> structure to <code>InitConfiguration</code>, <code>JoinConfiguration</code>, <code>ResetConfiguration</code> and <code>UpgradeConfiguration</code>\nthat can be used to configure various timeouts.\nThe <code>ClusterConfiguration.timeoutForControlPlane</code> field is replaced by <code>Timeouts.controlPlaneComponentHealthCheck</code>.\nThe <code>JoinConfiguration.discovery.timeout</code> is replaced by <code>timeouts.Discovery\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kubeadm-config.v1beta4.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm Configuration (v1beta4)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clusterconfiguration-kubeadm-k8s-io-v1beta4-clusterconfiguration",
      "type": "concept",
      "title": "`ClusterConfiguration`     {#kubeadm-k8s-io-v1beta4-ClusterConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 43749,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:initconfiguration-kubeadm-k8s-io-v1beta4-initconfiguration",
      "type": "concept",
      "title": "`InitConfiguration`     {#kubeadm-k8s-io-v1beta4-InitConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 49321,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:joinconfiguration-kubeadm-k8s-io-v1beta4-joinconfiguration",
      "type": "concept",
      "title": "`JoinConfiguration`     {#kubeadm-k8s-io-v1beta4-JoinConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 53011,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resetconfiguration-kubeadm-k8s-io-v1beta4-resetconfiguration",
      "type": "concept",
      "title": "`ResetConfiguration`     {#kubeadm-k8s-io-v1beta4-ResetConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 55647,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgradeconfiguration-kubeadm-k8s-io-v1beta4-upgradeconfiguration",
      "type": "concept",
      "title": "`UpgradeConfiguration`     {#kubeadm-k8s-io-v1beta4-UpgradeConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 58599,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiendpoint-kubeadm-k8s-io-v1beta4-apiendpoint",
      "type": "concept",
      "title": "`APIEndpoint`     {#kubeadm-k8s-io-v1beta4-APIEndpoint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 60441,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apiserver-kubeadm-k8s-io-v1beta4-apiserver",
      "type": "concept",
      "title": "`APIServer`     {#kubeadm-k8s-io-v1beta4-APIServer}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 61228,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:arg-kubeadm-k8s-io-v1beta4-arg",
      "type": "concept",
      "title": "`Arg`     {#kubeadm-k8s-io-v1beta4-Arg}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 62108,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bootstraptokendiscovery-kubeadm-k8s-io-v1beta4-bootstraptokendiscovery",
      "type": "concept",
      "title": "`BootstrapTokenDiscovery`     {#kubeadm-k8s-io-v1beta4-BootstrapTokenDiscovery}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 62824,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:controlplanecomponent-kubeadm-k8s-io-v1beta4-controlplanecomponent",
      "type": "concept",
      "title": "`ControlPlaneComponent`     {#kubeadm-k8s-io-v1beta4-ControlPlaneComponent}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 64569,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dns-kubeadm-k8s-io-v1beta4-dns",
      "type": "concept",
      "title": "`DNS`     {#kubeadm-k8s-io-v1beta4-DNS}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 66122,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:discovery-kubeadm-k8s-io-v1beta4-discovery",
      "type": "concept",
      "title": "`Discovery`     {#kubeadm-k8s-io-v1beta4-Discovery}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 66940,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:encryptionalgorithmtype-kubeadm-k8s-io-v1beta4-encryptionalgorithmtype",
      "type": "concept",
      "title": "`EncryptionAlgorithmType`     {#kubeadm-k8s-io-v1beta4-EncryptionAlgorithmType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 68420,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:envvar-kubeadm-k8s-io-v1beta4-envvar",
      "type": "concept",
      "title": "`EnvVar`     {#kubeadm-k8s-io-v1beta4-EnvVar}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 68706,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:etcd-kubeadm-k8s-io-v1beta4-etcd",
      "type": "concept",
      "title": "`Etcd`     {#kubeadm-k8s-io-v1beta4-Etcd}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 69426,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:externaletcd-kubeadm-k8s-io-v1beta4-externaletcd",
      "type": "concept",
      "title": "`ExternalEtcd`     {#kubeadm-k8s-io-v1beta4-ExternalEtcd}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 70342,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:filediscovery-kubeadm-k8s-io-v1beta4-filediscovery",
      "type": "concept",
      "title": "`FileDiscovery`     {#kubeadm-k8s-io-v1beta4-FileDiscovery}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 72624,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:hostpathmount-kubeadm-k8s-io-v1beta4-hostpathmount",
      "type": "concept",
      "title": "`HostPathMount`     {#kubeadm-k8s-io-v1beta4-HostPathMount}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 73256,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagemeta-kubeadm-k8s-io-v1beta4-imagemeta",
      "type": "concept",
      "title": "`ImageMeta`     {#kubeadm-k8s-io-v1beta4-ImageMeta}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 74614,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:joincontrolplane-kubeadm-k8s-io-v1beta4-joincontrolplane",
      "type": "concept",
      "title": "`JoinControlPlane`     {#kubeadm-k8s-io-v1beta4-JoinControlPlane}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 75588,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:localetcd-kubeadm-k8s-io-v1beta4-localetcd",
      "type": "concept",
      "title": "`LocalEtcd`     {#kubeadm-k8s-io-v1beta4-LocalEtcd}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 76665,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:networking-kubeadm-k8s-io-v1beta4-networking",
      "type": "concept",
      "title": "`Networking`     {#kubeadm-k8s-io-v1beta4-Networking}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 78914,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:noderegistrationoptions-kubeadm-k8s-io-v1beta4-noderegistrationoptions",
      "type": "concept",
      "title": "`NodeRegistrationOptions`     {#kubeadm-k8s-io-v1beta4-NodeRegistrationOptions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 79819,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:patches-kubeadm-k8s-io-v1beta4-patches",
      "type": "concept",
      "title": "`Patches`     {#kubeadm-k8s-io-v1beta4-Patches}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 83498,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:proxy-kubeadm-k8s-io-v1beta4-proxy",
      "type": "concept",
      "title": "`Proxy`     {#kubeadm-k8s-io-v1beta4-Proxy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 85006,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:timeouts-kubeadm-k8s-io-v1beta4-timeouts",
      "type": "concept",
      "title": "`Timeouts`     {#kubeadm-k8s-io-v1beta4-Timeouts}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 85534,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgradeapplyconfiguration-kubeadm-k8s-io-v1beta4-upgradeapplyconfiguration",
      "type": "concept",
      "title": "`UpgradeApplyConfiguration`     {#kubeadm-k8s-io-v1beta4-UpgradeApplyConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 88474,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgradediffconfiguration-kubeadm-k8s-io-v1beta4-upgradediffconfiguration",
      "type": "concept",
      "title": "`UpgradeDiffConfiguration`     {#kubeadm-k8s-io-v1beta4-UpgradeDiffConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 92402,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgradenodeconfiguration-kubeadm-k8s-io-v1beta4-upgradenodeconfiguration",
      "type": "concept",
      "title": "`UpgradeNodeConfiguration`     {#kubeadm-k8s-io-v1beta4-UpgradeNodeConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 93192,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgradeplanconfiguration-kubeadm-k8s-io-v1beta4-upgradeplanconfiguration",
      "type": "concept",
      "title": "`UpgradePlanConfiguration`     {#kubeadm-k8s-io-v1beta4-UpgradePlanConfiguration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 95879,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/config-api/_index",
      "type": "page",
      "title": "Configuration APIs",
      "summary": "A collection of configuration APIs and guides.",
      "body": "A collection of configuration APIs and guides.\n\n**Why it matters**\nProvides a centralized location for configuration API information, making it easier to find relevant documentation.\n\n**Key facts**\n- Configuration APIs are used to manage Kubernetes resources.\n- It provides a way to configure and manage clusters.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/_index/",
      "meta": {
        "weight": 130,
        "rel_path": "reference/config-api/_index.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/config-api/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Configuration APIs"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/config-api/kuberc.v1beta1",
      "type": "page",
      "title": "kuberc (v1beta1)",
      "summary": "",
      "body": "## Resource Types \n\n\n- [Preference](#kubectl-config-k8s-io-v1beta1-Preference)\n  \n\n## `Preference`     {#kubectl-config-k8s-io-v1beta1-Preference}\n    \n\n\n<p>Preference stores elements of KubeRC configuration file</p>\n\n\n<table class=\"table\">\n<thead><tr><th width=\"30%\">Field</th><th>Description</th></tr></thead>\n<tbody>\n    \n<tr><td><code>apiVersion</code><br/>string</td><td><code>kubectl.config.k8s.io/v1beta1</code></td></tr>\n<tr><td><code>kind</code><br/>string</td><td><code>Preference</code></td></tr>\n    \n  \n<tr><td><code>defaults</code> <B>[Required]</B><br/>\n<a href=\"#kubectl-config-k8s-io-v1beta1-CommandDefaults\"><code>[]CommandDefaults</code></a>\n</td>\n<td>\n   <p>defaults allow changing default option values of commands.\nThis is especially useful, when user doesn't want to explicitly\nset options each time.</p>\n</td>\n</tr>\n<tr><td><code>aliases</code> <B>[Required]</B><br/>\n<a href=\"#kubectl-config-k8s-io-v1beta1-AliasOverride\"><code>[]AliasOverride</code></a>\n</td>\n<td>\n   <p>aliases allow defining command aliases for existing kubectl commands, with optional default option values.\nIf the alias name collides with a built-in command, built-in command always takes precedence.\nOption overrides defined in the defaults section do NOT apply to aliases for the same command.\nkubectl [ALIAS NAME] [USER_OPTIONS] [USER_EXPLICIT_ARGS] expands to\nkubectl [COMMAND] # built-in command alias points to\n[KUBERC_PREPEND_ARGS]\n[USER_OPTIONS]\n[KUBERC_OPTIONS] # rest of the options that are not passed by user in [USER_OPTIONS]\n[USER_EXPLICIT_ARGS]\n[KUBERC_APPEND_ARGS]\ne.g.</p>\n<ul>\n<li>name: runx\ncommand: run\noptions:\n<ul>\n<li>name: image\ndefault: nginx\nappendArgs:</li>\n</ul>\n<hr>\n<ul>\n<li>custom-arg1\nFor example, if user invokes &quot;kubectl runx test-pod&quot; command,\nthis will be expanded to &quot;kubectl run --image=nginx test-pod -- custom-arg1&quot;</li>\n</ul>\n</li>\n<li>name: getn\ncommand: get\noptions:\n<ul>\n<li>name: output\ndefault: wide\nprependArgs:</li>\n<li>node\n&quot;kubectl getn control-plane-1&quot; expands to &quot;kubectl get node control-plane-1 --output=wide&quot;\n&quot;kubectl getn control-plane-1 --output=json&quot; expands to &quot;kubectl get node --output=json control-plane-1&quot;</li>\n</ul>\n</li>\n</ul>\n</td>\n</tr>\n<tr><td><code>credentialPluginPolicy</code><br/>\n<a href=\"#kubectl-config-k8s-io-v1beta1-CredentialPluginPolicy\"><code>CredentialPluginPolicy</code></a>\n</td>\n<td>\n   <p>credentialPluginPolicy specifies the policy governing which, if any, client-go\ncredential plugins may be executed. It MUST be one of { &quot;&quot;, &quot;AllowAll&quot;, &quot;DenyAll&quot;, &quot;Allowlist&quot; }.\nIf the policy is &quot;&quot;, then it falls back to &quot;AllowAll&quot; (this is required\nto maintain backward compatibility). If the policy is DenyAll, no\ncredential plugins may run. If the policy is Allowlist, only those\nplugins meeting the criteria specified in the <code>credentialPluginAllowlist</code>\nfield may run.</p>\n</td>\n</tr>\n<tr><td><code>credentialPluginAllowlist</code><br/>\n<a href=\"#kubectl-config-k8s-io-v1beta1-AllowlistEntry\"><code>[]AllowlistEntry</code></a>\n</td>\n<td>\n   <p>Allowlist is a slice of allowlist entries. If any of them is a match,\nthen the executable in question may execute. That is, the result is the\nlogical OR of all entries in the allowlist. This list MUST NOT be\nsupplied if the policy is not &quot;Allowlist&quot;.</p>\n<p>e.g.\ncredentialPluginAllowlist:</p>\n<ul>\n<li>name: cloud-provider-plugin</li>\n<li>name: /usr/local/bin/my-plugin\nIn the above example, the user allows the credential plugins\n<code>cloud-provider-plugin</code> (found somewhere in PATH), and the plugin found\nat the explicit path <code>/usr/local/bin/my-plugin</code>.</li>\n</ul>\n</td>\n</tr>\n</tbody>\n</table>\n\n## `AliasOverride`     {#kubectl-config-k8s-io-v1beta1-AliasOverride}\n    \n\n**Appears in:**\n\n- [Preference](#kubectl-config-k8s-io-v1beta1-Preference)\n\n\n<p>AliasOverride stores the alias definitions.</p>\n\n\n<table class=\"table\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/config-api/kuberc.v1beta1.md"
      },
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": "kuberc (v1beta1)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preference-kubectl-config-k8s-io-v1beta1-preference",
      "type": "concept",
      "title": "`Preference`     {#kubectl-config-k8s-io-v1beta1-Preference}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aliasoverride-kubectl-config-k8s-io-v1beta1-aliasoverride",
      "type": "concept",
      "title": "`AliasOverride`     {#kubectl-config-k8s-io-v1beta1-AliasOverride}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 3776,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:allowlistentry-kubectl-config-k8s-io-v1beta1-allowlistentry",
      "type": "concept",
      "title": "`AllowlistEntry`     {#kubectl-config-k8s-io-v1beta1-AllowlistEntry}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 5383,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:commanddefaults-kubectl-config-k8s-io-v1beta1-commanddefaults",
      "type": "concept",
      "title": "`CommandDefaults`     {#kubectl-config-k8s-io-v1beta1-CommandDefaults}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 7058,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:commandoptiondefault-kubectl-config-k8s-io-v1beta1-commandoptiondefault",
      "type": "concept",
      "title": "`CommandOptionDefault`     {#kubectl-config-k8s-io-v1beta1-CommandOptionDefault}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 7858,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialpluginpolicy-kubectl-config-k8s-io-v1beta1-credentialpluginpolicy",
      "type": "concept",
      "title": "`CredentialPluginPolicy`     {#kubectl-config-k8s-io-v1beta1-CredentialPluginPolicy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 8675,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/instrumentation/slis",
      "type": "page",
      "title": "Kubernetes Component SLI Metrics",
      "summary": "High-level indicators for measuring the reliability and performance of Kubernetes components.",
      "body": "\n\n\n\nBy default, Kubernetes  publishes Service Level Indicator (SLI) metrics \nfor each Kubernetes component binary. This metric endpoint is exposed on the serving \nHTTPS port of each component, at the path `/metrics/slis`. The \n`ComponentSLIs` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\ndefaults to enabled for each Kubernetes component as of v1.27.\n\n\n\n## SLI Metrics\n\nWith SLI metrics enabled, each Kubernetes component exposes two metrics,\nlabeled per healthcheck:\n\n- a gauge (which represents the current state of the healthcheck)\n- a counter (which records the cumulative counts observed for each healthcheck state)\n\nYou can use the metric information to calculate per-component availability statistics.\nFor example, the API server checks the health of etcd. You can work out and report how\navailable or unavailable etcd has been - as reported by its client, the API server.\n\n\nThe prometheus gauge data looks like this:\n\n```\n# HELP kubernetes_healthcheck [ALPHA] This metric records the result of a single healthcheck.\n# TYPE kubernetes_healthcheck gauge\nkubernetes_healthcheck{name=\"autoregister-completion\",type=\"healthz\"} 1\nkubernetes_healthcheck{name=\"autoregister-completion\",type=\"readyz\"} 1\nkubernetes_healthcheck{name=\"etcd\",type=\"healthz\"} 1\nkubernetes_healthcheck{name=\"etcd\",type=\"readyz\"} 1\nkubernetes_healthcheck{name=\"etcd-readiness\",type=\"readyz\"} 1\nkubernetes_healthcheck{name=\"informer-sync\",type=\"readyz\"} 1\nkubernetes_healthcheck{name=\"log\",type=\"healthz\"} 1\nkubernetes_healthcheck{name=\"log\",type=\"readyz\"} 1\nkubernetes_healthcheck{name=\"ping\",type=\"healthz\"} 1\nkubernetes_healthcheck{name=\"ping\",type=\"readyz\"} 1\n```\n\nWhile the counter data looks like this:\n\n```\n# HELP kubernetes_healthchecks_total [ALPHA] This metric records the results of all healthcheck.\n# TYPE kubernetes_healthchecks_total counter\nkubernetes_healthchecks_total{name=\"autoregister-completion\",status=\"error\",type=\"readyz\"} 1\nkubernetes_healthchecks_total{name=\"autoregister-completion\",status=\"success\",type=\"healthz\"} 15\nkubernetes_healthchecks_total{name=\"autoregister-completion\",status=\"success\",type=\"readyz\"} 14\nkubernetes_healthchecks_total{name=\"etcd\",status=\"success\",type=\"healthz\"} 15\nkubernetes_healthchecks_total{name=\"etcd\",status=\"success\",type=\"readyz\"} 15\nkubernetes_healthchecks_total{name=\"etcd-readiness\",status=\"success\",type=\"readyz\"} 15\nkubernetes_healthchecks_total{name=\"informer-sync\",status=\"error\",type=\"readyz\"} 1\nkubernetes_healthchecks_total{name=\"informer-sync\",status=\"success\",type=\"readyz\"} 14\nkubernetes_healthchecks_total{name=\"log\",status=\"success\",type=\"healthz\"} 15\nkubernetes_healthchecks_total{name=\"log\",status=\"success\",type=\"readyz\"} 15\nkubernetes_healthchecks_total{name=\"ping\",status=\"success\",type=\"healthz\"} 15\nkubernetes_healthchecks_total{name=\"ping\",status=\"success\",type=\"readyz\"} 15\n```\n\n## Using this data\n\nThe component SLIs metrics endpoint is intended to be scraped at a high frequency. Scraping\nat a high frequency means that you end up with greater granularity of the gauge's signal, which\ncan be then used to calculate SLOs. The `/metrics/slis` endpoint provides the raw data necessary\nto calculate an availability SLO for the respective Kubernetes component. \n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/instrumentation/slis/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/instrumentation/slis.md"
      },
      "provenance": [
        {
          "source": "reference/instrumentation/slis.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/slis/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Component SLI Metrics"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sli-metrics",
      "type": "concept",
      "title": "SLI Metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/slis.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/slis/",
          "line_start": 498,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-this-data",
      "type": "concept",
      "title": "Using this data",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/slis.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/slis/",
          "line_start": 2985,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/instrumentation/cri-pod-container-metrics",
      "type": "page",
      "title": "CRI Pod & Container Metrics",
      "summary": "Collection of Pod & Container metrics via the CRI.",
      "body": "\n\n\n\nThe [kubelet](/docs/reference/command-line-tools-reference/kubelet/) collects pod and\ncontainer metrics via [cAdvisor](https://github.com/google/cadvisor). As an alpha feature,\nKubernetes lets you configure the collection of pod and container\nmetrics via the [Container Runtime Interface](#gloss:cri) (CRI). You\nmust enable the `PodAndContainerStatsFromCRI` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) and\nuse a compatible CRI implementation (containerd >= 1.6.0, CRI-O >= 1.23.0) to\nuse the CRI based collection mechanism.\n\n\n\n## CRI Pod & Container Metrics\n\nWith `PodAndContainerStatsFromCRI` enabled, the kubelet polls the underlying container\nruntime for pod and container stats instead of inspecting the host system directly using cAdvisor.\nThe benefits of relying on the container runtime for this information as opposed to direct\ncollection with cAdvisor include:\n\n- Potential improved performance if the container runtime already collects this information\n  during normal operations. In this case, the data can be re-used instead of being aggregated\n  again by the kubelet.\n\n- It further decouples the kubelet and the container runtime allowing collection of metrics for\n  container runtimes that don't run processes directly on the host with kubelet where they are\n  observable by cAdvisor (for example: container runtimes that use virtualization).\n  \n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/instrumentation/cri-pod-container-metrics/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/instrumentation/cri-pod-container-metrics.md"
      },
      "provenance": [
        {
          "source": "reference/instrumentation/cri-pod-container-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/cri-pod-container-metrics/",
          "line_start": null,
          "line_end": null,
          "quote": "CRI Pod & Container Metrics"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cri-pod-container-metrics",
      "type": "concept",
      "title": "CRI Pod & Container Metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/cri-pod-container-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/cri-pod-container-metrics/",
          "line_start": 684,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/instrumentation/zpages",
      "type": "page",
      "title": "Kubernetes z-pages",
      "summary": "Provides runtime diagnostics for Kubernetes components, offering insights into component runtime status and configuration flags.",
      "body": "\n\n\n\nKubernetes core components can expose a suite of _z-endpoints_ to make it easier for users\nto debug their cluster and its components. These endpoints are strictly to be used for human\ninspection to gain real time debugging information of a component binary.\nIn Kubernetes  these are **beta** features.\n\n\n\n## z-pages\n\nKubernetes v allows you to enable _z-pages_ to help you troubleshoot\nproblems with its core control plane components. These special debugging endpoints provide internal\ninformation about running components. For Kubernetes , components\nserve the following endpoints (when enabled):\n\n- [z-pages](#z-pages)\n\t- [statusz](#statusz)\n\t\t- [statusz (structured)](#statusz-structured)\n\t- [flagz](#flagz)\n\t\t- [flagz (structured)](#flagz-structured)\n\n### statusz\n\nEnabled using the `ComponentStatusz` [feature gate](/docs/reference/command-line-tools-reference/feature-gates#ComponentStatusz),\nthe `/statusz` endpoint displays high level information about the component such as its Kubernetes version, emulation version, start time and more.\n\nThe `/statusz` plain text response from the API server is similar to:\n\n```\nkube-apiserver statusz\nWarning: This endpoint is not meant to be machine parseable, has no formatting compatibility guarantees and is for debugging purposes only.\n\nStarted: Wed Oct 16 21:03:43 UTC 2024\nUp: 0 hr 00 min 16 sec\nGo version: go1.23.2\nBinary version: 1.32.0-alpha.0.1484&#43;5eeac4f21a491b-dirty\nEmulation version: 1.32.0-alpha.0.1484\nPaths: /healthz /livez /metrics /readyz /statusz /version\n```\n\n#### statusz (structured)\n\n\n\nStarting with Kubernetes v1.35, the `/statusz` endpoint supports a structured,\nversioned response format when requested with the appropriate `Accept` header.\nWithout an `Accept` header, the endpoint returns the plain text response format by default.\n\nTo request the structured response, use:\n```\nAccept: application/json;v=v1beta1;g=config.k8s.io;as=Statusz\n```\n\n\n> **Note:** If you request `application/json` without specifying all required parameters (`g`, `v`, and `as`),\nthe server will respond with `406 Not Acceptable`.\n\n\nExample structured response:\n```json\n{\n  \"kind\": \"Statusz\",\n  \"apiVersion\": \"config.k8s.io/v1beta1\",\n  \"metadata\": {\n    \"name\": \"kube-apiserver\"\n  },\n  \"startTime\": \"2025-10-29T00:30:01Z\",\n  \"uptimeSeconds\": 856,\n  \"goVersion\": \"go1.23.2\",\n  \"binaryVersion\": \"1.35.0\",\n  \"emulationVersion\": \"1.35\",\n  \"paths\": [\n    \"/healthz\",\n    \"/livez\",\n    \"/metrics\",\n    \"/readyz\",\n    \"/statusz\",\n    \"/version\"\n  ]\n}\n```\n\nThe `config.k8s.io/v1beta1` schema for the structured `/statusz` response is as follows:\n\n```go\n// Statusz is the config.k8s.io/v1beta1 schema for the /statusz endpoint.\ntype Statusz struct {\n\t// Kind is \"Statusz\".\n\tKind string `json:\"kind\"`\n\t// APIVersion is the version of the object, e.g., \"config.k8s.io/v1beta1\".\n\tAPIVersion string `json:\"apiVersion\"`\n\t// Standard object's metadata.\n\t// +optional\n\tMetadata metav1.ObjectMeta `json:\"metadata,omitempty\"`\n\t// StartTime is the time the component process was initiated.\n\tStartTime metav1.Time `json:\"startTime\"`\n\t// UptimeSeconds is the duration in seconds for which the component has been running continuously.\n\tUptimeSeconds int64 `json:\"uptimeSeconds\"`\n\t// GoVersion is the version of the Go programming language used to build the binary.\n\t// The format is not guaranteed to be consistent across different Go builds.\n\t// +optional\n\tGoVersion string `json:\"goVersion,omitempty\"`\n\t// BinaryVersion is the version of the component's binary.\n\t// The format is not guaranteed to be semantic versioning and may be an arbitrary string.\n\tBinaryVersion string `json:\"binaryVersion\"`\n\t// EmulationVersion is the Kubernetes API version which this component is emulating.\n\t// if present, formatted as \"<major>.<minor>\"\n\t// +optional\n\tEmulationVersion string `json:\"emulationVersion,omitempty\"`\n\t// MinimumCompatibilityVersion is the minimum Kubernetes API version with which the component is designed to work.\n\t// if present, formatted as \"<major>.\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/instrumentation/zpages/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/instrumentation/zpages.md"
      },
      "provenance": [
        {
          "source": "reference/instrumentation/zpages.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/zpages/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes z-pages"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:z-pages",
      "type": "concept",
      "title": "z-pages",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/zpages.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/zpages/",
          "line_start": 425,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:statusz",
      "type": "concept",
      "title": "statusz",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/zpages.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/zpages/",
          "line_start": 930,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:flagz",
      "type": "concept",
      "title": "flagz",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/zpages.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/zpages/",
          "line_start": 4516,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/instrumentation/node-metrics",
      "type": "page",
      "title": "Node metrics data",
      "summary": "Mechanisms for accessing metrics at node, volume, pod and container level, as seen by the kubelet.",
      "body": "The [kubelet](/docs/reference/command-line-tools-reference/kubelet/)\ngathers metric statistics at the node, volume, pod and container level,\nand emits this information in the\n[Summary API](/docs/reference/config-api/kubelet-stats.v1alpha1/).\n\nYou can send a proxied request to the stats summary API via the\nKubernetes API server.\n\nHere is an example of a Summary API request for a node named `minikube`:\n\n```shell\nkubectl get --raw \"/api/v1/nodes/minikube/proxy/stats/summary\"\n```\n\nHere is the same API call using `curl`:\n\n```shell\n# You need to run \"kubectl proxy\" first\n# Change 8080 to the port that \"kubectl proxy\" assigns\ncurl http://localhost:8080/api/v1/nodes/minikube/proxy/stats/summary\n```\n\n\n> **Note:** Beginning with `metrics-server` 0.6.x, `metrics-server` queries the `/metrics/resource`\nkubelet endpoint, and not `/stats/summary`.\n\n\n## Summary metrics API source {#summary-api-source}\n\nBy default, Kubernetes fetches node summary metrics data using an embedded\n[cAdvisor](https://github.com/google/cadvisor) that runs within the kubelet. If you \nenable the `PodAndContainerStatsFromCRI` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) \nin your cluster, and you use a container runtime that supports statistics access via\n[Container Runtime Interface](#gloss:cri) (CRI), then\nthe kubelet [fetches Pod- and container-level metric data using CRI](/docs/reference/instrumentation/cri-pod-container-metrics), and not via cAdvisor.\n\n## Pressure Stall Information (PSI) {#psi}\n\n\n\nAs a stable feature, Kubernetes lets you configure kubelet to collect Linux kernel\n[Pressure Stall Information](https://docs.kernel.org/accounting/psi.html)\n(PSI) for CPU, memory, and I/O usage. The information is collected at node, pod and container level.\nSee [Summary API](/docs/reference/config-api/kubelet-stats.v1alpha1/) for detailed schema.\nStarting with Kubernetes v.1.36, the `KubeletPSI` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) is locked to true and cannot be disabled. The information is also exposed in\n[Prometheus metrics](/docs/concepts/cluster-administration/system-metrics#psi-metrics).\n\nYou can learn how to interpret the PSI metrics in [Understand PSI Metrics](/docs/reference/instrumentation/understand-psi-metrics/).\n\n### Requirements\n\nPressure Stall Information requires:\n\n- [Linux kernel versions 4.20 or later](/docs/reference/node/kernel-version-requirements#requirements-psi).\n- [cgroup v2](/docs/concepts/architecture/cgroups)\n\n## \n\nThe task pages for [Troubleshooting Clusters](/docs/tasks/debug/debug-cluster/) discuss\nhow to use a metrics pipeline that rely on these data.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/instrumentation/node-metrics/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/instrumentation/node-metrics.md"
      },
      "provenance": [
        {
          "source": "reference/instrumentation/node-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/node-metrics/",
          "line_start": null,
          "line_end": null,
          "quote": "Node metrics data"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:summary-metrics-api-source-summary-api-source",
      "type": "concept",
      "title": "Summary metrics API source {#summary-api-source}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/node-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/node-metrics/",
          "line_start": 862,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pressure-stall-information-psi-psi",
      "type": "concept",
      "title": "Pressure Stall Information (PSI) {#psi}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/node-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/node-metrics/",
          "line_start": 1515,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/instrumentation/metrics",
      "type": "page",
      "title": "Kubernetes Metrics Reference",
      "summary": "Details of the metric data that Kubernetes components export.",
      "body": "## Metrics (v1.36)\n\n\n\nThis page details the metrics that different Kubernetes components export. You can query the metrics endpoint for these \ncomponents using an HTTP scrape, and fetch the current metrics data in Prometheus format.\n\n### List of Stable Kubernetes Metrics\n\nStable metrics observe strict API contracts and no labels can be added or removed from stable metrics during their lifetime.\n\n<div class=\"metrics\"><div class=\"metric\" data-stability=\"stable\">\n\t<div class=\"metric_name\">apiserver_admission_controller_admission_duration_seconds</div>\n\t<div class=\"metric_help\">Admission controller latency histogram in seconds, identified by name and broken out for each operation and API resource and type (validate or admit).</div>\n\t<ul>\n\t<li><label class=\"metric_detail\">Stability Level:</label><span class=\"metric_stability_level\">STABLE</span></li>\n\t<li data-type=\"histogram\"><label class=\"metric_detail\">Type:</label> <span class=\"metric_type\">Histogram</span></li>\n\t<li class=\"metric_labels_varying\"><label class=\"metric_detail\">Labels:</label><span class=\"metric_label\">name</span><span class=\"metric_label\">operation</span><span class=\"metric_label\">rejected</span><span class=\"metric_label\">type</span></li><li class=\"metric_component_endpoints\"><label class=\"metric_detail\">Components:</label><ul><li>kube-apiserver (/metrics)</li></ul></li></ul>\n\t</div><div class=\"metric\" data-stability=\"stable\">\n\t<div class=\"metric_name\">apiserver_admission_step_admission_duration_seconds</div>\n\t<div class=\"metric_help\">Admission sub-step latency histogram in seconds, broken out for each operation and API resource and step type (validate or admit).</div>\n\t<ul>\n\t<li><label class=\"metric_detail\">Stability Level:</label><span class=\"metric_stability_level\">STABLE</span></li>\n\t<li data-type=\"histogram\"><label class=\"metric_detail\">Type:</label> <span class=\"metric_type\">Histogram</span></li>\n\t<li class=\"metric_labels_varying\"><label class=\"metric_detail\">Labels:</label><span class=\"metric_label\">operation</span><span class=\"metric_label\">rejected</span><span class=\"metric_label\">type</span></li><li class=\"metric_component_endpoints\"><label class=\"metric_detail\">Components:</label><ul><li>kube-apiserver (/metrics)</li></ul></li></ul>\n\t</div><div class=\"metric\" data-stability=\"stable\">\n\t<div class=\"metric_name\">apiserver_admission_webhook_admission_duration_seconds</div>\n\t<div class=\"metric_help\">Admission webhook latency histogram in seconds, identified by name and broken out for each operation and API resource and type (validate or admit).</div>\n\t<ul>\n\t<li><label class=\"metric_detail\">Stability Level:</label><span class=\"metric_stability_level\">STABLE</span></li>\n\t<li data-type=\"histogram\"><label class=\"metric_detail\">Type:</label> <span class=\"metric_type\">Histogram</span></li>\n\t<li class=\"metric_labels_varying\"><label class=\"metric_detail\">Labels:</label><span class=\"metric_label\">name</span><span class=\"metric_label\">operation</span><span class=\"metric_label\">rejected</span><span class=\"metric_label\">type</span></li><li class=\"metric_component_endpoints\"><label class=\"metric_detail\">Components:</label><ul><li>kube-apiserver (/metrics)</li></ul></li></ul>\n\t</div><div class=\"metric\" data-stability=\"stable\">\n\t<div class=\"metric_name\">apiserver_current_inflight_requests</div>\n\t<div class=\"metric_help\">Maximal number of currently used inflight request limit of this apiserver per request kind in last second.</div>\n\t<ul>\n\t<li><label class=\"metric_detail\">Stability Level:</label><span class=\"metric_stability_level\">STABLE</span></li>\n\t<li data-type=\"gauge\"><label class=\"metric_detail\">Type:</label> <span class=\"metric_type\">Gauge</span></li>\n\t<li class=\"metric_labels_varying\"><label class=\"metric_detail\">Labels:</label><span class=\"metric_label\">request_kind</span></li><li class=\"metric_component_endpoints\"><label class=\"metric_detail\">Components:</label><ul><li>kube-apiserver (/metrics)</li></ul></li></ul>\n\t</div><div class=\"metric\" data-stability=\"stable\"\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/instrumentation/metrics/",
      "meta": {
        "weight": null,
        "rel_path": "reference/instrumentation/metrics.md"
      },
      "provenance": [
        {
          "source": "reference/instrumentation/metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/metrics/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Metrics Reference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metrics-v1-36",
      "type": "concept",
      "title": "Metrics (v1.36)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/metrics/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-of-stable-kubernetes-metrics",
      "type": "concept",
      "title": "List of Stable Kubernetes Metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/metrics/",
          "line_start": 303,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-of-beta-kubernetes-metrics",
      "type": "concept",
      "title": "List of Beta Kubernetes Metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/metrics/",
          "line_start": 30890,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-of-alpha-kubernetes-metrics",
      "type": "concept",
      "title": "List of Alpha Kubernetes Metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/metrics/",
          "line_start": 60766,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/instrumentation/_index",
      "type": "page",
      "title": "Instrumentation",
      "summary": "A collection of instrumentation-related resources and guides.",
      "body": "A collection of instrumentation-related resources and guides.\n\n**Why it matters**\nProvides a centralized location for instrumentation information, making it easier to find relevant documentation.\n\n**Key facts**\n- Instrumentation is used to monitor and troubleshoot Kubernetes clusters.\n- It provides insights into cluster performance.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/instrumentation/_index/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/instrumentation/_index.md"
      },
      "provenance": [
        {
          "source": "reference/instrumentation/_index.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Instrumentation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/instrumentation/understand-psi-metrics",
      "type": "page",
      "title": "Understand Pressure Stall Information (PSI) Metrics",
      "summary": "Detailed explanation of Pressure Stall Information (PSI) metrics and how to use them to identify resource pressure in Kubernetes.",
      "body": "\n\n\n\nAs a stable feature, Kubernetes lets you configure the kubelet to collect Linux kernel\n[Pressure Stall Information](https://docs.kernel.org/accounting/psi.html)\n(PSI) for CPU, memory, and I/O usage. The information is collected at node, pod and container level.\nStarting with Kubernetes v.1.36, the `KubeletPSI` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) is locked to true and cannot be disabled.\n\nPSI metrics are exposed through two different sources:\n- The kubelet's [Summary API](/docs/reference/config-api/kubelet-stats.v1alpha1/), which provides PSI data at the node, pod, and container level.\n- The `/metrics/cadvisor` endpoint on the kubelet, which exposes PSI metrics in the [Prometheus format](/docs/concepts/cluster-administration/system-metrics#psi-metrics).\n\n### Requirements\n\nPressure Stall Information requires the following on your Linux nodes:\n\n- The Linux kernel must be version **4.20 or newer**.\n- The kernel must be compiled with the `CONFIG_PSI=y` option. Most modern distributions enable this by default. You can check your kernel's configuration by running `zgrep CONFIG_PSI /proc/config.gz`.\n- Some Linux distributions may compile PSI into the kernel but disable it by default. If so, you need to enable it at boot time by adding the `psi=1` parameter to the kernel command line.\n- The node must be using [cgroup v2](/docs/concepts/architecture/cgroups).\n\n\n\n## Understanding PSI Metrics\n\nPressure Stall Information (PSI) metrics are provided for three resources: CPU, memory, and I/O. They are categorized into two main types of pressure: `some` and `full`.\n\n*   **`some`**: This value indicates that some tasks (one or more) are stalled on a resource. For example, if some tasks are waiting for I/O, this metric will increase. This can be an early indicator of resource contention.\n*   **`full`**: This value indicates that *all* non-idle tasks are stalled on a resource simultaneously. This signifies a more severe resource shortage, where the entire system is unable to make progress.\n\nEach pressure type provides four metrics: `avg10`, `avg60`, `avg300`, and `total`. The `avg` values represent the percentage of wall-clock time that tasks were stalled over 10-second, 60-second, and 5-minute moving averages. The `total` value is a cumulative counter in microseconds showing the total time tasks have been stalled.\n\nLet's take for example the following query from the Summary API:  \n`kubectl get --raw \"/api/v1/nodes/$(kubectl get nodes -o jsonpath='{.items[0].metadata.name}')/proxy/stats/summary\" | jq '.pods[].containers[] | select(.name==\"<CONTAINER_NAME>\") | {name, cpu: .cpu.psi, memory: .memory.psi, io: .io.psi}'`. \nThis returns the information in a json format as such. \n\n```\n{\n  \"name\": \"<CONTAINER_NAME>\",\n  \"cpu\": {\n    \"full\": {\n      \"total\": 0,\n      \"avg10\": 0,\n      \"avg60\": 0,\n      \"avg300\": 0\n    },\n    \"some\": {\n      \"total\": 35232438,\n      \"avg10\": 0.74,\n      \"avg60\": 0.52,\n      \"avg300\": 0.21,\n    },  \n  },\n  \"memory\": {\n    \"full\": {\n      \"total\": 539105,\n      \"avg10\": 0,\n      \"avg60\": 0,\n      \"avg300\": 0\n    },\n    \"some\": {\n      \"total\": 658164,\n      \"avg10\": 0.01,\n      \"avg60\": 0.01,\n      \"avg300\": 0.00,\n    },\n    }\n  },\n  \"io\": {\n    \"full\": {\n      \"total\": 33190987,\n      \"avg10\": 0.31,\n      \"avg60\": 0.22,\n      \"avg300\": 0.05,\n    },\n    \"some\": {\n      \"total\": 40809937,\n      \"avg10\": 0.52,\n      \"avg60\": 0.45,\n      \"avg300\": 0.12,\n    }\n  }\n}\n```\n\nHere is a simple spike scenario. The cpu.some `avg10` value of `0.74` indicates that in the last 10 seconds, at least one task in this container was stalled on the CPU for 0.74% of the time (0.0074 seconds or 74 milliseconds). Because `avg10` (0.74) is significantly higher than `avg300` (0.21) on the same resource, this suggests a recent surge in resource contention rather than a sustained long-term bottleneck. If monitored continuously and the `avg300` metrics increase as well, we can diagnose a more serious, lasting i\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/instrumentation/understand-psi-metrics.md"
      },
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": null,
          "line_end": null,
          "quote": "Understand Pressure Stall Information (PSI) Metrics"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-psi-metrics",
      "type": "concept",
      "title": "Understanding PSI Metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 1502,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-scenarios",
      "type": "concept",
      "title": "Example Scenarios",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 4942,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generating-cpu-pressure",
      "type": "concept",
      "title": "Generating CPU Pressure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 5168,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generating-memory-pressure",
      "type": "concept",
      "title": "Generating Memory Pressure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 7044,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generating-i-o-pressure",
      "type": "concept",
      "title": "Generating I/O Pressure",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 8906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/instrumentation/native-histograms",
      "type": "page",
      "title": "Native Histogram Support for Kubernetes Metrics",
      "summary": "",
      "body": "\n\n\n\nKubernetes components can expose histogram metrics in\n[Prometheus Native Histogram](https://prometheus.io/docs/specs/native_histograms/) format,\nalongside the classic histogram format. Native histograms use exponential bucket boundaries\ninstead of fixed boundaries, providing significant storage efficiency, improved query\nperformance, and finer-grained visibility into distributions.\n\n\n\n## Before you begin\n\nTo use native histograms, you need:\n\n- **Kubernetes v1.36 or later** with the `NativeHistograms`\n  [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) enabled.\n- **Prometheus 2.40 or later** to scrape and store native histograms.\n  Prometheus 3.0+ is recommended for per-job configuration.\n\n## What are native histograms?\n\nClassic Prometheus histograms use fixed bucket boundaries (for example,\n`[0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1, 2.5, 5, 10]` seconds).\nEach bucket creates a separate time series (`_bucket`, `_count`, `_sum`),\nwhich can lead to:\n\n- **High storage costs** at scale, because each histogram generates many time series.\n- **Accuracy issues**, because data points within a wide bucket range are\n  indistinguishable. For example, a request completing in 1µs and one completing\n  in 4ms both fall into the same `le=\"0.005\"` bucket.\n\n[Native histograms](https://prometheus.io/docs/specs/native_histograms/)\naddress these limitations by using exponential bucket boundaries\nthat automatically adjust to the data distribution. Benefits include:\n\n- **~10x reduction in time series count** per histogram metric, significantly\n  reducing Prometheus storage and improving query performance.\n- **Finer-grained resolution** for detecting performance regressions and setting\n  precise SLO thresholds.\n\n## How it works\n\nWhen the `NativeHistograms` feature gate is enabled, Kubernetes components expose\nhistogram metrics in both classic and native formats simultaneously (dual exposition).\nThe format returned depends on the `Accept` header in the HTTP request\n([Prometheus content negotiation](https://prometheus.io/docs/instrumenting/exposition_formats/#content-negotiation)).\nPrometheus sets this header automatically based on your scrape configuration;\nyou only need to be aware of it when querying the `/metrics` endpoint directly.\n\n- **Text format** (Accept: `text/plain`, OpenMetrics 1.0): Returns only classic histogram\n  buckets. Backward compatible with all existing tooling.\n  ```\n  # Classic histogram buckets (always present)\n  apiserver_request_duration_seconds_bucket{le=\"0.005\"} 1000\n  apiserver_request_duration_seconds_bucket{le=\"0.01\"} 2000\n  ...\n  apiserver_request_duration_seconds_bucket{le=\"+Inf\"} 10000\n  apiserver_request_duration_seconds_count 10000\n  apiserver_request_duration_seconds_sum 450.5\n  ```\n\n- **Protobuf format** (Accept: `application/vnd.google.protobuf`): Contains both classic\n  buckets and native histogram data. Prometheus automatically requests this\n  format when `scrape_native_histograms: true` is set in the\n  [Prometheus scrape configuration](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config)\n  for the corresponding scrape job.\n\nThis dual exposition strategy ensures:\n\n- Existing dashboards and alerts continue to work without changes.\n- Users can migrate queries to native histograms at their own pace.\n- Prometheus stores whichever format it is configured to ingest.\n\n## Enabling native histograms\n\nEnabling native histograms is a two-step process: enable the feature gate on\nKubernetes components, and configure Prometheus to scrape native histograms.\n\n### Step 1: Enable the Kubernetes feature gate\n\nEnable the `NativeHistograms` feature gate on the Kubernetes components\nyou want to expose native histograms from:\n\n```bash\n--feature-gates=NativeHistograms=true\n```\n\nThis feature gate applies to the following components:\n- kube-apiserver\n- kube-controller-manager\n- kube-scheduler\n- kubelet\n- kube-proxy\n\nEach component's metrics are independent; you can enabl\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/instrumentation/native-histograms.md"
      },
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": null,
          "line_end": null,
          "quote": "Native Histogram Support for Kubernetes Metrics"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:before-you-begin",
      "type": "concept",
      "title": "Before you begin",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 481,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-are-native-histograms",
      "type": "concept",
      "title": "What are native histograms?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 817,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-native-histograms",
      "type": "concept",
      "title": "Enabling native histograms",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 3494,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrating-dashboards-and-alerts",
      "type": "concept",
      "title": "Migrating dashboards and alerts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 6378,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disabling-native-histograms",
      "type": "concept",
      "title": "Disabling native histograms",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 7701,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-1-enable-the-kubernetes-feature-gate",
      "type": "concept",
      "title": "Step 1: Enable the Kubernetes feature gate",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 3680,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:step-2-configure-prometheus",
      "type": "concept",
      "title": "Step 2: Configure Prometheus",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 4135,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/_index",
      "type": "page",
      "title": "Setup tools",
      "summary": "A collection of setup tools and guides.",
      "body": "A collection of setup tools and guides.\n\n**Why it matters**\nProvides a centralized location for setup tool information, making it easier to find relevant documentation.\n\n**Key facts**\n- Setup tools are used to automate cluster setup.\n- It simplifies the process of setting up Kubernetes clusters.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/_index/",
      "meta": {
        "weight": 100,
        "rel_path": "reference/setup-tools/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Setup tools"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-alpha",
      "type": "page",
      "title": "kubeadm alpha",
      "summary": "",
      "body": "\n> **Caution:** `kubeadm alpha` provides a preview of a set of features made available for gathering feedback\n from the community. Please try it out and give us feedback!\n\n\nCurrently there are no experimental commands under `kubeadm alpha`.\n\n## \n\n* [kubeadm init](/docs/reference/setup-tools/kubeadm/kubeadm-init/) to bootstrap a Kubernetes control-plane node\n* [kubeadm join](/docs/reference/setup-tools/kubeadm/kubeadm-join/) to connect a node to the cluster\n* [kubeadm reset](/docs/reference/setup-tools/kubeadm/kubeadm-reset/) to revert any changes made to this host by `kubeadm init` or `kubeadm join`\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-alpha/",
      "meta": {
        "weight": 90,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-alpha.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-alpha.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-alpha/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm alpha"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-version",
      "type": "page",
      "title": "kubeadm version",
      "summary": "kubeadm version displays the kubeadm version and Git commit hash.",
      "body": "kubeadm version displays the kubeadm version and Git commit hash.\n\n**Why it matters**\nKnowing the kubeadm version is essential for troubleshooting and compatibility purposes.\n\n**Key facts**\n- Displays the kubeadm version and Git commit hash\n- Useful for troubleshooting and compatibility",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-version/",
      "meta": {
        "weight": 80,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-version.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-version.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-version/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm version"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "type": "page",
      "title": "kubeadm init",
      "summary": "",
      "body": "\n\nThis command initializes a Kubernetes control plane node.\n\n\n\n\n\n### Init workflow {#init-workflow}\n\n`kubeadm init` bootstraps a Kubernetes control plane node by executing the\nfollowing steps:\n\n1. Runs a series of pre-flight checks to validate the system state\n   before making changes. Some checks only trigger warnings, others are\n   considered errors and will exit kubeadm until the problem is corrected or the\n   user specifies `--ignore-preflight-errors=<list-of-errors>`.\n\n1. Generates a self-signed CA to set up identities for each component in the cluster. The user can provide their\n   own CA cert and/or key by dropping it in the cert directory configured via `--cert-dir`\n   (`/etc/kubernetes/pki` by default).\n   The API server certs will have additional SAN entries for any `--apiserver-cert-extra-sans`\n   arguments, lowercased if necessary.\n\n1. Writes kubeconfig files in `/etc/kubernetes/` for the kubelet, the controller-manager, and the\n   scheduler to connect to the API server, each with its own identity. Also\n   additional kubeconfig files are written, for kubeadm as administrative entity (`admin.conf`)\n   and for a super admin user that can bypass RBAC (`super-admin.conf`).\n\n1. Generates static Pod manifests for the API server,\n   controller-manager and scheduler. In case an external etcd is not provided,\n   an additional static Pod manifest is generated for etcd.\n\n   Static Pod manifests are written to `/etc/kubernetes/manifests`; the kubelet\n   watches this directory for Pods to create on startup.\n\n   Once control plane Pods are up and running, the `kubeadm init` sequence can continue.\n\n1. Apply labels and taints to the control plane node so that no additional workloads will\n   run there.\n\n1. Generates the token that additional nodes can use to register\n   themselves with a control plane in the future. Optionally, the user can provide a\n   token via `--token`, as described in the\n   [kubeadm token](/docs/reference/setup-tools/kubeadm/kubeadm-token/) documents.\n\n1. Makes all the necessary configurations for allowing node joining with the\n   [Bootstrap Tokens](/docs/reference/access-authn-authz/bootstrap-tokens/) and\n   [TLS Bootstrap](/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/)\n   mechanism:\n\n   - Write a ConfigMap for making available all the information required\n     for joining, and set up related RBAC access rules.\n\n   - Let Bootstrap Tokens access the CSR signing API.\n\n   - Configure auto-approval for new CSR requests.\n\n   See [kubeadm join](/docs/reference/setup-tools/kubeadm/kubeadm-join/) for additional information.\n\n1. Installs a DNS server (CoreDNS) and the kube-proxy addon components via the API server.\n   In Kubernetes version 1.11 and later CoreDNS is the default DNS server.\n   Please note that although the DNS server is deployed, it will not be scheduled until CNI is installed.\n\n   \n> **Warning:** kube-dns usage with kubeadm is deprecated as of v1.18 and is removed in v1.21.\n\n\n### Using init phases with kubeadm {#init-phases}\n\nkubeadm allows you to create a control plane node in phases using the `kubeadm init phase` command.\n\nTo view the ordered list of phases and sub-phases you can call `kubeadm init --help`. The list\nwill be located at the top of the help screen and each phase will have a description next to it.\nNote that by calling `kubeadm init` all of the phases and sub-phases will be executed in this exact order.\n\nSome phases have unique flags, so if you want to have a look at the list of available options add\n`--help`, for example:\n\n```shell\nsudo kubeadm init phase control-plane controller-manager --help\n```\n\nYou can also use `--help` to see the list of sub-phases for a certain parent phase:\n\n```shell\nsudo kubeadm init phase control-plane --help\n```\n\n`kubeadm init` also exposes a flag called `--skip-phases` that can be used to skip certain phases.\nThe flag accepts a list of phase names and the names can be taken from the above ordered list.\n\nAn example:\n\n```shell\nsudo kubeadm ini\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-init.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm init"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:init-workflow-init-workflow",
      "type": "concept",
      "title": "Init workflow {#init-workflow}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-init-phases-with-kubeadm-init-phases",
      "type": "concept",
      "title": "Using init phases with kubeadm {#init-phases}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 3074,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-kubeadm-init-with-a-configuration-file-config-file",
      "type": "concept",
      "title": "Using kubeadm init with a configuration file {#config-file}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 4846,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-kubeadm-init-with-feature-gates-feature-gates",
      "type": "concept",
      "title": "Using kubeadm init with feature gates {#feature-gates}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 5934,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:adding-kube-proxy-parameters-kube-proxy",
      "type": "concept",
      "title": "Adding kube-proxy parameters {#kube-proxy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 12906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:passing-custom-flags-to-control-plane-components-control-plane-flags",
      "type": "concept",
      "title": "Passing custom flags to control plane components {#control-plane-flags}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 13264,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-kubeadm-without-an-internet-connection-without-internet-connection",
      "type": "concept",
      "title": "Running kubeadm without an Internet connection {#without-internet-connection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 13507,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-custom-images-custom-images",
      "type": "concept",
      "title": "Using custom images {#custom-images}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 14101,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:uploading-control-plane-certificates-to-the-cluster",
      "type": "concept",
      "title": "Uploading control plane certificates to the cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 15900,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificate-management-with-kubeadm",
      "type": "concept",
      "title": "Certificate management with kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 17076,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managing-the-kubeadm-drop-in-file-for-the-kubelet-kubelet-drop-in",
      "type": "concept",
      "title": "Managing the kubeadm drop-in file for the kubelet {#kubelet-drop-in}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 17384,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:use-kubeadm-with-cri-runtimes",
      "type": "concept",
      "title": "Use kubeadm with CRI runtimes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 17857,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:setting-the-node-name",
      "type": "concept",
      "title": "Setting the node name",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 18120,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:automating-kubeadm",
      "type": "concept",
      "title": "Automating kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 18549,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/implementation-details",
      "type": "page",
      "title": "Implementation details",
      "summary": "",
      "body": "\n\n\n\n`kubeadm init` and `kubeadm join` together provide a nice user experience for creating a\nbare Kubernetes cluster from scratch, that aligns with the best-practices.\nHowever, it might not be obvious _how_ kubeadm does that.\n\nThis document provides additional details on what happens under the hood, with the aim of sharing\nknowledge on the best practices for a Kubernetes cluster.\n\n\n\n## Core design principles\n\nThe cluster that `kubeadm init` and `kubeadm join` set up should be:\n\n- **Secure**: It should adopt latest best-practices like:\n  - enforcing RBAC\n  - using the Node Authorizer\n  - using secure communication between the control plane components\n  - using secure communication between the API server and the kubelets\n  - lock-down the kubelet API\n  - locking down access to the API for system components like the kube-proxy and CoreDNS\n  - locking down what a Bootstrap Token can access\n- **User-friendly**: The user should not have to run anything more than a couple of commands:\n  - `kubeadm init`\n  - `export KUBECONFIG=/etc/kubernetes/admin.conf`\n  - `kubectl apply -f <network-plugin-of-choice.yaml>`\n  - `kubeadm join --token <token> <endpoint>:<port>`\n- **Extendable**:\n  - It should _not_ favor any particular network provider. Configuring the cluster network is out-of-scope\n  - It should provide the possibility to use a config file for customizing various parameters\n\n## Constants and well-known values and paths\n\nIn order to reduce complexity and to simplify development of higher level tools that build on top of kubeadm, it uses a\nlimited set of constant values for well-known paths and file names.\n\nThe Kubernetes directory `/etc/kubernetes` is a constant in the application, since it is clearly the given path\nin a majority of cases, and the most intuitive location; other constant paths and file names are:\n\n- `/etc/kubernetes/manifests` as the path where the kubelet should look for static Pod manifests.\n  Names of static Pod manifests are:\n\n  - `etcd.yaml`\n  - `kube-apiserver.yaml`\n  - `kube-controller-manager.yaml`\n  - `kube-scheduler.yaml`\n\n- `/etc/kubernetes/` as the path where kubeconfig files with identities for control plane\n  components are stored. Names of kubeconfig files are:\n\n  - `kubelet.conf` (`bootstrap-kubelet.conf` during TLS bootstrap)\n  - `controller-manager.conf`\n  - `scheduler.conf`\n  - `admin.conf` for the cluster admin and kubeadm itself\n  - `super-admin.conf` for the cluster super-admin that can bypass RBAC\n\n- Names of certificates and key files:\n\n  - `ca.crt`, `ca.key` for the Kubernetes certificate authority\n  - `apiserver.crt`, `apiserver.key` for the API server certificate\n  - `apiserver-kubelet-client.crt`, `apiserver-kubelet-client.key` for the client certificate used\n    by the API server to connect to the kubelets securely\n  - `sa.pub`, `sa.key` for the key used by the controller manager when signing ServiceAccount\n  - `front-proxy-ca.crt`, `front-proxy-ca.key` for the front proxy certificate authority\n  - `front-proxy-client.crt`, `front-proxy-client.key` for the front proxy client\n\n## The kubeadm configuration file format\n\nMost kubeadm commands support a `--config` flag which allows passing a configuration file from\ndisk. The configuration file format follows the common Kubernetes API `apiVersion` / `kind` scheme,\nbut is considered a component configuration format. Several Kubernetes components, such as the kubelet,\nalso support file-based configuration.\n\nDifferent kubeadm subcommands require a different `kind` of configuration file.\nFor example, `InitConfiguration` for `kubeadm init`, `JoinConfiguration` for `kubeadm join`, `UpgradeConfiguration` for `kubeadm upgrade` and `ResetConfiguration`\nfor `kubeadm reset`.\n\nThe command `kubeadm config migrate` can be used to migrate an older format configuration\nfile to a newer (current) configuration format. The kubeadm tool only supports migrating from\ndeprecated configuration formats to the current format.\n\nSee the [kubeadm configuration reference](/do\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
      "meta": {
        "weight": 100,
        "rel_path": "reference/setup-tools/kubeadm/implementation-details.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": null,
          "line_end": null,
          "quote": "Implementation details"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:core-design-principles",
      "type": "concept",
      "title": "Core design principles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 477,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:constants-and-well-known-values-and-paths",
      "type": "concept",
      "title": "Constants and well-known values and paths",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 1482,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-kubeadm-configuration-file-format",
      "type": "concept",
      "title": "The kubeadm configuration file format",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 3159,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-workflow-internal-design",
      "type": "concept",
      "title": "kubeadm init workflow internal design",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 4164,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-join-phases-internal-design",
      "type": "concept",
      "title": "kubeadm join phases internal design",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 28656,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tls-bootstrap",
      "type": "concept",
      "title": "TLS Bootstrap",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 32066,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-workflow-internal-design",
      "type": "concept",
      "title": "kubeadm upgrade workflow internal design",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 33142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-reset-workflow-internal-design",
      "type": "concept",
      "title": "kubeadm reset workflow internal design",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 37168,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preflight-checks",
      "type": "concept",
      "title": "Preflight checks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 4736,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generate-the-necessary-certificates",
      "type": "concept",
      "title": "Generate the necessary certificates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 7357,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generate-kubeconfig-files-for-control-plane-components",
      "type": "concept",
      "title": "Generate kubeconfig files for control plane components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 10495,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generate-static-pod-manifests-for-control-plane-components",
      "type": "concept",
      "title": "Generate static Pod manifests for control plane components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 14156,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generate-static-pod-manifest-for-local-etcd",
      "type": "concept",
      "title": "Generate static Pod manifest for local etcd",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 21115,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:wait-for-the-control-plane-to-come-up",
      "type": "concept",
      "title": "Wait for the control plane to come up",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 22081,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:save-the-kubeadm-clusterconfiguration-in-a-configmap-for-later-reference",
      "type": "concept",
      "title": "Save the kubeadm ClusterConfiguration in a ConfigMap for later reference",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 22444,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mark-the-node-as-control-plane",
      "type": "concept",
      "title": "Mark the node as control-plane",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 23181,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-tls-bootstrapping-for-node-joining",
      "type": "concept",
      "title": "Configure TLS-Bootstrapping for node joining",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 23694,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:install-addons",
      "type": "concept",
      "title": "Install addons",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 27506,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:discovery-cluster-info",
      "type": "concept",
      "title": "Discovery cluster-info",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 29697,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-plan",
      "type": "concept",
      "title": "kubeadm upgrade plan",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 33936,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-diff",
      "type": "concept",
      "title": "kubeadm upgrade diff",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 34180,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-apply",
      "type": "concept",
      "title": "kubeadm upgrade apply",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 34432,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-node",
      "type": "concept",
      "title": "kubeadm upgrade node",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 35879,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade",
      "type": "page",
      "title": "kubeadm upgrade",
      "summary": "",
      "body": "\n`kubeadm upgrade` is a user-friendly command that wraps complex upgrading logic\nbehind one command, with support for both planning an upgrade and actually performing it.\n\n\n\n\n## kubeadm upgrade guidance\n\nThe steps for performing an upgrade using kubeadm are outlined in [this document](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).\nFor older versions of kubeadm, please refer to older documentation sets of the Kubernetes website.\n\nYou can use `kubeadm upgrade diff` to see the changes that would be applied to static pod manifests.\n\nIn Kubernetes v1.15.0 and later, `kubeadm upgrade apply` and `kubeadm upgrade node` will also\nautomatically renew the kubeadm managed certificates on this node, including those stored in kubeconfig files.\nTo opt-out, it is possible to pass the flag `--certificate-renewal=false`. For more details about certificate\nrenewal see the [certificate management documentation](/docs/tasks/administer-cluster/kubeadm/kubeadm-certs).\n\n\nThe commands `kubeadm upgrade apply` and `kubeadm upgrade plan` have a legacy `--config`\nflag which makes it possible to reconfigure the cluster, while performing planning or upgrade of that particular\ncontrol-plane node. Please be aware that the upgrade workflow was not designed for this scenario and there are\nreports of unexpected results.\n\n\n## kubeadm upgrade plan {#cmd-upgrade-plan}\n\n\n## kubeadm upgrade apply  {#cmd-upgrade-apply}\n\n\n## kubeadm upgrade diff {#cmd-upgrade-diff}\n\n\n## kubeadm upgrade node {#cmd-upgrade-node}\n\n\n\n## \n\n* [kubeadm config](/docs/reference/setup-tools/kubeadm/kubeadm-config/) if you initialized your cluster using kubeadm v1.7.x or lower, to configure your cluster for `kubeadm upgrade`\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-upgrade.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm upgrade"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-guidance",
      "type": "concept",
      "title": "kubeadm upgrade guidance",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-plan-cmd-upgrade-plan",
      "type": "concept",
      "title": "kubeadm upgrade plan {#cmd-upgrade-plan}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 1375,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-apply-cmd-upgrade-apply",
      "type": "concept",
      "title": "kubeadm upgrade apply  {#cmd-upgrade-apply}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 1488,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-diff-cmd-upgrade-diff",
      "type": "concept",
      "title": "kubeadm upgrade diff {#cmd-upgrade-diff}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 1605,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-node-cmd-upgrade-node",
      "type": "concept",
      "title": "kubeadm upgrade node {#cmd-upgrade-node}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 1718,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "type": "page",
      "title": "kubeadm init phase",
      "summary": "",
      "body": "`kubeadm init phase` enables you to invoke atomic steps of the bootstrap process.\nHence, you can let kubeadm do some of the work and you can fill in the gaps\nif you wish to apply customization.\n\n`kubeadm init phase` is consistent with the [kubeadm init workflow](/docs/reference/setup-tools/kubeadm/kubeadm-init/#init-workflow),\nand behind the scene both use the same code.\n\n## kubeadm init phase preflight {#cmd-phase-preflight}\n\nUsing this command you can execute preflight checks on a control-plane node.\n\n\n\n\n\n## kubeadm init phase certs {#cmd-phase-certs}\n\nCan be used to create all required certificates by kubeadm.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n## kubeadm init phase kubeconfig {#cmd-phase-kubeconfig}\n\nYou can create all required kubeconfig files by calling the `all` subcommand or call them individually.\n\n\n\n\n\n\n\n\n\n\n\n## kubeadm init phase etcd {#cmd-phase-etcd}\n\nUse the following phase to create a local etcd instance based on a static Pod file.\n\n\n\n\n\n\n## kubeadm init phase control-plane {#cmd-phase-control-plane}\n\nUsing this phase you can create all required static Pod files for the control plane components.\n\n\n\n\n\n\n\n\n\n## kubeadm init phase kubelet-start {#cmd-phase-kubelet-start}\n\nThis phase will write the kubelet configuration file and environment file and then start the kubelet.\n\n\n\n\n\n## kubeadm init phase wait-control-plane {#cmd-phase-wait-control-plane}\n\nIn this phase kubeadm will wait until the control plane components start.\n\n\n\n\n\n## kubeadm init phase upload-config {#cmd-phase-upload-config}\n\nYou can use this command to upload the kubeadm configuration to your cluster.\nAlternatively, you can use [kubeadm config](/docs/reference/setup-tools/kubeadm/kubeadm-config/).\n\n\n\n\n\n\n\n\n## kubeadm init phase upload-certs {#cmd-phase-upload-certs}\n\nUse the following phase to upload control-plane certificates to the cluster.\nBy default the certs and encryption key expire after two hours.\n\n\n\n\n\n## kubeadm init phase mark-control-plane {#cmd-phase-mark-control-plane}\n\nUse the following phase to label and taint the node as a control plane node.\n\n\n\n\n\n## kubeadm init phase bootstrap-token {#cmd-phase-bootstrap-token}\n\nUse the following phase to configure bootstrap tokens.\n\n\n\n\n\n## kubeadm init phase kubelet-finalize {#cmd-phase-kubelet-finalize-all}\n\nUse the following phase to update settings relevant to the kubelet after TLS\nbootstrap. You can use the `all` subcommand to run all `kubelet-finalize`\nphases.\n\n\n\n\n\n\n\n## kubeadm init phase bootstrap-token {#cmd-phase-bootstrap-token}\n\nUse the following phase to configure bootstrap tokens.\n\n\n\n\n\n## kubeadm init phase addon {#cmd-phase-addon}\n\nYou can install all the available addons with the `all` subcommand, or\ninstall them selectively.\n\n\n\n\n\n\n\n\n## kubeadm init phase show-join-command {#cmd-phase-show-join-command}\n\nShows a command that can be used with `kubeadm join`.\n\n\n\n\n\nFor more details on each field in the `v1beta4` configuration you can navigate to our\n[API reference pages.](/docs/reference/config-api/kubeadm-config.v1beta4/)\n\n## \n\n* [kubeadm init](/docs/reference/setup-tools/kubeadm/kubeadm-init/) to bootstrap a Kubernetes control-plane node\n* [kubeadm join](/docs/reference/setup-tools/kubeadm/kubeadm-join/) to connect a node to the cluster\n* [kubeadm reset](/docs/reference/setup-tools/kubeadm/kubeadm-reset/) to revert any changes made to this host by `kubeadm init` or `kubeadm join`\n* [kubeadm alpha](/docs/reference/setup-tools/kubeadm/kubeadm-alpha/) to try experimental functionality\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
      "meta": {
        "weight": 90,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-init-phase.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm init phase"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-preflight-cmd-phase-preflight",
      "type": "concept",
      "title": "kubeadm init phase preflight {#cmd-phase-preflight}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 376,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-certs-cmd-phase-certs",
      "type": "concept",
      "title": "kubeadm init phase certs {#cmd-phase-certs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 654,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-kubeconfig-cmd-phase-kubeconfig",
      "type": "concept",
      "title": "kubeadm init phase kubeconfig {#cmd-phase-kubeconfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 2172,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-etcd-cmd-phase-etcd",
      "type": "concept",
      "title": "kubeadm init phase etcd {#cmd-phase-etcd}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 3116,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-control-plane-cmd-phase-control-plane",
      "type": "concept",
      "title": "kubeadm init phase control-plane {#cmd-phase-control-plane}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 3468,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-kubelet-start-cmd-phase-kubelet-start",
      "type": "concept",
      "title": "kubeadm init phase kubelet-start {#cmd-phase-kubelet-start}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 4227,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-wait-control-plane-cmd-phase-wait-control-plane",
      "type": "concept",
      "title": "kubeadm init phase wait-control-plane {#cmd-phase-wait-control-plane}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 4550,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-upload-config-cmd-phase-upload-config",
      "type": "concept",
      "title": "kubeadm init phase upload-config {#cmd-phase-upload-config}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 4870,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-upload-certs-cmd-phase-upload-certs",
      "type": "concept",
      "title": "kubeadm init phase upload-certs {#cmd-phase-upload-certs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 5570,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-mark-control-plane-cmd-phase-mark-control-plane",
      "type": "concept",
      "title": "kubeadm init phase mark-control-plane {#cmd-phase-mark-control-plane}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 5927,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-bootstrap-token-cmd-phase-bootstrap-token",
      "type": "concept",
      "title": "kubeadm init phase bootstrap-token {#cmd-phase-bootstrap-token}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 6250,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-kubelet-finalize-cmd-phase-kubelet-finalize-all",
      "type": "concept",
      "title": "kubeadm init phase kubelet-finalize {#cmd-phase-kubelet-finalize-all}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 6536,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-addon-cmd-phase-addon",
      "type": "concept",
      "title": "kubeadm init phase addon {#cmd-phase-addon}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 7503,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-init-phase-show-join-command-cmd-phase-show-join-command",
      "type": "concept",
      "title": "kubeadm init phase show-join-command {#cmd-phase-show-join-command}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 8070,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-join-phase",
      "type": "page",
      "title": "kubeadm join phase",
      "summary": "",
      "body": "`kubeadm join phase` enables you to invoke atomic steps of the join process.\nHence, you can let kubeadm do some of the work and you can fill in the gaps\nif you wish to apply customization.\n\n`kubeadm join phase` is consistent with the [kubeadm join workflow](/docs/reference/setup-tools/kubeadm/kubeadm-join/#join-workflow),\nand behind the scene both use the same code.\n\n## kubeadm join phase {#cmd-join-phase}\n\n\n\n\n\n## kubeadm join phase preflight {#cmd-join-phase-preflight}\n\nUsing this phase you can execute preflight checks on a joining node.\n\n\n\n\n\n## kubeadm join phase control-plane-prepare {#cmd-join-phase-control-plane-prepare}\n\nUsing this phase you can prepare a node for serving a control-plane.\n\n\n\n\n\n\n\n\n\n\n## kubeadm join phase kubelet-start {#cmd-join-phase-kubelet-start}\n\nUsing this phase you can write the kubelet settings, certificates and (re)start the kubelet.\n\n\n\n\n\n## kubeadm join phase etcd-join {#cmd-join-phase-etcd-join}\n\nJoin the new etcd member to the etcd cluster.\n\n\n\n\n\n## kubeadm join phase control-plane-join {#cmd-join-phase-control-plane-join}\n\nUsing this phase you can join a node as a control-plane instance.\n\n\n\n\n\n\n\n## kubeadm join phase wait-control-plane {#cmd-join-wait-control-plane}\n\nWait for the control plane components to start.\n\n\n\n\n\n## \n\n* [kubeadm init](/docs/reference/setup-tools/kubeadm/kubeadm-init/) to bootstrap a Kubernetes control-plane node\n* [kubeadm join](/docs/reference/setup-tools/kubeadm/kubeadm-join/) to connect a node to the cluster\n* [kubeadm reset](/docs/reference/setup-tools/kubeadm/kubeadm-reset/) to revert any changes made to this host by `kubeadm init` or `kubeadm join`\n* [kubeadm alpha](/docs/reference/setup-tools/kubeadm/kubeadm-alpha/) to try experimental functionality\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
      "meta": {
        "weight": 90,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-join-phase.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm join phase"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-join-phase-cmd-join-phase",
      "type": "concept",
      "title": "kubeadm join phase {#cmd-join-phase}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 371,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-join-phase-preflight-cmd-join-phase-preflight",
      "type": "concept",
      "title": "kubeadm join phase preflight {#cmd-join-phase-preflight}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 538,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-join-phase-control-plane-prepare-cmd-join-phase-control-plane-prepare",
      "type": "concept",
      "title": "kubeadm join phase control-plane-prepare {#cmd-join-phase-control-plane-prepare}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 813,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-join-phase-kubelet-start-cmd-join-phase-kubelet-start",
      "type": "concept",
      "title": "kubeadm join phase kubelet-start {#cmd-join-phase-kubelet-start}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 1733,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-join-phase-etcd-join-cmd-join-phase-etcd-join",
      "type": "concept",
      "title": "kubeadm join phase etcd-join {#cmd-join-phase-etcd-join}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 2052,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-join-phase-control-plane-join-cmd-join-phase-control-plane-join",
      "type": "concept",
      "title": "kubeadm join phase control-plane-join {#cmd-join-phase-control-plane-join}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 2304,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-join-phase-wait-control-plane-cmd-join-wait-control-plane",
      "type": "concept",
      "title": "kubeadm join phase wait-control-plane {#cmd-join-wait-control-plane}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 2855,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-token",
      "type": "page",
      "title": "kubeadm token",
      "summary": "",
      "body": "\n\nBootstrap tokens are used for establishing bidirectional trust between a node joining\nthe cluster and a control-plane node, as described in [authenticating with bootstrap tokens](/docs/reference/access-authn-authz/bootstrap-tokens/).\n\n`kubeadm init` creates an initial token with a 24-hour TTL. The following commands allow you to manage\nsuch a token and also to create and manage new ones.\n\n\n## kubeadm token create {#cmd-token-create}\n\n\n## kubeadm token delete {#cmd-token-delete}\n\n\n## kubeadm token generate {#cmd-token-generate}\n\n\n## kubeadm token list {#cmd-token-list}\n\n\n## \n\n* [kubeadm join](/docs/reference/setup-tools/kubeadm/kubeadm-join/) to bootstrap a Kubernetes worker node and join it to the cluster\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
      "meta": {
        "weight": 70,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-token.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm token"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-token-create-cmd-token-create",
      "type": "concept",
      "title": "kubeadm token create {#cmd-token-create}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
          "line_start": 426,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-token-delete-cmd-token-delete",
      "type": "concept",
      "title": "kubeadm token delete {#cmd-token-delete}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
          "line_start": 537,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-token-generate-cmd-token-generate",
      "type": "concept",
      "title": "kubeadm token generate {#cmd-token-generate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
          "line_start": 648,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-token-list-cmd-token-list",
      "type": "concept",
      "title": "kubeadm token list {#cmd-token-list}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
          "line_start": 765,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-reset-phase",
      "type": "page",
      "title": "kubeadm reset phase",
      "summary": "",
      "body": "`kubeadm reset phase` enables you to invoke atomic steps of the node reset process.\nHence, you can let kubeadm do some of the work and you can fill in the gaps\nif you wish to apply customization.\n\n`kubeadm reset phase` is consistent with the [kubeadm reset workflow](/docs/reference/setup-tools/kubeadm/kubeadm-reset/#reset-workflow),\nand behind the scene both use the same code.\n\n## kubeadm reset phase {#cmd-reset-phase}\n\n\n\n\n\n## kubeadm reset phase preflight {#cmd-reset-phase-preflight}\n\nUsing this phase you can execute preflight checks on a node that is being reset.\n\n\n\n\n\n## kubeadm reset phase remove-etcd-member {#cmd-reset-phase-remove-etcd-member}\n\nUsing this phase you can remove this control-plane node's etcd member from the etcd cluster.\n\n\n\n\n\n## kubeadm reset phase cleanup-node {#cmd-reset-phase-cleanup-node}\n\nUsing this phase you can perform cleanup on this node.\n\n\n\n\n\n## \n\n* [kubeadm init](/docs/reference/setup-tools/kubeadm/kubeadm-init/) to bootstrap a Kubernetes control-plane node\n* [kubeadm join](/docs/reference/setup-tools/kubeadm/kubeadm-join/) to connect a node to the cluster\n* [kubeadm reset](/docs/reference/setup-tools/kubeadm/kubeadm-reset/) to revert any changes made to this host by `kubeadm init` or `kubeadm join`\n* [kubeadm alpha](/docs/reference/setup-tools/kubeadm/kubeadm-alpha/) to try experimental functionality\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
      "meta": {
        "weight": 90,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm reset phase"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-reset-phase-cmd-reset-phase",
      "type": "concept",
      "title": "kubeadm reset phase {#cmd-reset-phase}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-reset-phase-preflight-cmd-reset-phase-preflight",
      "type": "concept",
      "title": "kubeadm reset phase preflight {#cmd-reset-phase-preflight}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
          "line_start": 553,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-reset-phase-remove-etcd-member-cmd-reset-phase-remove-etcd-member",
      "type": "concept",
      "title": "kubeadm reset phase remove-etcd-member {#cmd-reset-phase-remove-etcd-member}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
          "line_start": 844,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-reset-phase-cleanup-node-cmd-reset-phase-cleanup-node",
      "type": "concept",
      "title": "kubeadm reset phase cleanup-node {#cmd-reset-phase-cleanup-node}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
          "line_start": 1192,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade-phase",
      "type": "page",
      "title": "kubeadm upgrade phases",
      "summary": "",
      "body": "## kubeadm upgrade apply phase {#cmd-apply-phase}\n\nUsing the phases of `kubeadm upgrade apply`, you can choose to execute the separate steps of the initial upgrade\nof a control plane node.\n\n\n\n\n\n\n\n\n\n\n\n\n## kubeadm upgrade node phase {#cmd-node-phase}\n\nUsing the phases of `kubeadm upgrade node` you can choose to execute the separate steps of the upgrade of\nsecondary control-plane or worker nodes.\n\n\n\n\n\n\n\n\n\n\n## \n\n* [kubeadm init](/docs/reference/setup-tools/kubeadm/kubeadm-init/) to bootstrap a Kubernetes control-plane node\n* [kubeadm join](/docs/reference/setup-tools/kubeadm/kubeadm-join/) to connect a node to the cluster\n* [kubeadm reset](/docs/reference/setup-tools/kubeadm/kubeadm-reset/) to revert any changes made to this host by `kubeadm init` or `kubeadm join`\n* [kubeadm upgrade](/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/) to upgrade a kubeadm node\n* [kubeadm alpha](/docs/reference/setup-tools/kubeadm/kubeadm-alpha/) to try experimental functionality\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade-phase/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-upgrade-phase.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade-phase/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm upgrade phases"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-apply-phase-cmd-apply-phase",
      "type": "concept",
      "title": "kubeadm upgrade apply phase {#cmd-apply-phase}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade-phase/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-upgrade-node-phase-cmd-node-phase",
      "type": "concept",
      "title": "kubeadm upgrade node phase {#cmd-node-phase}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade-phase/",
          "line_start": 1120,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-join",
      "type": "page",
      "title": "kubeadm join",
      "summary": "",
      "body": "\nThis command initializes a new Kubernetes node and joins it to the existing cluster.\n\n\n\n\n### The join workflow {#join-workflow}\n\n`kubeadm join` bootstraps a Kubernetes worker node or a control-plane node and adds it to the cluster.\nThis action consists of the following steps for worker nodes:\n\n1. kubeadm downloads necessary cluster information from the API server.\n   By default, it uses the bootstrap token and the CA key hash to verify the\n   authenticity of that data. The root CA can also be discovered directly via a\n   file or URL.\n\n1. Once the cluster information is known, kubelet can start the TLS bootstrapping\n   process.\n\n   The TLS bootstrap uses the shared token to temporarily authenticate\n   with the Kubernetes API server to submit a certificate signing request (CSR); by\n   default the control plane signs this CSR request automatically.\n\n1. Finally, kubeadm configures the local kubelet to connect to the API\n   server with the definitive identity assigned to the node.\n\nFor control-plane nodes additional steps are performed:\n\n1. Downloading certificates shared among control-plane nodes from the cluster\n  (if explicitly requested by the user).\n\n1. Generating control-plane component manifests, certificates and kubeconfig.\n\n1. Adding new local etcd member.\n\n### Using join phases with kubeadm {#join-phases}\n\nKubeadm allows you join a node to the cluster in phases using `kubeadm join phase`.\n\nTo view the ordered list of phases and sub-phases you can call `kubeadm join --help`. The list will be located\nat the top of the help screen and each phase will have a description next to it.\nNote that by calling `kubeadm join` all of the phases and sub-phases will be executed in this exact order.\n\nSome phases have unique flags, so if you want to have a look at the list of available options add `--help`, for example:\n\n```shell\nkubeadm join phase kubelet-start --help\n```\n\nSimilar to the [kubeadm init phase](/docs/reference/setup-tools/kubeadm/kubeadm-init/#init-phases)\ncommand, `kubeadm join phase` allows you to skip a list of phases using the `--skip-phases` flag.\n\nFor example:\n\n```shell\nsudo kubeadm join --skip-phases=preflight --config=config.yaml\n```\n\n\n\nAlternatively, you can use the `skipPhases` field in `JoinConfiguration`.\n\n### Discovering what cluster CA to trust\n\nThe kubeadm discovery has several options, each with security tradeoffs.\nThe right method for your environment depends on how you provision nodes and the\nsecurity expectations you have about your network and node lifecycles.\n\n#### Token-based discovery with CA pinning\n\nThis is the default mode in kubeadm. In this mode, kubeadm downloads\nthe cluster configuration (including root CA) and validates it using the token\nas well as validating that the root CA public key matches the provided hash and\nthat the API server certificate is valid under the root CA.\n\nThe CA key hash has the format `sha256:<hex_encoded_hash>`.\nBy default, the hash value is printed at the end of the `kubeadm init` command or\nin the output from the `kubeadm token create --print-join-command` command.\nIt is in a standard format (see [RFC7469](https://tools.ietf.org/html/rfc7469#section-2.4))\nand can also be calculated by 3rd party tools or provisioning systems.\nFor example, using the OpenSSL CLI:\n\n```shell\nopenssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'\n```\n\n**Example `kubeadm join` commands:**\n\nFor worker nodes:\n\n```shell\nkubeadm join --discovery-token abcdef.1234567890abcdef --discovery-token-ca-cert-hash sha256:1234..cdef 1.2.3.4:6443\n```\n\nFor control-plane nodes:\n\n```shell\nkubeadm join --discovery-token abcdef.1234567890abcdef --discovery-token-ca-cert-hash sha256:1234..cdef --control-plane 1.2.3.4:6443\n```\n\nYou can also call `join` for a control-plane node with `--certificate-key` to copy certificates to this node,\nif the `kubeadm init` command was called with `--upload-certs`.\n\n**Advantages:**\n\n- Allows b\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-join.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm join"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-join-workflow-join-workflow",
      "type": "concept",
      "title": "The join workflow {#join-workflow}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 171,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-join-phases-with-kubeadm-join-phases",
      "type": "concept",
      "title": "Using join phases with kubeadm {#join-phases}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 1364,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:discovering-what-cluster-ca-to-trust",
      "type": "concept",
      "title": "Discovering what cluster CA to trust",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 2400,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:securing-your-installation-even-more-securing-more",
      "type": "concept",
      "title": "Securing your installation even more {#securing-more}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 8170,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-kubeadm-join-with-a-configuration-file-config-file",
      "type": "concept",
      "title": "Using kubeadm join with a configuration file {#config-file}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 11445,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-kubeconfig",
      "type": "page",
      "title": "kubeadm kubeconfig",
      "summary": "kubeadm kubeconfig generates a Kubernetes configuration file.",
      "body": "kubeadm kubeconfig generates a Kubernetes configuration file.\n\n**Why it matters**\nA Kubernetes configuration file is necessary for interacting with the cluster.\n\n**Key facts**\n- Generates a Kubernetes configuration file\n- Required for interacting with the cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-kubeconfig/",
      "meta": {
        "weight": 90,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-kubeconfig.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-kubeconfig/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm kubeconfig"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "concept:kubeadm-kubeconfig-cmd-kubeconfig",
      "type": "concept",
      "title": "kubeadm kubeconfig {#cmd-kubeconfig}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-kubeconfig/",
          "line_start": 265,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-kubeconfig-user-cmd-kubeconfig-user",
      "type": "concept",
      "title": "kubeadm kubeconfig user {#cmd-kubeconfig-user}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-kubeconfig/",
          "line_start": 434,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-certs",
      "type": "page",
      "title": "kubeadm certs",
      "summary": "",
      "body": "`kubeadm certs` provides utilities for managing certificates.\nFor more details on how these commands can be used, see\n[Certificate Management with kubeadm](/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/).\n\n## kubeadm certs {#cmd-certs}\n\nA collection of operations for operating Kubernetes certificates.\n\n\n\n\n\n## kubeadm certs renew {#cmd-certs-renew}\n\nYou can renew all Kubernetes certificates using the `all` subcommand or renew them selectively.\nFor more details see [Manual certificate renewal](/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/#manual-certificate-renewal).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n## kubeadm certs certificate-key {#cmd-certs-certificate-key}\n\nThis command can be used to generate a new control-plane certificate key.\nThe key can be passed as `--certificate-key` to [`kubeadm init`](/docs/reference/setup-tools/kubeadm/kubeadm-init)\nand [`kubeadm join`](/docs/reference/setup-tools/kubeadm/kubeadm-join)\nto enable the automatic copy of certificates when joining additional control-plane nodes.\n\n\n\n\n\n## kubeadm certs check-expiration {#cmd-certs-check-expiration}\n\nThis command checks expiration for the certificates in the local PKI managed by kubeadm.\nFor more details see\n[Check certificate expiration](/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/#check-certificate-expiration).\n\n\n\n\n\n## kubeadm certs generate-csr {#cmd-certs-generate-csr}\n\nThis command can be used to generate keys and CSRs for all control-plane certificates and kubeconfig files.\nThe user can then sign the CSRs with a CA of their choice. To read more information\non how to use the command see\n[Signing certificate signing requests (CSR) generated by kubeadm](/docs/tasks/administer-cluster/kubeadm/kubeadm-certs#signing-csr).\n\n\n\n\n\n## \n\n* [kubeadm init](/docs/reference/setup-tools/kubeadm/kubeadm-init/) to bootstrap a Kubernetes control-plane node\n* [kubeadm join](/docs/reference/setup-tools/kubeadm/kubeadm-join/) to connect a node to the cluster\n* [kubeadm reset](/docs/reference/setup-tools/kubeadm/kubeadm-reset/) to revert any changes made to this host by `kubeadm init` or `kubeadm join`\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
      "meta": {
        "weight": 90,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-certs.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm certs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-certs-cmd-certs",
      "type": "concept",
      "title": "kubeadm certs {#cmd-certs}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 214,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-certs-renew-cmd-certs-renew",
      "type": "concept",
      "title": "kubeadm certs renew {#cmd-certs-renew}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 430,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-certs-certificate-key-cmd-certs-certificate-key",
      "type": "concept",
      "title": "kubeadm certs certificate-key {#cmd-certs-certificate-key}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 2147,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-certs-check-expiration-cmd-certs-check-expiration",
      "type": "concept",
      "title": "kubeadm certs check-expiration {#cmd-certs-check-expiration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 2725,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-certs-generate-csr-cmd-certs-generate-csr",
      "type": "concept",
      "title": "kubeadm certs generate-csr {#cmd-certs-generate-csr}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 3184,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-config",
      "type": "page",
      "title": "kubeadm config",
      "summary": "",
      "body": "\nDuring `kubeadm init`, kubeadm uploads the `ClusterConfiguration` object to your cluster\nin a ConfigMap called `kubeadm-config` in the `kube-system` namespace. This configuration is then read during\n`kubeadm join`, `kubeadm reset` and `kubeadm upgrade`.\n\nYou can use `kubeadm config print` to print the default static configuration that kubeadm\nuses for `kubeadm init` and `kubeadm join`.\n\n\n> **Note:** The output of the command is meant to serve as an example. You must manually edit the output\nof this command to adapt to your setup. Remove the fields that you are not certain about and kubeadm\nwill try to default them on runtime by examining the host.\n\n\nFor more information on `init` and `join` navigate to\n[Using kubeadm init with a configuration file](/docs/reference/setup-tools/kubeadm/kubeadm-init/#config-file)\nor [Using kubeadm join with a configuration file](/docs/reference/setup-tools/kubeadm/kubeadm-join/#config-file).\n\nFor more information on using the kubeadm configuration API navigate to\n[Customizing components with the kubeadm API](/docs/setup/production-environment/tools/kubeadm/control-plane-flags).\n\nYou can use `kubeadm config migrate` to convert your old configuration files that contain a deprecated\nAPI version to a newer, supported API version.\n\n`kubeadm config validate` can be used for validating a configuration file.\n\n`kubeadm config images list` and `kubeadm config images pull` can be used to list and pull the images\nthat kubeadm requires.\n\n\n## kubeadm config print {#cmd-config-print}\n\n\n\n## kubeadm config print init-defaults {#cmd-config-print-init-defaults}\n\n\n\n## kubeadm config print join-defaults {#cmd-config-print-join-defaults}\n\n\n\n## kubeadm config migrate {#cmd-config-migrate}\n\n\n\n## kubeadm config validate {#cmd-config-validate}\n\n\n\n## kubeadm config images list {#cmd-config-images-list}\n\n\n\n## kubeadm config images pull {#cmd-config-images-pull}\n\n\n\n## \n\n* [kubeadm upgrade](/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/) to upgrade a Kubernetes cluster to a newer version\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-config.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm config"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-config-print-cmd-config-print",
      "type": "concept",
      "title": "kubeadm config print {#cmd-config-print}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 1526,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-config-print-init-defaults-cmd-config-print-init-defaults",
      "type": "concept",
      "title": "kubeadm config print init-defaults {#cmd-config-print-init-defaults}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 1639,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-config-print-join-defaults-cmd-config-print-join-defaults",
      "type": "concept",
      "title": "kubeadm config print join-defaults {#cmd-config-print-join-defaults}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 1794,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-config-migrate-cmd-config-migrate",
      "type": "concept",
      "title": "kubeadm config migrate {#cmd-config-migrate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 1949,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-config-validate-cmd-config-validate",
      "type": "concept",
      "title": "kubeadm config validate {#cmd-config-validate}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 2068,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-config-images-list-cmd-config-images-list",
      "type": "concept",
      "title": "kubeadm config images list {#cmd-config-images-list}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 2190,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubeadm-config-images-pull-cmd-config-images-pull",
      "type": "concept",
      "title": "kubeadm config images pull {#cmd-config-images-pull}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 2321,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/kubeadm-reset",
      "type": "page",
      "title": "kubeadm reset",
      "summary": "",
      "body": "\nPerforms a best effort revert of changes made by `kubeadm init` or `kubeadm join`.\n\n\n\n\n### Reset workflow {#reset-workflow}\n\n`kubeadm reset` is responsible for cleaning up a node local file system from files that were created using\nthe `kubeadm init` or `kubeadm join` commands. For control-plane nodes `reset` also removes the local stacked\netcd member of this node from the etcd cluster.\n\n`kubeadm reset phase` can be used to execute the separate phases of the above workflow.\nTo skip a list of phases you can use the `--skip-phases` flag, which works in a similar way to\nthe `kubeadm join` and `kubeadm init` phase runners.\n\n`kubeadm reset` also supports the `--config` flag for passing\na [`ResetConfiguration` structure](/docs/reference/config-api/kubeadm-config.v1beta4/).\n\n### Cleanup of external etcd members\n\n`kubeadm reset` will not delete any etcd data if external etcd is used. This means that if you run `kubeadm init` again using the same etcd endpoints, you will see state from previous clusters.\n\nTo wipe etcd data it is recommended you use a client like etcdctl, such as:\n\n```bash\netcdctl del \"\" --prefix\n```\n\nSee the [etcd documentation](https://github.com/coreos/etcd/tree/master/etcdctl) for more information.\n\n### Cleanup of CNI configuration\n\nCNI plugins use the directory `/etc/cni/net.d` to store their configuration.\nThe `kubeadm reset` command does not cleanup that directory. Leaving the configuration\nof a CNI plugin on a host can be problematic if the same host is later used\nas a new Kubernetes node and a different CNI plugin happens to be deployed in that cluster.\nIt can result in a configuration conflict between CNI plugins.\n\nTo cleanup the directory, backup its contents if needed and then execute\nthe following command:\n\n```bash\nsudo rm -rf /etc/cni/net.d\n```\n\n### Cleanup of network traffic rules\n\nThe `kubeadm reset` command does not clean any iptables, nftables or IPVS rules applied\nto the host by kube-proxy. A control loop in kube-proxy ensures that the rules on each node\nhost are synchronized. For additional details please see\n[Virtual IPs and Service Proxies](/docs/reference/networking/virtual-ips/).\n\nLeaving the rules without cleanup should not cause any issues if the host is\nlater reused as a Kubernetes node or if it will serve a different purpose.\n\nIf you wish to perform this cleanup, you can use the same kube-proxy container\nwhich was used in your cluster and the `--cleanup` flag of the\n`kube-proxy` binary:\n\n```bash\ndocker run --privileged --network=host -v /lib/modules:/lib/modules:ro --rm registry.k8s.io/kube-proxy:v sh -c \"kube-proxy --cleanup && echo DONE\"\n```\n\nThe output of the above command should print `DONE` at the end.\nInstead of Docker, you can use your preferred container runtime to start the container.\n\n### Cleanup of $HOME/.kube\n\nThe `$HOME/.kube` directory typically contains configuration files and kubectl cache.\nWhile not cleaning the contents of `$HOME/.kube/cache` is not an issue, there is one important\nfile in the directory. That is `$HOME/.kube/config` and it is used by kubectl to authenticate\nto the Kubernetes API server. After `kubeadm init` finishes, the user is instructed to copy the\n`/etc/kubernetes/admin.conf` file to the `$HOME/.kube/config` location and grant the current\nuser access to it.\n\nThe `kubeadm reset` command does not clean any of the contents of the `$HOME/.kube` directory.\nLeaving the `$HOME/.kube/config` file without deleting it, can be problematic depending\non who will have access to this host after `kubeadm reset` was called.\nIf the same cluster continues to exist, it is highly recommended to delete the file,\nas the admin credentials stored in it will continue to be valid.\n\nTo cleanup the directory, examine its contents, perform backup if needed and execute\nthe following command:\n\n```bash\nrm -rf $HOME/.kube\n```\n\n### Graceful kube-apiserver shutdown\n\nIf you have your `kube-apiserver` configured with the `--shutdown-delay-duration` flag,\nyou can run the following commands t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/setup-tools/kubeadm/kubeadm-reset.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm reset"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reset-workflow-reset-workflow",
      "type": "concept",
      "title": "Reset workflow {#reset-workflow}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cleanup-of-external-etcd-members",
      "type": "concept",
      "title": "Cleanup of external etcd members",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 862,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cleanup-of-cni-configuration",
      "type": "concept",
      "title": "Cleanup of CNI configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 1313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cleanup-of-network-traffic-rules",
      "type": "concept",
      "title": "Cleanup of network traffic rules",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 1880,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cleanup-of-home-kube",
      "type": "concept",
      "title": "Cleanup of $HOME/.kube",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 2894,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:graceful-kube-apiserver-shutdown",
      "type": "concept",
      "title": "Graceful kube-apiserver shutdown",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 3952,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/_index",
      "type": "page",
      "title": "Kubeadm",
      "summary": "",
      "body": "<img src=\"/images/kubeadm-stacked-color.png\" align=\"right\" width=\"150px\">Kubeadm is a tool built to provide `kubeadm init` and `kubeadm join` as best-practice \"fast paths\" for creating Kubernetes clusters.\n\nkubeadm performs the actions necessary to get a minimum viable cluster up and running. By design, it cares only about bootstrapping, not about provisioning machines. Likewise, installing various nice-to-have addons, like the Kubernetes Dashboard, monitoring solutions, and cloud-specific addons, is not in scope.\n\nInstead, we expect higher-level and more tailored tooling to be built on top of kubeadm, and ideally, using kubeadm as the basis of all deployments will make it easier to create conformant clusters.\n\n## How to install\n\nTo install kubeadm, see the [installation guide](/docs/setup/production-environment/tools/kubeadm/install-kubeadm).\n\n## \n\n* [kubeadm init](/docs/reference/setup-tools/kubeadm/kubeadm-init) to bootstrap a Kubernetes control-plane node\n* [kubeadm join](/docs/reference/setup-tools/kubeadm/kubeadm-join) to bootstrap a Kubernetes worker node and join it to the cluster\n* [kubeadm upgrade](/docs/reference/setup-tools/kubeadm/kubeadm-upgrade) to upgrade a Kubernetes cluster to a newer version\n* [kubeadm config](/docs/reference/setup-tools/kubeadm/kubeadm-config) if you initialized your cluster using kubeadm v1.7.x or lower, to configure your cluster for `kubeadm upgrade`\n* [kubeadm token](/docs/reference/setup-tools/kubeadm/kubeadm-token) to manage tokens for `kubeadm join`\n* [kubeadm reset](/docs/reference/setup-tools/kubeadm/kubeadm-reset) to revert any changes made to this host by `kubeadm init` or `kubeadm join`\n* [kubeadm certs](/docs/reference/setup-tools/kubeadm/kubeadm-certs) to manage Kubernetes certificates\n* [kubeadm kubeconfig](/docs/reference/setup-tools/kubeadm/kubeadm-kubeconfig) to manage kubeconfig files\n* [kubeadm version](/docs/reference/setup-tools/kubeadm/kubeadm-version) to print the kubeadm version\n* [kubeadm alpha](/docs/reference/setup-tools/kubeadm/kubeadm-alpha) to preview a set of features made available for gathering feedback from the community\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/_index/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/setup-tools/kubeadm/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-install",
      "type": "concept",
      "title": "How to install",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/_index/",
          "line_start": 722,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/README",
      "type": "page",
      "title": "README",
      "summary": "The README file provides information about Kubeadm generated files.",
      "body": "The README file provides information about Kubeadm generated files.\n\n**Why it matters**\nUnderstanding the purpose and usage of Kubeadm generated files is crucial for cluster setup.\n\n**Key facts**\n- Provides information about Kubeadm generated files\n- Essential for understanding Kubeadm generated files",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/README/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/README.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/README.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/README/",
          "line_start": null,
          "line_end": null,
          "quote": "README"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm",
      "type": "page",
      "title": "kubeadm",
      "summary": "",
      "body": "\n\n\nkubeadm: easily bootstrap a secure Kubernetes cluster\n\n### Synopsis\n\n\n\n\n    ┌──────────────────────────────────────────────────────────┐\n    │ KUBEADM                                                  │\n    │ Easily bootstrap a secure Kubernetes cluster             │\n    │                                                          │\n    │ Please give us feedback at:                              │\n    │ https://github.com/kubernetes/kubeadm/issues             │\n    └──────────────────────────────────────────────────────────┘\n\nExample usage:\n\n    Create a two-machine cluster with one control-plane node\n    (which controls the cluster), and one worker node\n    (where your workloads, like Pods and Deployments run).\n\n    ┌──────────────────────────────────────────────────────────┐\n    │ On the first machine:                                    │\n    ├──────────────────────────────────────────────────────────┤\n    │ control-plane# kubeadm init                              │\n    └──────────────────────────────────────────────────────────┘\n\n    ┌──────────────────────────────────────────────────────────┐\n    │ On the second machine:                                   │\n    ├──────────────────────────────────────────────────────────┤\n    │ worker# kubeadm join &lt;arguments-returned-from-init&gt;      │\n    └──────────────────────────────────────────────────────────┘\n\n    You can then repeat the second step on as many other machines as you like.\n\n\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubeadm</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:synopsis",
      "type": "concept",
      "title": "Synopsis",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm/",
          "line_start": 633,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:options",
      "type": "concept",
      "title": "Options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm/",
          "line_start": 2037,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/_index",
      "type": "page",
      "title": "Kubeadm Generated",
      "summary": "Kubeadm Generated refers to the automatically generated configuration files.",
      "body": "Kubeadm Generated refers to the automatically generated configuration files.\n\n**Why it matters**\nAutomatically generated configuration files simplify cluster setup and management.\n\n**Key facts**\n- Automatically generated configuration files\n- Simplifies cluster setup and management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/_index/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/setup-tools/kubeadm/generated/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubeadm Generated"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user",
      "type": "page",
      "title": "kubeadm_kubeconfig_user",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nOutput a kubeconfig file for an additional user.\n\n```\nkubeadm kubeconfig user [flags]\n```\n\n### Examples\n\n```\n  # Output a kubeconfig file for an additional user named foo\n  kubeadm kubeconfig user --client-name=foo\n  \n  # Output a kubeconfig file for an additional user named foo using a kubeadm config file bar\n  kubeadm kubeconfig user --client-name=foo --config=bar\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--client-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of user. It will be used as the CN if client certificates are created</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for user</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--org strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The organizations of the client certificate. It will be used as the O if client certificates are created</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The token that should be used as the authentication mechanism for this kubeconfig, instead of client certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validity-period duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 8760h0m0s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The validity period of the client certificate. It is an offset from the current time.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_kubeconfig_user"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:options-inherited-from-parent-commands",
      "type": "concept",
      "title": "Options inherited from parent commands",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user/",
          "line_start": 2443,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index",
      "type": "page",
      "title": "_index",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nKubeconfig file utilities.\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubeconfig</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "_index"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf",
      "type": "page",
      "title": "kubeadm_certs_renew_super-admin.conf",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate embedded in the kubeconfig file for the super-admin.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew super-admin.conf [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for super-admin.conf</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_super-admin.conf"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr",
      "type": "page",
      "title": "kubeadm_certs_generate-csr",
      "summary": "",
      "body": "\n\n\nGenerate keys and certificate signing requests\n\n### Synopsis\n\n\nGenerates keys and certificate signing requests (CSRs) for all the certificates required to run the control plane. This command also generates partial kubeconfig files with private key data in the  \"users &gt; user &gt; client-key-data\" field, and for each kubeconfig file an accompanying \".csr\" file is created.\n\nThis command is designed for use in [Kubeadm External CA Mode](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/#external-ca-mode). It generates CSRs which you can then submit to your external certificate authority for signing.\n\nThe PEM encoded signed certificates should then be saved alongside the key files, using \".crt\" as the file extension, or in the case of kubeconfig files, the PEM encoded signed certificate should be base64 encoded and added to the kubeconfig file in the \"users &gt; user &gt; client-certificate-data\" field.\n\n```\nkubeadm certs generate-csr [flags]\n```\n\n### Examples\n\n```\n  # The following command will generate keys and CSRs for all control-plane certificates and kubeconfig files:\n  kubeadm certs generate-csr --kubeconfig-dir /tmp/etc-k8s --cert-dir /tmp/etc-k8s/pki\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for generate-csr</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_generate-csr"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer",
      "type": "page",
      "title": "kubeadm_certs_renew_etcd-peer",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate for etcd nodes to communicate with each other.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew etcd-peer [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for etcd-peer</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_etcd-peer"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client",
      "type": "page",
      "title": "kubeadm_certs_renew_etcd-healthcheck-client",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate for liveness probes to healthcheck etcd.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew etcd-healthcheck-client [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for etcd-healthcheck-client</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_etcd-healthcheck-client"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server",
      "type": "page",
      "title": "kubeadm_certs_renew_etcd-server",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate for serving etcd.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew etcd-server [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for etcd-server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_etcd-server"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver",
      "type": "page",
      "title": "kubeadm_certs_renew_apiserver",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate for serving the Kubernetes API.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew apiserver [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for apiserver</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_apiserver"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf",
      "type": "page",
      "title": "kubeadm_certs_renew_admin.conf",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate embedded in the kubeconfig file for the admin to use and for kubeadm itself.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew admin.conf [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for admin.conf</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_admin.conf"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration",
      "type": "page",
      "title": "kubeadm_certs_check-expiration",
      "summary": "",
      "body": "\n\n\nCheck certificates expiration for a Kubernetes cluster\n\n### Synopsis\n\n\nChecks expiration for the certificates in the local PKI managed by kubeadm.\n\n```\nkubeadm certs check-expiration [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for check-expiration</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"text\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: text|json|yaml|kyaml|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_check-expiration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew",
      "type": "page",
      "title": "kubeadm_certs_renew",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew certificates for a Kubernetes cluster\n\n```\nkubeadm certs renew [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for renew</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf",
      "type": "page",
      "title": "kubeadm_certs_renew_controller-manager.conf",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate embedded in the kubeconfig file for the controller manager to use.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew controller-manager.conf [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for controller-manager.conf</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_controller-manager.conf"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client",
      "type": "page",
      "title": "kubeadm_certs_renew_apiserver-etcd-client",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate the apiserver uses to access etcd.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew apiserver-etcd-client [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for apiserver-etcd-client</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_apiserver-etcd-client"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf",
      "type": "page",
      "title": "kubeadm_certs_renew_scheduler.conf",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate embedded in the kubeconfig file for the scheduler manager to use.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew scheduler.conf [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for scheduler.conf</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_scheduler.conf"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all",
      "type": "page",
      "title": "kubeadm_certs_renew_all",
      "summary": "",
      "body": "\n\n\nRenew all available certificates\n\n### Synopsis\n\n\nRenew all known certificates necessary to run the control plane. Renewals are run unconditionally, regardless of expiration date. Renewals can also be run individually for more control.\n\n```\nkubeadm certs renew all [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client",
      "type": "page",
      "title": "kubeadm_certs_renew_apiserver-kubelet-client",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate for the API server to connect to kubelet.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew apiserver-kubelet-client [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for apiserver-kubelet-client</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_apiserver-kubelet-client"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client",
      "type": "page",
      "title": "kubeadm_certs_renew_front-proxy-client",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRenew the certificate for the front proxy client.\n\nRenewals run unconditionally, regardless of certificate expiration date; extra attributes such as SANs will be based on the existing file/certificates, there is no need to resupply them.\n\nRenewal by default tries to use the certificate authority in the local PKI managed by kubeadm; as alternative it is possible to use K8s certificate API for certificate renewal, or as a last option, to generate a CSR request.\n\nAfter renewal, in order to make changes effective, is required to restart control-plane components and eventually re-distribute the renewed certificate in case the file is used elsewhere.\n\n```\nkubeadm certs renew front-proxy-client [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the certificates</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for front-proxy-client</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_renew_front-proxy-client"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key",
      "type": "page",
      "title": "kubeadm_certs_certificate-key",
      "summary": "",
      "body": "\n\n\nGenerate certificate keys\n\n### Synopsis\n\n\n\nThis command will print out a secure randomly-generated certificate key that can be used with\nthe \"init\" command.\n\nYou can also use \"kubeadm init --upload-certs\" without specifying a certificate key and it will\ngenerate and print one for you.\n\n\n```\nkubeadm certs certificate-key [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for certificate-key</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_certs_certificate-key"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/_index",
      "type": "page",
      "title": "_index",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nCommands related to handling Kubernetes certificates\n\n```\nkubeadm certs [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for certs</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/_index/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_certs/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "_index"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_addon_coredns",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade the CoreDNS addon\n\n```\nkubeadm upgrade apply phase addon coredns [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for coredns</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_addon_coredns"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_addon_kube-proxy",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade the kube-proxy addon\n\n```\nkubeadm upgrade apply phase addon kube-proxy [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kube-proxy</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_addon_kube-proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_upload-config_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpload all the configurations to ConfigMaps\n\n```\nkubeadm upgrade apply phase upload-config all [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_upload-config_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_upload-config_kubelet",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpload the kubelet configuration to a ConfigMap\n\n```\nkubeadm upgrade apply phase upload-config kubelet [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubelet</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_upload-config_kubelet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_upload-config_kubeadm",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpload the kubeadm ClusterConfiguration to a ConfigMap\n\n```\nkubeadm upgrade apply phase upload-config kubeadm [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubeadm</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_upload-config_kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_addon_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade all the addons\n\n```\nkubeadm upgrade apply phase addon all [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_addon_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all",
      "type": "page",
      "title": "kubeadm_upgrade_node_phase_addon_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade all the addons\n\n```\nkubeadm upgrade node phase addon all [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output the actions that would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_node_phase_addon_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff",
      "type": "page",
      "title": "kubeadm_upgrade_diff",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nShow what differences would be applied to existing static pod manifests. See also: kubeadm upgrade apply --dry-run\n\n```\nkubeadm upgrade diff [version] [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-c, --context-lines int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 3</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>How many lines of context in the diff</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for diff</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_diff"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase",
      "type": "page",
      "title": "kubeadm_upgrade_node_phase",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUse this command to invoke single phase of the \"node\" workflow\n\n```\nkubeadm upgrade node phase [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for phase</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_node_phase"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node",
      "type": "page",
      "title": "kubeadm_upgrade_node",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade commands for a node in the cluster\n\nThe \"node\" command executes the following phases:\n```\npreflight       Run upgrade node pre-flight checks\ncontrol-plane   Upgrade the control plane instance deployed on this node, if any\nkubelet-config  Upgrade the kubelet configuration for this node\naddon           Upgrade the default kubeadm addons\n  /coredns        Upgrade the CoreDNS addon\n  /kube-proxy     Upgrade the kube-proxy addon\npost-upgrade    Run post upgrade tasks\n```\n\n\n```\nkubeadm upgrade node [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--certificate-renewal&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Perform the renewal of certificates used by component changed during upgrades.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output the actions that would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--etcd-upgrade&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Perform the upgrade of etcd.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-preflight-errors strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--skip-phases strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>List of phases to be skipped</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_node"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_preflight",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRun preflight checks before upgrade\n\n```\nkubeadm upgrade apply phase preflight [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-experimental-upgrades</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Show unstable versions of Kubernetes as an upgrade alternative and allow upgrading to an alpha/beta/release candidate versions of Kubernetes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-release-candidate-upgrades</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Show release candidate versions of Kubernetes as an upgrade alternative and allow upgrading to a release candidate versions of Kubernetes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --force</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Force upgrading although some requirements might not be met. This also implies non-interactive mode.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for preflight</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-preflight-errors strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-y, --yes</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Perform the upgrade and do not prompt for confirmation (non-interactive mode).</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_preflight"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight",
      "type": "page",
      "title": "kubeadm_upgrade_node_phase_preflight",
      "summary": "",
      "body": "\n\n\nRun upgrade node pre-flight checks\n\n### Synopsis\n\n\nRun pre-flight checks for kubeadm upgrade node.\n\n```\nkubeadm upgrade node phase preflight [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for preflight</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-preflight-errors strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_node_phase_preflight"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_control-plane",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade the control plane\n\n```\nkubeadm upgrade apply phase control-plane [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--certificate-renewal&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Perform the renewal of certificates used by component changed during upgrades.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--etcd-upgrade&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Perform the upgrade of etcd.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for control-plane</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_control-plane"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon",
      "type": "page",
      "title": "kubeadm_upgrade_node_phase_addon",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade the default kubeadm addons\n\n```\nkubeadm upgrade node phase addon [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for addon</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_node_phase_addon"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_post-upgrade",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRun post upgrade tasks\n\n```\nkubeadm upgrade apply phase post-upgrade [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for post-upgrade</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_post-upgrade"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane",
      "type": "page",
      "title": "kubeadm_upgrade_node_phase_control-plane",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade the control plane instance deployed on this node, if any\n\n```\nkubeadm upgrade node phase control-plane [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--certificate-renewal&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Perform the renewal of certificates used by component changed during upgrades.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output the actions that would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--etcd-upgrade&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Perform the upgrade of etcd.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for control-plane</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_node_phase_control-plane"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan",
      "type": "page",
      "title": "kubeadm_upgrade_plan",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nCheck which versions are available to upgrade to and validate whether your current cluster is upgradeable. This command can only run on the control plane nodes where the kubeconfig file \"admin.conf\" exists. To skip the internet check, pass in the optional [version] parameter.\n\n```\nkubeadm upgrade plan [version] [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-experimental-upgrades</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Show unstable versions of Kubernetes as an upgrade alternative and allow upgrading to an alpha/beta/release candidate versions of Kubernetes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-release-candidate-upgrades</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Show release candidate versions of Kubernetes as an upgrade alternative and allow upgrading to a release candidate versions of Kubernetes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--etcd-upgrade&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Perform the upgrade of etcd.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for plan</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-preflight-errors strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"text\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: text|json|yaml|kyaml|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--print-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specifies whether the configuration file that will be used in the upgrade should be printed or not.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_plan"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_addon",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade the default kubeadm addons\n\n```\nkubeadm upgrade apply phase addon [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for addon</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_addon"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade",
      "type": "page",
      "title": "kubeadm_upgrade_node_phase_post-upgrade",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRun post upgrade tasks\n\n```\nkubeadm upgrade node phase post-upgrade [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output the actions that would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for post-upgrade</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_node_phase_post-upgrade"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config",
      "type": "page",
      "title": "kubeadm_upgrade_node_phase_kubelet-config",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade the kubelet configuration for this node by downloading it from the kubelet-config ConfigMap stored in the cluster\n\n```\nkubeadm upgrade node phase kubelet-config [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output the actions that would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubelet-config</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_node_phase_kubelet-config"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply",
      "type": "page",
      "title": "kubeadm_upgrade_apply",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade your Kubernetes cluster to the specified version\n\nThe \"apply [version]\" command executes the following phases:\n```\npreflight        Run preflight checks before upgrade\ncontrol-plane    Upgrade the control plane\nupload-config    Upload the kubeadm and kubelet configurations to ConfigMaps\n  /kubeadm         Upload the kubeadm ClusterConfiguration to a ConfigMap\n  /kubelet         Upload the kubelet configuration to a ConfigMap\nkubelet-config   Upgrade the kubelet configuration for this node\nbootstrap-token  Configures bootstrap token and cluster-info RBAC rules\naddon            Upgrade the default kubeadm addons\n  /coredns         Upgrade the CoreDNS addon\n  /kube-proxy      Upgrade the kube-proxy addon\npost-upgrade     Run post upgrade tasks\n```\n\n\n```\nkubeadm upgrade apply [version]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-experimental-upgrades</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Show unstable versions of Kubernetes as an upgrade alternative and allow upgrading to an alpha/beta/release candidate versions of Kubernetes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-release-candidate-upgrades</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Show release candidate versions of Kubernetes as an upgrade alternative and allow upgrading to a release candidate versions of Kubernetes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-renewal&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Perform the renewal of certificates used by component changed during upgrades.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--etcd-upgrade&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Perform the upgrade of etcd.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --force</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Force upgrading although some requirements might not be met. This also implies non-interactive mode.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for apply</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-preflight-errors strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &qu\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_bootstrap-token",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nConfigures bootstrap token and cluster-info RBAC rules\n\n```\nkubeadm upgrade apply phase bootstrap-token [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for bootstrap-token</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_bootstrap-token"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_upload-config",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpload the kubeadm and kubelet configurations to ConfigMaps\n\n```\nkubeadm upgrade apply phase upload-config [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for upload-config</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_upload-config"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUse this command to invoke single phase of the \"apply\" workflow\n\n```\nkubeadm upgrade apply phase [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for phase</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns",
      "type": "page",
      "title": "kubeadm_upgrade_node_phase_addon_coredns",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade the CoreDNS addon\n\n```\nkubeadm upgrade node phase addon coredns [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output the actions that would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for coredns</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_node_phase_addon_coredns"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index",
      "type": "page",
      "title": "_index",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade your cluster smoothly to a newer version with this command\n\n```\nkubeadm upgrade [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for upgrade</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "_index"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config",
      "type": "page",
      "title": "kubeadm_upgrade_apply_phase_kubelet-config",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade the kubelet configuration for this node by downloading it from the kubelet-config ConfigMap stored in the cluster\n\n```\nkubeadm upgrade apply phase kubelet-config [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output what actions would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubelet-config</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_apply_phase_kubelet-config"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy",
      "type": "page",
      "title": "kubeadm_upgrade_node_phase_addon_kube-proxy",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpgrade the kube-proxy addon\n\n```\nkubeadm upgrade node phase addon kube-proxy [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Do not change any state, just output the actions that would be performed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kube-proxy</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_upgrade_node_phase_addon_kube-proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd",
      "type": "page",
      "title": "kubeadm_init_phase_etcd",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate static Pod manifest file for local etcd\n\n```\nkubeadm init phase etcd [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for etcd</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_etcd"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm",
      "type": "page",
      "title": "kubeadm_init_phase_upload-config_kubeadm",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpload the kubeadm ClusterConfiguration to a ConfigMap called kubeadm-config in the kube-system namespace. This enables correct configuration of system components and a seamless user experience when upgrading.\n\nAlternatively, you can use kubeadm config.\n\n```\nkubeadm init phase upload-config kubeadm [flags]\n```\n\n### Examples\n\n```\n  # upload the configuration of your cluster\n  kubeadm init phase upload-config kubeadm --config=myConfig.yaml\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubeadm</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_upload-config_kubeadm"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all",
      "type": "page",
      "title": "kubeadm_init_phase_upload-config_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpload all configuration to a config map\n\n```\nkubeadm init phase upload-config all [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_upload-config_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet",
      "type": "page",
      "title": "kubeadm_init_phase_upload-config_kubelet",
      "summary": "",
      "body": "\n\n\nUpload the kubelet component config to a ConfigMap\n\n### Synopsis\n\n\nUpload the kubelet configuration extracted from the kubeadm InitConfiguration object to a kubelet-config ConfigMap in the cluster\n\n```\nkubeadm init phase upload-config kubelet [flags]\n```\n\n### Examples\n\n```\n  # Upload the kubelet configuration from the kubeadm Config file to a ConfigMap in the cluster.\n  kubeadm init phase upload-config kubelet --config kubeadm.yaml\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubelet</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_upload-config_kubelet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs",
      "type": "page",
      "title": "kubeadm_init_phase_upload-certs",
      "summary": "",
      "body": "\n\n\nUpload certificates to kubeadm-certs\n\n### Synopsis\n\n\nUpload control plane certificates to the kubeadm-certs Secret\n\n```\nkubeadm init phase upload-certs [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--certificate-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Key used to encrypt the control-plane certificates in the kubeadm-certs Secret. The certificate key is a hex encoded string that is an AES key of size 32 bytes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for upload-certs</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--skip-certificate-key-print</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't print the key used to encrypt the control-plane certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--upload-certs</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Upload control-plane certificates to the kubeadm-certs Secret.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_upload-certs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight",
      "type": "page",
      "title": "kubeadm_init_phase_preflight",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRun pre-flight checks for kubeadm init.\n\n```\nkubeadm init phase preflight [flags]\n```\n\n### Examples\n\n```\n  # Run pre-flight checks for kubeadm init using a config file.\n  kubeadm init phase preflight --config kubeadm-config.yaml\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for preflight</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-preflight-errors strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_preflight"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs",
      "type": "page",
      "title": "kubeadm_init_phase_certs",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nCertificate generation\n\n```\nkubeadm init phase certs [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for certs</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start",
      "type": "page",
      "title": "kubeadm_init_phase_kubelet-start",
      "summary": "",
      "body": "\n\n\nWrite kubelet settings and (re)start the kubelet\n\n### Synopsis\n\n\nWrite a file with KubeletConfiguration and an environment file with node specific kubelet settings, and then (re)start kubelet.\n\n```\nkubeadm init phase kubelet-start [flags]\n```\n\n### Examples\n\n```\n  # Writes a dynamic environment file with kubelet flags from a InitConfiguration file.\n  kubeadm init phase kubelet-start --config config.yaml\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubelet-start</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubelet-start"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa",
      "type": "page",
      "title": "kubeadm_init_phase_certs_sa",
      "summary": "",
      "body": "\n\n\nGenerate a private key for signing service account tokens along with its public key\n\n### Synopsis\n\n\nGenerate the private key for signing service account tokens along with its public key, and save them into sa.key and sa.pub files.\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs sa [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for sa</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_sa"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all",
      "type": "page",
      "title": "kubeadm_init_phase_kubelet-finalize_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRun all kubelet-finalize phases\n\n```\nkubeadm init phase kubelet-finalize all [flags]\n```\n\n### Examples\n\n```\n  # Updates settings relevant to the kubelet after TLS bootstrap\n  kubeadm init phase kubelet-finalize all --config\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubelet-finalize_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon",
      "type": "page",
      "title": "kubeadm_init_phase_addon",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nInstall required addons for passing conformance tests\n\n```\nkubeadm init phase addon [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for addon</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_addon"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca",
      "type": "page",
      "title": "kubeadm_init_phase_certs_etcd-ca",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the self-signed CA to provision identities for etcd, and save them into etcd/ca.crt and etcd/ca.key files.\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs etcd-ca [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for etcd-ca</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_etcd-ca"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all",
      "type": "page",
      "title": "kubeadm_init_phase_kubeconfig_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate all kubeconfig files\n\n```\nkubeadm init phase kubeconfig all [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubeconfig_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client",
      "type": "page",
      "title": "kubeadm_init_phase_certs_etcd-healthcheck-client",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the certificate for liveness probes to healthcheck etcd, and save them into etcd/healthcheck-client.crt and etcd/healthcheck-client.key files.\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs etcd-healthcheck-client [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for etcd-healthcheck-client</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_etcd-healthcheck-client"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler",
      "type": "page",
      "title": "kubeadm_init_phase_control-plane_scheduler",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerates the kube-scheduler static Pod manifest\n\n```\nkubeadm init phase control-plane scheduler [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for scheduler</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_control-plane_scheduler"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config",
      "type": "page",
      "title": "kubeadm_init_phase_upload-config",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpload the kubeadm and kubelet configuration to a ConfigMap\n\n```\nkubeadm init phase upload-config [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for upload-config</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_upload-config"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca",
      "type": "page",
      "title": "kubeadm_init_phase_certs_ca",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the self-signed Kubernetes CA to provision identities for other Kubernetes components, and save them into ca.crt and ca.key files.\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs ca [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for ca</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_ca"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all",
      "type": "page",
      "title": "kubeadm_init_phase_control-plane_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate all static Pod manifest files\n\n```\nkubeadm init phase control-plane all [flags]\n```\n\n### Examples\n\n```\n  # Generates all static Pod manifest files for control plane components,\n  # functionally equivalent to what is generated by kubeadm init.\n  kubeadm init phase control-plane all\n  \n  # Generates all static Pod manifest files using options read from a configuration file.\n  kubeadm init phase control-plane all --config config.yaml\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--feature-gates string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A set of key=value pairs that describe feature gates for various features. Options are:<br/>NodeLocalCRISocket=true|false (default=true)<br/>PublicKeysECDSA=true|false (DEPRECATED - default=false)<br/>RootlessControlPlane=true|false (ALPHA - default=false)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--pod-network-cidr string</td>\n</tr>\n<tr>\n<\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_control-plane_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client",
      "type": "page",
      "title": "kubeadm_init_phase_certs_apiserver-kubelet-client",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the certificate for the API server to connect to kubelet, and save them into apiserver-kubelet-client.crt and apiserver-kubelet-client.key files.\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs apiserver-kubelet-client [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for apiserver-kubelet-client</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_apiserver-kubelet-client"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all",
      "type": "page",
      "title": "kubeadm_init_phase_addon_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nInstall all the addons\n\n```\nkubeadm init phase addon all [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--feature-gates string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A set of key=value pairs that describe feature gates for various features. Options are:<br/>NodeLocalCRISocket=true|false (default=true)<br/>PublicKeysECDSA=true|false (DEPRECATED - default=false)<br/>RootlessControlPlane=true|false (ALPHA - default=false)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--pod-network-cidr string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify range of IP addresses for the pod network. If set, the control plane will automatically allocate CIDRs for every node.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--service-cidr string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"10.96.0.0/12\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use alternative range of IP address for service VIPs.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--service-dns-domain string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"cluster.local\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use alternative domain for services, e.g. &quot;myorg.internal&quot;.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_addon_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation",
      "type": "page",
      "title": "kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nEnable kubelet client certificate rotation\n\n```\nkubeadm init phase kubelet-finalize enable-client-cert-rotation [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for enable-client-cert-rotation</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token",
      "type": "page",
      "title": "kubeadm_init_phase_bootstrap-token",
      "summary": "",
      "body": "\n\n\nGenerates bootstrap tokens used to join a node to a cluster\n\n### Synopsis\n\n\nBootstrap tokens are used for establishing bidirectional trust between a node joining the cluster and a control-plane node.\n\nThis command makes all the configurations required to make bootstrap tokens works and then creates an initial token.\n\n```\nkubeadm init phase bootstrap-token [flags]\n```\n\n### Examples\n\n```\n  # Make all the bootstrap token configurations and create an initial token, functionally\n  # equivalent to what generated by kubeadm init.\n  kubeadm init phase bootstrap-token\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for bootstrap-token</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--skip-token-print</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Skip printing of the default bootstrap token generated by 'kubeadm init'.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_bootstrap-token"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer",
      "type": "page",
      "title": "kubeadm_init_phase_certs_etcd-peer",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the certificate for etcd nodes to communicate with each other, and save them into etcd/peer.crt and etcd/peer.key files.\n\nDefault SANs are localhost, 127.0.0.1, 127.0.0.1, ::1\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs etcd-peer [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for etcd-peer</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_etcd-peer"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all",
      "type": "page",
      "title": "kubeadm_init_phase_certs_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate all certificates\n\n```\nkubeadm init phase certs all [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-cert-extra-sans strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate. Can be both IP addresses and DNS names.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--service-cidr string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"10.96.0.0/12\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use alternative range of IP address for service VIPs.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--service-dns-domain string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"cluster.local\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use alternative domain for services, e.g. &quot;myorg.internal&quot;.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler",
      "type": "page",
      "title": "kubeadm_init_phase_kubeconfig_scheduler",
      "summary": "",
      "body": "\n\n\nGenerate a kubeconfig file for the scheduler to use\n\n### Synopsis\n\n\nGenerate the kubeconfig file for the scheduler to use and save it to scheduler.conf file.\n\n```\nkubeadm init phase kubeconfig scheduler [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for scheduler</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubeconfig_scheduler"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command",
      "type": "page",
      "title": "kubeadm_init_phase_show-join-command",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nShow the join command for control-plane and worker node\n\n```\nkubeadm init phase show-join-command [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for show-join-command</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_show-join-command"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver",
      "type": "page",
      "title": "kubeadm_init_phase_control-plane_apiserver",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerates the kube-apiserver static Pod manifest\n\n```\nkubeadm init phase control-plane apiserver [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--feature-gates string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A set of key=value pairs that describe feature gates for various features. Options are:<br/>NodeLocalCRISocket=true|false (default=true)<br/>PublicKeysECDSA=true|false (DEPRECATED - default=false)<br/>RootlessControlPlane=true|false (ALPHA - default=false)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for apiserver</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--service-cidr string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"10.96.0.0/12\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use alternative range of IP address for service VIPs.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_control-plane_apiserver"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin",
      "type": "page",
      "title": "kubeadm_init_phase_kubeconfig_admin",
      "summary": "",
      "body": "\n\n\nGenerate a kubeconfig file for the admin to use and for kubeadm itself\n\n### Synopsis\n\n\nGenerate the kubeconfig file for the admin and for kubeadm itself, and save it to admin.conf file.\n\n```\nkubeadm init phase kubeconfig admin [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for admin</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubeconfig_admin"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns",
      "type": "page",
      "title": "kubeadm_init_phase_addon_coredns",
      "summary": "",
      "body": "\n\n\nInstall the CoreDNS addon to a Kubernetes cluster\n\n### Synopsis\n\n\nInstall the CoreDNS addon components via the API server. Please note that although the DNS server is deployed, it will not be scheduled until CNI is installed.\n\n```\nkubeadm init phase addon coredns [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--feature-gates string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A set of key=value pairs that describe feature gates for various features. Options are:<br/>NodeLocalCRISocket=true|false (default=true)<br/>PublicKeysECDSA=true|false (DEPRECATED - default=false)<br/>RootlessControlPlane=true|false (ALPHA - default=false)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for coredns</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--print-manifest</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Print the addon manifests to STDOUT instead of installing them</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--service-cidr string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"10.96.0.0/12\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use alternative range of IP address for service VIPs.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--service-dns-domain string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"cluster.local\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use alternative domain for services, e.g. &quot;myorg.internal&quot;.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_addon_coredns"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca",
      "type": "page",
      "title": "kubeadm_init_phase_certs_front-proxy-ca",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the self-signed CA to provision identities for front proxy, and save them into front-proxy-ca.crt and front-proxy-ca.key files.\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs front-proxy-ca [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for front-proxy-ca</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_front-proxy-ca"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver",
      "type": "page",
      "title": "kubeadm_init_phase_certs_apiserver",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the certificate for serving the Kubernetes API, and save them into apiserver.crt and apiserver.key files.\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs apiserver [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-cert-extra-sans strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate. Can be both IP addresses and DNS names.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for apiserver</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--service-cidr string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"10.96.0.0/12\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use alternative range of IP address for service VIPs.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--service-dns-domain string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"cluster.local\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use alternative domain for services, e.g. &quot;myorg.internal&quot;.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_apiserver"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager",
      "type": "page",
      "title": "kubeadm_init_phase_control-plane_controller-manager",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerates the kube-controller-manager static Pod manifest\n\n```\nkubeadm init phase control-plane controller-manager [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for controller-manager</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--pod-network-cidr string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify range of IP addresses for the pod network. If set, the control plane will automatically allocate CIDRs for every node.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_control-plane_controller-manager"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane",
      "type": "page",
      "title": "kubeadm_init_phase_mark-control-plane",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nMark a node as a control-plane\n\n```\nkubeadm init phase mark-control-plane [flags]\n```\n\n### Examples\n\n```\n  # Applies control-plane label and taint to the current node, functionally equivalent to what executed by kubeadm init.\n  kubeadm init phase mark-control-plane --config config.yaml\n  \n  # Applies control-plane label and taint to a specific node\n  kubeadm init phase mark-control-plane --node-name myNode\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for mark-control-plane</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_mark-control-plane"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize",
      "type": "page",
      "title": "kubeadm_init_phase_kubelet-finalize",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUpdates settings relevant to the kubelet after TLS bootstrap\n\n```\nkubeadm init phase kubelet-finalize [flags]\n```\n\n### Examples\n\n```\n  # Updates settings relevant to the kubelet after TLS bootstrap\n  kubeadm init phase kubelet-finalize all --config\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubelet-finalize</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubelet-finalize"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig",
      "type": "page",
      "title": "kubeadm_init_phase_kubeconfig",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate all kubeconfig files necessary to establish the control plane and the admin kubeconfig file\n\n```\nkubeadm init phase kubeconfig [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubeconfig</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubeconfig"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local",
      "type": "page",
      "title": "kubeadm_init_phase_etcd_local",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the static Pod manifest file for a local, single-node local etcd instance\n\n```\nkubeadm init phase etcd local [flags]\n```\n\n### Examples\n\n```\n  # Generates the static Pod manifest file for etcd, functionally\n  # equivalent to what is generated by kubeadm init.\n  kubeadm init phase etcd local\n  \n  # Generates the static Pod manifest file for etcd using options\n  # read from a configuration file.\n  kubeadm init phase etcd local --config config.yaml\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for local</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_etcd_local"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane",
      "type": "page",
      "title": "kubeadm_init_phase_control-plane",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate all static Pod manifest files necessary to establish the control plane\n\n```\nkubeadm init phase control-plane [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for control-plane</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_control-plane"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client",
      "type": "page",
      "title": "kubeadm_init_phase_certs_apiserver-etcd-client",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the certificate the apiserver uses to access etcd, and save them into apiserver-etcd-client.crt and apiserver-etcd-client.key files.\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs apiserver-etcd-client [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for apiserver-etcd-client</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_apiserver-etcd-client"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client",
      "type": "page",
      "title": "kubeadm_init_phase_certs_front-proxy-client",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the certificate for the front proxy client, and save them into front-proxy-client.crt and front-proxy-client.key files.\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs front-proxy-client [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for front-proxy-client</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_front-proxy-client"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase",
      "type": "page",
      "title": "kubeadm_init_phase",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUse this command to invoke single phase of the \"init\" workflow\n\n```\nkubeadm init phase [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for phase</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy",
      "type": "page",
      "title": "kubeadm_init_phase_addon_kube-proxy",
      "summary": "",
      "body": "\n\n\nInstall the kube-proxy addon to a Kubernetes cluster\n\n### Synopsis\n\n\nInstall the kube-proxy addon components via the API server.\n\n```\nkubeadm init phase addon kube-proxy [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kube-proxy</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--pod-network-cidr string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify range of IP addresses for the pod network. If set, the control plane will automatically allocate CIDRs for every node.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--print-manifest</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Print the addon manifests to STDOUT instead of installing them</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_addon_kube-proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager",
      "type": "page",
      "title": "kubeadm_init_phase_kubeconfig_controller-manager",
      "summary": "",
      "body": "\n\n\nGenerate a kubeconfig file for the controller manager to use\n\n### Synopsis\n\n\nGenerate the kubeconfig file for the controller manager to use and save it to controller-manager.conf file\n\n```\nkubeadm init phase kubeconfig controller-manager [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for controller-manager</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubeconfig_controller-manager"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/_index",
      "type": "page",
      "title": "_index",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRun this command in order to set up the Kubernetes control plane\n\nThe \"init\" command executes the following phases:\n```\npreflight                     Run pre-flight checks\ncerts                         Certificate generation\n  /ca                           Generate the self-signed Kubernetes CA to provision identities for other Kubernetes components\n  /apiserver                    Generate the certificate for serving the Kubernetes API\n  /apiserver-kubelet-client     Generate the certificate for the API server to connect to kubelet\n  /front-proxy-ca               Generate the self-signed CA to provision identities for front proxy\n  /front-proxy-client           Generate the certificate for the front proxy client\n  /etcd-ca                      Generate the self-signed CA to provision identities for etcd\n  /etcd-server                  Generate the certificate for serving etcd\n  /etcd-peer                    Generate the certificate for etcd nodes to communicate with each other\n  /etcd-healthcheck-client      Generate the certificate for liveness probes to healthcheck etcd\n  /apiserver-etcd-client        Generate the certificate the apiserver uses to access etcd\n  /sa                           Generate a private key for signing service account tokens along with its public key\nkubeconfig                    Generate all kubeconfig files necessary to establish the control plane and the admin kubeconfig file\n  /admin                        Generate a kubeconfig file for the admin to use and for kubeadm itself\n  /super-admin                  Generate a kubeconfig file for the super-admin\n  /kubelet                      Generate a kubeconfig file for the kubelet to use *only* for cluster bootstrapping purposes\n  /controller-manager           Generate a kubeconfig file for the controller manager to use\n  /scheduler                    Generate a kubeconfig file for the scheduler to use\netcd                          Generate static Pod manifest file for local etcd\n  /local                        Generate the static Pod manifest file for a local, single-node local etcd instance\ncontrol-plane                 Generate all static Pod manifest files necessary to establish the control plane\n  /apiserver                    Generates the kube-apiserver static Pod manifest\n  /controller-manager           Generates the kube-controller-manager static Pod manifest\n  /scheduler                    Generates the kube-scheduler static Pod manifest\nkubelet-start                 Write kubelet settings and (re)start the kubelet\nwait-control-plane            Wait for the control plane to start\nupload-config                 Upload the kubeadm and kubelet configuration to a ConfigMap\n  /kubeadm                      Upload the kubeadm ClusterConfiguration to a ConfigMap\n  /kubelet                      Upload the kubelet component config to a ConfigMap\nupload-certs                  Upload certificates to kubeadm-certs\nmark-control-plane            Mark a node as a control-plane\nbootstrap-token               Generates bootstrap tokens used to join a node to a cluster\nkubelet-finalize              Updates settings relevant to the kubelet after TLS bootstrap\n  /enable-client-cert-rotation  Enable kubelet client certificate rotation\naddon                         Install required addons for passing conformance tests\n  /coredns                      Install the CoreDNS addon to a Kubernetes cluster\n  /kube-proxy                   Install the kube-proxy addon to a Kubernetes cluster\nshow-join-command             Show the join command for control-plane and worker node\n```\n\n\n```\nkubeadm init [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening o\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/_index/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "_index"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet",
      "type": "page",
      "title": "kubeadm_init_phase_kubeconfig_kubelet",
      "summary": "",
      "body": "\n\n\nGenerate a kubeconfig file for the kubelet to use *only* for cluster bootstrapping purposes\n\n### Synopsis\n\n\nGenerate the kubeconfig file for the kubelet to use and save it to kubelet.conf file.\n\nPlease note that this should *only* be used for cluster bootstrapping purposes. After your control plane is up, you should request all kubelet credentials from the CSR API.\n\n```\nkubeadm init phase kubeconfig kubelet [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubelet</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubeconfig_kubelet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane",
      "type": "page",
      "title": "kubeadm_init_phase_wait-control-plane",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nWait for the control plane to start\n\n```\nkubeadm init phase wait-control-plane [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for wait-control-plane</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_wait-control-plane"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin",
      "type": "page",
      "title": "kubeadm_init_phase_kubeconfig_super-admin",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate a kubeconfig file for the super-admin, and save it to super-admin.conf file.\n\n```\nkubeadm init phase kubeconfig super-admin [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane-endpoint string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a stable IP address or DNS name for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for super-admin</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save the kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_kubeconfig_super-admin"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server",
      "type": "page",
      "title": "kubeadm_init_phase_certs_etcd-server",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the certificate for serving etcd, and save them into etcd/server.crt and etcd/server.key files.\n\nDefault SANs are localhost, 127.0.0.1, 127.0.0.1, ::1\n\nIf both files already exist, kubeadm skips the generation step and existing files will be used.\n\n```\nkubeadm init phase certs etcd-server [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path where to save and store the certificates.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for etcd-server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_init_phase_certs_etcd-server"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults",
      "type": "page",
      "title": "kubeadm_config_print_upgrade-defaults",
      "summary": "",
      "body": "\n\n\nPrint default upgrade configuration, that can be used for 'kubeadm upgrade'\n\n### Synopsis\n\n\n\nThis command prints objects such as the default upgrade configuration that is used for 'kubeadm upgrade'.\n\nNote that sensitive values like the Bootstrap Token fields are replaced with placeholder values like \"abcdef.0123456789abcdef\" in order to pass validation but\nnot perform the real computation for creating a token.\n\n\n```\nkubeadm config print upgrade-defaults [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for upgrade-defaults</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_config_print_upgrade-defaults"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults",
      "type": "page",
      "title": "kubeadm_config_print_reset-defaults",
      "summary": "",
      "body": "\n\n\nPrint default reset configuration, that can be used for 'kubeadm reset'\n\n### Synopsis\n\n\n\nThis command prints objects such as the default reset configuration that is used for 'kubeadm reset'.\n\nNote that sensitive values like the Bootstrap Token fields are replaced with placeholder values like \"abcdef.0123456789abcdef\" in order to pass validation but\nnot perform the real computation for creating a token.\n\n\n```\nkubeadm config print reset-defaults [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for reset-defaults</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_config_print_reset-defaults"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list",
      "type": "page",
      "title": "kubeadm_config_images_list",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nPrint a list of images kubeadm will use. The configuration file is used in case any images or image repositories are customized\n\n```\nkubeadm config images list [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--feature-gates string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A set of key=value pairs that describe feature gates for various features. Options are:<br/>NodeLocalCRISocket=true|false (default=true)<br/>PublicKeysECDSA=true|false (DEPRECATED - default=false)<br/>RootlessControlPlane=true|false (ALPHA - default=false)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for list</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"text\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: text|json|yaml|kyaml|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_config_images_list"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images",
      "type": "page",
      "title": "kubeadm_config_images",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nInteract with container images used by kubeadm\n\n```\nkubeadm config images [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for images</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_config_images"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull",
      "type": "page",
      "title": "kubeadm_config_images_pull",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nPull images used by kubeadm\n\n```\nkubeadm config images pull [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--feature-gates string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A set of key=value pairs that describe feature gates for various features. Options are:<br/>NodeLocalCRISocket=true|false (default=true)<br/>PublicKeysECDSA=true|false (DEPRECATED - default=false)<br/>RootlessControlPlane=true|false (ALPHA - default=false)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for pull</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image-repository string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"registry.k8s.io\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a container registry to pull control plane images from</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubernetes-version string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"stable-1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Choose a specific Kubernetes version for the control plane.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_config_images_pull"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults",
      "type": "page",
      "title": "kubeadm_config_print_join-defaults",
      "summary": "",
      "body": "\n\n\nPrint default join configuration, that can be used for 'kubeadm join'\n\n### Synopsis\n\n\n\nThis command prints objects such as the default join configuration that is used for 'kubeadm join'.\n\nNote that sensitive values like the Bootstrap Token fields are replaced with placeholder values like \"abcdef.0123456789abcdef\" in order to pass validation but\nnot perform the real computation for creating a token.\n\n\n```\nkubeadm config print join-defaults [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for join-defaults</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_config_print_join-defaults"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate",
      "type": "page",
      "title": "kubeadm_config_validate",
      "summary": "",
      "body": "\n\n\nRead a file containing the kubeadm configuration API and report any validation problems\n\n### Synopsis\n\n\n\nThis command lets you validate a kubeadm configuration API file and report any warnings and errors.\nIf there are no errors the exit status will be zero, otherwise it will be non-zero.\nAny unmarshaling problems such as unknown API fields will trigger errors. Unknown API versions and\nfields with invalid values will also trigger errors. Any other errors or warnings may be reported\ndepending on contents of the input file.\n\nIn this version of kubeadm, the following API versions are supported:\n- kubeadm.k8s.io/v1beta4\n\n\n```\nkubeadm config validate [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-deprecated-api</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Allow validation of deprecated APIs.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-experimental-api</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Allow validation of experimental, unreleased APIs.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for validate</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_config_validate"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print",
      "type": "page",
      "title": "kubeadm_config_print",
      "summary": "",
      "body": "\n\n\nPrint configuration\n\n### Synopsis\n\n\n\nThis command prints configurations for subcommands provided.\nFor details, see: https://pkg.go.dev/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm#section-directories\n\n```\nkubeadm config print [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for print</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_config_print"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate",
      "type": "page",
      "title": "kubeadm_config_migrate",
      "summary": "",
      "body": "\n\n\nRead an older version of the kubeadm configuration API types from a file, and output the similar config object for the newer version\n\n### Synopsis\n\n\n\nThis command lets you convert configuration objects of older versions to the latest supported version,\nlocally in the CLI tool without ever touching anything in the cluster.\nIn this version of kubeadm, the following API versions are supported:\n- kubeadm.k8s.io/v1beta4\n\nFurther, kubeadm can only write out config of version \"kubeadm.k8s.io/v1beta4\", but read both types.\nSo regardless of what version you pass to the --old-config parameter here, the API object will be\nread, deserialized, defaulted, converted, validated, and re-serialized when written to stdout or\n--new-config if specified.\n\nIn other words, the output of this command is what kubeadm actually would read internally if you\nsubmitted this file to \"kubeadm init\"\n\n\n```\nkubeadm config migrate [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-experimental-api</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Allow migration to experimental, unreleased APIs.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for migrate</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--new-config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the resulting equivalent kubeadm config file using the new API version. Optional, if not specified output will be sent to STDOUT.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--old-config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeadm config file that is using an old API version and should be converted. This flag is mandatory.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_config_migrate"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/_index",
      "type": "page",
      "title": "_index",
      "summary": "",
      "body": "\n\n\nManage configuration for a kubeadm cluster persisted in a ConfigMap in the cluster\n\n### Synopsis\n\n\n\nThere is a ConfigMap in the kube-system namespace called \"kubeadm-config\" that kubeadm uses to store internal configuration about the\ncluster. kubeadm CLI v1.8.0+ automatically creates this ConfigMap with the config used with 'kubeadm init', but if you\ninitialized your cluster using kubeadm v1.7.x or lower, you must use the 'kubeadm init phase upload-config' command to\ncreate this ConfigMap. This is required so that 'kubeadm upgrade' can configure your upgraded cluster correctly.\n\n\n```\nkubeadm config [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for config</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/_index/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "_index"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults",
      "type": "page",
      "title": "kubeadm_config_print_init-defaults",
      "summary": "",
      "body": "\n\n\nPrint default init configuration, that can be used for 'kubeadm init'\n\n### Synopsis\n\n\n\nThis command prints objects such as the default init configuration that is used for 'kubeadm init'.\n\nNote that sensitive values like the Bootstrap Token fields are replaced with placeholder values like \"abcdef.0123456789abcdef\" in order to pass validation but\nnot perform the real computation for creating a token.\n\n\n```\nkubeadm config print init-defaults [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--component-configs strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A comma-separated list for component config API objects to print the default values for. Available values: [KubeProxyConfiguration KubeletConfiguration]. If this flag is not set, no component configs will be printed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for init-defaults</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_config_print_init-defaults"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start",
      "type": "page",
      "title": "kubeadm_join_phase_kubelet-start",
      "summary": "",
      "body": "\n\n\nWrite kubelet settings, certificates and (re)start the kubelet\n\n### Synopsis\n\n\nWrite a file with KubeletConfiguration and an environment file with node specific kubelet settings, and then (re)start kubelet.\n\n```\nkubeadm join phase kubelet-start [api-server-endpoint] [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-file string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For file-based discovery, a file or URL from which to load cluster information.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, the token used to validate cluster information fetched from the API server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-ca-cert-hash strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, validate that the root CA public key matches this hash (format: &quot;&lt;type&gt;:&lt;value&gt;&quot;).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-unsafe-skip-ca-verification</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, allow joining without --discovery-token-ca-cert-hash pinning.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubelet-start</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--tls-bootstrap-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the token used to temporarily authenticate with the Kubernetes Control Plane while joining the node.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use this token for both discovery-token and tls-bootstrap-token when those values are not provided.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgro\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_kubelet-start"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs",
      "type": "page",
      "title": "kubeadm_join_phase_control-plane-prepare_certs",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the certificates for the new control plane components\n\n```\nkubeadm join phase control-plane-prepare certs [api-server-endpoint] [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If the node should host a new control plane instance, the IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Create a new control plane instance on this node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-file string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For file-based discovery, a file or URL from which to load cluster information.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, the token used to validate cluster information fetched from the API server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-ca-cert-hash strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, validate that the root CA public key matches this hash (format: &quot;&lt;type&gt;:&lt;value&gt;&quot;).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-unsafe-skip-ca-verification</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, allow joining without --discovery-token-ca-cert-hash pinning.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for certs</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--tls-bootstrap-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the token used to temporarily authenticate with the Kubernetes Control Plane while joining the node.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use this token for both discovery-token and tls-bootstrap-token when those values are not provided.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_control-plane-prepare_certs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join",
      "type": "page",
      "title": "kubeadm_join_phase_control-plane-join",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nJoin a machine as a control plane instance\n\n```\nkubeadm join phase control-plane-join [flags]\n```\n\n### Examples\n\n```\n  # Joins a machine as a control plane instance\n  kubeadm join phase control-plane-join all\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for control-plane-join</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_control-plane-join"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare",
      "type": "page",
      "title": "kubeadm_join_phase_control-plane-prepare",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nPrepare the machine for serving a control plane\n\n```\nkubeadm join phase control-plane-prepare [flags]\n```\n\n### Examples\n\n```\n  # Prepares the machine for serving a control plane\n  kubeadm join phase control-plane-prepare all\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for control-plane-prepare</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_control-plane-prepare"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all",
      "type": "page",
      "title": "kubeadm_join_phase_control-plane-prepare_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nPrepare the machine for serving a control plane\n\n```\nkubeadm join phase control-plane-prepare all [api-server-endpoint] [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If the node should host a new control plane instance, the IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If the node should host a new control plane instance, the port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use this key to decrypt the certificate secrets uploaded by init. The certificate key is a hex encoded string that is an AES key of size 32 bytes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Create a new control plane instance on this node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-file string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For file-based discovery, a file or URL from which to load cluster information.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, the token used to validate cluster information fetched from the API server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-ca-cert-hash strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, validate that the root CA public key matches this hash (format: &quot;&lt;type&gt;:&lt;value&gt;&quot;).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-unsafe-skip-ca-verification</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, allow joining without --discovery-token-ca-cert-hash pinning.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_control-plane-prepare_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap",
      "type": "page",
      "title": "kubeadm_join_phase_kubelet-wait-bootstrap",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nWait for the kubelet to bootstrap itself\n\n```\nkubeadm join phase kubelet-wait-bootstrap [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubelet-wait-bootstrap</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_kubelet-wait-bootstrap"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all",
      "type": "page",
      "title": "kubeadm_join_phase_control-plane-join_all",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nJoin a machine as a control plane instance\n\n```\nkubeadm join phase control-plane-join all [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If the node should host a new control plane instance, the IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Create a new control plane instance on this node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for all</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_control-plane-join_all"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane",
      "type": "page",
      "title": "kubeadm_join_phase_control-plane-join_mark-control-plane",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nMark a node as a control-plane\n\n```\nkubeadm join phase control-plane-join mark-control-plane [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Create a new control plane instance on this node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for mark-control-plane</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_control-plane-join_mark-control-plane"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane",
      "type": "page",
      "title": "kubeadm_join_phase_control-plane-prepare_control-plane",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the manifests for the new control plane components\n\n```\nkubeadm join phase control-plane-prepare control-plane [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If the node should host a new control plane instance, the IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If the node should host a new control plane instance, the port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Create a new control plane instance on this node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for control-plane</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_control-plane-prepare_control-plane"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs",
      "type": "page",
      "title": "kubeadm_join_phase_control-plane-prepare_download-certs",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nDownload certificates shared among control-plane nodes from the kubeadm-certs Secret\n\n```\nkubeadm join phase control-plane-prepare download-certs [api-server-endpoint] [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--certificate-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use this key to decrypt the certificate secrets uploaded by init. The certificate key is a hex encoded string that is an AES key of size 32 bytes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Create a new control plane instance on this node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-file string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For file-based discovery, a file or URL from which to load cluster information.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, the token used to validate cluster information fetched from the API server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-ca-cert-hash strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, validate that the root CA public key matches this hash (format: &quot;&lt;type&gt;:&lt;value&gt;&quot;).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-unsafe-skip-ca-verification</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, allow joining without --discovery-token-ca-cert-hash pinning.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for download-certs</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--tls-bootstrap-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the token used to temporarily authenticate with the Kubernetes Control Plane while joining the node.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use this token for both discovery-token and tls-bootstrap-token when those values are not provided.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_control-plane-prepare_download-certs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase",
      "type": "page",
      "title": "kubeadm_join_phase",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUse this command to invoke single phase of the \"join\" workflow\n\n```\nkubeadm join phase [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for phase</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join",
      "type": "page",
      "title": "kubeadm_join_phase_etcd-join",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nJoin etcd for control plane nodes\n\n```\nkubeadm join phase etcd-join [flags]\n```\n\n### Examples\n\n```\n  # Joins etcd for a control plane instance\n  kubeadm join phase control-plane-join-etcd all\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If the node should host a new control plane instance, the IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Create a new control plane instance on this node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for etcd-join</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patches string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a directory that contains files named &quot;target[suffix][+patchtype].extension&quot;. For example, &quot;kube-apiserver0+merge.yaml&quot; or just &quot;etcd.json&quot;. &quot;target&quot; can be one of &quot;kube-apiserver&quot;, &quot;kube-controller-manager&quot;, &quot;kube-scheduler&quot;, &quot;etcd&quot;, &quot;kubeletconfiguration&quot;, &quot;corednsdeployment&quot;. &quot;patchtype&quot; can be one of &quot;strategic&quot;, &quot;merge&quot; or &quot;json&quot; and they match the patch formats supported by kubectl. The default &quot;patchtype&quot; is &quot;strategic&quot;. &quot;extension&quot; must be either &quot;json&quot; or &quot;yaml&quot;. &quot;suffix&quot; is an optional string that can be used to determine which patches are applied first alpha-numerically.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_etcd-join"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight",
      "type": "page",
      "title": "kubeadm_join_phase_preflight",
      "summary": "",
      "body": "\n\n\nRun join pre-flight checks\n\n### Synopsis\n\n\nRun pre-flight checks for kubeadm join.\n\n```\nkubeadm join phase preflight [api-server-endpoint] [flags]\n```\n\n### Examples\n\n```\n  # Run join pre-flight checks using a config file.\n  kubeadm join phase preflight --config kubeadm-config.yaml\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If the node should host a new control plane instance, the IP address the API Server will advertise it's listening on. If not set the default network interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--apiserver-bind-port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 6443</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If the node should host a new control plane instance, the port for the API Server to bind to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use this key to decrypt the certificate secrets uploaded by init. The certificate key is a hex encoded string that is an AES key of size 32 bytes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Create a new control plane instance on this node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-file string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For file-based discovery, a file or URL from which to load cluster information.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, the token used to validate cluster information fetched from the API server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-ca-cert-hash strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, validate that the root CA public key matches this hash (format: &quot;&lt;type&gt;:&lt;value&gt;&quot;).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-unsafe-skip-ca-verification</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, allow joining without --discovery-token-ca-cert-hash pinning.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for preflight</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-preflight-errors strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the node name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--tls-bootstrap-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the token used to temporarily \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_preflight"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig",
      "type": "page",
      "title": "kubeadm_join_phase_control-plane-prepare_kubeconfig",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nGenerate the kubeconfig for the new control plane components\n\n```\nkubeadm join phase control-plane-prepare kubeconfig [api-server-endpoint] [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--certificate-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use this key to decrypt the certificate secrets uploaded by init. The certificate key is a hex encoded string that is an AES key of size 32 bytes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--control-plane</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Create a new control plane instance on this node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-file string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For file-based discovery, a file or URL from which to load cluster information.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, the token used to validate cluster information fetched from the API server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-ca-cert-hash strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, validate that the root CA public key matches this hash (format: &quot;&lt;type&gt;:&lt;value&gt;&quot;).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--discovery-token-unsafe-skip-ca-verification</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>For token-based discovery, allow joining without --discovery-token-ca-cert-hash pinning.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--tls-bootstrap-token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the token used to temporarily authenticate with the Kubernetes Control Plane while joining the node.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--token string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use this token for both discovery-token and tls-bootstrap-token when those values are not provided.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_control-plane-prepare_kubeconfig"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/_index",
      "type": "page",
      "title": "_index",
      "summary": "",
      "body": "\n\n\nRun this on any machine you wish to join an existing cluster\n\n### Synopsis\n\n\n\nWhen joining a kubeadm initialized cluster, we need to establish\nbidirectional trust. This is split into discovery (having the Node\ntrust the Kubernetes Control Plane) and TLS bootstrap (having the\nKubernetes Control Plane trust the Node).\n\nThere are 2 main schemes for discovery. The first is to use a shared\ntoken along with the IP address of the API server. The second is to\nprovide a file - a subset of the standard kubeconfig file. The\ndiscovery/kubeconfig file supports token, client-go authentication\nplugins (\"exec\"), \"tokenFile\", and \"authProvider\". This file can be a\nlocal file or downloaded via an HTTPS URL. The forms are\nkubeadm join --discovery-token abcdef.1234567890abcdef 1.2.3.4:6443,\nkubeadm join --discovery-file path/to/file.conf, or kubeadm join\n--discovery-file https://url/file.conf. Only one form can be used. If\nthe discovery information is loaded from a URL, HTTPS must be used.\nAlso, in that case the host installed CA bundle is used to verify\nthe connection.\n\nIf you use a shared token for discovery, you should also pass the\n--discovery-token-ca-cert-hash flag to validate the public key of the\nroot certificate authority (CA) presented by the Kubernetes Control Plane.\nThe value of this flag is specified as \"&lt;hash-type&gt;:&lt;hex-encoded-value&gt;\",\nwhere the supported hash type is \"sha256\". The hash is calculated over\nthe bytes of the Subject Public Key Info (SPKI) object (as in RFC7469).\nThis value is available in the output of \"kubeadm init\" or can be\ncalculated using standard tools. The --discovery-token-ca-cert-hash flag\nmay be repeated multiple times to allow more than one public key.\n\nIf you cannot know the CA public key hash ahead of time, you can pass\nthe --discovery-token-unsafe-skip-ca-verification flag to disable this\nverification. This weakens the kubeadm security model since other nodes\ncan potentially impersonate the Kubernetes Control Plane.\n\nThe TLS bootstrap mechanism is also driven via a shared token. This is\nused to temporarily authenticate with the Kubernetes Control Plane to submit a\ncertificate signing request (CSR) for a locally created key pair. By\ndefault, kubeadm will set up the Kubernetes Control Plane to automatically\napprove these signing requests. This token is passed in with the\n--tls-bootstrap-token abcdef.1234567890abcdef flag.\n\nOften times the same token is used for both parts. In this case, the\n--token flag can be used instead of specifying each token individually.\n\n\nThe \"join [api-server-endpoint]\" command executes the following phases:\n```\npreflight               Run join pre-flight checks\ncontrol-plane-prepare   Prepare the machine for serving a control plane\n  /download-certs         Download certificates shared among control-plane nodes from the kubeadm-certs Secret\n  /certs                  Generate the certificates for the new control plane components\n  /kubeconfig             Generate the kubeconfig for the new control plane components\n  /control-plane          Generate the manifests for the new control plane components\nkubelet-start           Write kubelet settings, certificates and (re)start the kubelet\netcd-join               Join etcd for control plane nodes\nkubelet-wait-bootstrap  Wait for the kubelet to bootstrap itself\ncontrol-plane-join      Join a machine as a control plane instance\n  /mark-control-plane     Mark a node as a control-plane\nwait-control-plane      Wait for the control plane to start\n```\n\n\n```\nkubeadm join [api-server-endpoint] [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--apiserver-advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If the node should host a new control plane instance, the IP address the API Server will advertise it's listening on. If not set the defaul\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/_index/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "_index"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane",
      "type": "page",
      "title": "kubeadm_join_phase_wait-control-plane",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nWait for the control plane to start\n\n```\nkubeadm join phase wait-control-plane [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for wait-control-plane</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_join_phase_wait-control-plane"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list",
      "type": "page",
      "title": "kubeadm_token_list",
      "summary": "",
      "body": "\n\n\nList bootstrap tokens on the server\n\n### Synopsis\n\n\n\nThis command will list all bootstrap tokens for you.\n\n\n```\nkubeadm token list [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for list</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"text\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: text|json|yaml|kyaml|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Whether to enable dry-run mode or not</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_token_list"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create",
      "type": "page",
      "title": "kubeadm_token_create",
      "summary": "",
      "body": "\n\n\nCreate bootstrap tokens on the server\n\n### Synopsis\n\n\n\nThis command will create a bootstrap token for you.\nYou can specify the usages for this token, the \"time to live\" and an optional human friendly description.\n\nThe [token] is the actual token to write.\nThis should be a securely generated random token of the form \"[a-z0-9]{6}.[a-z0-9]{16}\".\nIf no [token] is given, kubeadm will generate a random token instead.\n\n\n```\nkubeadm token create [token]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--certificate-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>When used together with '--print-join-command', print the full 'kubeadm join' flag needed to join the cluster as a control-plane. To create a new certificate key you must use 'kubeadm init phase upload-certs --upload-certs'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--description string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A human friendly description of how this token is used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--groups strings&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"system:bootstrappers:kubeadm:default-node-token\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Extra groups that this token will authenticate as when used for authentication. Must match &quot;\\Asystem:bootstrappers:[a-z0-9:-]{0,255}[a-z0-9]\\z&quot;</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for create</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--print-join-command</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Instead of printing only the token, print the full 'kubeadm join' flag needed to join the cluster using the token.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ttl duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 24h0m0s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The duration before the token is automatically deleted (e.g. 1s, 2m, 3h). If set to '0', the token will never expire</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--usages strings&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"signing,authentication\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Describes the ways in which this token can be used. You can pass --usages multiple times or provide a comma separated list of options. Valid options: [signing,authentication]</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Whether to enable dry-run mode or not</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_token_create"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete",
      "type": "page",
      "title": "kubeadm_token_delete",
      "summary": "",
      "body": "\n\n\nDelete bootstrap tokens on the server\n\n### Synopsis\n\n\n\nThis command will delete a list of bootstrap tokens for you.\n\nThe [token-value] is the full Token of the form \"[a-z0-9]{6}.[a-z0-9]{16}\" or the\nToken ID of the form \"[a-z0-9]{6}\" to delete.\n\n\n```\nkubeadm token delete [token-value] ...\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for delete</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Whether to enable dry-run mode or not</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_token_delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate",
      "type": "page",
      "title": "kubeadm_token_generate",
      "summary": "",
      "body": "\n\n\nGenerate and print a bootstrap token, but do not create it on the server\n\n### Synopsis\n\n\n\nThis command will print out a randomly-generated bootstrap token that can be used with\nthe \"init\" and \"join\" commands.\n\nYou don't have to use this command in order to generate a token. You can do so\nyourself as long as it is in the format \"[a-z0-9]{6}.[a-z0-9]{16}\". This\ncommand is provided for convenience to generate tokens in the given format.\n\nYou can also use \"kubeadm init\" without specifying a token and it will\ngenerate and print one for you.\n\n\n```\nkubeadm token generate [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for generate</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Whether to enable dry-run mode or not</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_token_generate"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/_index",
      "type": "page",
      "title": "_index",
      "summary": "",
      "body": "\n\n\nManage bootstrap tokens\n\n### Synopsis\n\n\n\nThis command manages bootstrap tokens. It is optional and needed only for advanced use cases.\n\nIn short, bootstrap tokens are used for establishing bidirectional trust between a client and a server.\nA bootstrap token can be used when a client (for example a node that is about to join the cluster) needs\nto trust the server it is talking to. Then a bootstrap token with the \"signing\" usage can be used.\nbootstrap tokens can also function as a way to allow short-lived authentication to the API Server\n(the token serves as a way for the API Server to trust the client), for example for doing the TLS Bootstrap.\n\nWhat is a bootstrap token more exactly?\n - It is a Secret in the kube-system namespace of type \"bootstrap.kubernetes.io/token\".\n - A bootstrap token must be of the form \"[a-z0-9]{6}.[a-z0-9]{16}\". The former part is the public token ID,\n   while the latter is the Token Secret and it must be kept private at all circumstances!\n - The name of the Secret must be named \"bootstrap-token-(token-id)\".\n\nYou can read more about bootstrap tokens here:\n  https://kubernetes.io/docs/admin/bootstrap-tokens/\n\n\n```\nkubeadm token [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Whether to enable dry-run mode or not</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for token</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/_index/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_token/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "_index"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_version/_index",
      "type": "page",
      "title": "_index",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nPrint the version of kubeadm\n\n```\nkubeadm version [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format; available options are 'yaml', 'json' and 'short'</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_version/_index/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_version/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_version/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_version/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "_index"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member",
      "type": "page",
      "title": "kubeadm_reset_phase_remove-etcd-member",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRemove a local etcd member for a control plane node.\n\n```\nkubeadm reset phase remove-etcd-member [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for remove-etcd-member</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_reset_phase_remove-etcd-member"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node",
      "type": "page",
      "title": "kubeadm_reset_phase_cleanup-node",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nRun cleanup node.\n\n```\nkubeadm reset phase cleanup-node [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the directory where the certificates are stored. If specified, clean this directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cleanup-tmp-dir</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Cleanup the &quot;/etc/kubernetes/tmp&quot; directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for cleanup-node</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_reset_phase_cleanup-node"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase",
      "type": "page",
      "title": "kubeadm_reset_phase",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nUse this command to invoke single phase of the \"reset\" workflow\n\n```\nkubeadm reset phase [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for phase</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_reset_phase"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight",
      "type": "page",
      "title": "kubeadm_reset_phase_preflight",
      "summary": "",
      "body": "\n\n\nRun reset pre-flight checks\n\n### Synopsis\n\n\nRun pre-flight checks for kubeadm reset.\n\n```\nkubeadm reset phase preflight [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --force</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Reset the node without prompting for confirmation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for preflight</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-preflight-errors strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight/",
          "line_start": null,
          "line_end": null,
          "quote": "kubeadm_reset_phase_preflight"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/_index",
      "type": "page",
      "title": "_index",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\nPerforms a best effort revert of changes made to this host by 'kubeadm init' or 'kubeadm join'\n\nThe \"reset\" command executes the following phases:\n```\npreflight           Run reset pre-flight checks\nremove-etcd-member  Remove a local etcd member.\ncleanup-node        Run cleanup node.\n```\n\n\n```\nkubeadm reset [flags]\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cert-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/pki\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the directory where the certificates are stored. If specified, clean this directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cleanup-tmp-dir</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Cleanup the &quot;/etc/kubernetes/tmp&quot; directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a kubeadm configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cri-socket string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the CRI socket to connect. If empty kubeadm will try to auto-detect this value; use this option only if you have more than one CRI installed or if you have non-standard CRI socket.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Don't apply any changes; just output what would be done.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --force</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Reset the node without prompting for confirmation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for reset</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-preflight-errors strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/etc/kubernetes/admin.conf\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The kubeconfig file to use when talking to the cluster. If the flag is not set, a set of standard locations can be searched for an existing kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--skip-phases strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>List of phases to be skipped</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/_index/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_reset/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "_index"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/setup-tools/kubeadm/generated/kubeadm_completion/_index",
      "type": "page",
      "title": "_index",
      "summary": "",
      "body": "\n\n\n### Synopsis\n\n\n\nOutput shell completion code for the specified shell (bash or zsh).\nThe shell code must be evaluated to provide interactive\ncompletion of kubeadm commands. This can be done by sourcing it from\nthe .bash_profile.\n\nNote: this requires the bash-completion framework.\n\nTo install it on Mac use homebrew:\n    $ brew install bash-completion\nOnce installed, bash_completion must be evaluated. This can be done by adding the\nfollowing line to the .bash_profile\n    $ source $(brew --prefix)/etc/bash_completion\n\nIf bash-completion is not installed on Linux, please install the 'bash-completion' package\nvia your distribution's package manager.\n\nNote for zsh users: [1] zsh completions are only supported in versions of zsh &gt;= 5.2\n\n```\nkubeadm completion SHELL [flags]\n```\n\n### Examples\n\n```\n\n# Install bash completion on a Mac using homebrew\nbrew install bash-completion\nprintf \"\\n# Bash completion support\\nsource $(brew --prefix)/etc/bash_completion\\n\" >> $HOME/.bash_profile\nsource $HOME/.bash_profile\n\n# Load the kubeadm completion code for bash into the current shell\nsource <(kubeadm completion bash)\n\n# Write bash completion code to a file and source it from .bash_profile\nkubeadm completion bash > ~/.kube/kubeadm_completion.bash.inc\nprintf \"\\n# Kubeadm shell completion\\nsource '$HOME/.kube/kubeadm_completion.bash.inc'\\n\" >> $HOME/.bash_profile\nsource $HOME/.bash_profile\n\n# Load the kubeadm completion code for zsh[1] into the current shell\nsource <(kubeadm completion zsh)\n```\n\n### Options\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for completion</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n### Options inherited from parent commands\n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--rootfs string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the 'real' host root filesystem. This will cause kubeadm to chroot into the provided path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_completion/_index/",
      "meta": {
        "weight": null,
        "rel_path": "reference/setup-tools/kubeadm/generated/kubeadm_completion/_index.md"
      },
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_completion/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "_index"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/kube-apiserver",
      "type": "page",
      "title": "kube-apiserver",
      "summary": "",
      "body": "\n\n\n## \n\n\nThe Kubernetes API server validates and configures data\nfor the api objects which include pods, services, replicationcontrollers, and\nothers. The API Server services REST operations and provides the frontend to the\ncluster's shared state through which all other components interact.\n\n```\nkube-apiserver [flags]\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--admission-control strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Admission is divided into two phases. In the first phase, only mutating admission plugins run. In the second phase, only validating admission plugins run. The names in the below list may represent a validating plugin, a mutating plugin, or both. The order of plugins in which they are passed to this flag does not matter. Comma-delimited list of: AlwaysAdmit, AlwaysDeny, AlwaysPullImages, CertificateApproval, CertificateSigning, CertificateSubjectRestriction, ClusterTrustBundleAttest, DefaultIngressClass, DefaultStorageClass, DefaultTolerationSeconds, DenyServiceExternalIPs, EventRateLimit, ExtendedResourceToleration, ImagePolicyWebhook, JobValidation, LimitPodHardAntiAffinityTopology, LimitRanger, MutatingAdmissionPolicy, MutatingAdmissionWebhook, NamespaceAutoProvision, NamespaceExists, NamespaceLifecycle, NodeDeclaredFeatureValidator, NodeRestriction, OwnerReferencesPermissionEnforcement, PersistentVolumeClaimResize, PodGroupProtection, PodGroupWorkloadExists, PodNodeSelector, PodResizeValidator, PodSecurity, PodTolerationRestriction, PodTopologyLabels, Priority, ResourceQuota, RuntimeClass, ServiceAccount, StorageObjectInUseProtection, TaintNodesByCondition, ValidatingAdmissionPolicy, ValidatingAdmissionWebhook. (DEPRECATED: Use --enable-admission-plugins or --disable-admission-plugins instead. Will be removed in a future version.)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--admission-control-config-file string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>File with admission control configuration.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--advertise-address string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address on which to advertise the apiserver to members of the cluster. This address must be reachable by the rest of the cluster. If blank, the --bind-address will be used. If --bind-address is unspecified, the host's default interface will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--aggregator-reject-forwarding-redirect&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Aggregator reject forwarding redirect response back to client.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-metric-labels stringToString&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: []</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The map from metric-label to value allow-list of this label. The key's format is &lt;MetricName&gt;,&lt;LabelName&gt;. The value's format is &lt;allowed_value&gt;,&lt;allowed_value&gt;...e.g. metric1,label1='v1,v2,v3', metric1,label2='v1,v2,v3' metric2,label1='v1,v2,v3'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-metric-labels-manifest string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the manifest file that contains the allow-list mapping. The format of the file is the same as the flag --allow-metric-labels, i.e.,<br/>allowListMapping:<br/>&quot;metric1,label1&quot;: &quot;value11,value12&quot;<br/>&quot;metric2,label2&quot;: &quot;&quot;<br/>Note that the flag --allow-metric-labels will override the manifest file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-privileged</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, allow privileged containers. [default=false]</p></td\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/command-line-tools-reference/kube-apiserver.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-apiserver.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-apiserver"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-synopsis",
      "type": "concept",
      "title": "{{% heading \"synopsis\" %}}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-apiserver.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/",
          "line_start": 578,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-options",
      "type": "concept",
      "title": "{{% heading \"options\" %}}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-apiserver.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/",
          "line_start": 926,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/kube-controller-manager",
      "type": "page",
      "title": "kube-controller-manager",
      "summary": "",
      "body": "\n\n\n## \n\n\nThe Kubernetes controller manager is a daemon that embeds\nthe core control loops shipped with Kubernetes. In applications of robotics and\nautomation, a control loop is a non-terminating loop that regulates the state of\nthe system. In Kubernetes, a controller is a control loop that watches the shared\nstate of the cluster through the apiserver and makes changes attempting to move the\ncurrent state towards the desired state. Examples of controllers that ship with\nKubernetes today are the replication controller, endpoints controller, namespace\ncontroller, and serviceaccounts controller.\n\n```\nkube-controller-manager [flags]\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allocate-node-cidrs</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Should CIDRs for Pods be allocated and set on the cloud provider. Requires --cluster-cidr.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-metric-labels stringToString&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: []</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The map from metric-label to value allow-list of this label. The key's format is &lt;MetricName&gt;,&lt;LabelName&gt;. The value's format is &lt;allowed_value&gt;,&lt;allowed_value&gt;...e.g. metric1,label1='v1,v2,v3', metric1,label2='v1,v2,v3' metric2,label1='v1,v2,v3'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-metric-labels-manifest string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the manifest file that contains the allow-list mapping. The format of the file is the same as the flag --allow-metric-labels, i.e.,<br/>allowListMapping:<br/>&quot;metric1,label1&quot;: &quot;value11,value12&quot;<br/>&quot;metric2,label2&quot;: &quot;&quot;<br/>Note that the flag --allow-metric-labels will override the manifest file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--attach-detach-reconcile-sync-period duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 1m0s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The reconciler sync wait time between volume attach detach. This duration must be larger than one second, and increasing this value from the default may allow for volumes to be mismatched with pods.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authentication-kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>kubeconfig file pointing at the 'core' kubernetes server with enough rights to create tokenreviews.authentication.k8s.io. This is optional. If empty, all token requests are considered to be anonymous and no client CA is looked up in the cluster.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authentication-skip-lookup</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If false, the authentication-kubeconfig will be used to lookup missing authentication configuration from the cluster.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authentication-token-webhook-cache-ttl duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 10s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The duration to cache responses from the webhook token authenticator.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authentication-tolerate-lookup-failure</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, failures to look up missing authentication configuration from the cluster are not considered fatal. Note that this can result in authentication that treats all requests as anonymous.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authorization-always-allow-paths strings&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/healthz,/readyz,/livez\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of HTTP paths to skip during authorization, i.e. these are authorized without conta\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-controller-manager/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/command-line-tools-reference/kube-controller-manager.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-controller-manager/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-controller-manager"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/kube-proxy",
      "type": "page",
      "title": "kube-proxy",
      "summary": "",
      "body": "\n\n\n## \n\n\nThe Kubernetes network proxy runs on each node. This\nreflects services as defined in the Kubernetes API on each node and can do simple\nTCP, UDP, and SCTP stream forwarding or round robin TCP, UDP, and SCTP forwarding across a set of backends.\nService cluster IPs and ports are currently found through Docker-links-compatible\nenvironment variables specifying ports opened by the service proxy. There is an optional\naddon that provides cluster DNS for these cluster IPs. The user must create a service\nwith the apiserver API to configure the proxy.\n\n```\nkube-proxy [flags]\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--add_dir_header</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, adds the file directory to the header of the log messages</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--alsologtostderr</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>log to standard error as well as files (no effect when -logtostderr=true)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--alsologtostderrthreshold int</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>logs at or above this threshold go to stderr when -alsologtostderr=true (no effect when -logtostderr=true)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--bind-address string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 0.0.0.0</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Overrides kube-proxy's idea of what its node's primary IP is. Note that the name is a historical artifact, and kube-proxy does not actually bind any sockets to this IP. This parameter is ignored if a config file is specified by --config.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--bind-address-hard-fail</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true kube-proxy will treat failure to bind to a port as fatal and exit</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cleanup</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true cleanup iptables and ipvs rules and exit.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster-cidr string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The CIDR range of the pods in the cluster. (For dual-stack clusters, this can be a comma-separated dual-stack pair of CIDR ranges.). When --detect-local-mode is set to ClusterCIDR, kube-proxy will consider traffic to be local if its source IP is in this range. (Otherwise it is not used.) This parameter is ignored if a config file is specified by --config.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the configuration file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--config-sync-period duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 15m0s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>How often configuration from the apiserver is refreshed.  Must be greater than 0.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--conntrack-max-per-core int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 32768</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Maximum number of NAT connections to track per CPU core (0 to leave the limit as-is and ignore conntrack-min).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--conntrack-min int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 131072</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Minimum number of conntrack entries to allocate, regardless of conntrack-max-per-core (set conntrack-max-per-core=0 to leave the limit as-is).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--conntrack-tcp-be-liberal</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Enable liberal mode for tracking TCP packets by setting nf_conntrack\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/command-line-tools-reference/kube-proxy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/kubelet",
      "type": "page",
      "title": "kubelet",
      "summary": "",
      "body": "\n\n\n## \n\n\nThe kubelet is the primary \"node agent\" that runs on each\nnode. It can register the node with the apiserver using one of: the hostname; a flag to\noverride the hostname; or specific logic for a cloud provider.\n\nThe kubelet works in terms of a PodSpec. A PodSpec is a YAML or JSON object\nthat describes a pod. The kubelet takes a set of PodSpecs that are provided through\nvarious mechanisms (primarily through the apiserver) and ensures that the containers\ndescribed in those PodSpecs are running and healthy. The kubelet doesn't manage\ncontainers which were not created by Kubernetes.\n\nOther than from an PodSpec from the apiserver, there are two ways that a container\nmanifest can be provided to the Kubelet.\n\nFile: Path passed as a flag on the command line. Files under this path will be monitored\nperiodically for updates. The monitoring period is 20s by default and is configurable\nvia a flag.\n\nHTTP endpoint: HTTP endpoint passed as a parameter on the command line. This endpoint\nis checked every 20 seconds (also configurable with a flag).\n\n```\nkubelet [flags]\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--address string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 0.0.0.0</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address for the Kubelet to serve on (set to '0.0.0.0' or '::' for listening on all interfaces and IP address families) (DEPRECATED: This parameter should be set via the config file specified by the Kubelet's --config flag. See https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ for more information.)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allowed-unsafe-sysctls strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Comma-separated whitelist of unsafe sysctls or unsafe sysctl patterns (ending in *). Use these at your own risk. (DEPRECATED: This parameter should be set via the config file specified by the Kubelet's --config flag. See https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ for more information.)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--anonymous-auth&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Enables anonymous requests to the Kubelet server. Requests that are not rejected by another authentication method are treated as anonymous requests. Anonymous requests have a username of system:anonymous, and a group name of system:unauthenticated. (DEPRECATED: This parameter should be set via the config file specified by the Kubelet's --config flag. See https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ for more information.)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authentication-token-webhook</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use the TokenReview API to determine authentication for bearer tokens. (DEPRECATED: This parameter should be set via the config file specified by the Kubelet's --config flag. See https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ for more information.)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authentication-token-webhook-cache-ttl duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 2m0s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The duration to cache responses from the webhook token authenticator. (DEPRECATED: This parameter should be set via the config file specified by the Kubelet's --config flag. See https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ for more information.)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authorization-mode string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"AlwaysAllow\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Authorization mode for Kubelet server. Valid options are AlwaysAllow\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/command-line-tools-reference/kubelet.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kubelet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/",
          "line_start": null,
          "line_end": null,
          "quote": "kubelet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/kube-scheduler",
      "type": "page",
      "title": "kube-scheduler",
      "summary": "",
      "body": "\n\n\n## \n\n\nThe Kubernetes scheduler is a control plane process which assigns\nPods to Nodes. The scheduler determines which Nodes are valid placements for\neach Pod in the scheduling queue according to constraints and available\nresources. The scheduler then ranks each valid Node and binds the Pod to a\nsuitable Node. Multiple different schedulers may be used within a cluster;\nkube-scheduler is the reference implementation.\nSee [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/)\nfor more information about scheduling and the kube-scheduler component.\n\n```\nkube-scheduler [flags]\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-metric-labels stringToString&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: []</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The map from metric-label to value allow-list of this label. The key's format is &lt;MetricName&gt;,&lt;LabelName&gt;. The value's format is &lt;allowed_value&gt;,&lt;allowed_value&gt;...e.g. metric1,label1='v1,v2,v3', metric1,label2='v1,v2,v3' metric2,label1='v1,v2,v3'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-metric-labels-manifest string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The path to the manifest file that contains the allow-list mapping. The format of the file is the same as the flag --allow-metric-labels, i.e.,<br/>allowListMapping:<br/>&quot;metric1,label1&quot;: &quot;value11,value12&quot;<br/>&quot;metric2,label2&quot;: &quot;&quot;<br/>Note that the flag --allow-metric-labels will override the manifest file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authentication-kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>kubeconfig file pointing at the 'core' kubernetes server with enough rights to create tokenreviews.authentication.k8s.io. This is optional. If empty, all token requests are considered to be anonymous and no client CA is looked up in the cluster.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authentication-skip-lookup</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If false, the authentication-kubeconfig will be used to lookup missing authentication configuration from the cluster.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authentication-token-webhook-cache-ttl duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 10s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The duration to cache responses from the webhook token authenticator.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authentication-tolerate-lookup-failure&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, failures to look up missing authentication configuration from the cluster are not considered fatal. Note that this can result in authentication that treats all requests as anonymous.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authorization-always-allow-paths strings&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/healthz,/readyz,/livez\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A list of HTTP paths to skip during authorization, i.e. these are authorized without contacting the 'core' kubernetes server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authorization-kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>kubeconfig file pointing at the 'core' kubernetes server with enough rights to create subjectaccessreviews.authorization.k8s.io. This is optional. If empty, all requests not skipped by authorization are forbidden.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--authorization-webhook-cache-authorized-ttl duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 10s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The duration to ca\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-scheduler/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/command-line-tools-reference/kube-scheduler.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-scheduler/",
          "line_start": null,
          "line_end": null,
          "quote": "kube-scheduler"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/_index",
      "type": "page",
      "title": "Component tools",
      "summary": "Component tools are used to manage and interact with Kubernetes clusters.",
      "body": "Component tools are used to manage and interact with Kubernetes clusters.\n\n**Why it matters**\nThese tools provide a way to perform various tasks, such as deploying applications, managing resources, and monitoring cluster performance.\n\n**Key facts**\n- Component tools include kubectl, the command-line interface for interacting with Kubernetes clusters.\n\n**Common pitfalls**\n- Misusing component tools can lead to unintended consequences, such as overwriting critical configuration files or disrupting cluster operations.\n\n**Related**\nkubectl, Kubernetes clusters",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/_index/",
      "meta": {
        "weight": 120,
        "rel_path": "reference/command-line-tools-reference/_index.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Component tools"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates-removed/index",
      "type": "page",
      "title": "Feature Gates (removed)",
      "summary": "",
      "body": "\n\nThis page contains list of feature gates that have been removed. The information on this page is for reference.\nA removed feature gate is different from a GA'ed or deprecated one in that a removed one is\nno longer recognized as a valid feature gate.\nHowever, a GA'ed or a deprecated feature gate is still recognized by the corresponding Kubernetes\ncomponents although they are unable to cause any behavior differences in a cluster.\n\nFor feature gates that are still recognized by the Kubernetes components, please refer to\nthe [Alpha/Beta feature gate table](/docs/reference/command-line-tools-reference/feature-gates/#feature-gates-for-alpha-or-beta-features)\nor the [Graduated/Deprecated feature gate table](/docs/reference/command-line-tools-reference/feature-gates/#feature-gates-for-graduated-or-deprecated-features)\n\n### Feature gates that are removed\n\nIn the following table:\n\n- The \"From\" column contains the Kubernetes release when a feature is introduced\n  or its release stage is changed.\n- The \"To\" column, if not empty, contains the last Kubernetes release in which\n  you can still use a feature gate. If the feature stage is either \"Deprecated\"\n  or \"GA\", the \"To\" column is the Kubernetes release when the feature is removed.\n\n\n\n\n## Descriptions for removed feature gates\n\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates-removed/index/",
      "meta": {
        "weight": 15,
        "rel_path": "reference/command-line-tools-reference/feature-gates-removed/index.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates-removed/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates-removed/index/",
          "line_start": null,
          "line_end": null,
          "quote": "Feature Gates (removed)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:descriptions-for-removed-feature-gates",
      "type": "concept",
      "title": "Descriptions for removed feature gates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates-removed/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates-removed/index/",
          "line_start": 1484,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:feature-gates-that-are-removed",
      "type": "concept",
      "title": "Feature gates that are removed",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates-removed/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates-removed/index/",
          "line_start": 843,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MinimizeIPTablesRestore",
      "type": "page",
      "title": "MinimizeIPTablesRestore",
      "summary": "MinimizeIPTablesRestore is a feature gate that minimizes the number of iptables rules restored during a cluster restart.",
      "body": "MinimizeIPTablesRestore is a feature gate that minimizes the number of iptables rules restored during a cluster restart.\n\n**Why it matters**\nThis feature gate helps reduce the time it takes to restore iptables rules, making cluster restarts faster and more efficient.\n\n**Key facts**\n- MinimizeIPTablesRestore reduces the number of iptables rules restored by only restoring necessary rules.\n\n**Common pitfalls**\n- Enabling MinimizeIPTablesRestore may lead to security vulnerabilities if not properly configured.\n\n**Related**\nFeature gates, Iptables",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MinimizeIPTablesRestore/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MinimizeIPTablesRestore.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MinimizeIPTablesRestore.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MinimizeIPTablesRestore/",
          "line_start": null,
          "line_end": null,
          "quote": "MinimizeIPTablesRestore"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ImageMaximumGCAge",
      "type": "page",
      "title": "ImageMaximumGCAge",
      "summary": "ImageMaximumGCAge is a feature gate that sets the maximum age of images in the cluster.",
      "body": "ImageMaximumGCAge is a feature gate that sets the maximum age of images in the cluster.\n\n**Why it matters**\nThis feature gate helps maintain image freshness and prevent old images from accumulating in the cluster.\n\n**Key facts**\n- ImageMaximumGCAge specifies the maximum age of images in the cluster.\n\n**Common pitfalls**\n- Setting ImageMaximumGCAge too low may lead to unnecessary garbage collection and resource waste.\n\n**Related**\nFeature gates, Images",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImageMaximumGCAge/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ImageMaximumGCAge.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ImageMaximumGCAge.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImageMaximumGCAge/",
          "line_start": null,
          "line_end": null,
          "quote": "ImageMaximumGCAge"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InOrderInformers",
      "type": "page",
      "title": "InOrderInformers",
      "summary": "InOrderInformers is a feature gate that enables in-order informer processing.",
      "body": "InOrderInformers is a feature gate that enables in-order informer processing.\n\n**Why it matters**\nThis feature gate helps ensure that informers process events in the correct order, maintaining data consistency and integrity.\n\n**Key facts**\n- InOrderInformers ensures in-order informer processing.\n\n**Common pitfalls**\n- Disabling InOrderInformers may lead to inconsistent or lost data due to out-of-order event processing.\n\n**Related**\nFeature gates, Informer processing",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InOrderInformers/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InOrderInformers.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InOrderInformers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InOrderInformers/",
          "line_start": null,
          "line_end": null,
          "quote": "InOrderInformers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ElasticIndexedJob",
      "type": "page",
      "title": "ElasticIndexedJob",
      "summary": "ElasticIndexedJob is a feature gate that enables elastic indexing for jobs.",
      "body": "ElasticIndexedJob is a feature gate that enables elastic indexing for jobs.\n\n**Why it matters**\nThis feature allows for efficient storage and retrieval of job metadata.\n\n**Key facts**\n- Enables elastic indexing for jobs\n- Improves efficiency in storing and retrieving job metadata",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ElasticIndexedJob/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ElasticIndexedJob.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ElasticIndexedJob.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ElasticIndexedJob/",
          "line_start": null,
          "line_end": null,
          "quote": "ElasticIndexedJob"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceSubresources",
      "type": "page",
      "title": "CustomResourceSubresources",
      "summary": "CustomResourceSubresources is a feature gate that enables subresource management for custom resources.",
      "body": "CustomResourceSubresources is a feature gate that enables subresource management for custom resources.\n\n**Why it matters**\nThis feature allows for fine-grained control over custom resource access and modification.\n\n**Key facts**\n- Enables subresource management for custom resources\n- Provides fine-grained control over custom resource access and modification",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceSubresources/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CustomResourceSubresources.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceSubresources.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceSubresources/",
          "line_start": null,
          "line_end": null,
          "quote": "CustomResourceSubresources"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DisableNodeKubeProxyVersion",
      "type": "page",
      "title": "DisableNodeKubeProxyVersion",
      "summary": "DisableNodeKubeProxyVersion is a feature gate that disables the version check for kube-proxy on nodes.",
      "body": "DisableNodeKubeProxyVersion is a feature gate that disables the version check for kube-proxy on nodes.\n\n**Why it matters**\nThis feature allows for flexibility in node configuration and maintenance.\n\n**Key facts**\n- Disables version check for kube-proxy on nodes\n- Provides flexibility in node configuration and maintenance",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableNodeKubeProxyVersion/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DisableNodeKubeProxyVersion.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DisableNodeKubeProxyVersion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableNodeKubeProxyVersion/",
          "line_start": null,
          "line_end": null,
          "quote": "DisableNodeKubeProxyVersion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/IndexedJob",
      "type": "page",
      "title": "IndexedJob",
      "summary": "IndexedJob is a feature gate that enables indexing for jobs.",
      "body": "IndexedJob is a feature gate that enables indexing for jobs.\n\n**Why it matters**\nThis feature allows for efficient storage and retrieval of job metadata.\n\n**Key facts**\n- Enables indexing for jobs\n- Improves efficiency in storing and retrieving job metadata",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IndexedJob/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/IndexedJob.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/IndexedJob.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IndexedJob/",
          "line_start": null,
          "line_end": null,
          "quote": "IndexedJob"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StructuredAuthorizationConfiguration",
      "type": "page",
      "title": "StructuredAuthorizationConfiguration",
      "summary": "A feature gate for structured authorization configuration.",
      "body": "A feature gate for structured authorization configuration.\n\n**Why it matters**\nEnables users to configure authorization settings in a structured manner.\n\n**Key facts**\n- Allows for fine-grained control over authorization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StructuredAuthorizationConfiguration/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StructuredAuthorizationConfiguration.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StructuredAuthorizationConfiguration.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StructuredAuthorizationConfiguration/",
          "line_start": null,
          "line_end": null,
          "quote": "StructuredAuthorizationConfiguration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletPodResources",
      "type": "page",
      "title": "KubeletPodResources",
      "summary": "A feature gate for Kubelet pod resources.",
      "body": "A feature gate for Kubelet pod resources.\n\n**Why it matters**\nEnables users to configure pod resource settings in the Kubelet.\n\n**Key facts**\n- Controls pod resource allocation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResources/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletPodResources.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletPodResources.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResources/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletPodResources"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CPUManagerPolicyBetaOptions",
      "type": "page",
      "title": "CPUManagerPolicyBetaOptions",
      "summary": "A feature gate for CPU manager policy beta options.",
      "body": "A feature gate for CPU manager policy beta options.\n\n**Why it matters**\nEnables users to configure CPU manager policy settings in a beta version.\n\n**Key facts**\n- Provides beta features for CPU manager policy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CPUManagerPolicyBetaOptions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CPUManagerPolicyBetaOptions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CPUManagerPolicyBetaOptions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CPUManagerPolicyBetaOptions/",
          "line_start": null,
          "line_end": null,
          "quote": "CPUManagerPolicyBetaOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountNodeAudienceRestriction",
      "type": "page",
      "title": "ServiceAccountNodeAudienceRestriction",
      "summary": "A feature gate for service account node audience restriction.",
      "body": "A feature gate for service account node audience restriction.\n\n**Why it matters**\nEnables users to restrict service accounts based on node audiences.\n\n**Key facts**\n- Controls access to nodes based on service account audiences",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountNodeAudienceRestriction/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceAccountNodeAudienceRestriction.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountNodeAudienceRestriction.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountNodeAudienceRestriction/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceAccountNodeAudienceRestriction"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ChangeContainerStatusOnKubeletRestart",
      "type": "page",
      "title": "ChangeContainerStatusOnKubeletRestart",
      "summary": "Changes the container status on Kubelet restart.",
      "body": "Changes the container status on Kubelet restart.\n\n**Why it matters**\nAllows for more accurate tracking of container status after a Kubelet restart.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ChangeContainerStatusOnKubeletRestart/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ChangeContainerStatusOnKubeletRestart.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ChangeContainerStatusOnKubeletRestart.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ChangeContainerStatusOnKubeletRestart/",
          "line_start": null,
          "line_end": null,
          "quote": "ChangeContainerStatusOnKubeletRestart"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceTrafficDistribution",
      "type": "page",
      "title": "ServiceTrafficDistribution",
      "summary": "Distributes service traffic across multiple endpoints.",
      "body": "Distributes service traffic across multiple endpoints.\n\n**Why it matters**\nImproves load balancing and redundancy for services.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceTrafficDistribution/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceTrafficDistribution.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceTrafficDistribution.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceTrafficDistribution/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceTrafficDistribution"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NodeLease",
      "type": "page",
      "title": "NodeLease",
      "summary": "Manages node leases to prevent node reuse.",
      "body": "Manages node leases to prevent node reuse.\n\n**Why it matters**\nEnsures that nodes are not reused before a previous lease is completed.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeLease/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NodeLease.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeLease.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeLease/",
          "line_start": null,
          "line_end": null,
          "quote": "NodeLease"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ProbeTerminationGracePeriod",
      "type": "page",
      "title": "ProbeTerminationGracePeriod",
      "summary": "Sets the termination grace period for probes.",
      "body": "Sets the termination grace period for probes.\n\n**Why it matters**\nAllows for more control over probe termination timing.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ProbeTerminationGracePeriod/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ProbeTerminationGracePeriod.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ProbeTerminationGracePeriod.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ProbeTerminationGracePeriod/",
          "line_start": null,
          "line_end": null,
          "quote": "ProbeTerminationGracePeriod"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAResourceClaimDeviceStatus",
      "type": "page",
      "title": "DRAResourceClaimDeviceStatus",
      "summary": "DRAResourceClaimDeviceStatus is a feature gate that enables device status reporting for DRA (Device Resource Allocation) resource claims.",
      "body": "DRAResourceClaimDeviceStatus is a feature gate that enables device status reporting for DRA (Device Resource Allocation) resource claims.\n\n**Why it matters**\nThis feature allows for more accurate monitoring and management of device resources in Kubernetes clusters.\n\n**Key facts**\n- Enables device status reporting for DRA resource claims\n- Improves monitoring and management of device resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAResourceClaimDeviceStatus/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAResourceClaimDeviceStatus.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAResourceClaimDeviceStatus.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAResourceClaimDeviceStatus/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAResourceClaimDeviceStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/GangScheduling",
      "type": "page",
      "title": "GangScheduling",
      "summary": "GangScheduling is a feature gate that enables gang scheduling for pods.",
      "body": "GangScheduling is a feature gate that enables gang scheduling for pods.\n\n**Why it matters**\nThis feature allows multiple pods to be scheduled together as a group, improving resource utilization and efficiency.\n\n**Key facts**\n- Enables gang scheduling for pods\n- Improves resource utilization and efficiency",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GangScheduling/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/GangScheduling.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GangScheduling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GangScheduling/",
          "line_start": null,
          "line_end": null,
          "quote": "GangScheduling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/LocalStorageCapacityIsolationFSQuotaMonitoring",
      "type": "page",
      "title": "LocalStorageCapacityIsolationFSQuotaMonitoring",
      "summary": "LocalStorageCapacityIsolationFSQuotaMonitoring is a feature gate that enables filesystem quota monitoring for local storage.",
      "body": "LocalStorageCapacityIsolationFSQuotaMonitoring is a feature gate that enables filesystem quota monitoring for local storage.\n\n**Why it matters**\nThis feature allows for more accurate monitoring and management of local storage capacity in Kubernetes clusters.\n\n**Key facts**\n- Enables filesystem quota monitoring for local storage\n- Improves monitoring and management of local storage capacity",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LocalStorageCapacityIsolationFSQuotaMonitoring/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/LocalStorageCapacityIsolationFSQuotaMonitoring.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LocalStorageCapacityIsolationFSQuotaMonitoring.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LocalStorageCapacityIsolationFSQuotaMonitoring/",
          "line_start": null,
          "line_end": null,
          "quote": "LocalStorageCapacityIsolationFSQuotaMonitoring"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfigurationJWKSMetrics",
      "type": "page",
      "title": "StructuredAuthenticationConfigurationJWKSMetrics",
      "summary": "StructuredAuthenticationConfigurationJWKSMetrics is a feature gate that enables structured authentication configuration and JSON Web Key Set (JWS) metrics.",
      "body": "StructuredAuthenticationConfigurationJWKSMetrics is a feature gate that enables structured authentication configuration and JSON Web Key Set (JWS) metrics.\n\n**Why it matters**\nThis feature allows for more secure and efficient authentication in Kubernetes clusters.\n\n**Key facts**\n- Enables structured authentication configuration\n- Enables JWS metrics",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfigurationJWKSMetrics/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfigurationJWKSMetrics.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfigurationJWKSMetrics.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfigurationJWKSMetrics/",
          "line_start": null,
          "line_end": null,
          "quote": "StructuredAuthenticationConfigurationJWKSMetrics"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AppArmor",
      "type": "page",
      "title": "AppArmor",
      "summary": "AppArmor is a Linux kernel feature that provides mandatory access control (MAC) to restrict an application's capabilities.",
      "body": "AppArmor is a Linux kernel feature that provides mandatory access control (MAC) to restrict an application's capabilities.\n\n**Why it matters**\nAppArmor helps prevent privilege escalation attacks by limiting the actions an application can perform.\n\n**Key facts**\n- AppArmor uses profiles to define allowed and denied operations for each application\n- Profiles are attached to a process at runtime using the load operation\n\n**Common pitfalls**\n- Incorrectly configured AppArmor profiles can cause applications to fail or behave unexpectedly",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AppArmor/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AppArmor.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AppArmor.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AppArmor/",
          "line_start": null,
          "line_end": null,
          "quote": "AppArmor"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ClusterTrustBundle",
      "type": "page",
      "title": "ClusterTrustBundle",
      "summary": "ClusterTrustBundle is a feature that enables cluster-wide certificate rotation and renewal.",
      "body": "ClusterTrustBundle is a feature that enables cluster-wide certificate rotation and renewal.\n\n**Why it matters**\nClusterTrustBundle ensures secure communication between components within a cluster by managing trust bundles.\n\n**Key facts**\n- ClusterTrustBundle uses the Kubernetes API to manage trust bundles\n- Trust bundles are used to authenticate and authorize communication between cluster components\n\n**Common pitfalls**\n- Misconfigured ClusterTrustBundle can lead to authentication failures or security vulnerabilities",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ClusterTrustBundle/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ClusterTrustBundle.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ClusterTrustBundle.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ClusterTrustBundle/",
          "line_start": null,
          "line_end": null,
          "quote": "ClusterTrustBundle"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ClearingNominatedNodeNameAfterBinding",
      "type": "page",
      "title": "ClearingNominatedNodeNameAfterBinding",
      "summary": "ClearingNominatedNodeNameAfterBinding is a feature that clears the nominated node name after pod binding.",
      "body": "ClearingNominatedNodeNameAfterBinding is a feature that clears the nominated node name after pod binding.\n\n**Why it matters**\nThis feature helps prevent issues with pod scheduling and node selection by removing stale nominations.\n\n**Key facts**\n- The feature uses the Kubernetes API to clear the nominated node name\n- Clearing the nominated node name ensures accurate node selection for future pod bindings\n\n**Common pitfalls**\n- Incorrectly configured ClearingNominatedNodeNameAfterBinding can cause scheduling issues or pod failures",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ClearingNominatedNodeNameAfterBinding/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ClearingNominatedNodeNameAfterBinding.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ClearingNominatedNodeNameAfterBinding.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ClearingNominatedNodeNameAfterBinding/",
          "line_start": null,
          "line_end": null,
          "quote": "ClearingNominatedNodeNameAfterBinding"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIBlockVolume",
      "type": "page",
      "title": "CSIBlockVolume",
      "summary": "CSIBlockVolume is a feature that enables CSI (Container Storage Interface) support for block volumes.",
      "body": "CSIBlockVolume is a feature that enables CSI (Container Storage Interface) support for block volumes.\n\n**Why it matters**\nThis feature allows users to manage and provision block storage resources within Kubernetes clusters.\n\n**Key facts**\n- CSIBlockVolume uses the CSI API to interact with external storage systems\n- CSI drivers are used to manage and provision block storage resources\n\n**Common pitfalls**\n- Misconfigured CSIBlockVolume can lead to storage issues or data corruption",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIBlockVolume/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIBlockVolume.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIBlockVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIBlockVolume/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIBlockVolume"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PersistentVolumeLastPhaseTransitionTime",
      "type": "page",
      "title": "PersistentVolumeLastPhaseTransitionTime",
      "summary": "PersistentVolumeLastPhaseTransitionTime is a feature gate that allows you to control the visibility of persistent volume phase transition times.",
      "body": "PersistentVolumeLastPhaseTransitionTime is a feature gate that allows you to control the visibility of persistent volume phase transition times.\n\n**Why it matters**\nThis feature gate matters because it provides granular control over the display of PV phase transition times, which can be useful for debugging and troubleshooting purposes.\n\n**Key facts**\n- PersistentVolumeLastPhaseTransitionTime is a boolean feature gate\n- When enabled, it displays persistent volume phase transition times\n\n**Common pitfalls**\n- Enabling this feature gate may impact performance due to additional logging requirements",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PersistentVolumeLastPhaseTransitionTime/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PersistentVolumeLastPhaseTransitionTime.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PersistentVolumeLastPhaseTransitionTime.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PersistentVolumeLastPhaseTransitionTime/",
          "line_start": null,
          "line_end": null,
          "quote": "PersistentVolumeLastPhaseTransitionTime"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/APIServerTracing",
      "type": "page",
      "title": "APIServerTracing",
      "summary": "APIServerTracing is a feature gate that enables tracing for the API server.",
      "body": "APIServerTracing is a feature gate that enables tracing for the API server.\n\n**Why it matters**\nThis feature gate matters because it allows you to troubleshoot and debug API server issues by providing detailed tracing information.\n\n**Key facts**\n- APIServerTracing is a boolean feature gate\n- When enabled, it enables tracing for the API server\n\n**Common pitfalls**\n- Enabling this feature gate may impact performance due to additional logging requirements",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIServerTracing/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/APIServerTracing.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/APIServerTracing.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIServerTracing/",
          "line_start": null,
          "line_end": null,
          "quote": "APIServerTracing"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationOpenStackComplete",
      "type": "page",
      "title": "CSIMigrationOpenStackComplete",
      "summary": "CSIMigrationOpenStackComplete is a feature gate that enables the completion of CSI migration for OpenStack.",
      "body": "CSIMigrationOpenStackComplete is a feature gate that enables the completion of CSI migration for OpenStack.\n\n**Why it matters**\nThis feature gate matters because it allows you to complete the CSI migration process for OpenStack, which can improve storage performance and reliability.\n\n**Key facts**\n- CSIMigrationOpenStackComplete is a boolean feature gate\n- When enabled, it enables the completion of CSI migration for OpenStack\n\n**Common pitfalls**\n- Enabling this feature gate may require additional configuration and setup",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationOpenStackComplete/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationOpenStackComplete.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationOpenStackComplete.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationOpenStackComplete/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationOpenStackComplete"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/GCERegionalPersistentDisk",
      "type": "page",
      "title": "GCERegionalPersistentDisk",
      "summary": "GCERegionalPersistentDisk is a feature gate that enables the use of regional persistent disks with GCE.",
      "body": "GCERegionalPersistentDisk is a feature gate that enables the use of regional persistent disks with GCE.\n\n**Why it matters**\nThis feature gate matters because it allows you to use regional persistent disks with GCE, which can improve storage performance and reduce latency.\n\n**Key facts**\n- GCERegionalPersistentDisk is a boolean feature gate\n- When enabled, it enables the use of regional persistent disks with GCE\n\n**Common pitfalls**\n- Enabling this feature gate may require additional configuration and setup",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GCERegionalPersistentDisk/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/GCERegionalPersistentDisk.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GCERegionalPersistentDisk.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GCERegionalPersistentDisk/",
          "line_start": null,
          "line_end": null,
          "quote": "GCERegionalPersistentDisk"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PVCProtection",
      "type": "page",
      "title": "PVCProtection",
      "summary": "PVCProtection is a feature gate that enables protection for Persistent Volume Claims.",
      "body": "PVCProtection is a feature gate that enables protection for Persistent Volume Claims.\n\n**Why it matters**\nThis feature ensures that PVCs are properly cleaned up when they are deleted, preventing resource leaks and improving cluster hygiene.\n\n**Key facts**\n- PVCProtection prevents accidental deletion of PVCs\n- Enables proper cleanup of PVCs when deleted\n\n**Common pitfalls**\n- May require additional configuration for proper functionality\n\n**Related**\nPersistent Volume Claims, Feature Gates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PVCProtection/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PVCProtection.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PVCProtection.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PVCProtection/",
          "line_start": null,
          "line_end": null,
          "quote": "PVCProtection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/JobPodFailurePolicy",
      "type": "page",
      "title": "JobPodFailurePolicy",
      "summary": "JobPodFailurePolicy is a feature gate that controls the behavior of Job pods when they fail.",
      "body": "JobPodFailurePolicy is a feature gate that controls the behavior of Job pods when they fail.\n\n**Why it matters**\nThis feature allows administrators to customize the handling of failed Job pods, improving reliability and fault tolerance in Kubernetes clusters.\n\n**Key facts**\n- Determines the action taken when a Job pod fails\n- Can be customized for specific use cases\n\n**Common pitfalls**\n- Requires careful configuration to avoid unintended consequences\n\n**Related**\nJob Pods, Feature Gates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobPodFailurePolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/JobPodFailurePolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobPodFailurePolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobPodFailurePolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "JobPodFailurePolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CRIContainerLogRotation",
      "type": "page",
      "title": "CRIContainerLogRotation",
      "summary": "CRIContainerLogRotation is a feature gate that enables container log rotation for CRI (Container Runtime Interface) containers.",
      "body": "CRIContainerLogRotation is a feature gate that enables container log rotation for CRI (Container Runtime Interface) containers.\n\n**Why it matters**\nThis feature improves cluster efficiency by rotating logs and preventing storage issues, ensuring smooth operation of CRI containers.\n\n**Key facts**\n- Rotates logs for CRI containers\n- Improves cluster efficiency\n\n**Common pitfalls**\n- May require additional configuration for proper functionality\n\n**Related**\nCRI Containers, Feature Gates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CRIContainerLogRotation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CRIContainerLogRotation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CRIContainerLogRotation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CRIContainerLogRotation/",
          "line_start": null,
          "line_end": null,
          "quote": "CRIContainerLogRotation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodLifecycleSleepActionAllowZero",
      "type": "page",
      "title": "PodLifecycleSleepActionAllowZero",
      "summary": "PodLifecycleSleepActionAllowZero is a feature gate that allows the Pod Lifecycle Hook to sleep for zero seconds.",
      "body": "PodLifecycleSleepActionAllowZero is a feature gate that allows the Pod Lifecycle Hook to sleep for zero seconds.\n\n**Why it matters**\nThis feature provides flexibility in customizing Pod lifecycle hooks, enabling more efficient and tailored cluster management.\n\n**Key facts**\n- Allows zero-second sleep for Pod Lifecycle Hooks\n- Improves customization options\n\n**Common pitfalls**\n- Requires careful configuration to avoid unintended consequences\n\n**Related**\nPod Lifecycle Hooks, Feature Gates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLifecycleSleepActionAllowZero/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodLifecycleSleepActionAllowZero.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodLifecycleSleepActionAllowZero.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLifecycleSleepActionAllowZero/",
          "line_start": null,
          "line_end": null,
          "quote": "PodLifecycleSleepActionAllowZero"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationAWS",
      "type": "page",
      "title": "CSIMigrationAWS",
      "summary": "",
      "body": "Enables shims and translation logic to route volume\noperations from the AWS-EBS in-tree plugin to EBS CSI plugin. Supports\nfalling back to in-tree EBS plugin for mount operations to nodes that have\nthe feature disabled or that do not have EBS CSI plugin installed and\nconfigured. Does not support falling back for provision operations, for those\nthe CSI plugin must be installed and configured.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAWS/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationAWS.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationAWS.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAWS/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationAWS"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CloudControllerManagerWatchBasedRoutesReconciliation",
      "type": "page",
      "title": "CloudControllerManagerWatchBasedRoutesReconciliation",
      "summary": "",
      "body": "Enables a watch-based route reconciliation mechanism (rather than reconciling at a fixed interval)\nwithin the cloud-controller-manager library.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CloudControllerManagerWatchBasedRoutesReconciliation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CloudControllerManagerWatchBasedRoutesReconciliation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CloudControllerManagerWatchBasedRoutesReconciliation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CloudControllerManagerWatchBasedRoutesReconciliation/",
          "line_start": null,
          "line_end": null,
          "quote": "CloudControllerManagerWatchBasedRoutesReconciliation"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/GitRepoVolumeDriver",
      "type": "page",
      "title": "GitRepoVolumeDriver",
      "summary": "",
      "body": "This controls if the `gitRepo` volume plugin is supported or not.\nThe `gitRepo` volume plugin is disabled by default starting v1.33 release.\nThis provides a way for users to enable it.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GitRepoVolumeDriver/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/GitRepoVolumeDriver.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GitRepoVolumeDriver.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GitRepoVolumeDriver/",
          "line_start": null,
          "line_end": null,
          "quote": "GitRepoVolumeDriver"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ImmutableEphemeralVolumes",
      "type": "page",
      "title": "ImmutableEphemeralVolumes",
      "summary": "",
      "body": "Allows for marking individual Secrets and ConfigMaps as\nimmutable for better safety and performance.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImmutableEphemeralVolumes/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ImmutableEphemeralVolumes.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ImmutableEphemeralVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImmutableEphemeralVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": "ImmutableEphemeralVolumes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAPrioritizedList",
      "type": "page",
      "title": "DRAPrioritizedList",
      "summary": "DRAPrioritizedList is a feature gate that enables prioritized deletion of resources.",
      "body": "DRAPrioritizedList is a feature gate that enables prioritized deletion of resources.\n\n**Why it matters**\nThis feature allows for more efficient resource cleanup, particularly in large-scale deployments.\n\n**Key facts**\n- Prioritizes deletion of resources to improve efficiency\n\n**Common pitfalls**\n- May require additional configuration or monitoring",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAPrioritizedList/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAPrioritizedList.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAPrioritizedList.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAPrioritizedList/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAPrioritizedList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ProcMountType",
      "type": "page",
      "title": "ProcMountType",
      "summary": "ProcMountType is a feature gate that controls the mount type of /proc.",
      "body": "ProcMountType is a feature gate that controls the mount type of /proc.\n\n**Why it matters**\nThis feature allows for more flexible configuration of system resources.\n\n**Key facts**\n- Controls the mount type of /proc\n\n**Common pitfalls**\n- May require additional configuration or troubleshooting",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ProcMountType/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ProcMountType.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ProcMountType.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ProcMountType/",
          "line_start": null,
          "line_end": null,
          "quote": "ProcMountType"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SkipReadOnlyValidationGCE",
      "type": "page",
      "title": "SkipReadOnlyValidationGCE",
      "summary": "SkipReadOnlyValidationGCE is a feature gate that skips read-only validation for Google Cloud Engine.",
      "body": "SkipReadOnlyValidationGCE is a feature gate that skips read-only validation for Google Cloud Engine.\n\n**Why it matters**\nThis feature allows for more flexible configuration of Google Cloud Engine resources.\n\n**Key facts**\n- Skips read-only validation for GCE\n\n**Common pitfalls**\n- May require additional configuration or monitoring",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SkipReadOnlyValidationGCE/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SkipReadOnlyValidationGCE.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SkipReadOnlyValidationGCE.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SkipReadOnlyValidationGCE/",
          "line_start": null,
          "line_end": null,
          "quote": "SkipReadOnlyValidationGCE"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RequestManagement",
      "type": "page",
      "title": "RequestManagement",
      "summary": "RequestManagement is a feature gate that enables request management for Kubernetes resources.",
      "body": "RequestManagement is a feature gate that enables request management for Kubernetes resources.\n\n**Why it matters**\nThis feature allows for more efficient resource allocation and utilization.\n\n**Key facts**\n- Enables request management for Kubernetes resources\n\n**Common pitfalls**\n- May require additional configuration or monitoring",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RequestManagement/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RequestManagement.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RequestManagement.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RequestManagement/",
          "line_start": null,
          "line_end": null,
          "quote": "RequestManagement"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/HPAContainerMetrics",
      "type": "page",
      "title": "HPAContainerMetrics",
      "summary": "HPAContainerMetrics is a feature gate that enables Horizontal Pod Autoscaler (HPA) to use container metrics.",
      "body": "HPAContainerMetrics is a feature gate that enables Horizontal Pod Autoscaler (HPA) to use container metrics.\n\n**Why it matters**\nThis feature allows HPA to make more informed decisions about scaling by considering the performance of individual containers.\n\n**Key facts**\n- Enabled by default\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- May require additional monitoring and logging setup\n\n**Related**\nHorizontal Pod Autoscaler (HPA), Container metrics",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HPAContainerMetrics/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/HPAContainerMetrics.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HPAContainerMetrics.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HPAContainerMetrics/",
          "line_start": null,
          "line_end": null,
          "quote": "HPAContainerMetrics"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SchedulerAsyncAPICalls",
      "type": "page",
      "title": "SchedulerAsyncAPICalls",
      "summary": "SchedulerAsyncAPICalls is a feature gate that enables the Kubernetes scheduler to make asynchronous API calls.",
      "body": "SchedulerAsyncAPICalls is a feature gate that enables the Kubernetes scheduler to make asynchronous API calls.\n\n**Why it matters**\nThis feature improves the scalability and responsiveness of the scheduler by allowing it to handle requests concurrently.\n\n**Key facts**\n- Enabled by default\n- Improves scheduler performance\n\n**Common pitfalls**\n- May introduce additional latency in certain scenarios\n\n**Related**\nKubernetes scheduler, Asynchronous API calls",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SchedulerAsyncAPICalls/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SchedulerAsyncAPICalls.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SchedulerAsyncAPICalls.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SchedulerAsyncAPICalls/",
          "line_start": null,
          "line_end": null,
          "quote": "SchedulerAsyncAPICalls"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PDBUnhealthyPodEvictionPolicy",
      "type": "page",
      "title": "PDBUnhealthyPodEvictionPolicy",
      "summary": "PDBUnhealthyPodEvictionPolicy is a feature gate that controls the eviction policy for pods in a Pod Disruption Budget (PDB).",
      "body": "PDBUnhealthyPodEvictionPolicy is a feature gate that controls the eviction policy for pods in a Pod Disruption Budget (PDB).\n\n**Why it matters**\nThis feature allows administrators to manage pod disruptions and evictions more effectively.\n\n**Key facts**\n- Enabled by default\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- May require additional configuration and testing\n\n**Related**\nPod Disruption Budget (PDB), Eviction policy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PDBUnhealthyPodEvictionPolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PDBUnhealthyPodEvictionPolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PDBUnhealthyPodEvictionPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PDBUnhealthyPodEvictionPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "PDBUnhealthyPodEvictionPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationAWSComplete",
      "type": "page",
      "title": "CSIMigrationAWSComplete",
      "summary": "CSIMigrationAWSComplete is a feature gate that enables the completion of CSI migration on AWS.",
      "body": "CSIMigrationAWSComplete is a feature gate that enables the completion of CSI migration on AWS.\n\n**Why it matters**\nThis feature allows administrators to complete the CSI migration process on AWS and take advantage of its benefits.\n\n**Key facts**\n- Enabled by default\n- Required for CSI migration on AWS\n\n**Common pitfalls**\n- May require additional setup and configuration\n\n**Related**\nCSI migration, AWS",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAWSComplete/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationAWSComplete.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationAWSComplete.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAWSComplete/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationAWSComplete"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationGCE",
      "type": "page",
      "title": "CSIMigrationGCE",
      "summary": "CSIMigrationGCE is a feature gate that enables migration of CSI drivers to use GCE.",
      "body": "CSIMigrationGCE is a feature gate that enables migration of CSI drivers to use GCE.\n\n**Why it matters**\nThis feature allows for the upgrade of CSI drivers to use GCE, improving storage management and compatibility.\n\n**Key facts**\n- Enables migration of CSI drivers to use GCE\n- Improves storage management and compatibility\n\n**Common pitfalls**\n- Potential issues with existing CSI driver configurations\n\n**Related**\nCSI (Container Storage Interface), GCE (Google Cloud Engine)",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationGCE/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationGCE.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationGCE.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationGCE/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationGCE"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ImageVolumeWithDigest",
      "type": "page",
      "title": "ImageVolumeWithDigest",
      "summary": "ImageVolumeWithDigest is a feature gate that enables the use of image volumes with digests.",
      "body": "ImageVolumeWithDigest is a feature gate that enables the use of image volumes with digests.\n\n**Why it matters**\nThis feature allows for more secure and reliable storage of container images.\n\n**Key facts**\n- Enables the use of image volumes with digests\n- Improves security and reliability of container image storage\n\n**Common pitfalls**\n- Potential issues with existing image volume configurations\n\n**Related**\nImage volumes, Digests (container image signatures)",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImageVolumeWithDigest/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ImageVolumeWithDigest.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ImageVolumeWithDigest.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImageVolumeWithDigest/",
          "line_start": null,
          "line_end": null,
          "quote": "ImageVolumeWithDigest"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StorageVersionAPI",
      "type": "page",
      "title": "StorageVersionAPI",
      "summary": "StorageVersionAPI is a feature gate that enables the use of storage version API.",
      "body": "StorageVersionAPI is a feature gate that enables the use of storage version API.\n\n**Why it matters**\nThis feature allows for more efficient and scalable storage management.\n\n**Key facts**\n- Enables the use of storage version API\n- Improves efficiency and scalability of storage management\n\n**Common pitfalls**\n- Potential issues with existing storage configurations\n\n**Related**\nStorage version API, Efficient and scalable storage management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageVersionAPI/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StorageVersionAPI.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StorageVersionAPI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageVersionAPI/",
          "line_start": null,
          "line_end": null,
          "quote": "StorageVersionAPI"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CBORServingAndStorage",
      "type": "page",
      "title": "CBORServingAndStorage",
      "summary": "CBORServingAndStorage is a feature gate that enables the use of CBOR (Concise Binary Object Representation) for serving and storing data.",
      "body": "CBORServingAndStorage is a feature gate that enables the use of CBOR (Concise Binary Object Representation) for serving and storing data.\n\n**Why it matters**\nThis feature allows for more efficient and secure storage and transmission of data.\n\n**Key facts**\n- Enables the use of CBOR for serving and storing data\n- Improves efficiency and security of data storage and transmission\n\n**Common pitfalls**\n- Potential issues with existing data formats and configurations\n\n**Related**\nCBOR (Concise Binary Object Representation), Efficient and secure data storage and transmission",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CBORServingAndStorage/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CBORServingAndStorage.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CBORServingAndStorage.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CBORServingAndStorage/",
          "line_start": null,
          "line_end": null,
          "quote": "CBORServingAndStorage"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenCleanUp",
      "type": "page",
      "title": "LegacyServiceAccountTokenCleanUp",
      "summary": "LegacyServiceAccountTokenCleanUp is a feature gate that enables the cleanup of legacy service account tokens.",
      "body": "LegacyServiceAccountTokenCleanUp is a feature gate that enables the cleanup of legacy service account tokens.\n\n**Why it matters**\nThis feature gate matters because it helps to clean up legacy service account tokens, which can improve security and reduce clutter in the system.\n\n**Key facts**\n- LegacyServiceAccountTokenCleanUp is enabled by default\n- It cleans up legacy service account tokens when they are deleted\n\n**Common pitfalls**\n- If not properly managed, legacy service account tokens can cause security issues\n\n**Related**\nService accounts, Token cleanup",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenCleanUp/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenCleanUp.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenCleanUp.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenCleanUp/",
          "line_start": null,
          "line_end": null,
          "quote": "LegacyServiceAccountTokenCleanUp"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletCgroupDriverFromCRI",
      "type": "page",
      "title": "KubeletCgroupDriverFromCRI",
      "summary": "",
      "body": "Enable detection of the kubelet cgroup driver\nconfiguration option from the [CRI](#gloss:cri).\nThis feature gate is now on for all clusters. However, it only works on nodes\nwhere there is a CRI container runtime that supports the `RuntimeConfig`\nCRI call. If the CRI supports this feature, the kubelet ignores the\n`cgroupDriver` configuration setting (or deprecated `--cgroup-driver` command\nline argument). If the container runtime\ndoesn't support it, the kubelet falls back to using the driver configured using\nthe `cgroupDriver` configuration setting.\nThe kubelet will stop falling back to this configuration in Kubernetes 1.36.\nThus, users must upgrade their CRI container runtime to a version that supports\nthe `RuntimeConfig` CRI call by then. Admins can use the metric\n`kubelet_cri_losing_support` to see if there are any nodes in their cluster that\nwill lose support in 1.36. The following CRI versions support this CRI call:\n\n* containerd: Support was added in v2.0.0\n* CRI-O: Support was added in v1.28.0\n\nSee [Configuring a cgroup driver](/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver)\nfor more details.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletCgroupDriverFromCRI/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletCgroupDriverFromCRI.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletCgroupDriverFromCRI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletCgroupDriverFromCRI/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletCgroupDriverFromCRI"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServerSideApply",
      "type": "page",
      "title": "ServerSideApply",
      "summary": "ServerSideApply is a feature gate that enables server-side apply functionality.",
      "body": "ServerSideApply is a feature gate that enables server-side apply functionality.\n\n**Why it matters**\nThis feature gate matters because it allows for more efficient and scalable deployment of resources, reducing the need for repeated apply operations.\n\n**Key facts**\n- ServerSideApply is enabled by default\n- It enables server-side apply functionality\n\n**Common pitfalls**\n- Misconfigured server-side apply can lead to inconsistent state\n\n**Related**\nKubernetes deployments, Server-side apply",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServerSideApply/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServerSideApply.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServerSideApply.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServerSideApply/",
          "line_start": null,
          "line_end": null,
          "quote": "ServerSideApply"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RotateKubeletClientCertificate",
      "type": "page",
      "title": "RotateKubeletClientCertificate",
      "summary": "RotateKubeletClientCertificate is a feature gate that enables the rotation of Kubelet client certificates.",
      "body": "RotateKubeletClientCertificate is a feature gate that enables the rotation of Kubelet client certificates.\n\n**Why it matters**\nThis feature gate matters because it helps to improve security by regularly rotating and replacing Kubelet client certificates, which can be compromised or expired.\n\n**Key facts**\n- RotateKubeletClientCertificate is enabled by default\n- It rotates Kubelet client certificates\n\n**Common pitfalls**\n- Inadequate rotation of Kubelet client certificates can lead to security vulnerabilities\n\n**Related**\nKubelet client certificates, Security best practices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RotateKubeletClientCertificate/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RotateKubeletClientCertificate.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RotateKubeletClientCertificate.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RotateKubeletClientCertificate/",
          "line_start": null,
          "line_end": null,
          "quote": "RotateKubeletClientCertificate"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/UnlockWhileProcessingFIFO",
      "type": "page",
      "title": "UnlockWhileProcessingFIFO",
      "summary": "UnlockWhileProcessingFIFO is a feature gate that enables unlocking of FIFO (First-In-First-Out) queues while processing.",
      "body": "UnlockWhileProcessingFIFO is a feature gate that enables unlocking of FIFO (First-In-First-Out) queues while processing.\n\n**Why it matters**\nThis feature gate matters because it helps to improve performance by allowing for the unlocking of FIFO queues during processing, reducing contention and improving throughput.\n\n**Key facts**\n- UnlockWhileProcessingFIFO is enabled by default\n- It enables unlocking of FIFO queues while processing\n\n**Common pitfalls**\n- Misconfigured UnlockWhileProcessingFIFO can lead to data corruption or loss\n\n**Related**\nFIFO queues, Performance optimization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UnlockWhileProcessingFIFO/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/UnlockWhileProcessingFIFO.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UnlockWhileProcessingFIFO.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UnlockWhileProcessingFIFO/",
          "line_start": null,
          "line_end": null,
          "quote": "UnlockWhileProcessingFIFO"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DetectCacheInconsistency",
      "type": "page",
      "title": "DetectCacheInconsistency",
      "summary": "Detects cache inconsistency in Kubernetes.",
      "body": "Detects cache inconsistency in Kubernetes.\n\n**Why it matters**\nEnsures data consistency and accuracy in the cluster.\n\n**Key facts**\n- Checks for inconsistencies between cache layers.\n- Prevents potential issues with data integrity.\n\n**Common pitfalls**\n- May introduce performance overhead if not properly configured.\n\n**Related**\nCache management, Data consistency",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DetectCacheInconsistency/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DetectCacheInconsistency.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DetectCacheInconsistency.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DetectCacheInconsistency/",
          "line_start": null,
          "line_end": null,
          "quote": "DetectCacheInconsistency"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AllowParsingUserUIDFromCertAuth",
      "type": "page",
      "title": "AllowParsingUserUIDFromCertAuth",
      "summary": "Allows parsing of user UID from certificate authentication.",
      "body": "Allows parsing of user UID from certificate authentication.\n\n**Why it matters**\nEnables secure and efficient authentication for users.\n\n**Key facts**\n- Supports certificate-based authentication.\n- Enhances security by allowing UID extraction.\n\n**Common pitfalls**\n- May require additional configuration to function correctly.\n\n**Related**\nCertificate authentication, User management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowParsingUserUIDFromCertAuth/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AllowParsingUserUIDFromCertAuth.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowParsingUserUIDFromCertAuth.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowParsingUserUIDFromCertAuth/",
          "line_start": null,
          "line_end": null,
          "quote": "AllowParsingUserUIDFromCertAuth"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenTracking",
      "type": "page",
      "title": "LegacyServiceAccountTokenTracking",
      "summary": "Tracks legacy service account tokens in Kubernetes.",
      "body": "Tracks legacy service account tokens in Kubernetes.\n\n**Why it matters**\nMaintains compatibility with older systems and ensures smooth upgrades.\n\n**Key facts**\n- Supports tracking of legacy tokens.\n- Ensures seamless integration with newer versions.\n\n**Common pitfalls**\n- May require additional maintenance to keep track of legacy tokens.\n\n**Related**\nService account management, Compatibility",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenTracking/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenTracking.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenTracking.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenTracking/",
          "line_start": null,
          "line_end": null,
          "quote": "LegacyServiceAccountTokenTracking"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/HyperVContainer",
      "type": "page",
      "title": "HyperVContainer",
      "summary": "Supports Hyper-V containers in Kubernetes.",
      "body": "Supports Hyper-V containers in Kubernetes.\n\n**Why it matters**\nEnables efficient and scalable containerization on Hyper-V environments.\n\n**Key facts**\n- Provides support for Hyper-V containers.\n- Enhances performance and resource utilization.\n\n**Common pitfalls**\n- May require specific hardware and software configurations to function correctly.\n\n**Related**\nContainerization, Hyper-V",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HyperVContainer/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/HyperVContainer.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HyperVContainer.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HyperVContainer/",
          "line_start": null,
          "line_end": null,
          "quote": "HyperVContainer"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodHasNetworkCondition",
      "type": "page",
      "title": "PodHasNetworkCondition",
      "summary": "A feature gate that enables or disables the PodHasNetworkCondition field in Kubernetes.",
      "body": "A feature gate that enables or disables the PodHasNetworkCondition field in Kubernetes.\n\n**Why it matters**\nThis feature gate allows administrators to control whether the PodHasNetworkCondition field is available for use in their cluster.\n\n**Key facts**\n- The PodHasNetworkCondition field provides information about a pod's network conditions.\n\n**Common pitfalls**\n- Disabling this feature gate may impact the functionality of certain network-related features in Kubernetes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodHasNetworkCondition/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodHasNetworkCondition.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodHasNetworkCondition.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodHasNetworkCondition/",
          "line_start": null,
          "line_end": null,
          "quote": "PodHasNetworkCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletPodResourcesDynamicResources",
      "type": "page",
      "title": "KubeletPodResourcesDynamicResources",
      "summary": "",
      "body": "Extend the kubelet's\n[pod resources monitoring gRPC API](/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/)\nendpoints List and Get to include resources allocated in ResourceClaims\nvia [Dynamic Resource Allocation](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/).\n\nBelow is an example of GPU metrics to show how this API is consumed by\n[NVIDIA dcgm-exporter](https://github.com/NVIDIA/dcgm-exporter) to collect per pod GPU metrics allocated by\n[NVIDIA DRA driver](https://github.com/NVIDIA/k8s-dra-driver-gpu):\n\n```\nDCGM_FI_PROF_PCIE_RX_BYTES{gpu=\"0\",UUID=\"GPU-a4f34abc-7715-3560-dcea-7238b9611a45\",pci_bus_id=\"00000009:01:00.0\",device=\"nvidia0\",modelName=\"NVIDIA GH200 96GB HBM3\",Hostname=\"sc-starwars-xxxx\",container=\"ctr\",dra_claim_name=\"single-gpu\",dra_claim_namespace=\"gpu-test3\",dra_device_name=\"gpu-0\",dra_driver_name=\"gpu.nvidia.com\",dra_pool_name=\"sc-starwars-xxxx\",namespace=\"gpu-test3\",pod=\"pod1\"} 23792\n\nDCGM_FI_PROF_PCIE_RX_BYTES{gpu=\"0\",UUID=\"GPU-a4f34abc-7715-3560-dcea-7238b9611a45\",pci_bus_id=\"00000009:01:00.0\",device=\"nvidia0\",modelName=\"NVIDIA GH200 96GB HBM3\",Hostname=\"sc-starwars-xxxx\",container=\"ctr\",dra_claim_name=\"single-gpu\",dra_claim_namespace=\"gpu-test3\",dra_device_name=\"gpu-0\",dra_driver_name=\"gpu.nvidia.com\",dra_pool_name=\"sc-starwars-xxxx\",namespace=\"gpu-test3\",pod=\"pod2\"} 23792\n\nwith Pod DRA info:\n\ncontainer=\"ctr\",\ndra_claim_name=\"single-gpu\",\ndra_claim_namespace=\"gpu-test3\",\ndra_device_name=\"gpu-0\",dra_driver_name=\"gpu.nvidia.com\",\ndra_pool_name=\"sc-starwars-xxxx\",\nnamespace=\"gpu-test3\",\npod=\"pod1\"\n```\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResourcesDynamicResources/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletPodResourcesDynamicResources.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletPodResourcesDynamicResources.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResourcesDynamicResources/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletPodResourcesDynamicResources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WatchList",
      "type": "page",
      "title": "WatchList",
      "summary": "A feature gate that enables or disables the WatchList API in Kubernetes.",
      "body": "A feature gate that enables or disables the WatchList API in Kubernetes.\n\n**Why it matters**\nThis feature gate allows administrators to control whether the WatchList API is available for use in their cluster.\n\n**Key facts**\n- The WatchList API provides a way to watch for changes to resources in the cluster.\n\n**Common pitfalls**\n- Disabling this feature gate may impact the functionality of certain monitoring and logging features in Kubernetes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WatchList/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WatchList.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WatchList.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WatchList/",
          "line_start": null,
          "line_end": null,
          "quote": "WatchList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationAzureFile",
      "type": "page",
      "title": "CSIMigrationAzureFile",
      "summary": "A feature gate that enables or disables the CSI migration for Azure File volumes in Kubernetes.",
      "body": "A feature gate that enables or disables the CSI migration for Azure File volumes in Kubernetes.\n\n**Why it matters**\nThis feature gate allows administrators to control whether the CSI migration for Azure File volumes is available for use in their cluster.\n\n**Key facts**\n- The CSI migration for Azure File volumes provides a way to migrate existing Azure File volumes to the new CSI driver.\n\n**Common pitfalls**\n- Disabling this feature gate may impact the functionality of certain storage-related features in Kubernetes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAzureFile/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationAzureFile.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationAzureFile.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAzureFile/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationAzureFile"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AuthorizeWithSelectors",
      "type": "page",
      "title": "AuthorizeWithSelectors",
      "summary": "",
      "body": "Allows authorization to use field and label selectors.\nEnables `fieldSelector` and `labelSelector` fields in the [SubjectAccessReview API](/docs/reference/kubernetes-api/authorization-resources/subject-access-review-v1/),\npasses field and label selector information to [authorization webhooks](/docs/reference/access-authn-authz/webhook/),\nenables `fieldSelector` and `labelSelector` functions in the [authorizer CEL library](https://pkg.go.dev/k8s.io/apiserver/pkg/cel/library#AuthzSelectors),\nand enables checking `fieldSelector` and `labelSelector` fields in [authorization webhook `matchConditions`](/docs/reference/access-authn-authz/authorization/#using-configuration-file-for-authorization).",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AuthorizeWithSelectors/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AuthorizeWithSelectors.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AuthorizeWithSelectors.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AuthorizeWithSelectors/",
          "line_start": null,
          "line_end": null,
          "quote": "AuthorizeWithSelectors"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AdmissionWebhookMatchConditions",
      "type": "page",
      "title": "AdmissionWebhookMatchConditions",
      "summary": "A feature gate that enables or disables the Admission Webhook Match Conditions in Kubernetes.",
      "body": "A feature gate that enables or disables the Admission Webhook Match Conditions in Kubernetes.\n\n**Why it matters**\nThis feature gate allows administrators to control whether the Admission Webhook Match Conditions are available for use in their cluster.\n\n**Key facts**\n- The Admission Webhook Match Conditions provide a way to match against admission webhook requests.\n\n**Common pitfalls**\n- Disabling this feature gate may impact the functionality of certain admission-related features in Kubernetes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AdmissionWebhookMatchConditions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AdmissionWebhookMatchConditions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AdmissionWebhookMatchConditions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AdmissionWebhookMatchConditions/",
          "line_start": null,
          "line_end": null,
          "quote": "AdmissionWebhookMatchConditions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAConsumableCapacity",
      "type": "page",
      "title": "DRAConsumableCapacity",
      "summary": "DRAConsumableCapacity is a feature gate that allows for adjustable resource consumption in DRA.",
      "body": "DRAConsumableCapacity is a feature gate that allows for adjustable resource consumption in DRA.\n\n**Why it matters**\nThis feature enables users to fine-tune their DRA resource allocation, improving efficiency and performance.\n\n**Key facts**\n- DRAConsumableCapacity adjusts the amount of resources available to DRA\n- This adjustment can be made through command-line tools\n\n**Common pitfalls**\n- Insufficient resource allocation may lead to underperformance or failure\n\n**Related**\nDistributed Resource Allocation (DRA)",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAConsumableCapacity/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAConsumableCapacity.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAConsumableCapacity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAConsumableCapacity/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAConsumableCapacity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/GenericWorkload",
      "type": "page",
      "title": "GenericWorkload",
      "summary": "GenericWorkload is a feature gate that enables generic workload support.",
      "body": "GenericWorkload is a feature gate that enables generic workload support.\n\n**Why it matters**\nThis feature allows for more flexibility in handling different types of workloads, improving overall system adaptability.\n\n**Key facts**\n- GenericWorkload supports various workload types\n\n**Common pitfalls**\n- Incorrect configuration may lead to performance issues or errors\n\n**Related**\nWorkload management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GenericWorkload/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/GenericWorkload.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GenericWorkload.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GenericWorkload/",
          "line_start": null,
          "line_end": null,
          "quote": "GenericWorkload"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AuthorizePodWebsocketUpgradeCreatePermission",
      "type": "page",
      "title": "AuthorizePodWebsocketUpgradeCreatePermission",
      "summary": "",
      "body": "When the `AuthorizePodWebsocketUpgradeCreatePermission` feature gate is `true`,\nclients must be authorized to **create** Pod subresources even when triggering their\ncreation using a WebSocket.\n\nThe connection upgrade request occurs for each of the following subresources: `pods/exec`,\n`pods/attach`, and `pods/portforward`. This feature gate fixes a security gap caused by\nthe protocol transition: while SPDY requests utilize HTTP `POST` (naturally aligning with\nthe **create** RBAC permission), the WebSocket protocol requires an HTTP `GET` request for\nthe handshake. To correct this defect, a synthetic RBAC check is now applied to ensure\nWebSocket upgrades strictly enforce the **create** permission, matching the existing\nSPDY security model.\n\nYou may want to disable this feature gate if you have existing clients or custom tooling\nthat rely on the previous behavior—specifically, if they connect via WebSockets but do *not*\ncurrently hold the **create** RBAC permission.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AuthorizePodWebsocketUpgradeCreatePermission/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AuthorizePodWebsocketUpgradeCreatePermission.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AuthorizePodWebsocketUpgradeCreatePermission.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AuthorizePodWebsocketUpgradeCreatePermission/",
          "line_start": null,
          "line_end": null,
          "quote": "AuthorizePodWebsocketUpgradeCreatePermission"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RestartAllContainersOnContainerExits",
      "type": "page",
      "title": "RestartAllContainersOnContainerExits",
      "summary": "RestartAllContainersOnContainerExits is a feature gate that restarts all containers when one container exits.",
      "body": "RestartAllContainersOnContainerExits is a feature gate that restarts all containers when one container exits.\n\n**Why it matters**\nThis feature ensures that the entire application remains running even if one container fails or exits unexpectedly.\n\n**Key facts**\n- RestartAllContainersOnContainerExits restarts all containers upon container exit\n\n**Common pitfalls**\n- Unnecessary restarts may lead to performance degradation or increased resource usage\n\n**Related**\nContainer management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RestartAllContainersOnContainerExits/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RestartAllContainersOnContainerExits.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RestartAllContainersOnContainerExits.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RestartAllContainersOnContainerExits/",
          "line_start": null,
          "line_end": null,
          "quote": "RestartAllContainersOnContainerExits"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation",
      "type": "page",
      "title": "CronJobsScheduledAnnotation",
      "summary": "CronJobsScheduledAnnotation is a feature gate that enables scheduled cron jobs.",
      "body": "CronJobsScheduledAnnotation is a feature gate that enables scheduled cron jobs.\n\n**Why it matters**\nThis feature allows for automated and periodic task execution, improving efficiency and reducing manual intervention.\n\n**Key facts**\n- CronJobsScheduledAnnotation supports scheduled cron job execution\n\n**Common pitfalls**\n- Incorrect annotation configuration may lead to missed or duplicate tasks\n\n**Related**\nCron jobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation/",
          "line_start": null,
          "line_end": null,
          "quote": "CronJobsScheduledAnnotation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ScheduleDaemonSetPods",
      "type": "page",
      "title": "ScheduleDaemonSetPods",
      "summary": "Feature gate that enables scheduling DaemonSet pods.",
      "body": "Feature gate that enables scheduling DaemonSet pods.\n\n**Why it matters**\nEnables the scheduling of DaemonSet pods, allowing for more control over pod placement.\n\n**Key facts**\n- Must be enabled to schedule DaemonSet pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ScheduleDaemonSetPods/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ScheduleDaemonSetPods.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ScheduleDaemonSetPods.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ScheduleDaemonSetPods/",
          "line_start": null,
          "line_end": null,
          "quote": "ScheduleDaemonSetPods"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NominatedNodeNameForExpectation",
      "type": "page",
      "title": "NominatedNodeNameForExpectation",
      "summary": "Feature gate that enables node selection for pod scheduling.",
      "body": "Feature gate that enables node selection for pod scheduling.\n\n**Why it matters**\nAllows for more control over pod placement by enabling node selection.\n\n**Key facts**\n- Must be enabled to select a node for pod scheduling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NominatedNodeNameForExpectation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NominatedNodeNameForExpectation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NominatedNodeNameForExpectation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NominatedNodeNameForExpectation/",
          "line_start": null,
          "line_end": null,
          "quote": "NominatedNodeNameForExpectation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodInfoAPI",
      "type": "page",
      "title": "PodInfoAPI",
      "summary": "Feature gate that enables the Pod Info API.",
      "body": "Feature gate that enables the Pod Info API.\n\n**Why it matters**\nProvides additional information about pods, such as node affinity and tolerations.\n\n**Key facts**\n- Must be enabled to access pod info",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodInfoAPI/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodInfoAPI.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodInfoAPI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodInfoAPI/",
          "line_start": null,
          "line_end": null,
          "quote": "PodInfoAPI"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RemoteRequestHeaderUID",
      "type": "page",
      "title": "RemoteRequestHeaderUID",
      "summary": "Feature gate that enables the inclusion of UIDs in remote request headers.",
      "body": "Feature gate that enables the inclusion of UIDs in remote request headers.\n\n**Why it matters**\nAllows for more accurate tracking of requests and responses between clusters.\n\n**Key facts**\n- Must be enabled to include UIDs in remote request headers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RemoteRequestHeaderUID/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RemoteRequestHeaderUID.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RemoteRequestHeaderUID.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RemoteRequestHeaderUID/",
          "line_start": null,
          "line_end": null,
          "quote": "RemoteRequestHeaderUID"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpreadSelectorMerge",
      "type": "page",
      "title": "MatchLabelKeysInPodTopologySpreadSelectorMerge",
      "summary": "Feature gate for enabling match label keys in pod topology spread selector merge.",
      "body": "Feature gate for enabling match label keys in pod topology spread selector merge.\n\n**Why it matters**\nEnables more flexible pod placement based on labels.\n\n**Key facts**\n- Enabled by default as of Kubernetes 1.24.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpreadSelectorMerge/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpreadSelectorMerge.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpreadSelectorMerge.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpreadSelectorMerge/",
          "line_start": null,
          "line_end": null,
          "quote": "MatchLabelKeysInPodTopologySpreadSelectorMerge"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationRBD",
      "type": "page",
      "title": "CSIMigrationRBD",
      "summary": "Feature gate for enabling CSI migration from RBD.",
      "body": "Feature gate for enabling CSI migration from RBD.\n\n**Why it matters**\nEnables migration of persistent volumes from RBD to CSI.\n\n**Key facts**\n- CSI migration is a prerequisite for this feature.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationRBD/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationRBD.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationRBD.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationRBD/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationRBD"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StorageVersionHash",
      "type": "page",
      "title": "StorageVersionHash",
      "summary": "Feature gate for enabling storage version hash.",
      "body": "Feature gate for enabling storage version hash.\n\n**Why it matters**\nEnables storage version hash to be used in volume snapshots.\n\n**Key facts**\n- Requires CSI migration to be enabled.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageVersionHash/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StorageVersionHash.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StorageVersionHash.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageVersionHash/",
          "line_start": null,
          "line_end": null,
          "quote": "StorageVersionHash"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace",
      "type": "page",
      "title": "KubeletInUserNamespace",
      "summary": "Feature gate for enabling Kubelet in user namespace.",
      "body": "Feature gate for enabling Kubelet in user namespace.\n\n**Why it matters**\nEnables Kubelet to run in a user namespace.\n\n**Key facts**\n- Requires the Kubelet to be configured to run in a user namespace.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletInUserNamespace"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CronJobTimeZone",
      "type": "page",
      "title": "CronJobTimeZone",
      "summary": "CronJobTimeZone is a feature gate that allows setting the time zone for CronJobs.",
      "body": "CronJobTimeZone is a feature gate that allows setting the time zone for CronJobs.\n\n**Why it matters**\nThis feature enables users to specify a custom time zone for their CronJobs, which can be useful in environments with non-standard time zones.\n\n**Key facts**\n- CronJobTimeZone is enabled by default\n- Users can set the time zone using the `--cron-job-time-zone` flag\n\n**Common pitfalls**\n- Incorrectly setting the time zone can lead to scheduling issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobTimeZone/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CronJobTimeZone.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CronJobTimeZone.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobTimeZone/",
          "line_start": null,
          "line_end": null,
          "quote": "CronJobTimeZone"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/UserNamespacesStatelessPodsSupport",
      "type": "page",
      "title": "UserNamespacesStatelessPodsSupport",
      "summary": "UserNamespacesStatelessPodsSupport is a feature gate that enables support for stateless pods in user namespaces.",
      "body": "UserNamespacesStatelessPodsSupport is a feature gate that enables support for stateless pods in user namespaces.\n\n**Why it matters**\nThis feature allows users to run stateless pods in user namespaces, which can improve security and isolation.\n\n**Key facts**\n- UserNamespacesStatelessPodsSupport is enabled by default\n- Users can disable this feature using the `--user-namespaces-stateless-pods-support` flag\n\n**Common pitfalls**\n- Disabling this feature can lead to compatibility issues with certain applications",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesStatelessPodsSupport/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/UserNamespacesStatelessPodsSupport.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UserNamespacesStatelessPodsSupport.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesStatelessPodsSupport/",
          "line_start": null,
          "line_end": null,
          "quote": "UserNamespacesStatelessPodsSupport"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ListFromCacheSnapshot",
      "type": "page",
      "title": "ListFromCacheSnapshot",
      "summary": "ListFromCacheSnapshot is a feature gate that enables listing resources from cache snapshots.",
      "body": "ListFromCacheSnapshot is a feature gate that enables listing resources from cache snapshots.\n\n**Why it matters**\nThis feature allows users to list resources from cache snapshots, which can improve performance and reduce latency.\n\n**Key facts**\n- ListFromCacheSnapshot is disabled by default\n- Users can enable this feature using the `--list-from-cache-snapshot` flag\n\n**Common pitfalls**\n- Enabling this feature can lead to data inconsistencies if not used correctly",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ListFromCacheSnapshot/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ListFromCacheSnapshot.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ListFromCacheSnapshot.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ListFromCacheSnapshot/",
          "line_start": null,
          "line_end": null,
          "quote": "ListFromCacheSnapshot"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TTLAfterFinished",
      "type": "page",
      "title": "TTLAfterFinished",
      "summary": "TTLAfterFinished is a feature gate that enables setting TTL (time-to-live) after a job has finished.",
      "body": "TTLAfterFinished is a feature gate that enables setting TTL (time-to-live) after a job has finished.\n\n**Why it matters**\nThis feature allows users to set a TTL for their jobs, which can improve resource utilization and reduce waste.\n\n**Key facts**\n- TTLAfterFinished is disabled by default\n- Users can enable this feature using the `--ttl-after-finished` flag\n\n**Common pitfalls**\n- Incorrectly setting TTL can lead to resource underutilization or overutilization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TTLAfterFinished/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TTLAfterFinished.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TTLAfterFinished.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TTLAfterFinished/",
          "line_start": null,
          "line_end": null,
          "quote": "TTLAfterFinished"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/UserNamespacesPodSecurityStandards",
      "type": "page",
      "title": "UserNamespacesPodSecurityStandards",
      "summary": "UserNamespacesPodSecurityStandards is a feature gate that enables the use of user namespaces in pods.",
      "body": "UserNamespacesPodSecurityStandards is a feature gate that enables the use of user namespaces in pods.\n\n**Why it matters**\nThis feature allows for more fine-grained control over pod security and can be used to isolate containers from each other.\n\n**Key facts**\n- Enables user namespaces in pods\n- Provides more control over pod security\n\n**Common pitfalls**\n- Requires careful configuration to avoid security issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesPodSecurityStandards/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/UserNamespacesPodSecurityStandards.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UserNamespacesPodSecurityStandards.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesPodSecurityStandards/",
          "line_start": null,
          "line_end": null,
          "quote": "UserNamespacesPodSecurityStandards"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/IPv6DualStack",
      "type": "page",
      "title": "IPv6DualStack",
      "summary": "IPv6DualStack is a feature gate that enables IPv6 and IPv4 dual stack support in pods.",
      "body": "IPv6DualStack is a feature gate that enables IPv6 and IPv4 dual stack support in pods.\n\n**Why it matters**\nThis feature allows for the use of both IPv6 and IPv4 addresses within the same pod, enabling greater flexibility in network configurations.\n\n**Key facts**\n- Enables IPv6 and IPv4 dual stack support\n- Allows for use of both IPv6 and IPv4 addresses\n\n**Common pitfalls**\n- Requires careful configuration to avoid IP address conflicts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IPv6DualStack/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/IPv6DualStack.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/IPv6DualStack.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IPv6DualStack/",
          "line_start": null,
          "line_end": null,
          "quote": "IPv6DualStack"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AllowDNSOnlyNodeCSR",
      "type": "page",
      "title": "AllowDNSOnlyNodeCSR",
      "summary": "AllowDNSOnlyNodeCSR is a feature gate that allows DNS-only Node Certificate Signing Requests (CSRs) to be processed.",
      "body": "AllowDNSOnlyNodeCSR is a feature gate that allows DNS-only Node Certificate Signing Requests (CSRs) to be processed.\n\n**Why it matters**\nThis feature enables the use of DNS-only CSRs for Node certificates, simplifying certificate management and improving security.\n\n**Key facts**\n- Allows DNS-only Node CSRs\n- Simplifies certificate management\n\n**Common pitfalls**\n- Requires careful configuration to avoid certificate issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowDNSOnlyNodeCSR/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AllowDNSOnlyNodeCSR.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowDNSOnlyNodeCSR.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowDNSOnlyNodeCSR/",
          "line_start": null,
          "line_end": null,
          "quote": "AllowDNSOnlyNodeCSR"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIPersistentVolume",
      "type": "page",
      "title": "CSIPersistentVolume",
      "summary": "CSIPersistentVolume is a feature gate that enables the use of CSI (Container Storage Interface) persistent volumes.",
      "body": "CSIPersistentVolume is a feature gate that enables the use of CSI (Container Storage Interface) persistent volumes.\n\n**Why it matters**\nThis feature allows for more flexible and scalable storage solutions, enabling users to manage storage resources more efficiently.\n\n**Key facts**\n- Enables CSI persistent volumes\n- Provides more flexible storage solutions\n\n**Common pitfalls**\n- Requires careful configuration to avoid storage issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIPersistentVolume/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIPersistentVolume.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIPersistentVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIPersistentVolume/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIPersistentVolume"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MinDomainsInPodTopologySpread",
      "type": "page",
      "title": "MinDomainsInPodTopologySpread",
      "summary": "MinDomainsInPodTopologySpread is a feature gate that enables pod topology spread constraints with minimum domains.",
      "body": "MinDomainsInPodTopologySpread is a feature gate that enables pod topology spread constraints with minimum domains.\n\n**Why it matters**\nThis feature allows for more fine-grained control over pod placement and can improve cluster utilization.\n\n**Key facts**\n- Enables pod topology spread constraints\n- Supports minimum domains\n\n**Common pitfalls**\n- Requires careful configuration to avoid over-restricting pod placement",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MinDomainsInPodTopologySpread/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MinDomainsInPodTopologySpread.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MinDomainsInPodTopologySpread.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MinDomainsInPodTopologySpread/",
          "line_start": null,
          "line_end": null,
          "quote": "MinDomainsInPodTopologySpread"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletPSI",
      "type": "page",
      "title": "KubeletPSI",
      "summary": "KubeletPSI is a feature gate that enables Kubelet's Pod Security Indicator (PSI) functionality.",
      "body": "KubeletPSI is a feature gate that enables Kubelet's Pod Security Indicator (PSI) functionality.\n\n**Why it matters**\nThis feature helps prevent malicious pods from running on the cluster by enforcing security policies.\n\n**Key facts**\n- Enables Kubelet PSI functionality\n- Helps prevent malicious pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPSI/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletPSI.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletPSI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPSI/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletPSI"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CustomResourcePublishOpenAPI",
      "type": "page",
      "title": "CustomResourcePublishOpenAPI",
      "summary": "CustomResourcePublishOpenAPI is a feature gate that enables custom resources to be published as OpenAPI documents.",
      "body": "CustomResourcePublishOpenAPI is a feature gate that enables custom resources to be published as OpenAPI documents.\n\n**Why it matters**\nThis feature allows for better integration with external tools and services by providing a standardized API description.\n\n**Key facts**\n- Enables custom resource publishing\n- Supports OpenAPI documents",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourcePublishOpenAPI/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CustomResourcePublishOpenAPI.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourcePublishOpenAPI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourcePublishOpenAPI/",
          "line_start": null,
          "line_end": null,
          "quote": "CustomResourcePublishOpenAPI"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DevicePlugins",
      "type": "page",
      "title": "DevicePlugins",
      "summary": "DevicePlugins is a feature gate that enables device plugin functionality.",
      "body": "DevicePlugins is a feature gate that enables device plugin functionality.\n\n**Why it matters**\nThis feature allows for more flexible and efficient management of cluster devices.\n\n**Key facts**\n- Enables device plugin functionality",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DevicePlugins/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DevicePlugins.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DevicePlugins.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DevicePlugins/",
          "line_start": null,
          "line_end": null,
          "quote": "DevicePlugins"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EnvFiles",
      "type": "page",
      "title": "EnvFiles",
      "summary": "EnvFiles allows you to load environment variables from files.",
      "body": "EnvFiles allows you to load environment variables from files.\n\n**Why it matters**\nThis feature enables the loading of environment variables from files, which can be useful for managing sensitive data or complex configurations.\n\n**Key facts**\n- EnvFiles loads environment variables from files specified in the command-line tools reference\n- This feature is enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EnvFiles/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EnvFiles.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EnvFiles.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EnvFiles/",
          "line_start": null,
          "line_end": null,
          "quote": "EnvFiles"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StrictCostEnforcementForWebhooks",
      "type": "page",
      "title": "StrictCostEnforcementForWebhooks",
      "summary": "StrictCostEnforcementForWebhooks enforces cost limits for webhooks.",
      "body": "StrictCostEnforcementForWebhooks enforces cost limits for webhooks.\n\n**Why it matters**\nThis feature ensures that webhook costs do not exceed specified limits, helping to prevent unexpected expenses.\n\n**Key facts**\n- StrictCostEnforcementForWebhooks enforces cost limits for webhooks\n- This feature helps prevent unexpected expenses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StrictCostEnforcementForWebhooks/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StrictCostEnforcementForWebhooks.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StrictCostEnforcementForWebhooks.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StrictCostEnforcementForWebhooks/",
          "line_start": null,
          "line_end": null,
          "quote": "StrictCostEnforcementForWebhooks"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MaxUnavailableStatefulSet",
      "type": "page",
      "title": "MaxUnavailableStatefulSet",
      "summary": "MaxUnavailableStatefulSet sets the maximum number of unavailable replicas for StatefulSets.",
      "body": "MaxUnavailableStatefulSet sets the maximum number of unavailable replicas for StatefulSets.\n\n**Why it matters**\nThis feature allows you to control the maximum number of replicas that can be unavailable during updates, ensuring high availability.\n\n**Key facts**\n- MaxUnavailableStatefulSet sets the maximum number of unavailable replicas\n- This feature ensures high availability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MaxUnavailableStatefulSet/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MaxUnavailableStatefulSet.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MaxUnavailableStatefulSet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MaxUnavailableStatefulSet/",
          "line_start": null,
          "line_end": null,
          "quote": "MaxUnavailableStatefulSet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RecoverVolumeExpansionFailure",
      "type": "page",
      "title": "RecoverVolumeExpansionFailure",
      "summary": "RecoverVolumeExpansionFailure recovers from volume expansion failures.",
      "body": "RecoverVolumeExpansionFailure recovers from volume expansion failures.\n\n**Why it matters**\nThis feature enables automatic recovery from volume expansion failures, ensuring data integrity and availability.\n\n**Key facts**\n- RecoverVolumeExpansionFailure recovers from volume expansion failures\n- This feature ensures data integrity and availability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RecoverVolumeExpansionFailure/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RecoverVolumeExpansionFailure.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RecoverVolumeExpansionFailure.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RecoverVolumeExpansionFailure/",
          "line_start": null,
          "line_end": null,
          "quote": "RecoverVolumeExpansionFailure"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenNoAutoGeneration",
      "type": "page",
      "title": "LegacyServiceAccountTokenNoAutoGeneration",
      "summary": "",
      "body": "Stop auto-generation of Secret-based\n[service account tokens](/docs/concepts/security/service-accounts/#get-a-token).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenNoAutoGeneration/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenNoAutoGeneration.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenNoAutoGeneration.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenNoAutoGeneration/",
          "line_start": null,
          "line_end": null,
          "quote": "LegacyServiceAccountTokenNoAutoGeneration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NewVolumeManagerReconstruction",
      "type": "page",
      "title": "NewVolumeManagerReconstruction",
      "summary": "",
      "body": "Enables improved discovery of mounted volumes during kubelet\nstartup. Since the associated code had been significantly refactored, Kubernetes versions 1.25 to 1.29\nallowed you to opt-out in case the kubelet got stuck at the startup, or did not unmount volumes\nfrom terminated Pods.\n\nThis refactoring was behind the `SELinuxMountReadWriteOncePod`  feature gate in Kubernetes\nreleases 1.25 and 1.26.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NewVolumeManagerReconstruction/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NewVolumeManagerReconstruction.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NewVolumeManagerReconstruction.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NewVolumeManagerReconstruction/",
          "line_start": null,
          "line_end": null,
          "quote": "NewVolumeManagerReconstruction"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletSeparateDiskGC",
      "type": "page",
      "title": "KubeletSeparateDiskGC",
      "summary": "",
      "body": "The split image filesystem feature enables kubelet to perform garbage collection\nof images (read-only layers) and/or containers (writeable layers) deployed on\nseparate filesystems.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletSeparateDiskGC/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletSeparateDiskGC.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletSeparateDiskGC.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletSeparateDiskGC/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletSeparateDiskGC"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WatchListClient",
      "type": "page",
      "title": "WatchListClient",
      "summary": "",
      "body": "Allows an API client to request a stream of data rather than fetching a full list. \nThis functionality is available in `client-go` and requires the \n[WatchList](/docs/reference/command-line-tools-reference/feature-gates/) \nfeature to be enabled on the server. \nIf the `WatchList` is not supported on the server, the client will seamlessly fall back to a standard list request.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WatchListClient/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WatchListClient.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WatchListClient.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WatchListClient/",
          "line_start": null,
          "line_end": null,
          "quote": "WatchListClient"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodLevelResourceManagers",
      "type": "page",
      "title": "PodLevelResourceManagers",
      "summary": "PodLevelResourceManagers is a feature gate that enables pod-level resource managers.",
      "body": "PodLevelResourceManagers is a feature gate that enables pod-level resource managers.\n\n**Why it matters**\nThis feature allows for more fine-grained control over resource allocation at the pod level.\n\n**Key facts**\n- Enables pod-level resource managers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLevelResourceManagers/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodLevelResourceManagers.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodLevelResourceManagers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLevelResourceManagers/",
          "line_start": null,
          "line_end": null,
          "quote": "PodLevelResourceManagers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodLevelResources",
      "type": "page",
      "title": "PodLevelResources",
      "summary": "PodLevelResources is a feature gate that enables pod-level resources.",
      "body": "PodLevelResources is a feature gate that enables pod-level resources.\n\n**Why it matters**\nThis feature allows for more fine-grained control over resource allocation at the pod level.\n\n**Key facts**\n- Enables pod-level resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLevelResources/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodLevelResources.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodLevelResources.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLevelResources/",
          "line_start": null,
          "line_end": null,
          "quote": "PodLevelResources"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SchedulerAsyncPreemption",
      "type": "page",
      "title": "SchedulerAsyncPreemption",
      "summary": "SchedulerAsyncPreemption is a feature gate that enables asynchronous preemption.",
      "body": "SchedulerAsyncPreemption is a feature gate that enables asynchronous preemption.\n\n**Why it matters**\nThis feature allows for more efficient resource utilization and scheduling.\n\n**Key facts**\n- Enables asynchronous preemption",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SchedulerAsyncPreemption/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SchedulerAsyncPreemption.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SchedulerAsyncPreemption.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SchedulerAsyncPreemption/",
          "line_start": null,
          "line_end": null,
          "quote": "SchedulerAsyncPreemption"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveMemory",
      "type": "page",
      "title": "InPlacePodVerticalScalingExclusiveMemory",
      "summary": "InPlacePodVerticalScalingExclusiveMemory is a feature gate that enables in-place pod vertical scaling with exclusive memory.",
      "body": "InPlacePodVerticalScalingExclusiveMemory is a feature gate that enables in-place pod vertical scaling with exclusive memory.\n\n**Why it matters**\nThis feature allows for more efficient resource utilization and scaling of pods.\n\n**Key facts**\n- Enables in-place pod vertical scaling with exclusive memory",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveMemory/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveMemory.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveMemory.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveMemory/",
          "line_start": null,
          "line_end": null,
          "quote": "InPlacePodVerticalScalingExclusiveMemory"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/UnknownVersionInteroperabilityProxy",
      "type": "page",
      "title": "UnknownVersionInteroperabilityProxy",
      "summary": "A feature gate that enables interoperability between different Kubernetes versions.",
      "body": "A feature gate that enables interoperability between different Kubernetes versions.\n\n**Why it matters**\nThis feature is important for clusters with mixed version deployments, ensuring compatibility and smooth operation.\n\n**Key facts**\n- Enables communication between nodes running different Kubernetes versions\n- Required for clusters with heterogeneous node versions\n\n**Common pitfalls**\n- May introduce additional complexity in cluster management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UnknownVersionInteroperabilityProxy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/UnknownVersionInteroperabilityProxy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UnknownVersionInteroperabilityProxy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UnknownVersionInteroperabilityProxy/",
          "line_start": null,
          "line_end": null,
          "quote": "UnknownVersionInteroperabilityProxy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ExecProbeTimeout",
      "type": "page",
      "title": "ExecProbeTimeout",
      "summary": "A feature gate that controls the timeout for exec probes.",
      "body": "A feature gate that controls the timeout for exec probes.\n\n**Why it matters**\nThis feature is crucial for balancing probe frequency and node responsiveness.\n\n**Key facts**\n- Determines the maximum time to wait for an exec probe response\n\n**Common pitfalls**\n- Insufficiently set timeouts may lead to inaccurate node status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExecProbeTimeout/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ExecProbeTimeout.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExecProbeTimeout.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExecProbeTimeout/",
          "line_start": null,
          "line_end": null,
          "quote": "ExecProbeTimeout"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/JobManagedBy",
      "type": "page",
      "title": "JobManagedBy",
      "summary": "A feature gate that indicates whether a job is managed by the cluster.",
      "body": "A feature gate that indicates whether a job is managed by the cluster.\n\n**Why it matters**\nThis feature helps in identifying and managing jobs within the cluster.\n\n**Key facts**\n- Indicates if a job is managed by the cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobManagedBy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/JobManagedBy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobManagedBy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobManagedBy/",
          "line_start": null,
          "line_end": null,
          "quote": "JobManagedBy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes",
      "type": "page",
      "title": "ReadOnlyAPIDataVolumes",
      "summary": "A feature gate that enables read-only access to API data volumes.",
      "body": "A feature gate that enables read-only access to API data volumes.\n\n**Why it matters**\nThis feature is essential for clusters requiring restricted API access.\n\n**Key facts**\n- Allows read-only access to API data volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": "ReadOnlyAPIDataVolumes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ConfigurableFSGroupPolicy",
      "type": "page",
      "title": "ConfigurableFSGroupPolicy",
      "summary": "A feature gate that allows configuring the File System Group Policy for pods.",
      "body": "A feature gate that allows configuring the File System Group Policy for pods.\n\n**Why it matters**\nEnables fine-grained control over file system group policies, allowing administrators to tailor them to specific use cases.\n\n**Key facts**\n- ConfigurableFSGroupPolicy is a feature gate in Kubernetes\n- It enables configuration of the File System Group Policy for pods\n\n**Common pitfalls**\n- Incorrectly configuring the FS Group Policy can lead to security issues or data corruption\n\n**Related**\nFile System Group Policy, Pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ConfigurableFSGroupPolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ConfigurableFSGroupPolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ConfigurableFSGroupPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ConfigurableFSGroupPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "ConfigurableFSGroupPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StrictIPCIDRValidation",
      "type": "page",
      "title": "StrictIPCIDRValidation",
      "summary": "",
      "body": "Use stricter validation for fields containing IP addresses and CIDR values.\n\nIn particular, with this feature gate enabled, octets within IPv4 addresses are\nnot allowed to have any leading `0`s, and IPv4-mapped IPv6 values (e.g.\n`::ffff:192.168.0.1`) are forbidden. These sorts of values can potentially cause\nsecurity problems when different components interpret the same string as\nreferring to different IP addresses (as in CVE-2021-29923).\n\nThis tightening applies only to fields in build-in API kinds, and not to\ncustom resource kinds, values in Kubernetes configuration files, or\ncommand-line arguments.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StrictIPCIDRValidation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StrictIPCIDRValidation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StrictIPCIDRValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StrictIPCIDRValidation/",
          "line_start": null,
          "line_end": null,
          "quote": "StrictIPCIDRValidation"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyDaemonset",
      "type": "page",
      "title": "StaleControllerConsistencyDaemonSet",
      "summary": "A feature gate that enables the Stale Controller Consistency DaemonSet.",
      "body": "A feature gate that enables the Stale Controller Consistency DaemonSet.\n\n**Why it matters**\nEnsures consistency in controller state across restarts, preventing potential issues with pod management.\n\n**Key facts**\n- StaleControllerConsistencyDaemonSet is a feature gate in Kubernetes\n- It enables the Stale Controller Consistency DaemonSet\n\n**Common pitfalls**\n- Disabling this feature gate may lead to inconsistent controller states and pod management issues\n\n**Related**\nStale Controller Consistency DaemonSet, Pod Management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyDaemonset/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyDaemonset.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyDaemonset.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyDaemonset/",
          "line_start": null,
          "line_end": null,
          "quote": "StaleControllerConsistencyDaemonSet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodLifecycleSleepAction",
      "type": "page",
      "title": "PodLifecycleSleepAction",
      "summary": "A feature gate that allows specifying the sleep action for pods during lifecycle events.",
      "body": "A feature gate that allows specifying the sleep action for pods during lifecycle events.\n\n**Why it matters**\nProvides flexibility in handling pod lifecycle events, enabling administrators to customize their application's behavior.\n\n**Key facts**\n- PodLifecycleSleepAction is a feature gate in Kubernetes\n- It enables specification of the sleep action for pods\n\n**Common pitfalls**\n- Incorrectly configuring the sleep action can lead to unexpected pod behavior or crashes\n\n**Related**\nPod Lifecycle Events, Application Behavior",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLifecycleSleepAction/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodLifecycleSleepAction.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodLifecycleSleepAction.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLifecycleSleepAction/",
          "line_start": null,
          "line_end": null,
          "quote": "PodLifecycleSleepAction"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAListTypeAttributes",
      "type": "page",
      "title": "DRAListTypeAttributes",
      "summary": "",
      "body": "Enables list-type attribute fields (`bools`, `ints`, `strings`, `versions`) for devices\nin `ResourceSlice`, allowing a device to advertise multiple values for a single attribute.\n\nWhen enabled, `matchAttribute` uses set-intersection semantics (the sets of attribute\nvalues across all selected devices must have a non-empty intersection), and\n`distinctAttribute` uses pairwise-disjoint semantics (the sets must share no values).\nScalar attributes remain backward-compatible, treated as singleton sets.\n\nAlso adds the `includes()` helper function to CEL device selector expressions, which\nworks on both scalar and list-type attributes.\n\nFor more information, see\n[List type attributes](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#list-type-attributes)\nin the Dynamic Resource Allocation documentation.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAListTypeAttributes/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAListTypeAttributes.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAListTypeAttributes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAListTypeAttributes/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAListTypeAttributes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StatefulSetStartOrdinal",
      "type": "page",
      "title": "StatefulSetStartOrdinal",
      "summary": "A feature gate that allows specifying the start ordinal for StatefulSets.",
      "body": "A feature gate that allows specifying the start ordinal for StatefulSets.\n\n**Why it matters**\nEnables administrators to control when and how StatefulSets are started, improving application deployment flexibility.\n\n**Key facts**\n- StatefulSetStartOrdinal is a feature gate in Kubernetes\n- It enables specification of the start ordinal for StatefulSets\n\n**Common pitfalls**\n- Incorrectly configuring the start ordinal can lead to inconsistent or non-functional StatefulSets\n\n**Related**\nStatefulSets, Application Deployment",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StatefulSetStartOrdinal/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StatefulSetStartOrdinal.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StatefulSetStartOrdinal.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StatefulSetStartOrdinal/",
          "line_start": null,
          "line_end": null,
          "quote": "StatefulSetStartOrdinal"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EndpointSliceProxying",
      "type": "page",
      "title": "EndpointSliceProxying",
      "summary": "A feature gate for enabling endpoint slice proxying.",
      "body": "A feature gate for enabling endpoint slice proxying.\n\n**Why it matters**\nEnables endpoint slice proxying, allowing for more flexible and efficient networking in Kubernetes clusters.\n\n**Key facts**\n- Endpoint slice proxying is a feature that allows for more flexible and efficient networking in Kubernetes clusters.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSliceProxying/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EndpointSliceProxying.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EndpointSliceProxying.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSliceProxying/",
          "line_start": null,
          "line_end": null,
          "quote": "EndpointSliceProxying"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/Initializers",
      "type": "page",
      "title": "Initializers",
      "summary": "A feature gate for enabling initializers.",
      "body": "A feature gate for enabling initializers.\n\n**Why it matters**\nEnables initializers, allowing for more flexible and efficient management of Kubernetes resources.\n\n**Key facts**\n- Initializers are a feature that allows for more flexible and efficient management of Kubernetes resources.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/Initializers/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/Initializers.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/Initializers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/Initializers/",
          "line_start": null,
          "line_end": null,
          "quote": "Initializers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InformerResourceVersion",
      "type": "page",
      "title": "InformerResourceVersion",
      "summary": "A feature gate for enabling informer resource versioning.",
      "body": "A feature gate for enabling informer resource versioning.\n\n**Why it matters**\nEnables informer resource versioning, allowing for more efficient and reliable data synchronization in Kubernetes clusters.\n\n**Key facts**\n- Informer resource versioning is a feature that allows for more efficient and reliable data synchronization in Kubernetes clusters.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InformerResourceVersion/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InformerResourceVersion.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InformerResourceVersion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InformerResourceVersion/",
          "line_start": null,
          "line_end": null,
          "quote": "InformerResourceVersion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TaintBasedEvictions",
      "type": "page",
      "title": "TaintBasedEvictions",
      "summary": "A feature gate for enabling taint-based evictions.",
      "body": "A feature gate for enabling taint-based evictions.\n\n**Why it matters**\nEnables taint-based evictions, allowing for more flexible and efficient node management in Kubernetes clusters.\n\n**Key facts**\n- Taint-based evictions are a feature that allows for more flexible and efficient node management in Kubernetes clusters.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TaintBasedEvictions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TaintBasedEvictions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TaintBasedEvictions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TaintBasedEvictions/",
          "line_start": null,
          "line_end": null,
          "quote": "TaintBasedEvictions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ComponentFlagz",
      "type": "page",
      "title": "ComponentFlagz",
      "summary": "A feature gate for enabling or disabling specific Kubernetes components.",
      "body": "A feature gate for enabling or disabling specific Kubernetes components.\n\n**Why it matters**\nAllows administrators to control the behavior of individual components, such as the API server or controller manager.\n\n**Key facts**\n- Can be used to enable or disable features at runtime.\n- Is a way to manage component-level feature flags.\n\n**Common pitfalls**\n- Requires careful consideration to avoid breaking dependencies between components.\n\n**Related**\nFeature gates, Component configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ComponentFlagz/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ComponentFlagz.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ComponentFlagz.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ComponentFlagz/",
          "line_start": null,
          "line_end": null,
          "quote": "ComponentFlagz"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MutableSchedulingDirectivesForSuspendedJobs",
      "type": "page",
      "title": "MutableSchedulingDirectivesForSuspendedJobs",
      "summary": "A feature gate for mutable scheduling directives on suspended jobs.",
      "body": "A feature gate for mutable scheduling directives on suspended jobs.\n\n**Why it matters**\nEnables administrators to modify the scheduling behavior of suspended jobs, allowing for more flexible job management.\n\n**Key facts**\n- Allows modification of scheduling directives even after a job has been suspended.\n\n**Common pitfalls**\n- Requires careful consideration to avoid disrupting running jobs.\n\n**Related**\nSuspended jobs, Job scheduling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutableSchedulingDirectivesForSuspendedJobs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MutableSchedulingDirectivesForSuspendedJobs.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MutableSchedulingDirectivesForSuspendedJobs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutableSchedulingDirectivesForSuspendedJobs/",
          "line_start": null,
          "line_end": null,
          "quote": "MutableSchedulingDirectivesForSuspendedJobs"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KMSv2KDF",
      "type": "page",
      "title": "KMSv2KDF",
      "summary": "A feature gate for enabling or disabling the use of KMS v2 Key Data Format.",
      "body": "A feature gate for enabling or disabling the use of KMS v2 Key Data Format.\n\n**Why it matters**\nAllows administrators to control the use of KMS v2 Key Data Format, a more secure key management system.\n\n**Key facts**\n- Enables the use of KMS v2 Key Data Format for enhanced security.\n\n**Common pitfalls**\n- Requires careful consideration to avoid breaking dependencies on existing key formats.\n\n**Related**\nKMS, Key management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KMSv2KDF/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KMSv2KDF.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KMSv2KDF.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KMSv2KDF/",
          "line_start": null,
          "line_end": null,
          "quote": "KMSv2KDF"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/BoundServiceAccountTokenVolume",
      "type": "page",
      "title": "BoundServiceAccountTokenVolume",
      "summary": "A feature gate for enabling or disabling the use of bound service account token volumes.",
      "body": "A feature gate for enabling or disabling the use of bound service account token volumes.\n\n**Why it matters**\nAllows administrators to control the use of bound service account tokens, a more secure way to authenticate pods.\n\n**Key facts**\n- Enables the use of bound service account tokens for enhanced security.\n\n**Common pitfalls**\n- Requires careful consideration to avoid breaking dependencies on existing authentication mechanisms.\n\n**Related**\nService accounts, Pod authentication",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BoundServiceAccountTokenVolume/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/BoundServiceAccountTokenVolume.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/BoundServiceAccountTokenVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BoundServiceAccountTokenVolume/",
          "line_start": null,
          "line_end": null,
          "quote": "BoundServiceAccountTokenVolume"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KMSv2",
      "type": "page",
      "title": "KMSv2",
      "summary": "KMSv2 is a feature gate that enables the use of AWS Key Management Service version 2.",
      "body": "KMSv2 is a feature gate that enables the use of AWS Key Management Service version 2.\n\n**Why it matters**\nKMSv2 provides improved security and management capabilities for secrets in Kubernetes clusters.\n\n**Key facts**\n- KMSv2 is enabled by default\n- It supports both symmetric and asymmetric keys\n\n**Common pitfalls**\n- Enabling KMSv2 requires proper configuration of AWS credentials\n\n**Related**\nAWS Key Management Service (KMS), Secrets management in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KMSv2/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KMSv2.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KMSv2.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KMSv2/",
          "line_start": null,
          "line_end": null,
          "quote": "KMSv2"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MountContainers",
      "type": "page",
      "title": "MountContainers",
      "summary": "MountContainers is a feature gate that allows containers to mount volumes at runtime.",
      "body": "MountContainers is a feature gate that allows containers to mount volumes at runtime.\n\n**Why it matters**\nMountContainers enables more flexible and dynamic storage management in Kubernetes clusters.\n\n**Key facts**\n- MountContainers is disabled by default\n- It supports multiple volume types, including emptyDir and persistentVolumeClaim\n\n**Common pitfalls**\n- Incorrect configuration can lead to data loss or corruption\n\n**Related**\nPersistent volumes in Kubernetes, Container storage management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MountContainers/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MountContainers.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MountContainers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MountContainers/",
          "line_start": null,
          "line_end": null,
          "quote": "MountContainers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StatefulSetMinReadySeconds",
      "type": "page",
      "title": "StatefulSetMinReadySeconds",
      "summary": "StatefulSetMinReadySeconds is a feature gate that sets the minimum number of seconds for a StatefulSet to be ready.",
      "body": "StatefulSetMinReadySeconds is a feature gate that sets the minimum number of seconds for a StatefulSet to be ready.\n\n**Why it matters**\nStatefulSetMinReadySeconds ensures that StatefulSets are fully functional before being made available to applications.\n\n**Key facts**\n- StatefulSetMinReadySeconds is disabled by default\n- It supports values from 0 to 3600 seconds\n\n**Common pitfalls**\n- Incorrect configuration can lead to delayed application availability\n\n**Related**\nStatefulSets in Kubernetes, Deployment and scaling strategies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StatefulSetMinReadySeconds/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StatefulSetMinReadySeconds.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StatefulSetMinReadySeconds.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StatefulSetMinReadySeconds/",
          "line_start": null,
          "line_end": null,
          "quote": "StatefulSetMinReadySeconds"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NetworkPolicyEndPort",
      "type": "page",
      "title": "NetworkPolicyEndPort",
      "summary": "NetworkPolicyEndPort is a feature gate that allows network policies to specify end ports.",
      "body": "NetworkPolicyEndPort is a feature gate that allows network policies to specify end ports.\n\n**Why it matters**\nNetworkPolicyEndPort enables more fine-grained control over network traffic in Kubernetes clusters.\n\n**Key facts**\n- NetworkPolicyEndPort is enabled by default\n- It supports both TCP and UDP protocols\n\n**Common pitfalls**\n- Incorrect configuration can lead to security vulnerabilities\n\n**Related**\nNetwork policies in Kubernetes, Security and networking best practices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NetworkPolicyEndPort/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NetworkPolicyEndPort.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NetworkPolicyEndPort.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NetworkPolicyEndPort/",
          "line_start": null,
          "line_end": null,
          "quote": "NetworkPolicyEndPort"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WindowsCPUAndMemoryAffinity",
      "type": "page",
      "title": "WindowsCPUAndMemoryAffinity",
      "summary": "Windows CPU and Memory Affinity allows for more flexible placement of pods on Windows nodes.",
      "body": "Windows CPU and Memory Affinity allows for more flexible placement of pods on Windows nodes.\n\n**Why it matters**\nThis feature enables better resource utilization and improved performance on Windows clusters.\n\n**Key facts**\n- Allows for more flexible placement of pods on Windows nodes\n- Enables better resource utilization and improved performance",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsCPUAndMemoryAffinity/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WindowsCPUAndMemoryAffinity.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsCPUAndMemoryAffinity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsCPUAndMemoryAffinity/",
          "line_start": null,
          "line_end": null,
          "quote": "WindowsCPUAndMemoryAffinity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ExperimentalHostUserNamespaceDefaulting",
      "type": "page",
      "title": "ExperimentalHostUserNamespaceDefaulting",
      "summary": "Experimental Host User Namespace Defaulting allows for more flexible namespace management.",
      "body": "Experimental Host User Namespace Defaulting allows for more flexible namespace management.\n\n**Why it matters**\nThis feature enables better isolation and security in multi-tenant environments.\n\n**Key facts**\n- Allows for more flexible namespace management\n- Enables better isolation and security",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExperimentalHostUserNamespaceDefaulting/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ExperimentalHostUserNamespaceDefaulting.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExperimentalHostUserNamespaceDefaulting.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExperimentalHostUserNamespaceDefaulting/",
          "line_start": null,
          "line_end": null,
          "quote": "ExperimentalHostUserNamespaceDefaulting"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/JobPodReplacementPolicy",
      "type": "page",
      "title": "JobPodReplacementPolicy",
      "summary": "Job Pod Replacement Policy allows for more control over pod replacement in jobs.",
      "body": "Job Pod Replacement Policy allows for more control over pod replacement in jobs.\n\n**Why it matters**\nThis feature enables better reliability and fault tolerance in job workloads.\n\n**Key facts**\n- Allows for more control over pod replacement\n- Enables better reliability and fault tolerance",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobPodReplacementPolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/JobPodReplacementPolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobPodReplacementPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobPodReplacementPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "JobPodReplacementPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CustomPodDNS",
      "type": "page",
      "title": "CustomPodDNS",
      "summary": "Custom Pod DNS allows for custom DNS configuration in pods.",
      "body": "Custom Pod DNS allows for custom DNS configuration in pods.\n\n**Why it matters**\nThis feature enables more flexibility and customization in pod networking.\n\n**Key facts**\n- Allows for custom DNS configuration\n- Enables more flexibility and customization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomPodDNS/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CustomPodDNS.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomPodDNS.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomPodDNS/",
          "line_start": null,
          "line_end": null,
          "quote": "CustomPodDNS"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveCPUs",
      "type": "page",
      "title": "InPlacePodVerticalScalingExclusiveCPUs",
      "summary": "Enables In-Place Pod Vertical Scaling for exclusive CPUs.",
      "body": "Enables In-Place Pod Vertical Scaling for exclusive CPUs.\n\n**Why it matters**\nAllows for dynamic scaling of pods with exclusive CPU resources without restarting them.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.22 and later versions.\n\n**Common pitfalls**\n- Requires careful configuration to avoid resource contention issues.\n\n**Related**\nPod Vertical Scaling, Exclusive CPUs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveCPUs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveCPUs.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveCPUs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveCPUs/",
          "line_start": null,
          "line_end": null,
          "quote": "InPlacePodVerticalScalingExclusiveCPUs"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceValidationExpressions",
      "type": "page",
      "title": "CustomResourceValidationExpressions",
      "summary": "Enables custom validation expressions for Custom Resources.",
      "body": "Enables custom validation expressions for Custom Resources.\n\n**Why it matters**\nAllows for more complex and flexible validation of Custom Resource definitions.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.19 and later versions.\n\n**Common pitfalls**\n- Requires careful configuration to avoid validation errors.\n\n**Related**\nCustom Resources, Validation Expressions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceValidationExpressions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CustomResourceValidationExpressions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceValidationExpressions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceValidationExpressions/",
          "line_start": null,
          "line_end": null,
          "quote": "CustomResourceValidationExpressions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/HPAConfigurableTolerance",
      "type": "page",
      "title": "HPAConfigurableTolerance",
      "summary": "Enables configurable tolerance for Horizontal Pod Autoscalers.",
      "body": "Enables configurable tolerance for Horizontal Pod Autoscalers.\n\n**Why it matters**\nAllows for more fine-grained control over autoscaling behavior.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.20 and later versions.\n\n**Common pitfalls**\n- Requires careful configuration to avoid oscillations or other issues.\n\n**Related**\nHorizontal Pod Autoscalers, Tolerance",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HPAConfigurableTolerance/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/HPAConfigurableTolerance.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HPAConfigurableTolerance.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HPAConfigurableTolerance/",
          "line_start": null,
          "line_end": null,
          "quote": "HPAConfigurableTolerance"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DisableAcceleratorUsageMetrics",
      "type": "page",
      "title": "DisableAcceleratorUsageMetrics",
      "summary": "Disables accelerator usage metrics.",
      "body": "Disables accelerator usage metrics.\n\n**Why it matters**\nReduces resource utilization and improves performance for certain workloads.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.21 and later versions.\n\n**Common pitfalls**\n- May require additional monitoring or logging to track accelerator usage.\n\n**Related**\nAccelerator Usage Metrics, Resource Utilization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableAcceleratorUsageMetrics/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DisableAcceleratorUsageMetrics.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DisableAcceleratorUsageMetrics.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableAcceleratorUsageMetrics/",
          "line_start": null,
          "line_end": null,
          "quote": "DisableAcceleratorUsageMetrics"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/GracefulNodeShutdown",
      "type": "page",
      "title": "GracefulNodeShutdown",
      "summary": "GracefulNodeShutdown is a feature gate that allows for graceful shutdown of nodes.",
      "body": "GracefulNodeShutdown is a feature gate that allows for graceful shutdown of nodes.\n\n**Why it matters**\nThis feature enables controlled node shutdown, reducing the risk of data loss or corruption.\n\n**Key facts**\n- Enables controlled node shutdown\n- Reduces risk of data loss or corruption\n\n**Common pitfalls**\n- May require additional configuration for optimal use",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GracefulNodeShutdown/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/GracefulNodeShutdown.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GracefulNodeShutdown.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GracefulNodeShutdown/",
          "line_start": null,
          "line_end": null,
          "quote": "GracefulNodeShutdown"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SELinuxMount",
      "type": "page",
      "title": "SELinuxMount",
      "summary": "SELinuxMount is a feature gate that enables SELinux support for mounts.",
      "body": "SELinuxMount is a feature gate that enables SELinux support for mounts.\n\n**Why it matters**\nThis feature allows for more fine-grained control over mount permissions and security.\n\n**Key facts**\n- Enables SELinux support for mounts\n- Provides more fine-grained control over mount permissions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SELinuxMount/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SELinuxMount.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SELinuxMount.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SELinuxMount/",
          "line_start": null,
          "line_end": null,
          "quote": "SELinuxMount"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/VolumeSnapshotDataSource",
      "type": "page",
      "title": "VolumeSnapshotDataSource",
      "summary": "VolumeSnapshotDataSource is a feature gate that enables volume snapshot data sources.",
      "body": "VolumeSnapshotDataSource is a feature gate that enables volume snapshot data sources.\n\n**Why it matters**\nThis feature allows for more flexible and efficient management of volume snapshots.\n\n**Key facts**\n- Enables volume snapshot data sources\n- Allows for more flexible and efficient management of volume snapshots",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeSnapshotDataSource/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/VolumeSnapshotDataSource.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeSnapshotDataSource.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeSnapshotDataSource/",
          "line_start": null,
          "line_end": null,
          "quote": "VolumeSnapshotDataSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceValidation",
      "type": "page",
      "title": "CustomResourceValidation",
      "summary": "CustomResourceValidation is a feature gate that enables custom resource validation.",
      "body": "CustomResourceValidation is a feature gate that enables custom resource validation.\n\n**Why it matters**\nThis feature allows for more robust and flexible validation of custom resources.\n\n**Key facts**\n- Enables custom resource validation\n- Allows for more robust and flexible validation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceValidation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CustomResourceValidation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceValidation/",
          "line_start": null,
          "line_end": null,
          "quote": "CustomResourceValidation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SizeBasedListCostEstimate",
      "type": "page",
      "title": "SizeBasedListCostEstimate",
      "summary": "SizeBasedListCostEstimate is a feature gate that enables cost estimation for Size-Based Autoscaling.",
      "body": "SizeBasedListCostEstimate is a feature gate that enables cost estimation for Size-Based Autoscaling.\n\n**Why it matters**\nThis feature allows users to estimate costs based on pod sizes, enabling more accurate budgeting and resource planning.\n\n**Key facts**\n- SizeBasedListCostEstimate is enabled by default\n- It requires a Kubernetes version of 1.24 or later\n\n**Common pitfalls**\n- Inaccurate cost estimation if pod size estimates are incorrect",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SizeBasedListCostEstimate/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SizeBasedListCostEstimate.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SizeBasedListCostEstimate.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SizeBasedListCostEstimate/",
          "line_start": null,
          "line_end": null,
          "quote": "SizeBasedListCostEstimate"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SecurityContextDeny",
      "type": "page",
      "title": "SecurityContextDeny",
      "summary": "SecurityContextDeny is a feature gate that denies pods from running with privileged security contexts.",
      "body": "SecurityContextDeny is a feature gate that denies pods from running with privileged security contexts.\n\n**Why it matters**\nThis feature helps prevent privilege escalation attacks by restricting pod privileges.\n\n**Key facts**\n- SecurityContextDeny is enabled by default\n- It requires a Kubernetes version of 1.24 or later\n\n**Common pitfalls**\n- Potential denial-of-service if pods rely on privileged security contexts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SecurityContextDeny/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SecurityContextDeny.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SecurityContextDeny.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SecurityContextDeny/",
          "line_start": null,
          "line_end": null,
          "quote": "SecurityContextDeny"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIInlineVolume",
      "type": "page",
      "title": "CSIInlineVolume",
      "summary": "CSIInlineVolume is a feature gate that enables inline volume creation for CSI drivers.",
      "body": "CSIInlineVolume is a feature gate that enables inline volume creation for CSI drivers.\n\n**Why it matters**\nThis feature allows users to create volumes directly in the pod's configuration, simplifying storage management.\n\n**Key facts**\n- CSIInlineVolume is disabled by default\n- It requires a Kubernetes version of 1.24 or later\n\n**Common pitfalls**\n- Potential issues with volume creation if CSI driver is not properly configured",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIInlineVolume/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIInlineVolume.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIInlineVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIInlineVolume/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIInlineVolume"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CronJobControllerV2",
      "type": "page",
      "title": "CronJobControllerV2",
      "summary": "CronJobControllerV2 is a feature gate that enables the new CronJob controller.",
      "body": "CronJobControllerV2 is a feature gate that enables the new CronJob controller.\n\n**Why it matters**\nThis feature provides improved scalability and reliability for cron jobs, enabling more efficient scheduling.\n\n**Key facts**\n- CronJobControllerV2 is disabled by default\n- It requires a Kubernetes version of 1.24 or later\n\n**Common pitfalls**\n- Potential issues with job scheduling if CronJob controller is not properly configured",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobControllerV2/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CronJobControllerV2.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CronJobControllerV2.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobControllerV2/",
          "line_start": null,
          "line_end": null,
          "quote": "CronJobControllerV2"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MutatingAdmissionPolicy",
      "type": "page",
      "title": "MutatingAdmissionPolicy",
      "summary": "Mutating Admission Policy is a feature gate that enables admission policies to mutate incoming requests.",
      "body": "Mutating Admission Policy is a feature gate that enables admission policies to mutate incoming requests.\n\n**Why it matters**\nThis feature allows for more flexible and dynamic admission control, enabling users to modify incoming requests before they are processed by the cluster.\n\n**Key facts**\n- Enabled by default\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- Requires careful consideration of security implications when modifying incoming requests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutatingAdmissionPolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MutatingAdmissionPolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MutatingAdmissionPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutatingAdmissionPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "MutatingAdmissionPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TranslateStreamCloseWebsocketRequests",
      "type": "page",
      "title": "TranslateStreamCloseWebsocketRequests",
      "summary": "Translate Stream Close Websocket Requests is a feature gate that enables translation of WebSocket close requests to HTTP requests.",
      "body": "Translate Stream Close Websocket Requests is a feature gate that enables translation of WebSocket close requests to HTTP requests.\n\n**Why it matters**\nThis feature allows for more seamless communication between clients and servers, enabling the use of WebSockets in environments where they are not natively supported.\n\n**Key facts**\n- Enabled by default\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- May introduce additional latency due to request translation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TranslateStreamCloseWebsocketRequests/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TranslateStreamCloseWebsocketRequests.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TranslateStreamCloseWebsocketRequests.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TranslateStreamCloseWebsocketRequests/",
          "line_start": null,
          "line_end": null,
          "quote": "TranslateStreamCloseWebsocketRequests"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceIPStaticSubrange",
      "type": "page",
      "title": "ServiceIPStaticSubrange",
      "summary": "Service IP Static Subrange is a feature gate that enables the assignment of static IP addresses to services.",
      "body": "Service IP Static Subrange is a feature gate that enables the assignment of static IP addresses to services.\n\n**Why it matters**\nThis feature allows for more predictable and reliable network configuration, enabling users to assign specific IP addresses to services for easier identification and management.\n\n**Key facts**\n- Enabled by default\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- May require additional network configuration to ensure correct routing",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceIPStaticSubrange/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceIPStaticSubrange.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceIPStaticSubrange.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceIPStaticSubrange/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceIPStaticSubrange"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StorageNamespaceIndex",
      "type": "page",
      "title": "StorageNamespaceIndex",
      "summary": "Storage Namespace Index is a feature gate that enables the creation of an index for storage namespaces.",
      "body": "Storage Namespace Index is a feature gate that enables the creation of an index for storage namespaces.\n\n**Why it matters**\nThis feature allows for more efficient storage namespace management, enabling users to quickly locate and access specific namespaces within their cluster.\n\n**Key facts**\n- Enabled by default\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- May introduce additional latency due to index creation and maintenance",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageNamespaceIndex/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StorageNamespaceIndex.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StorageNamespaceIndex.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageNamespaceIndex/",
          "line_start": null,
          "line_end": null,
          "quote": "StorageNamespaceIndex"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TopologyManager",
      "type": "page",
      "title": "TopologyManager",
      "summary": "The TopologyManager is a feature gate that enables topology management in Kubernetes.",
      "body": "The TopologyManager is a feature gate that enables topology management in Kubernetes.\n\n**Why it matters**\nTopology management allows for the creation and management of complex topologies, enabling features like multi-zone deployments and node affinity.\n\n**Key facts**\n- Enabled by default in 1.24\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- Requires careful consideration of topology constraints to avoid issues with pod placement\n\n**Related**\nTopology management, Multi-zone deployments, Node affinity",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyManager/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TopologyManager.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TopologyManager.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyManager/",
          "line_start": null,
          "line_end": null,
          "quote": "TopologyManager"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIVolumeHealth",
      "type": "page",
      "title": "CSIVolumeHealth",
      "summary": "The CSIVolumeHealth feature gate enables CSI volume health checks in Kubernetes.",
      "body": "The CSIVolumeHealth feature gate enables CSI volume health checks in Kubernetes.\n\n**Why it matters**\nCSI volume health checks allow for the monitoring of CSI volumes and detection of potential issues before they impact applications.\n\n**Key facts**\n- Enabled by default in 1.22\n- Provides health check metrics for CSI volumes\n\n**Common pitfalls**\n- Requires CSI driver support for health checks\n\n**Related**\nCSI volume health checks, CSI drivers, Health metrics",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIVolumeHealth/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIVolumeHealth.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIVolumeHealth.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIVolumeHealth/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIVolumeHealth"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ConstrainedImpersonation",
      "type": "page",
      "title": "ConstrainedImpersonation",
      "summary": "The ConstrainedImpersonation feature gate enables constrained impersonation in Kubernetes.",
      "body": "The ConstrainedImpersonation feature gate enables constrained impersonation in Kubernetes.\n\n**Why it matters**\nConstrained impersonation allows for secure delegation of permissions to pods and services, enabling features like pod identity and service accounts.\n\n**Key facts**\n- Enabled by default in 1.21\n- Provides secure delegation of permissions\n\n**Common pitfalls**\n- Requires careful configuration of permission constraints\n\n**Related**\nConstrained impersonation, Pod identity, Service accounts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ConstrainedImpersonation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ConstrainedImpersonation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ConstrainedImpersonation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ConstrainedImpersonation/",
          "line_start": null,
          "line_end": null,
          "quote": "ConstrainedImpersonation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ControllerManagerReleaseLeaderElectionLockOnExit",
      "type": "page",
      "title": "ControllerManagerReleaseLeaderElectionLockOnExit",
      "summary": "The ControllerManagerReleaseLeaderElectionLockOnExit feature gate enables release of the leader election lock on exit in Kubernetes.",
      "body": "The ControllerManagerReleaseLeaderElectionLockOnExit feature gate enables release of the leader election lock on exit in Kubernetes.\n\n**Why it matters**\nReleasing the leader election lock on exit allows for improved controller manager availability and reduces potential issues with leader election.\n\n**Key facts**\n- Enabled by default in 1.23\n- Improves controller manager availability\n\n**Common pitfalls**\n- May require adjustments to existing leader election configurations\n\n**Related**\nLeader election, Controller manager availability, Cluster configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ControllerManagerReleaseLeaderElectionLockOnExit/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ControllerManagerReleaseLeaderElectionLockOnExit.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ControllerManagerReleaseLeaderElectionLockOnExit.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ControllerManagerReleaseLeaderElectionLockOnExit/",
          "line_start": null,
          "line_end": null,
          "quote": "ControllerManagerReleaseLeaderElectionLockOnExit"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PreferSameTrafficDistribution",
      "type": "page",
      "title": "PreferSameTrafficDistribution",
      "summary": "Prefer Same Traffic Distribution is a feature gate that controls whether to prefer same traffic distribution for pods.",
      "body": "Prefer Same Traffic Distribution is a feature gate that controls whether to prefer same traffic distribution for pods.\n\n**Why it matters**\nThis feature gate matters because it allows users to control the distribution of traffic across pods, which can improve performance and reduce resource utilization.\n\n**Key facts**\n- The Prefer Same Traffic Distribution feature gate is used to control the distribution of traffic across pods.\n\n**Common pitfalls**\n- If not properly configured, this feature gate may lead to uneven traffic distribution, affecting pod performance.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PreferSameTrafficDistribution/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PreferSameTrafficDistribution.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PreferSameTrafficDistribution.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PreferSameTrafficDistribution/",
          "line_start": null,
          "line_end": null,
          "quote": "PreferSameTrafficDistribution"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationAzureFileComplete",
      "type": "page",
      "title": "CSIMigrationAzureFileComplete",
      "summary": "CSIMigrationAzureFileComplete is a feature gate that controls the migration of CSI drivers to Azure File Complete.",
      "body": "CSIMigrationAzureFileComplete is a feature gate that controls the migration of CSI drivers to Azure File Complete.\n\n**Why it matters**\nThis feature gate matters because it enables users to migrate their CSI drivers to Azure File Complete, which provides improved performance and reliability.\n\n**Key facts**\n- The CSIMigrationAzureFileComplete feature gate is used to control the migration of CSI drivers to Azure File Complete.\n\n**Common pitfalls**\n- If not properly configured, this feature gate may lead to data loss or corruption during migration.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAzureFileComplete/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationAzureFileComplete.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationAzureFileComplete.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAzureFileComplete/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationAzureFileComplete"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TokenRequest",
      "type": "page",
      "title": "TokenRequest",
      "summary": "TokenRequest is a feature gate that controls the token request behavior.",
      "body": "TokenRequest is a feature gate that controls the token request behavior.\n\n**Why it matters**\nThis feature gate matters because it allows users to control how tokens are requested, which can improve security and authentication.\n\n**Key facts**\n- The TokenRequest feature gate is used to control the token request behavior.\n\n**Common pitfalls**\n- If not properly configured, this feature gate may lead to authentication failures or security breaches.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TokenRequest/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TokenRequest.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TokenRequest.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TokenRequest/",
          "line_start": null,
          "line_end": null,
          "quote": "TokenRequest"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DefaultHostNetworkHostPortsInPodTemplates",
      "type": "page",
      "title": "DefaultHostNetworkHostPortsInPodTemplates",
      "summary": "DefaultHostNetworkHostPortsInPodTemplates is a feature gate that controls the default host network and host ports in pod templates.",
      "body": "DefaultHostNetworkHostPortsInPodTemplates is a feature gate that controls the default host network and host ports in pod templates.\n\n**Why it matters**\nThis feature gate matters because it allows users to control the default host network and host ports in pod templates, which can improve security and resource utilization.\n\n**Key facts**\n- The DefaultHostNetworkHostPortsInPodTemplates feature gate is used to control the default host network and host ports in pod templates.\n\n**Common pitfalls**\n- If not properly configured, this feature gate may lead to security vulnerabilities or resource exhaustion.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DefaultHostNetworkHostPortsInPodTemplates/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DefaultHostNetworkHostPortsInPodTemplates.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DefaultHostNetworkHostPortsInPodTemplates.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DefaultHostNetworkHostPortsInPodTemplates/",
          "line_start": null,
          "line_end": null,
          "quote": "DefaultHostNetworkHostPortsInPodTemplates"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EnableEquivalenceClassCache",
      "type": "page",
      "title": "EnableEquivalenceClassCache",
      "summary": "Enable Equivalence Class Cache is a feature gate that enables caching of equivalence classes in the scheduler.",
      "body": "Enable Equivalence Class Cache is a feature gate that enables caching of equivalence classes in the scheduler.\n\n**Why it matters**\nThis feature improves scheduling performance by reducing the number of times the scheduler needs to calculate equivalence classes.\n\n**Key facts**\n- Enabled by default\n\n**Common pitfalls**\n- May not be suitable for all use cases, especially those with complex pod affinity rules\n\n**Related**\nScheduler configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EnableEquivalenceClassCache/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EnableEquivalenceClassCache.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EnableEquivalenceClassCache.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EnableEquivalenceClassCache/",
          "line_start": null,
          "line_end": null,
          "quote": "EnableEquivalenceClassCache"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CPUManager",
      "type": "page",
      "title": "CPUManager",
      "summary": "CPU Manager is a feature gate that enables the CPU manager to manage CPU resources for pods.",
      "body": "CPU Manager is a feature gate that enables the CPU manager to manage CPU resources for pods.\n\n**Why it matters**\nThis feature allows for more efficient use of CPU resources and improves pod scheduling performance.\n\n**Key facts**\n- Enabled by default\n\n**Common pitfalls**\n- May require additional configuration for optimal performance\n\n**Related**\nPod scheduling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CPUManager/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CPUManager.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CPUManager.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CPUManager/",
          "line_start": null,
          "line_end": null,
          "quote": "CPUManager"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/OpenAPIEnums",
      "type": "page",
      "title": "OpenAPIEnums",
      "summary": "OpenAPI Enums is a feature gate that enables the use of OpenAPI enums in Kubernetes APIs.",
      "body": "OpenAPI Enums is a feature gate that enables the use of OpenAPI enums in Kubernetes APIs.\n\n**Why it matters**\nThis feature allows for more expressive and flexible API definitions, improving developer experience.\n\n**Key facts**\n- Enabled by default\n\n**Common pitfalls**\n- May require updates to existing code that uses deprecated enum values\n\n**Related**\nAPI design",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/OpenAPIEnums/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/OpenAPIEnums.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/OpenAPIEnums.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/OpenAPIEnums/",
          "line_start": null,
          "line_end": null,
          "quote": "OpenAPIEnums"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DeploymentReplicaSetTerminatingReplicas",
      "type": "page",
      "title": "DeploymentReplicaSetTerminatingReplicas",
      "summary": "Deployment Replica Set Terminating Replicas is a feature gate that enables the deletion of terminating replicas in deployments.",
      "body": "Deployment Replica Set Terminating Replicas is a feature gate that enables the deletion of terminating replicas in deployments.\n\n**Why it matters**\nThis feature improves deployment cleanup performance and reduces resource usage.\n\n**Key facts**\n- Enabled by default\n\n**Common pitfalls**\n- May require additional configuration for optimal performance\n\n**Related**\nDeployment management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeploymentReplicaSetTerminatingReplicas/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DeploymentReplicaSetTerminatingReplicas.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DeploymentReplicaSetTerminatingReplicas.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeploymentReplicaSetTerminatingReplicas/",
          "line_start": null,
          "line_end": null,
          "quote": "DeploymentReplicaSetTerminatingReplicas"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/IdentifyPodOS",
      "type": "page",
      "title": "IdentifyPodOS",
      "summary": "A feature gate that allows you to identify the operating system of a pod.",
      "body": "A feature gate that allows you to identify the operating system of a pod.\n\n**Why it matters**\nThis feature is useful for applications that require specific OS-dependent behavior or configuration.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later versions\n- Can be disabled using the `--feature-gates=IdentifyPodOS=false` flag\n\n**Common pitfalls**\n- May not work correctly with certain container runtimes or OS versions\n\n**Related**\nPod specification, Container runtime configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IdentifyPodOS/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/IdentifyPodOS.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/IdentifyPodOS.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IdentifyPodOS/",
          "line_start": null,
          "line_end": null,
          "quote": "IdentifyPodOS"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIDriverRegistry",
      "type": "page",
      "title": "CSIDriverRegistry",
      "summary": "A feature gate that enables the CSI driver registry.",
      "body": "A feature gate that enables the CSI driver registry.\n\n**Why it matters**\nThis feature allows you to manage and configure CSI drivers in a centralized manner.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.22 and later versions\n- Can be disabled using the `--feature-gates=CSIDriverRegistry=false` flag\n\n**Common pitfalls**\n- May require additional configuration or setup for CSI drivers to work correctly\n\n**Related**\nCSI driver specification, Persistent volume management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIDriverRegistry/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIDriverRegistry.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIDriverRegistry.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIDriverRegistry/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIDriverRegistry"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/APIServerIdentity",
      "type": "page",
      "title": "APIServerIdentity",
      "summary": "A feature gate that allows the API server to identify itself.",
      "body": "A feature gate that allows the API server to identify itself.\n\n**Why it matters**\nThis feature is useful for security and authentication purposes, such as verifying the identity of the API server.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.21 and later versions\n- Can be disabled using the `--feature-gates=APIServerIdentity=false` flag\n\n**Common pitfalls**\n- May not work correctly with certain authentication or authorization configurations\n\n**Related**\nAPI server configuration, Authentication and authorization mechanisms",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIServerIdentity/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/APIServerIdentity.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/APIServerIdentity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIServerIdentity/",
          "line_start": null,
          "line_end": null,
          "quote": "APIServerIdentity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSRDuration",
      "type": "page",
      "title": "CSRDuration",
      "summary": "A feature gate that allows you to configure the duration of certificate signing requests (CSRs).",
      "body": "A feature gate that allows you to configure the duration of certificate signing requests (CSRs).\n\n**Why it matters**\nThis feature is useful for managing and configuring CSRs in a centralized manner.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.20 and later versions\n- Can be disabled using the `--feature-gates=CSRDuration=false` flag\n\n**Common pitfalls**\n- May require additional configuration or setup for CSRs to work correctly\n\n**Related**\nCertificate signing request (CSR) specification, Cluster configuration and management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSRDuration/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSRDuration.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSRDuration.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSRDuration/",
          "line_start": null,
          "line_end": null,
          "quote": "CSRDuration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RelaxedServiceNameValidation",
      "type": "page",
      "title": "RelaxedServiceNameValidation",
      "summary": "Allows service names to be more flexible and relaxed in their naming conventions.",
      "body": "Allows service names to be more flexible and relaxed in their naming conventions.\n\n**Why it matters**\nThis feature is useful for clusters with complex or legacy services that don't follow the standard Kubernetes service name conventions.\n\n**Key facts**\n- Enables service names to contain underscores, hyphens, and other special characters\n- Relaxes the requirement for service names to be a valid DNS subdomain\n\n**Common pitfalls**\n- May cause conflicts with existing services if not properly managed",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RelaxedServiceNameValidation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RelaxedServiceNameValidation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RelaxedServiceNameValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RelaxedServiceNameValidation/",
          "line_start": null,
          "line_end": null,
          "quote": "RelaxedServiceNameValidation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DevicePluginCDIDevices",
      "type": "page",
      "title": "DevicePluginCDIDevices",
      "summary": "Enables the use of Device Plugin's CIDevice feature.",
      "body": "Enables the use of Device Plugin's CIDevice feature.\n\n**Why it matters**\nThis feature is useful for clusters that need to manage and provision devices with specific characteristics.\n\n**Key facts**\n- Allows device plugins to register devices with a unique identifier (CID)\n- Enables features like device discovery, registration, and management\n\n**Common pitfalls**\n- Requires proper configuration of device plugins and CIDevice feature",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DevicePluginCDIDevices/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DevicePluginCDIDevices.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DevicePluginCDIDevices.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DevicePluginCDIDevices/",
          "line_start": null,
          "line_end": null,
          "quote": "DevicePluginCDIDevices"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NodeLogQuery",
      "type": "page",
      "title": "NodeLogQuery",
      "summary": "Enables the ability to query node logs.",
      "body": "Enables the ability to query node logs.\n\n**Why it matters**\nThis feature is useful for debugging and troubleshooting node-level issues.\n\n**Key facts**\n- Allows querying of node logs using a specific format (e.g., JSON)\n- Enables filtering and sorting of log entries\n\n**Common pitfalls**\n- May impact node performance if not properly configured",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeLogQuery/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NodeLogQuery.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeLogQuery.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeLogQuery/",
          "line_start": null,
          "line_end": null,
          "quote": "NodeLogQuery"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NFTablesProxyMode",
      "type": "page",
      "title": "NFTablesProxyMode",
      "summary": "Enables the use of NFTables proxy mode.",
      "body": "Enables the use of NFTables proxy mode.\n\n**Why it matters**\nThis feature is useful for clusters that need to manage network policies and traffic flow.\n\n**Key facts**\n- Allows configuration of NFTables as a proxy for network policy enforcement\n- Enables features like network address translation (NAT) and port forwarding\n\n**Common pitfalls**\n- Requires proper configuration of NFTables and network policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NFTablesProxyMode/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NFTablesProxyMode.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NFTablesProxyMode.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NFTablesProxyMode/",
          "line_start": null,
          "line_end": null,
          "quote": "NFTablesProxyMode"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ZeroLimitedNominalConcurrencyShares",
      "type": "page",
      "title": "ZeroLimitedNominalConcurrencyShares",
      "summary": "ZeroLimitedNominalConcurrencyShares is a feature gate that allows for the limitation of nominal concurrency shares.",
      "body": "ZeroLimitedNominalConcurrencyShares is a feature gate that allows for the limitation of nominal concurrency shares.\n\n**Why it matters**\nThis feature gate enables administrators to control resource allocation and prevent over-allocation of CPU resources.\n\n**Key facts**\n- ZeroLimitedNominalConcurrencyShares limits nominal concurrency shares\n- Feature gate controls resource allocation\n\n**Common pitfalls**\n- Insufficient resource allocation can lead to performance issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ZeroLimitedNominalConcurrencyShares/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ZeroLimitedNominalConcurrencyShares.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ZeroLimitedNominalConcurrencyShares.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ZeroLimitedNominalConcurrencyShares/",
          "line_start": null,
          "line_end": null,
          "quote": "ZeroLimitedNominalConcurrencyShares"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountIssuerDiscovery",
      "type": "page",
      "title": "ServiceAccountIssuerDiscovery",
      "summary": "ServiceAccountIssuerDiscovery is a feature gate that enables service account issuer discovery.",
      "body": "ServiceAccountIssuerDiscovery is a feature gate that enables service account issuer discovery.\n\n**Why it matters**\nThis feature gate allows for automatic service account issuer discovery, reducing configuration complexity.\n\n**Key facts**\n- ServiceAccountIssuerDiscovery enables automatic issuer discovery\n- Feature gate simplifies service account configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountIssuerDiscovery/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceAccountIssuerDiscovery.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountIssuerDiscovery.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountIssuerDiscovery/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceAccountIssuerDiscovery"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SuspendJob",
      "type": "page",
      "title": "SuspendJob",
      "summary": "SuspendJob is a feature gate that allows for job suspension.",
      "body": "SuspendJob is a feature gate that allows for job suspension.\n\n**Why it matters**\nThis feature gate enables administrators to temporarily halt job execution, preserving resources and preventing unnecessary work.\n\n**Key facts**\n- SuspendJob suspends job execution\n- Feature gate preserves resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SuspendJob/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SuspendJob.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SuspendJob.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SuspendJob/",
          "line_start": null,
          "line_end": null,
          "quote": "SuspendJob"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ContainerCheckpoint",
      "type": "page",
      "title": "ContainerCheckpoint",
      "summary": "ContainerCheckpoint is a feature gate that enables container checkpointing.",
      "body": "ContainerCheckpoint is a feature gate that enables container checkpointing.\n\n**Why it matters**\nThis feature gate allows for efficient resource utilization and reduced restart times by enabling checkpoints within containers.\n\n**Key facts**\n- ContainerCheckpoint enables container checkpointing\n- Feature gate optimizes resource utilization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContainerCheckpoint/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ContainerCheckpoint.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ContainerCheckpoint.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContainerCheckpoint/",
          "line_start": null,
          "line_end": null,
          "quote": "ContainerCheckpoint"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodTopologyLabelsAdmission",
      "type": "page",
      "title": "PodTopologyLabelsAdmission",
      "summary": "PodTopologyLabelsAdmission is a feature gate that enables admission control for pod topology.",
      "body": "PodTopologyLabelsAdmission is a feature gate that enables admission control for pod topology.\n\n**Why it matters**\nThis feature ensures that pods are scheduled based on their labels, preventing potential issues with pod placement and resource utilization.\n\n**Key facts**\n- Enabled by default\n- Enables admission control for pod topology\n\n**Common pitfalls**\n- Incompatible with certain cluster configurations\n\n**Related**\nPod Topology",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodTopologyLabelsAdmission/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodTopologyLabelsAdmission.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodTopologyLabelsAdmission.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodTopologyLabelsAdmission/",
          "line_start": null,
          "line_end": null,
          "quote": "PodTopologyLabelsAdmission"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WorkloadAwarePreemption",
      "type": "page",
      "title": "WorkloadAwarePreemption",
      "summary": "WorkloadAwarePreemption is a feature gate that enables preemptive scheduling for workloads.",
      "body": "WorkloadAwarePreemption is a feature gate that enables preemptive scheduling for workloads.\n\n**Why it matters**\nThis feature allows the scheduler to proactively reclaim resources from low-priority pods, ensuring high-priority workloads receive necessary resources.\n\n**Key facts**\n- Enabled by default\n- Enables preemptive scheduling for workloads\n\n**Common pitfalls**\n- May lead to increased latency in pod scheduling\n\n**Related**\nPreemption",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WorkloadAwarePreemption/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WorkloadAwarePreemption.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WorkloadAwarePreemption.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WorkloadAwarePreemption/",
          "line_start": null,
          "line_end": null,
          "quote": "WorkloadAwarePreemption"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/Accelerators",
      "type": "page",
      "title": "Accelerators",
      "summary": "Accelerators is a feature gate that enables support for accelerators, such as GPUs and TPUs.",
      "body": "Accelerators is a feature gate that enables support for accelerators, such as GPUs and TPUs.\n\n**Why it matters**\nThis feature allows users to utilize specialized hardware for computationally intensive tasks, improving overall performance and efficiency.\n\n**Key facts**\n- Enabled by default\n- Enables support for accelerators\n\n**Common pitfalls**\n- Requires specific hardware configuration\n\n**Related**\nAccelerators",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/Accelerators/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/Accelerators.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/Accelerators.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/Accelerators/",
          "line_start": null,
          "line_end": null,
          "quote": "Accelerators"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WatchBookmark",
      "type": "page",
      "title": "WatchBookmark",
      "summary": "WatchBookmark is a feature gate that enables bookmarking for watches.",
      "body": "WatchBookmark is a feature gate that enables bookmarking for watches.\n\n**Why it matters**\nThis feature allows users to persistently store watch bookmarks, enabling efficient management of watch resources and reducing unnecessary API calls.\n\n**Key facts**\n- Enabled by default\n- Enables bookmarking for watches\n\n**Common pitfalls**\n- May lead to increased memory usage due to stored bookmarks\n\n**Related**\nWatches",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WatchBookmark/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WatchBookmark.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WatchBookmark.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WatchBookmark/",
          "line_start": null,
          "line_end": null,
          "quote": "WatchBookmark"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AllowServiceLBStatusOnNonLB",
      "type": "page",
      "title": "AllowServiceLBStatusOnNonLB",
      "summary": "A feature gate that allows setting Service LB status on non-LB services.",
      "body": "A feature gate that allows setting Service LB status on non-LB services.\n\n**Why it matters**\nThis feature enables the ability to set load balancer status for services not using a load balancer, which can be useful in certain scenarios.\n\n**Key facts**\n- Allows setting Service LB status on non-LB services\n- Enables load balancer status for services without a load balancer",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowServiceLBStatusOnNonLB/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AllowServiceLBStatusOnNonLB.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowServiceLBStatusOnNonLB.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowServiceLBStatusOnNonLB/",
          "line_start": null,
          "line_end": null,
          "quote": "AllowServiceLBStatusOnNonLB"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DeclarativeValidationTakeover",
      "type": "page",
      "title": "DeclarativeValidationTakeover",
      "summary": "",
      "body": "Deprecated: in favor of [DeclarativeValidationBeta](/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidationBeta/).\n\nWhen enabled, along with the [DeclarativeValidation](/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidation/)\nfeature gate, declarative validation errors are returned directly to the caller,\nreplacing hand-written validation errors for rules that have declarative implementations.\nWhen disabled (and `DeclarativeValidation` is enabled), hand-written validation errors are always returned,\neffectively putting declarative validation in a __mismatch validation mode__\nthat monitors but does not affect API responses.\nThis __mismatch validation mode__  allows for the monitoring of the `declarative_validation_mismatch_total`\nand `declarative_validation_panic_total` metrics which are implementation details for a safer rollout,\naverage user shouldn't need to interact with it directly.\nThis feature gate only operates on the `kube-apiserver` component.\nNote: Although declarative validation aims for functional equivalence with hand-written validation,\nthe exact description of error messages may differ between the two approaches.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidationTakeover/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DeclarativeValidationTakeover.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DeclarativeValidationTakeover.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidationTakeover/",
          "line_start": null,
          "line_end": null,
          "quote": "DeclarativeValidationTakeover"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationvSphere",
      "type": "page",
      "title": "CSIMigrationvSphere",
      "summary": "A feature gate related to vSphere CSI migration.",
      "body": "A feature gate related to vSphere CSI migration.\n\n**Why it matters**\nThis feature is relevant for vSphere environments undergoing CSI migration.\n\n**Key facts**\n- Related to vSphere CSI migration\n- Important for vSphere environments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationvSphere/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationvSphere.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationvSphere.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationvSphere/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationvSphere"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/OrderedNamespaceDeletion",
      "type": "page",
      "title": "OrderedNamespaceDeletion",
      "summary": "A feature gate that enables ordered namespace deletion.",
      "body": "A feature gate that enables ordered namespace deletion.\n\n**Why it matters**\nThis feature ensures that namespaces are deleted in a specific order, which is crucial for maintaining data consistency.\n\n**Key facts**\n- Enables ordered namespace deletion\n- Ensures data consistency during namespace deletion",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/OrderedNamespaceDeletion/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/OrderedNamespaceDeletion.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/OrderedNamespaceDeletion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/OrderedNamespaceDeletion/",
          "line_start": null,
          "line_end": null,
          "quote": "OrderedNamespaceDeletion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource",
      "type": "page",
      "title": "AnyVolumeDataSource",
      "summary": "A feature gate that allows using any volume as a data source.",
      "body": "A feature gate that allows using any volume as a data source.\n\n**Why it matters**\nThis feature provides flexibility in choosing the data source for volumes, which can be beneficial in certain use cases.\n\n**Key facts**\n- Allows using any volume as a data source\n- Provides flexibility in data source selection",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource/",
          "line_start": null,
          "line_end": null,
          "quote": "AnyVolumeDataSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodSecurity",
      "type": "page",
      "title": "PodSecurity",
      "summary": "PodSecurity is a feature gate that enables pod security policies.",
      "body": "PodSecurity is a feature gate that enables pod security policies.\n\n**Why it matters**\nIt allows administrators to define and enforce security policies for pods, ensuring they meet the required standards.\n\n**Key facts**\n- Enabled by default\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- Disabling PodSecurity may leave clusters vulnerable to security threats\n\n**Related**\nPod Security Policies (PSPs), Kubernetes RBAC",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodSecurity/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodSecurity.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodSecurity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodSecurity/",
          "line_start": null,
          "line_end": null,
          "quote": "PodSecurity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DryRun",
      "type": "page",
      "title": "DryRun",
      "summary": "DryRun is a feature gate that enables dry-run mode for Kubernetes commands.",
      "body": "DryRun is a feature gate that enables dry-run mode for Kubernetes commands.\n\n**Why it matters**\nIt allows administrators to test and validate changes without actually applying them, reducing the risk of errors or unintended consequences.\n\n**Key facts**\n- Enabled by default\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- May not catch all potential issues or conflicts\n\n**Related**\nKubernetes API Server, kubectl commands",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DryRun/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DryRun.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DryRun.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DryRun/",
          "line_start": null,
          "line_end": null,
          "quote": "DryRun"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletPluginsWatcher",
      "type": "page",
      "title": "KubeletPluginsWatcher",
      "summary": "KubeletPluginsWatcher is a feature gate that enables the Kubelet to watch for plugin updates.",
      "body": "KubeletPluginsWatcher is a feature gate that enables the Kubelet to watch for plugin updates.\n\n**Why it matters**\nIt allows administrators to manage and update plugins without restarting the Kubelet, improving overall cluster efficiency and reliability.\n\n**Key facts**\n- Enabled by default\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- May not work with all plugin types or versions\n\n**Related**\nKubelet plugins, Container runtime updates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPluginsWatcher/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletPluginsWatcher.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletPluginsWatcher.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPluginsWatcher/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletPluginsWatcher"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StorageObjectInUseProtection",
      "type": "page",
      "title": "StorageObjectInUseProtection",
      "summary": "StorageObjectInUseProtection is a feature gate that enables protection against deleting or modifying storage objects in use.",
      "body": "StorageObjectInUseProtection is a feature gate that enables protection against deleting or modifying storage objects in use.\n\n**Why it matters**\nIt prevents accidental deletion or modification of critical storage resources, ensuring data integrity and availability.\n\n**Key facts**\n- Enabled by default\n- Can be disabled via command-line flag or configuration file\n\n**Common pitfalls**\n- May not catch all cases where objects are in use\n\n**Related**\nStorageClass, PersistentVolumeClaims (PVCs)",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageObjectInUseProtection/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StorageObjectInUseProtection.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StorageObjectInUseProtection.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageObjectInUseProtection/",
          "line_start": null,
          "line_end": null,
          "quote": "StorageObjectInUseProtection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/HugepageAwareEviction",
      "type": "page",
      "title": "HugepageAwareEviction",
      "summary": "HugepageAwareEviction is a feature gate that enables eviction of huge pages.",
      "body": "HugepageAwareEviction is a feature gate that enables eviction of huge pages.\n\n**Why it matters**\nThis feature allows for more efficient use of memory resources by evicting huge pages when necessary.\n\n**Key facts**\n- Enables eviction of huge pages\n- Improves memory resource utilization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HugepageAwareEviction/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/HugepageAwareEviction.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HugepageAwareEviction.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HugepageAwareEviction/",
          "line_start": null,
          "line_end": null,
          "quote": "HugepageAwareEviction"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyStatefulSet",
      "type": "page",
      "title": "StaleControllerConsistencyStatefulSet",
      "summary": "StaleControllerConsistencyStatefulSet is a feature gate that ensures consistency between the controller and the stateful set.",
      "body": "StaleControllerConsistencyStatefulSet is a feature gate that ensures consistency between the controller and the stateful set.\n\n**Why it matters**\nThis feature prevents inconsistencies between the controller and the stateful set, ensuring correct behavior.\n\n**Key facts**\n- Ensures consistency between controller and stateful set\n- Prevents incorrect behavior",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyStatefulSet/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyStatefulSet.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyStatefulSet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyStatefulSet/",
          "line_start": null,
          "line_end": null,
          "quote": "StaleControllerConsistencyStatefulSet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/LoggingAlphaOptions",
      "type": "page",
      "title": "LoggingAlphaOptions",
      "summary": "LoggingAlphaOptions is a feature gate that enables alpha logging options.",
      "body": "LoggingAlphaOptions is a feature gate that enables alpha logging options.\n\n**Why it matters**\nThis feature provides additional logging options for debugging and troubleshooting purposes.\n\n**Key facts**\n- Enables alpha logging options\n- Provides additional logging capabilities",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LoggingAlphaOptions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/LoggingAlphaOptions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LoggingAlphaOptions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LoggingAlphaOptions/",
          "line_start": null,
          "line_end": null,
          "quote": "LoggingAlphaOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ExpandPersistentVolumes",
      "type": "page",
      "title": "ExpandPersistentVolumes",
      "summary": "ExpandPersistentVolumes is a feature gate that enables expansion of persistent volumes.",
      "body": "ExpandPersistentVolumes is a feature gate that enables expansion of persistent volumes.\n\n**Why it matters**\nThis feature allows for dynamic resizing of persistent volumes to meet changing storage needs.\n\n**Key facts**\n- Enables expansion of persistent volumes\n- Supports dynamic resizing",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandPersistentVolumes/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ExpandPersistentVolumes.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExpandPersistentVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandPersistentVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": "ExpandPersistentVolumes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WindowsHostNetwork",
      "type": "page",
      "title": "WindowsHostNetwork",
      "summary": "A feature gate that enables Windows host network support.",
      "body": "A feature gate that enables Windows host network support.\n\n**Why it matters**\nEnables Windows host network support, allowing for more flexibility in cluster networking configurations.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsHostNetwork/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WindowsHostNetwork.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsHostNetwork.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsHostNetwork/",
          "line_start": null,
          "line_end": null,
          "quote": "WindowsHostNetwork"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CrossNamespaceVolumeDataSource",
      "type": "page",
      "title": "CrossNamespaceVolumeDataSource",
      "summary": "A feature gate that enables cross-namespace volume data sources.",
      "body": "A feature gate that enables cross-namespace volume data sources.\n\n**Why it matters**\nAllows for the use of volume data sources from other namespaces, enabling more flexible storage configurations.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CrossNamespaceVolumeDataSource/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CrossNamespaceVolumeDataSource.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CrossNamespaceVolumeDataSource.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CrossNamespaceVolumeDataSource/",
          "line_start": null,
          "line_end": null,
          "quote": "CrossNamespaceVolumeDataSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ExpandCSIVolumes",
      "type": "page",
      "title": "ExpandCSIVolumes",
      "summary": "A feature gate that enables expanding CSI volumes.",
      "body": "A feature gate that enables expanding CSI volumes.\n\n**Why it matters**\nEnables the expansion of CSI volumes, allowing for more efficient use of storage resources.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandCSIVolumes/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ExpandCSIVolumes.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExpandCSIVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandCSIVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": "ExpandCSIVolumes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SupplementalGroupsPolicy",
      "type": "page",
      "title": "SupplementalGroupsPolicy",
      "summary": "A feature gate that enables supplemental groups policy.",
      "body": "A feature gate that enables supplemental groups policy.\n\n**Why it matters**\nAllows for the use of supplemental groups policy, enabling more fine-grained control over group membership.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SupplementalGroupsPolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SupplementalGroupsPolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SupplementalGroupsPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SupplementalGroupsPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "SupplementalGroupsPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/OpenAPIV3",
      "type": "page",
      "title": "OpenAPIV3",
      "summary": "OpenAPIV3 is a feature gate that enables OpenAPI V3 support.",
      "body": "OpenAPIV3 is a feature gate that enables OpenAPI V3 support.\n\n**Why it matters**\nThis feature allows for the use of OpenAPI V3 in Kubernetes, which provides improved documentation and API discovery capabilities.\n\n**Key facts**\n- Enables OpenAPI V3 support\n- Improves documentation and API discovery",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/OpenAPIV3/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/OpenAPIV3.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/OpenAPIV3.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/OpenAPIV3/",
          "line_start": null,
          "line_end": null,
          "quote": "OpenAPIV3"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NodeOutOfServiceVolumeDetach",
      "type": "page",
      "title": "NodeOutOfServiceVolumeDetach",
      "summary": "NodeOutOfServiceVolumeDetach is a feature gate that enables volume detachment on node out-of-service events.",
      "body": "NodeOutOfServiceVolumeDetach is a feature gate that enables volume detachment on node out-of-service events.\n\n**Why it matters**\nThis feature allows for the automatic detachment of volumes when a node goes out of service, improving cluster stability and reducing downtime.\n\n**Key facts**\n- Enables volume detachment on node out-of-service events\n- Improves cluster stability and reduces downtime",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeOutOfServiceVolumeDetach/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NodeOutOfServiceVolumeDetach.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeOutOfServiceVolumeDetach.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeOutOfServiceVolumeDetach/",
          "line_start": null,
          "line_end": null,
          "quote": "NodeOutOfServiceVolumeDetach"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CustomCPUCFSQuotaPeriod",
      "type": "page",
      "title": "CustomCPUCFSQuotaPeriod",
      "summary": "CustomCPUCFSQuotaPeriod is a feature gate that enables custom CPU and file system quota periods.",
      "body": "CustomCPUCFSQuotaPeriod is a feature gate that enables custom CPU and file system quota periods.\n\n**Why it matters**\nThis feature allows for more flexible quota management, enabling administrators to set custom time periods for CPU and file system quotas.\n\n**Key facts**\n- Enables custom CPU and file system quota periods\n- Improves quota management flexibility",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomCPUCFSQuotaPeriod/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CustomCPUCFSQuotaPeriod.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomCPUCFSQuotaPeriod.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomCPUCFSQuotaPeriod/",
          "line_start": null,
          "line_end": null,
          "quote": "CustomCPUCFSQuotaPeriod"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAResourcePoolStatus",
      "type": "page",
      "title": "DRAResourcePoolStatus",
      "summary": "DRAResourcePoolStatus is a feature gate that enables DRA resource pool status reporting.",
      "body": "DRAResourcePoolStatus is a feature gate that enables DRA resource pool status reporting.\n\n**Why it matters**\nThis feature allows for improved visibility into DRA resource pools, enabling administrators to monitor and manage resources more effectively.\n\n**Key facts**\n- Enables DRA resource pool status reporting\n- Improves resource monitoring and management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAResourcePoolStatus/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAResourcePoolStatus.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAResourcePoolStatus.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAResourcePoolStatus/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAResourcePoolStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletCrashLoopBackOffMax",
      "type": "page",
      "title": "KubeletCrashLoopBackOffMax",
      "summary": "KubeletCrashLoopBackOffMax is a feature gate that controls the maximum number of retries for Kubelet crash loops.",
      "body": "KubeletCrashLoopBackOffMax is a feature gate that controls the maximum number of retries for Kubelet crash loops.\n\n**Why it matters**\nThis feature gate helps prevent infinite loops when Kubelet crashes, allowing for more efficient recovery and reduced downtime.\n\n**Key facts**\n- KubeletCrashLoopBackOffMax is enabled by default\n- The maximum number of retries can be configured using the --kubelet-crash-loop-back-off-max flag\n\n**Common pitfalls**\n- If KubeletCrashLoopBackOffMax is disabled, Kubelet may enter an infinite loop after crashing",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletCrashLoopBackOffMax/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletCrashLoopBackOffMax.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletCrashLoopBackOffMax.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletCrashLoopBackOffMax/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletCrashLoopBackOffMax"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ResourceHealthStatus",
      "type": "page",
      "title": "ResourceHealthStatus",
      "summary": "",
      "body": "Enable the `allocatedResourcesStatus` field within the `.status` for a Pod. The field\nreports additional details for each container in the Pod,\nwith the health information for each device assigned to the Pod.\n\nStarting in v1.36 (beta), the health report includes an optional `message` field that\nprovides additional human-readable context about the health status, such as error details\nor failure reasons.\n\nThis feature applies to devices managed by both [Device Plugins](/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/#device-plugin-and-unhealthy-devices) and [Dynamic Resource Allocation](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#device-health-monitoring). See [Device plugin and unhealthy devices](/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/#device-plugin-and-unhealthy-devices) for more details.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ResourceHealthStatus/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ResourceHealthStatus.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ResourceHealthStatus.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ResourceHealthStatus/",
          "line_start": null,
          "line_end": null,
          "quote": "ResourceHealthStatus"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSINodeExpandSecret",
      "type": "page",
      "title": "CSINodeExpandSecret",
      "summary": "CSINodeExpandSecret is a feature gate that controls the expansion of CSI secrets.",
      "body": "CSINodeExpandSecret is a feature gate that controls the expansion of CSI secrets.\n\n**Why it matters**\nThis feature gate enables or disables the expansion of CSI secrets, which can improve performance and reduce storage usage.\n\n**Key facts**\n- CSINodeExpandSecret is enabled by default\n- The expansion of CSI secrets can be configured using the --csi-node-expand-secret flag\n\n**Common pitfalls**\n- If CSINodeExpandSecret is disabled, CSI secrets may not be expanded correctly",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSINodeExpandSecret/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSINodeExpandSecret.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSINodeExpandSecret.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSINodeExpandSecret/",
          "line_start": null,
          "line_end": null,
          "quote": "CSINodeExpandSecret"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StreamingProxyRedirects",
      "type": "page",
      "title": "StreamingProxyRedirects",
      "summary": "StreamingProxyRedirects is a feature gate that controls the handling of redirects in streaming proxies.",
      "body": "StreamingProxyRedirects is a feature gate that controls the handling of redirects in streaming proxies.\n\n**Why it matters**\nThis feature gate enables or disables the handling of redirects in streaming proxies, which can improve performance and reduce latency.\n\n**Key facts**\n- StreamingProxyRedirects is enabled by default\n- The handling of redirects in streaming proxies can be configured using the --streaming-proxy-redirects flag\n\n**Common pitfalls**\n- If StreamingProxyRedirects is disabled, redirects may not be handled correctly in streaming proxies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StreamingProxyRedirects/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StreamingProxyRedirects.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StreamingProxyRedirects.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StreamingProxyRedirects/",
          "line_start": null,
          "line_end": null,
          "quote": "StreamingProxyRedirects"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RetryGenerateName",
      "type": "page",
      "title": "RetryGenerateName",
      "summary": "RetryGenerateName is a feature gate that controls the retry behavior for generating names.",
      "body": "RetryGenerateName is a feature gate that controls the retry behavior for generating names.\n\n**Why it matters**\nThis feature gate enables or disables the retry behavior for generating names, which can improve performance and reduce errors.\n\n**Key facts**\n- RetryGenerateName is enabled by default\n- The retry behavior for generating names can be configured using the --retry-generate-name flag\n\n**Common pitfalls**\n- If RetryGenerateName is disabled, name generation may fail due to retries",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RetryGenerateName/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RetryGenerateName.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RetryGenerateName.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RetryGenerateName/",
          "line_start": null,
          "line_end": null,
          "quote": "RetryGenerateName"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SCTPSupport",
      "type": "page",
      "title": "SCTPSupport",
      "summary": "SCTPSupport is a feature gate that enables support for SCTP protocol in Kubernetes.",
      "body": "SCTPSupport is a feature gate that enables support for SCTP protocol in Kubernetes.\n\n**Why it matters**\nThis feature allows users to use SCTP protocol with Kubernetes, which can improve performance and reliability in certain scenarios.\n\n**Key facts**\n- SCTPSupport is enabled by default\n- It requires a restart of the API server for changes to take effect",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SCTPSupport/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SCTPSupport.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SCTPSupport.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SCTPSupport/",
          "line_start": null,
          "line_end": null,
          "quote": "SCTPSupport"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WinDSR",
      "type": "page",
      "title": "WinDSR",
      "summary": "WinDSR is a feature gate that enables support for Windows DataSocket (DSR) protocol in Kubernetes.",
      "body": "WinDSR is a feature gate that enables support for Windows DataSocket (DSR) protocol in Kubernetes.\n\n**Why it matters**\nThis feature allows users to use DSR protocol with Kubernetes on Windows nodes, which can improve network performance and reliability.\n\n**Key facts**\n- WinDSR is not enabled by default\n- It requires a restart of the API server for changes to take effect",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WinDSR/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WinDSR.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WinDSR.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WinDSR/",
          "line_start": null,
          "line_end": null,
          "quote": "WinDSR"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EndpointSliceTerminatingCondition",
      "type": "page",
      "title": "EndpointSliceTerminatingCondition",
      "summary": "EndpointSliceTerminatingCondition is a feature gate that enables support for terminating conditions in EndpointSlices.",
      "body": "EndpointSliceTerminatingCondition is a feature gate that enables support for terminating conditions in EndpointSlices.\n\n**Why it matters**\nThis feature allows users to specify terminating conditions for EndpointSlices, which can improve resource utilization and reduce costs.\n\n**Key facts**\n- EndpointSliceTerminatingCondition is not enabled by default\n- It requires a restart of the API server for changes to take effect",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSliceTerminatingCondition/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EndpointSliceTerminatingCondition.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EndpointSliceTerminatingCondition.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSliceTerminatingCondition/",
          "line_start": null,
          "line_end": null,
          "quote": "EndpointSliceTerminatingCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors",
      "type": "page",
      "title": "CustomResourceFieldSelectors",
      "summary": "CustomResourceFieldSelectors is a feature gate that enables support for custom resource field selectors in Kubernetes.",
      "body": "CustomResourceFieldSelectors is a feature gate that enables support for custom resource field selectors in Kubernetes.\n\n**Why it matters**\nThis feature allows users to specify custom field selectors for resources, which can improve filtering and sorting capabilities.\n\n**Key facts**\n- CustomResourceFieldSelectors is not enabled by default\n- It requires a restart of the API server for changes to take effect",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors/",
          "line_start": null,
          "line_end": null,
          "quote": "CustomResourceFieldSelectors"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/BtreeWatchCache",
      "type": "page",
      "title": "BtreeWatchCache",
      "summary": "BtreeWatchCache is a feature gate that enables or disables B-tree watch cache.",
      "body": "BtreeWatchCache is a feature gate that enables or disables B-tree watch cache.\n\n**Why it matters**\nEnabling BtreeWatchCache can improve performance by reducing the number of disk I/O operations.\n\n**Key facts**\n- BtreeWatchCache is enabled by default in Kubernetes 1.21 and later versions.\n\n**Common pitfalls**\n- Disabling BtreeWatchCache may lead to increased disk I/O operations, impacting cluster performance.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BtreeWatchCache/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/BtreeWatchCache.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/BtreeWatchCache.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BtreeWatchCache/",
          "line_start": null,
          "line_end": null,
          "quote": "BtreeWatchCache"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletConfigFile",
      "type": "page",
      "title": "KubeletConfigFile",
      "summary": "KubeletConfigFile is a feature gate that enables or disables the use of a configuration file for Kubelet.",
      "body": "KubeletConfigFile is a feature gate that enables or disables the use of a configuration file for Kubelet.\n\n**Why it matters**\nUsing a KubeletConfigFile can simplify cluster management by centralizing Kubelet settings.\n\n**Key facts**\n- KubeletConfigFile is enabled by default in Kubernetes 1.19 and later versions.\n\n**Common pitfalls**\n- Disabling KubeletConfigFile may require manual configuration of each Kubelet node, increasing administrative overhead.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletConfigFile/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletConfigFile.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletConfigFile.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletConfigFile/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletConfigFile"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSINodeInfo",
      "type": "page",
      "title": "CSINodeInfo",
      "summary": "CSINodeInfo is a feature gate that enables or disables the collection of CSI node information.",
      "body": "CSINodeInfo is a feature gate that enables or disables the collection of CSI node information.\n\n**Why it matters**\nEnabling CSINodeInfo can improve cluster monitoring and troubleshooting by providing detailed CSI node metrics.\n\n**Key facts**\n- CSINodeInfo is disabled by default in Kubernetes 1.20 and earlier versions.\n\n**Common pitfalls**\n- Disabling CSINodeInfo may lead to reduced visibility into CSI node performance, making it harder to identify issues.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSINodeInfo/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSINodeInfo.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSINodeInfo.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSINodeInfo/",
          "line_start": null,
          "line_end": null,
          "quote": "CSINodeInfo"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ReduceDefaultCrashLoopBackOffDecay",
      "type": "page",
      "title": "ReduceDefaultCrashLoopBackOffDecay",
      "summary": "ReduceDefaultCrashLoopBackOffDecay is a feature gate that enables or disables the reduction of default crash loop back-off decay.",
      "body": "ReduceDefaultCrashLoopBackOffDecay is a feature gate that enables or disables the reduction of default crash loop back-off decay.\n\n**Why it matters**\nEnabling ReduceDefaultCrashLoopBackOffDecay can improve cluster resilience by reducing the time it takes for pods to restart after crashes.\n\n**Key facts**\n- ReduceDefaultCrashLoopBackOffDecay is disabled by default in Kubernetes 1.22 and earlier versions.\n\n**Common pitfalls**\n- Disabling ReduceDefaultCrashLoopBackOffDecay may lead to increased downtime for pods experiencing frequent crashes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReduceDefaultCrashLoopBackOffDecay/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ReduceDefaultCrashLoopBackOffDecay.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ReduceDefaultCrashLoopBackOffDecay.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReduceDefaultCrashLoopBackOffDecay/",
          "line_start": null,
          "line_end": null,
          "quote": "ReduceDefaultCrashLoopBackOffDecay"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/UserNamespacesSupport",
      "type": "page",
      "title": "UserNamespacesSupport",
      "summary": "UserNamespacesSupport enables the use of user namespaces in Kubernetes.",
      "body": "UserNamespacesSupport enables the use of user namespaces in Kubernetes.\n\n**Why it matters**\nThis feature allows administrators to run containers with a different user namespace than the host system, improving security and isolation.\n\n**Key facts**\n- Enables user namespaces in Kubernetes\n- Improves security by isolating containers from the host system",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesSupport/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/UserNamespacesSupport.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UserNamespacesSupport.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesSupport/",
          "line_start": null,
          "line_end": null,
          "quote": "UserNamespacesSupport"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WarningHeaders",
      "type": "page",
      "title": "WarningHeaders",
      "summary": "WarningHeaders allows for custom warning headers to be set in Kubernetes.",
      "body": "WarningHeaders allows for custom warning headers to be set in Kubernetes.\n\n**Why it matters**\nThis feature enables administrators to customize warning messages and improve the user experience.\n\n**Key facts**\n- Allows custom warning headers to be set\n- Improves user experience by providing customizable warnings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WarningHeaders/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WarningHeaders.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WarningHeaders.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WarningHeaders/",
          "line_start": null,
          "line_end": null,
          "quote": "WarningHeaders"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EfficientWatchResumption",
      "type": "page",
      "title": "EfficientWatchResumption",
      "summary": "EfficientWatchResumption optimizes watch resumption in Kubernetes.",
      "body": "EfficientWatchResumption optimizes watch resumption in Kubernetes.\n\n**Why it matters**\nThis feature improves performance by reducing the overhead of watch resumption.\n\n**Key facts**\n- Optimizes watch resumption\n- Improves performance by reducing overhead",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EfficientWatchResumption/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EfficientWatchResumption.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EfficientWatchResumption.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EfficientWatchResumption/",
          "line_start": null,
          "line_end": null,
          "quote": "EfficientWatchResumption"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/OpportunisticBatching",
      "type": "page",
      "title": "OpportunisticBatching",
      "summary": "OpportunisticBatching enables opportunistic batching in Kubernetes.",
      "body": "OpportunisticBatching enables opportunistic batching in Kubernetes.\n\n**Why it matters**\nThis feature improves performance by batching requests and reducing the number of API calls.\n\n**Key facts**\n- Enables opportunistic batching\n- Improves performance by batching requests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/OpportunisticBatching/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/OpportunisticBatching.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/OpportunisticBatching.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/OpportunisticBatching/",
          "line_start": null,
          "line_end": null,
          "quote": "OpportunisticBatching"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodAffinityNamespaceSelector",
      "type": "page",
      "title": "PodAffinityNamespaceSelector",
      "summary": "PodAffinityNamespaceSelector is a feature gate that allows selecting pods based on namespace.",
      "body": "PodAffinityNamespaceSelector is a feature gate that allows selecting pods based on namespace.\n\n**Why it matters**\nThis feature enables more flexible pod placement decisions, considering not only the pod's labels but also its namespace.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later\n- Can be used to place pods in specific namespaces based on affinity rules\n\n**Common pitfalls**\n- Requires careful configuration to avoid conflicts between namespaces\n\n**Related**\nPodAffinity, NamespaceSelector",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodAffinityNamespaceSelector/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodAffinityNamespaceSelector.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodAffinityNamespaceSelector.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodAffinityNamespaceSelector/",
          "line_start": null,
          "line_end": null,
          "quote": "PodAffinityNamespaceSelector"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceDefaulting",
      "type": "page",
      "title": "CustomResourceDefaulting",
      "summary": "CustomResourceDefaulting is a feature gate that allows default values for custom resources.",
      "body": "CustomResourceDefaulting is a feature gate that allows default values for custom resources.\n\n**Why it matters**\nThis feature simplifies the management of custom resources by providing default values, reducing the need for explicit configuration.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later\n- Can be used to set default values for custom resource fields\n\n**Common pitfalls**\n- May lead to unintended behavior if not properly configured\n\n**Related**\nCustom Resources, Defaulting",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceDefaulting/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CustomResourceDefaulting.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceDefaulting.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceDefaulting/",
          "line_start": null,
          "line_end": null,
          "quote": "CustomResourceDefaulting"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MutablePVNodeAffinity",
      "type": "page",
      "title": "MutablePVNodeAffinity",
      "summary": "MutablePVNodeAffinity is a feature gate that allows modifying the node affinity of persistent volumes.",
      "body": "MutablePVNodeAffinity is a feature gate that allows modifying the node affinity of persistent volumes.\n\n**Why it matters**\nThis feature provides more flexibility in managing storage resources, enabling dynamic adjustments to node affinity rules.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later\n- Can be used to modify the node affinity of persistent volumes\n\n**Common pitfalls**\n- Requires careful configuration to avoid conflicts between node affinity rules\n\n**Related**\nPersistent Volumes, Node Affinity",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutablePVNodeAffinity/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MutablePVNodeAffinity.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MutablePVNodeAffinity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutablePVNodeAffinity/",
          "line_start": null,
          "line_end": null,
          "quote": "MutablePVNodeAffinity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodAndContainerStatsFromCRI",
      "type": "page",
      "title": "PodAndContainerStatsFromCRI",
      "summary": "PodAndContainerStatsFromCRI is a feature gate that allows retrieving pod and container statistics from the Container Runtime Interface (CRI).",
      "body": "PodAndContainerStatsFromCRI is a feature gate that allows retrieving pod and container statistics from the Container Runtime Interface (CRI).\n\n**Why it matters**\nThis feature provides more detailed insights into pod and container performance, enabling better resource optimization.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later\n- Can be used to retrieve pod and container statistics from the CRI\n\n**Common pitfalls**\n- May require additional configuration to access CRI metrics\n\n**Related**\nContainer Runtime Interface (CRI), Pod Statistics, Container Statistics",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodAndContainerStatsFromCRI/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodAndContainerStatsFromCRI.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodAndContainerStatsFromCRI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodAndContainerStatsFromCRI/",
          "line_start": null,
          "line_end": null,
          "quote": "PodAndContainerStatsFromCRI"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationAzureDiskComplete",
      "type": "page",
      "title": "CSIMigrationAzureDiskComplete",
      "summary": "CSIMigrationAzureDiskComplete is a feature gate that enables the migration of Azure Disk Persistent Volumes to CSI (Container Storage Interface) volumes.",
      "body": "CSIMigrationAzureDiskComplete is a feature gate that enables the migration of Azure Disk Persistent Volumes to CSI (Container Storage Interface) volumes.\n\n**Why it matters**\nThis feature allows for easier management and scaling of persistent storage in Azure environments.\n\n**Key facts**\n- Enables migration from Azure Disk PVs to CSI volumes\n- Improves management and scalability of persistent storage",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAzureDiskComplete/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationAzureDiskComplete.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationAzureDiskComplete.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAzureDiskComplete/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationAzureDiskComplete"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/APIResponseCompression",
      "type": "page",
      "title": "APIResponseCompression",
      "summary": "APIResponseCompression is a feature gate that enables compression of API responses.",
      "body": "APIResponseCompression is a feature gate that enables compression of API responses.\n\n**Why it matters**\nThis feature reduces the size of API responses, improving network efficiency and reducing latency.\n\n**Key facts**\n- Enables compression of API responses\n- Improves network efficiency and reduces latency",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIResponseCompression/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/APIResponseCompression.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/APIResponseCompression.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIResponseCompression/",
          "line_start": null,
          "line_end": null,
          "quote": "APIResponseCompression"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyOptions",
      "type": "page",
      "title": "TopologyManagerPolicyOptions",
      "summary": "TopologyManagerPolicyOptions is a feature gate that enables configuration of Topology Manager policy options.",
      "body": "TopologyManagerPolicyOptions is a feature gate that enables configuration of Topology Manager policy options.\n\n**Why it matters**\nThis feature allows for fine-grained control over pod scheduling and placement.\n\n**Key facts**\n- Enables configuration of Topology Manager policy options\n- Improves control over pod scheduling and placement",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyOptions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyOptions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyOptions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyOptions/",
          "line_start": null,
          "line_end": null,
          "quote": "TopologyManagerPolicyOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SeparateCacheWatchRPC",
      "type": "page",
      "title": "SeparateCacheWatchRPC",
      "summary": "SeparateCacheWatchRPC is a feature gate that enables separate cache watch RPCs.",
      "body": "SeparateCacheWatchRPC is a feature gate that enables separate cache watch RPCs.\n\n**Why it matters**\nThis feature improves performance and scalability by reducing the load on the cache watch RPC.\n\n**Key facts**\n- Enables separate cache watch RPCs\n- Improves performance and scalability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SeparateCacheWatchRPC/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SeparateCacheWatchRPC.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SeparateCacheWatchRPC.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SeparateCacheWatchRPC/",
          "line_start": null,
          "line_end": null,
          "quote": "SeparateCacheWatchRPC"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NonPreemptingPriority",
      "type": "page",
      "title": "NonPreemptingPriority",
      "summary": "NonPreemptingPriority is a feature gate that allows pods to run with non-preemptible priority.",
      "body": "NonPreemptingPriority is a feature gate that allows pods to run with non-preemptible priority.\n\n**Why it matters**\nThis feature enables pods to maintain their priority even when the node's resources are under pressure, preventing them from being preempted by other pods.\n\n**Key facts**\n- NonPreemptingPriority is a boolean flag that can be set on a pod or node\n- When enabled, pods with non-preemptible priority will not be preempted by other pods\n\n**Common pitfalls**\n- Enabling NonPreemptingPriority may lead to resource starvation for other pods if not managed properly",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NonPreemptingPriority/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NonPreemptingPriority.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NonPreemptingPriority.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NonPreemptingPriority/",
          "line_start": null,
          "line_end": null,
          "quote": "NonPreemptingPriority"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ExpandedDNSConfig",
      "type": "page",
      "title": "ExpandedDNSConfig",
      "summary": "ExpandedDNSConfig is a feature gate that allows for more flexible DNS configuration in Kubernetes.",
      "body": "ExpandedDNSConfig is a feature gate that allows for more flexible DNS configuration in Kubernetes.\n\n**Why it matters**\nThis feature provides greater control over DNS settings, enabling users to customize their DNS behavior according to specific needs.\n\n**Key facts**\n- ExpandedDNSConfig enables the use of additional DNS options\n- It allows for customizing DNS search domains and resolver configurations\n\n**Common pitfalls**\n- Incorrect configuration may lead to DNS resolution issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandedDNSConfig/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ExpandedDNSConfig.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExpandedDNSConfig.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandedDNSConfig/",
          "line_start": null,
          "line_end": null,
          "quote": "ExpandedDNSConfig"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBinding",
      "type": "page",
      "title": "ServiceAccountTokenNodeBinding",
      "summary": "ServiceAccountTokenNodeBinding is a feature gate that enables node-level service account token binding.",
      "body": "ServiceAccountTokenNodeBinding is a feature gate that enables node-level service account token binding.\n\n**Why it matters**\nThis feature allows for more fine-grained control over service account tokens, enabling them to be bound at the node level.\n\n**Key facts**\n- ServiceAccountTokenNodeBinding enables node-level service account token binding\n- It provides greater flexibility in managing service account tokens\n\n**Common pitfalls**\n- Incorrect configuration may lead to security issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBinding/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBinding.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBinding.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBinding/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceAccountTokenNodeBinding"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SeparateTaintEvictionController",
      "type": "page",
      "title": "SeparateTaintEvictionController",
      "summary": "SeparateTaintEvictionController is a feature gate that separates the taint eviction controller from the node controller.",
      "body": "SeparateTaintEvictionController is a feature gate that separates the taint eviction controller from the node controller.\n\n**Why it matters**\nThis feature improves the performance and efficiency of the taint eviction process, reducing the load on the node controller.\n\n**Key facts**\n- SeparateTaintEvictionController separates the taint eviction controller\n- It reduces the load on the node controller\n\n**Common pitfalls**\n- Incorrect configuration may lead to inconsistent taint management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SeparateTaintEvictionController/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SeparateTaintEvictionController.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SeparateTaintEvictionController.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SeparateTaintEvictionController/",
          "line_start": null,
          "line_end": null,
          "quote": "SeparateTaintEvictionController"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/LocalStorageCapacityIsolation",
      "type": "page",
      "title": "LocalStorageCapacityIsolation",
      "summary": "Local Storage Capacity Isolation is a feature gate that allows for fine-grained control over the capacity of local storage volumes.",
      "body": "Local Storage Capacity Isolation is a feature gate that allows for fine-grained control over the capacity of local storage volumes.\n\n**Why it matters**\nThis feature enables users to manage local storage resources more efficiently, preventing one pod from consuming all available capacity.\n\n**Key facts**\n- LocalStorageCapacityIsolation can be enabled on a per-pod basis using the `localStorageCapacityIsolation` field in the pod's spec\n- When enabled, each pod is allocated a fixed amount of local storage capacity\n\n**Common pitfalls**\n- Insufficient configuration may lead to underutilization or overallocation of local storage resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LocalStorageCapacityIsolation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/LocalStorageCapacityIsolation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LocalStorageCapacityIsolation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LocalStorageCapacityIsolation/",
          "line_start": null,
          "line_end": null,
          "quote": "LocalStorageCapacityIsolation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CRDObservedGenerationTracking",
      "type": "page",
      "title": "CRDObservedGenerationTracking",
      "summary": "CRD Observed Generation Tracking is a feature gate that enables the tracking of observed generations for Custom Resource Definitions (CRDs).",
      "body": "CRD Observed Generation Tracking is a feature gate that enables the tracking of observed generations for Custom Resource Definitions (CRDs).\n\n**Why it matters**\nThis feature allows for more accurate management and monitoring of CRDs, particularly in scenarios where multiple versions are deployed concurrently.\n\n**Key facts**\n- CRDObservedGenerationTracking can be enabled on a per-cluster basis using the `crdObservedGenerationTracking` field in the cluster's spec\n- When enabled, each CRD instance is assigned an observed generation number\n\n**Common pitfalls**\n- Enabling this feature may introduce additional overhead due to increased metadata storage requirements",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CRDObservedGenerationTracking/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CRDObservedGenerationTracking.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CRDObservedGenerationTracking.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CRDObservedGenerationTracking/",
          "line_start": null,
          "line_end": null,
          "quote": "CRDObservedGenerationTracking"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/VolumeSubpath",
      "type": "page",
      "title": "VolumeSubpath",
      "summary": "Volume Subpath is a feature gate that allows for the mounting of volumes at subpaths within a pod.",
      "body": "Volume Subpath is a feature gate that allows for the mounting of volumes at subpaths within a pod.\n\n**Why it matters**\nThis feature provides greater flexibility in volume management, enabling users to organize and access volume data more efficiently.\n\n**Key facts**\n- VolumeSubpath can be enabled on a per-pod basis using the `volumeSubpath` field in the pod's spec\n- When enabled, each volume is mounted at a specified subpath within the pod\n\n**Common pitfalls**\n- Incorrect configuration may lead to inconsistent or inaccessible volume data",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeSubpath/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/VolumeSubpath.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeSubpath.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeSubpath/",
          "line_start": null,
          "line_end": null,
          "quote": "VolumeSubpath"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/VolumeSubpathEnvExpansion",
      "type": "page",
      "title": "VolumeSubpathEnvExpansion",
      "summary": "Volume Subpath Env Expansion is a feature gate that enables the expansion of environment variables within subpaths.",
      "body": "Volume Subpath Env Expansion is a feature gate that enables the expansion of environment variables within subpaths.\n\n**Why it matters**\nThis feature simplifies the process of accessing and utilizing volume data by allowing for more flexible environment variable management.\n\n**Key facts**\n- VolumeSubpathEnvExpansion can be enabled on a per-pod basis using the `volumeSubpathEnvExpansion` field in the pod's spec\n- When enabled, environment variables are expanded within subpaths to provide easier access to volume data\n\n**Common pitfalls**\n- Inadequate configuration may result in incorrect or incomplete environment variable expansion",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeSubpathEnvExpansion/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/VolumeSubpathEnvExpansion.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeSubpathEnvExpansion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeSubpathEnvExpansion/",
          "line_start": null,
          "line_end": null,
          "quote": "VolumeSubpathEnvExpansion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodIndexLabel",
      "type": "page",
      "title": "PodIndexLabel",
      "summary": "PodIndexLabel is a feature gate that allows you to specify an index label for pods.",
      "body": "PodIndexLabel is a feature gate that allows you to specify an index label for pods.\n\n**Why it matters**\nThis feature enables more flexible pod labeling and management.\n\n**Key facts**\n- The PodIndexLabel feature gate can be enabled on the cluster level or on a per-pod basis.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodIndexLabel/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodIndexLabel.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodIndexLabel.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodIndexLabel/",
          "line_start": null,
          "line_end": null,
          "quote": "PodIndexLabel"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/QOSReserved",
      "type": "page",
      "title": "QOSReserved",
      "summary": "QOSReserved is a feature gate that allows you to reserve Quality of Service (QoS) resources for pods.",
      "body": "QOSReserved is a feature gate that allows you to reserve Quality of Service (QoS) resources for pods.\n\n**Why it matters**\nThis feature ensures that critical pods receive sufficient QoS resources.\n\n**Key facts**\n- The QOSReserved feature gate can be used in conjunction with other resource management features.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/QOSReserved/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/QOSReserved.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/QOSReserved.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/QOSReserved/",
          "line_start": null,
          "line_end": null,
          "quote": "QOSReserved"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfiguration",
      "type": "page",
      "title": "StructuredAuthenticationConfiguration",
      "summary": "StructuredAuthenticationConfiguration is a feature gate that enables structured authentication configurations for pods.",
      "body": "StructuredAuthenticationConfiguration is a feature gate that enables structured authentication configurations for pods.\n\n**Why it matters**\nThis feature simplifies and secures pod authentication processes.\n\n**Key facts**\n- The StructuredAuthenticationConfiguration feature gate can be used to configure authentication settings for pods.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfiguration/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfiguration.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfiguration.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfiguration/",
          "line_start": null,
          "line_end": null,
          "quote": "StructuredAuthenticationConfiguration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodReadinessGates",
      "type": "page",
      "title": "PodReadinessGates",
      "summary": "PodReadinessGates is a feature gate that allows you to define readiness gates for pods.",
      "body": "PodReadinessGates is a feature gate that allows you to define readiness gates for pods.\n\n**Why it matters**\nThis feature enhances pod readiness and liveness checks.\n\n**Key facts**\n- The PodReadinessGates feature gate can be used in conjunction with other pod management features.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodReadinessGates/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodReadinessGates.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodReadinessGates.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodReadinessGates/",
          "line_start": null,
          "line_end": null,
          "quote": "PodReadinessGates"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AdvancedAuditing",
      "type": "page",
      "title": "AdvancedAuditing",
      "summary": "Enables advanced auditing features in Kubernetes.",
      "body": "Enables advanced auditing features in Kubernetes.\n\n**Why it matters**\nProvides detailed logging and monitoring capabilities for security and compliance purposes.\n\n**Key facts**\n- Enables log collection and analysis\n- Supports multiple audit policies\n\n**Common pitfalls**\n- Requires additional configuration and resources\n- May impact system performance\n\n**Related**\nAudit Policy, Logging",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AdvancedAuditing/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AdvancedAuditing.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AdvancedAuditing.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AdvancedAuditing/",
          "line_start": null,
          "line_end": null,
          "quote": "AdvancedAuditing"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ContainerStopSignals",
      "type": "page",
      "title": "ContainerStopSignals",
      "summary": "Allows sending stop signals to containers.",
      "body": "Allows sending stop signals to containers.\n\n**Why it matters**\nEnables graceful shutdown of containers and improves system reliability.\n\n**Key facts**\n- Supports SIGTERM and SIGKILL signals\n- Can be used with container restart policies\n\n**Common pitfalls**\n- May not work with all container runtimes\n- Requires careful configuration\n\n**Related**\nContainer Runtime, Restart Policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContainerStopSignals/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ContainerStopSignals.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ContainerStopSignals.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContainerStopSignals/",
          "line_start": null,
          "line_end": null,
          "quote": "ContainerStopSignals"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InPlacePodLevelResourcesVerticalScaling",
      "type": "page",
      "title": "InPlacePodLevelResourcesVerticalScaling",
      "summary": "Enables in-place scaling of pod-level resources.",
      "body": "Enables in-place scaling of pod-level resources.\n\n**Why it matters**\nImproves system efficiency and reduces resource waste by allowing for dynamic scaling without re-creating pods.\n\n**Key facts**\n- Supports vertical scaling of CPU and memory\n- Can be used with horizontal pod autoscaling\n\n**Common pitfalls**\n- May require additional configuration and monitoring\n- Can impact system performance if not properly managed\n\n**Related**\nHorizontal Pod Autoscaling, Resource Management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodLevelResourcesVerticalScaling/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InPlacePodLevelResourcesVerticalScaling.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InPlacePodLevelResourcesVerticalScaling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodLevelResourcesVerticalScaling/",
          "line_start": null,
          "line_end": null,
          "quote": "InPlacePodLevelResourcesVerticalScaling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PreferNominatedNode",
      "type": "page",
      "title": "PreferNominatedNode",
      "summary": "Prioritizes nominated nodes for pod scheduling.",
      "body": "Prioritizes nominated nodes for pod scheduling.\n\n**Why it matters**\nImproves system reliability and reduces downtime by ensuring critical pods are scheduled on preferred nodes.\n\n**Key facts**\n- Supports node nomination through labels\n- Can be used with affinity and anti-affinity rules\n\n**Common pitfalls**\n- May require additional configuration and monitoring\n- Can impact system performance if not properly managed\n\n**Related**\nNode Affinity, Pod Scheduling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PreferNominatedNode/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PreferNominatedNode.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PreferNominatedNode.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PreferNominatedNode/",
          "line_start": null,
          "line_end": null,
          "quote": "PreferNominatedNode"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletTracing",
      "type": "page",
      "title": "KubeletTracing",
      "summary": "KubeletTracing is a feature gate that enables tracing for the Kubelet component.",
      "body": "KubeletTracing is a feature gate that enables tracing for the Kubelet component.\n\n**Why it matters**\nEnabling KubeletTracing allows for better debugging and troubleshooting of Kubelet issues.\n\n**Key facts**\n- KubeletTracing can be enabled by setting the `KubeletTracing` feature gate to `true`.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletTracing/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletTracing.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletTracing.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletTracing/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletTracing"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NodeDisruptionExclusion",
      "type": "page",
      "title": "NodeDisruptionExclusion",
      "summary": "NodeDisruptionExclusion is a feature gate that prevents node disruptions during cluster upgrades.",
      "body": "NodeDisruptionExclusion is a feature gate that prevents node disruptions during cluster upgrades.\n\n**Why it matters**\nEnabling NodeDisruptionExclusion ensures minimal disruption to pods and applications during cluster upgrades.\n\n**Key facts**\n- NodeDisruptionExclusion can be enabled by setting the `NodeDisruptionExclusion` feature gate to `true`.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeDisruptionExclusion/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NodeDisruptionExclusion.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeDisruptionExclusion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeDisruptionExclusion/",
          "line_start": null,
          "line_end": null,
          "quote": "NodeDisruptionExclusion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ResourceLimitsPriorityFunction",
      "type": "page",
      "title": "ResourceLimitsPriorityFunction",
      "summary": "ResourceLimitsPriorityFunction is a feature gate that enables the use of resource limits as a priority function.",
      "body": "ResourceLimitsPriorityFunction is a feature gate that enables the use of resource limits as a priority function.\n\n**Why it matters**\nEnabling ResourceLimitsPriorityFunction allows for more efficient scheduling based on resource availability.\n\n**Key facts**\n- ResourceLimitsPriorityFunction can be enabled by setting the `ResourceLimitsPriorityFunction` feature gate to `true`.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ResourceLimitsPriorityFunction/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ResourceLimitsPriorityFunction.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ResourceLimitsPriorityFunction.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ResourceLimitsPriorityFunction/",
          "line_start": null,
          "line_end": null,
          "quote": "ResourceLimitsPriorityFunction"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MultiCIDRRangeAllocator",
      "type": "page",
      "title": "MultiCIDRRangeAllocator",
      "summary": "MultiCIDRRangeAllocator is a feature gate that enables the use of multiple CIDR ranges for pod allocation.",
      "body": "MultiCIDRRangeAllocator is a feature gate that enables the use of multiple CIDR ranges for pod allocation.\n\n**Why it matters**\nEnabling MultiCIDRRangeAllocator allows for more flexible and efficient pod allocation based on network requirements.\n\n**Key facts**\n- MultiCIDRRangeAllocator can be enabled by setting the `MultiCIDRRangeAllocator` feature gate to `true`.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MultiCIDRRangeAllocator/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MultiCIDRRangeAllocator.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MultiCIDRRangeAllocator.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MultiCIDRRangeAllocator/",
          "line_start": null,
          "line_end": null,
          "quote": "MultiCIDRRangeAllocator"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAControlPlaneController",
      "type": "page",
      "title": "DRAControlPlaneController",
      "summary": "DRAControlPlaneController is a feature gate that enables or disables the DRA Control Plane Controller.",
      "body": "DRAControlPlaneController is a feature gate that enables or disables the DRA Control Plane Controller.\n\n**Why it matters**\nThis feature gate allows users to control the behavior of the DRA Control Plane Controller, which is responsible for managing the cluster's control plane components.\n\n**Key facts**\n- DRAControlPlaneController is a feature gate that can be enabled or disabled\n- The DRA Control Plane Controller manages the cluster's control plane components",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAControlPlaneController/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAControlPlaneController.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAControlPlaneController.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAControlPlaneController/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAControlPlaneController"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/extend-websockets-to-kubelet",
      "type": "page",
      "title": "ExtendWebSocketsToKubelet",
      "summary": "ExtendWebSocketsToKubelet is a feature gate that enables or disables the extension of websockets to kubelet.",
      "body": "ExtendWebSocketsToKubelet is a feature gate that enables or disables the extension of websockets to kubelet.\n\n**Why it matters**\nThis feature gate allows users to control whether websockets are extended to kubelet, which can improve communication between the API server and nodes.\n\n**Key facts**\n- ExtendWebSocketsToKubelet is a feature gate that can be enabled or disabled\n- Websockets can be extended to kubelet for improved communication",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/extend-websockets-to-kubelet/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/extend-websockets-to-kubelet.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/extend-websockets-to-kubelet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/extend-websockets-to-kubelet/",
          "line_start": null,
          "line_end": null,
          "quote": "ExtendWebSocketsToKubelet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RootCAConfigMap",
      "type": "page",
      "title": "RootCAConfigMap",
      "summary": "RootCAConfigMap is a feature gate that enables or disables the use of a Root CA config map.",
      "body": "RootCAConfigMap is a feature gate that enables or disables the use of a Root CA config map.\n\n**Why it matters**\nThis feature gate allows users to control whether a Root CA config map is used, which can affect how certificates are managed in the cluster.\n\n**Key facts**\n- RootCAConfigMap is a feature gate that can be enabled or disabled\n- A Root CA config map can be used to manage certificates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RootCAConfigMap/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RootCAConfigMap.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RootCAConfigMap.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RootCAConfigMap/",
          "line_start": null,
          "line_end": null,
          "quote": "RootCAConfigMap"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AllowExtTrafficLocalEndpoints",
      "type": "page",
      "title": "AllowExtTrafficLocalEndpoints",
      "summary": "AllowExtTrafficLocalEndpoints is a feature gate that enables or disables allowing external traffic to local endpoints.",
      "body": "AllowExtTrafficLocalEndpoints is a feature gate that enables or disables allowing external traffic to local endpoints.\n\n**Why it matters**\nThis feature gate allows users to control whether external traffic can be routed to local endpoints, which can affect cluster security and accessibility.\n\n**Key facts**\n- AllowExtTrafficLocalEndpoints is a feature gate that can be enabled or disabled\n- External traffic can be allowed to local endpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowExtTrafficLocalEndpoints/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AllowExtTrafficLocalEndpoints.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowExtTrafficLocalEndpoints.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowExtTrafficLocalEndpoints/",
          "line_start": null,
          "line_end": null,
          "quote": "AllowExtTrafficLocalEndpoints"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SidecarContainers",
      "type": "page",
      "title": "SidecarContainers",
      "summary": "Sidecar Containers is a feature gate that enables the use of sidecar containers in Kubernetes.",
      "body": "Sidecar Containers is a feature gate that enables the use of sidecar containers in Kubernetes.\n\n**Why it matters**\nThis feature allows for more flexibility and customization in container deployments.\n\n**Key facts**\n- Sidecar Containers can be used to run additional containers alongside main application containers.\n\n**Common pitfalls**\n- Enabling Sidecar Containers may introduce additional complexity and resource usage.\n\n**Related**\nFeature gates, Kubernetes deployment options",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SidecarContainers/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SidecarContainers.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SidecarContainers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SidecarContainers/",
          "line_start": null,
          "line_end": null,
          "quote": "SidecarContainers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingAllocatedStatus",
      "type": "page",
      "title": "InPlacePodVerticalScalingAllocatedStatus",
      "summary": "In-Place Pod Vertical Scaling Allocated Status is a feature gate that enables the display of allocated resources for pods.",
      "body": "In-Place Pod Vertical Scaling Allocated Status is a feature gate that enables the display of allocated resources for pods.\n\n**Why it matters**\nThis feature provides more visibility into pod resource usage and allocation.\n\n**Key facts**\n- In-Place Pod Vertical Scaling Allocated Status displays allocated CPU and memory for pods.\n\n**Common pitfalls**\n- Enabling this feature may require additional configuration or monitoring.\n\n**Related**\nKubernetes pod management, resource allocation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingAllocatedStatus/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingAllocatedStatus.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingAllocatedStatus.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingAllocatedStatus/",
          "line_start": null,
          "line_end": null,
          "quote": "InPlacePodVerticalScalingAllocatedStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/GenericEphemeralVolume",
      "type": "page",
      "title": "GenericEphemeralVolume",
      "summary": "Generic Ephemeral Volume is a feature gate that enables the use of generic ephemeral volumes in Kubernetes.",
      "body": "Generic Ephemeral Volume is a feature gate that enables the use of generic ephemeral volumes in Kubernetes.\n\n**Why it matters**\nThis feature provides more flexibility and options for temporary storage needs.\n\n**Key facts**\n- Generic Ephemeral Volumes can be used as temporary storage for pods.\n\n**Common pitfalls**\n- Enabling Generic Ephemeral Volumes may introduce additional complexity or security concerns.\n\n**Related**\nKubernetes storage options, ephemeral volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GenericEphemeralVolume/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/GenericEphemeralVolume.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GenericEphemeralVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GenericEphemeralVolume/",
          "line_start": null,
          "line_end": null,
          "quote": "GenericEphemeralVolume"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NodeSwap",
      "type": "page",
      "title": "NodeSwap",
      "summary": "Node Swap is a feature gate that enables the swapping of nodes in Kubernetes.",
      "body": "Node Swap is a feature gate that enables the swapping of nodes in Kubernetes.\n\n**Why it matters**\nThis feature allows for more flexibility and resilience in node management.\n\n**Key facts**\n- Node Swap can be used to replace failed or unresponsive nodes with new ones.\n\n**Common pitfalls**\n- Enabling Node Swap may require additional configuration or monitoring.\n\n**Related**\nKubernetes node management, high availability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeSwap/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NodeSwap.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeSwap.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeSwap/",
          "line_start": null,
          "line_end": null,
          "quote": "NodeSwap"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodPriority",
      "type": "page",
      "title": "PodPriority",
      "summary": "PodPriority is a feature gate that allows pods to be prioritized in terms of scheduling.",
      "body": "PodPriority is a feature gate that allows pods to be prioritized in terms of scheduling.\n\n**Why it matters**\nThis feature enables more efficient resource allocation and scheduling in Kubernetes clusters.\n\n**Key facts**\n- PodPriority can be enabled on a cluster-level or node-level\n- Prioritization is based on the pod's priority value\n\n**Common pitfalls**\n- Incorrectly configured PodPriority may lead to resource starvation for lower-priority pods\n\n**Related**\nScheduling, Resource Allocation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodPriority/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodPriority.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodPriority.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodPriority/",
          "line_start": null,
          "line_end": null,
          "quote": "PodPriority"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/VolumeCapacityPriority",
      "type": "page",
      "title": "VolumeCapacityPriority",
      "summary": "VolumeCapacityPriority is a feature gate that allows volumes to be prioritized based on their capacity.",
      "body": "VolumeCapacityPriority is a feature gate that allows volumes to be prioritized based on their capacity.\n\n**Why it matters**\nThis feature enables more efficient resource allocation and scheduling in Kubernetes clusters, especially for stateful applications.\n\n**Key facts**\n- VolumeCapacityPriority can be enabled on a cluster-level or node-level\n- Prioritization is based on the volume's capacity\n\n**Common pitfalls**\n- Incorrectly configured VolumeCapacityPriority may lead to resource starvation for lower-capacity volumes\n\n**Related**\nScheduling, Resource Allocation, Stateful Applications",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeCapacityPriority/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/VolumeCapacityPriority.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeCapacityPriority.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeCapacityPriority/",
          "line_start": null,
          "line_end": null,
          "quote": "VolumeCapacityPriority"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/JobTrackingWithFinalizers",
      "type": "page",
      "title": "JobTrackingWithFinalizers",
      "summary": "JobTrackingWithFinalizers is a feature gate that allows jobs to be tracked and finalized.",
      "body": "JobTrackingWithFinalizers is a feature gate that allows jobs to be tracked and finalized.\n\n**Why it matters**\nThis feature enables more efficient job management and cleanup in Kubernetes clusters.\n\n**Key facts**\n- JobTrackingWithFinalizers can be enabled on a cluster-level or namespace-level\n- Jobs are tracked and finalized based on their completion status\n\n**Common pitfalls**\n- Incorrectly configured JobTrackingWithFinalizers may lead to job loss or corruption\n\n**Related**\nJob Management, Cleanup",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobTrackingWithFinalizers/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/JobTrackingWithFinalizers.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobTrackingWithFinalizers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobTrackingWithFinalizers/",
          "line_start": null,
          "line_end": null,
          "quote": "JobTrackingWithFinalizers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SupportIPVSProxyMode",
      "type": "page",
      "title": "SupportIPVSProxyMode",
      "summary": "SupportIPVSProxyMode is a feature gate that allows IPVS proxy mode to be enabled.",
      "body": "SupportIPVSProxyMode is a feature gate that allows IPVS proxy mode to be enabled.\n\n**Why it matters**\nThis feature enables more efficient and scalable load balancing in Kubernetes clusters.\n\n**Key facts**\n- SupportIPVSProxyMode can be enabled on a cluster-level or node-level\n- IPVS proxy mode provides improved load balancing capabilities\n\n**Common pitfalls**\n- Incorrectly configured SupportIPVSProxyMode may lead to performance issues or instability\n\n**Related**\nLoad Balancing, Scalability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SupportIPVSProxyMode/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SupportIPVSProxyMode.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SupportIPVSProxyMode.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SupportIPVSProxyMode/",
          "line_start": null,
          "line_end": null,
          "quote": "SupportIPVSProxyMode"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAResourceClaimGranularStatusAuthorization",
      "type": "page",
      "title": "DRAResourceClaimGranularStatusAuthorization",
      "summary": "DRAResourceClaimGranularStatusAuthorization is a feature gate that enables granular status authorization for DRA resource claims.",
      "body": "DRAResourceClaimGranularStatusAuthorization is a feature gate that enables granular status authorization for DRA resource claims.\n\n**Why it matters**\nThis feature allows for more fine-grained control over access to DRA resource claims, improving security and compliance.\n\n**Key facts**\n- Enables granular status authorization for DRA resource claims\n- Improves security and compliance by allowing more fine-grained control\n\n**Common pitfalls**\n- May require additional configuration or setup\n\n**Related**\nDRA resource claims, Status authorization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAResourceClaimGranularStatusAuthorization/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAResourceClaimGranularStatusAuthorization.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAResourceClaimGranularStatusAuthorization.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAResourceClaimGranularStatusAuthorization/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAResourceClaimGranularStatusAuthorization"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NodeDeclaredFeatures",
      "type": "page",
      "title": "NodeDeclaredFeatures",
      "summary": "NodeDeclaredFeatures is a feature gate that enables node-declared features.",
      "body": "NodeDeclaredFeatures is a feature gate that enables node-declared features.\n\n**Why it matters**\nThis feature allows nodes to declare their own features, improving flexibility and customization.\n\n**Key facts**\n- Enables node-declared features\n- Improves flexibility and customization\n\n**Common pitfalls**\n- May require additional configuration or setup\n\n**Related**\nNode-declared features, Flexibility and customization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeDeclaredFeatures/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NodeDeclaredFeatures.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeDeclaredFeatures.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeDeclaredFeatures/",
          "line_start": null,
          "line_end": null,
          "quote": "NodeDeclaredFeatures"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAWorkloadResourceClaims",
      "type": "page",
      "title": "DRAWorkloadResourceClaims",
      "summary": "DRAWorkloadResourceClaims is a feature gate that enables DRA workload resource claims.",
      "body": "DRAWorkloadResourceClaims is a feature gate that enables DRA workload resource claims.\n\n**Why it matters**\nThis feature allows for more efficient use of resources by enabling DRA workloads to claim resources directly.\n\n**Key facts**\n- Enables DRA workload resource claims\n- Improves resource efficiency\n\n**Common pitfalls**\n- May require additional configuration or setup\n\n**Related**\nDRA workloads, Resource claims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAWorkloadResourceClaims/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAWorkloadResourceClaims.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAWorkloadResourceClaims.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAWorkloadResourceClaims/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAWorkloadResourceClaims"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StatefulSetAutoDeletePVC",
      "type": "page",
      "title": "StatefulSetAutoDeletePVC",
      "summary": "StatefulSetAutoDeletePVC is a feature gate that enables automatic deletion of PVCs when a StatefulSet is deleted.",
      "body": "StatefulSetAutoDeletePVC is a feature gate that enables automatic deletion of PVCs when a StatefulSet is deleted.\n\n**Why it matters**\nThis feature improves resource cleanup and reduces the risk of orphaned resources.\n\n**Key facts**\n- Enables automatic deletion of PVCs\n- Improves resource cleanup\n\n**Common pitfalls**\n- May require additional configuration or setup\n\n**Related**\nStatefulSets, PVCs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StatefulSetAutoDeletePVC/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StatefulSetAutoDeletePVC.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StatefulSetAutoDeletePVC.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StatefulSetAutoDeletePVC/",
          "line_start": null,
          "line_end": null,
          "quote": "StatefulSetAutoDeletePVC"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RecursiveReadOnlyMounts",
      "type": "page",
      "title": "RecursiveReadOnlyMounts",
      "summary": "Enables recursive read-only mounts for pods.",
      "body": "Enables recursive read-only mounts for pods.\n\n**Why it matters**\nThis feature allows for more fine-grained control over pod file system access, improving security and reliability.\n\n**Key facts**\n- Only applies to read-only mounts\n- Recursive behavior is enabled by default\n\n**Common pitfalls**\n- May not be compatible with all storage systems\n- Requires careful configuration to avoid unintended consequences",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RecursiveReadOnlyMounts/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RecursiveReadOnlyMounts.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RecursiveReadOnlyMounts.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RecursiveReadOnlyMounts/",
          "line_start": null,
          "line_end": null,
          "quote": "RecursiveReadOnlyMounts"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DeclarativeValidation",
      "type": "page",
      "title": "DeclarativeValidation",
      "summary": "",
      "body": "Enables declarative validation of in-tree Kubernetes APIs. When enabled, APIs with declarative validation rules\n(defined using IDL tags in the Go code) will have both the generated declarative validation code\nand the original hand-written validation code executed.\nThe results are compared, and any discrepancies are reported via the `declarative_validation_mismatch_total` metric.\nOnly the hand-written validation result is returned to the user (eg: actually validates in the request path).\nThe original hand-written validation are still the authoritative validations\nwhen this is enabled but this can be changed if the\n[DeclarativeValidationBeta feature gate](/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidationBeta/)\nis enabled in addition to this gate.\nThis feature gate only operates on the `kube-apiserver` component.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DeclarativeValidation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DeclarativeValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidation/",
          "line_start": null,
          "line_end": null,
          "quote": "DeclarativeValidation"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/VolumeScheduling",
      "type": "page",
      "title": "VolumeScheduling",
      "summary": "Enables volume scheduling for pods.",
      "body": "Enables volume scheduling for pods.\n\n**Why it matters**\nThis feature allows for more efficient use of storage resources, improving cluster performance and scalability.\n\n**Key facts**\n- Only applies to persistent volumes\n- Allows for custom scheduling of volumes\n\n**Common pitfalls**\n- Requires careful configuration to avoid conflicts with existing volume management systems",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeScheduling/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/VolumeScheduling.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeScheduling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeScheduling/",
          "line_start": null,
          "line_end": null,
          "quote": "VolumeScheduling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RuntimeClass",
      "type": "page",
      "title": "RuntimeClass",
      "summary": "Enables runtime class support for pods.",
      "body": "Enables runtime class support for pods.\n\n**Why it matters**\nThis feature allows for more flexible and efficient container runtime management, improving cluster reliability and scalability.\n\n**Key facts**\n- Only applies to containers running on supported runtimes\n\n**Common pitfalls**\n- Requires careful configuration to avoid conflicts with existing container runtime systems",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RuntimeClass/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RuntimeClass.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RuntimeClass.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RuntimeClass/",
          "line_start": null,
          "line_end": null,
          "quote": "RuntimeClass"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/BalanceAttachedNodeVolumes",
      "type": "page",
      "title": "BalanceAttachedNodeVolumes",
      "summary": "Enables balancing of attached node volumes.",
      "body": "Enables balancing of attached node volumes.\n\n**Why it matters**\nThis feature improves cluster performance and reliability by ensuring that volumes are evenly distributed across nodes.\n\n**Key facts**\n- Only applies to attached node volumes\n\n**Common pitfalls**\n- May require additional configuration to ensure optimal volume distribution",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BalanceAttachedNodeVolumes/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/BalanceAttachedNodeVolumes.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/BalanceAttachedNodeVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BalanceAttachedNodeVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": "BalanceAttachedNodeVolumes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MemoryQoS",
      "type": "page",
      "title": "MemoryQoS",
      "summary": "MemoryQoS is a feature gate that allows for memory quality of service.",
      "body": "MemoryQoS is a feature gate that allows for memory quality of service.\n\n**Why it matters**\nThis feature enables users to manage and prioritize memory allocation in their cluster.\n\n**Key facts**\n- MemoryQoS is used to configure the memory quality of service policy\n- It can be enabled or disabled using the `--feature-gates=MemoryQoS=true` flag\n\n**Common pitfalls**\n- Incorrect configuration may lead to performance issues or resource starvation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MemoryQoS/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MemoryQoS.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MemoryQoS.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MemoryQoS/",
          "line_start": null,
          "line_end": null,
          "quote": "MemoryQoS"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/HostnameOverride",
      "type": "page",
      "title": "HostnameOverride",
      "summary": "HostnameOverride is a feature gate that allows overriding the hostname of a node.",
      "body": "HostnameOverride is a feature gate that allows overriding the hostname of a node.\n\n**Why it matters**\nThis feature enables users to customize the hostname of their nodes for various use cases.\n\n**Key facts**\n- HostnameOverride can be used to override the default hostname of a node\n- It can be enabled or disabled using the `--feature-gates=HostnameOverride=true` flag\n\n**Common pitfalls**\n- Incorrect configuration may lead to issues with node identification and communication",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HostnameOverride/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/HostnameOverride.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HostnameOverride.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HostnameOverride/",
          "line_start": null,
          "line_end": null,
          "quote": "HostnameOverride"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MemoryManager",
      "type": "page",
      "title": "MemoryManager",
      "summary": "MemoryManager is a feature gate that allows for memory management.",
      "body": "MemoryManager is a feature gate that allows for memory management.\n\n**Why it matters**\nThis feature enables users to manage and allocate memory resources in their cluster.\n\n**Key facts**\n- MemoryManager can be used to configure the memory manager policy\n- It can be enabled or disabled using the `--feature-gates=MemoryManager=true` flag\n\n**Common pitfalls**\n- Incorrect configuration may lead to performance issues or resource starvation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MemoryManager/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MemoryManager.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MemoryManager.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MemoryManager/",
          "line_start": null,
          "line_end": null,
          "quote": "MemoryManager"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DaemonSetUpdateSurge",
      "type": "page",
      "title": "DaemonSetUpdateSurge",
      "summary": "DaemonSetUpdateSurge is a feature gate that allows for daemon set updates.",
      "body": "DaemonSetUpdateSurge is a feature gate that allows for daemon set updates.\n\n**Why it matters**\nThis feature enables users to manage and prioritize daemon set updates in their cluster.\n\n**Key facts**\n- DaemonSetUpdateSurge can be used to configure the daemon set update policy\n- It can be enabled or disabled using the `--feature-gates=DaemonSetUpdateSurge=true` flag\n\n**Common pitfalls**\n- Incorrect configuration may lead to performance issues or resource starvation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DaemonSetUpdateSurge/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DaemonSetUpdateSurge.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DaemonSetUpdateSurge.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DaemonSetUpdateSurge/",
          "line_start": null,
          "line_end": null,
          "quote": "DaemonSetUpdateSurge"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletEnsureSecretPulledImages",
      "type": "page",
      "title": "KubeletEnsureSecretPulledImages",
      "summary": "KubeletEnsureSecretPulledImages is a feature gate that enables the Kubelet to ensure secret-pulled images are used for pods.",
      "body": "KubeletEnsureSecretPulledImages is a feature gate that enables the Kubelet to ensure secret-pulled images are used for pods.\n\n**Why it matters**\nThis feature ensures that secrets are properly pulled and used by pods, enhancing security and reliability.\n\n**Key facts**\n- Enabled by default\n- Requires secret-pulled images to be used\n\n**Common pitfalls**\n- May require additional configuration for secret management\n\n**Related**\nSecrets management in Kubernetes, Pod scheduling and security",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletEnsureSecretPulledImages/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletEnsureSecretPulledImages.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletEnsureSecretPulledImages.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletEnsureSecretPulledImages/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletEnsureSecretPulledImages"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SchedulerQueueingHints",
      "type": "page",
      "title": "SchedulerQueueingHints",
      "summary": "SchedulerQueueingHints is a feature gate that enables the Scheduler to use queueing hints for pod scheduling.",
      "body": "SchedulerQueueingHints is a feature gate that enables the Scheduler to use queueing hints for pod scheduling.\n\n**Why it matters**\nThis feature improves pod scheduling efficiency and reduces queuing times by providing more accurate resource allocation information.\n\n**Key facts**\n- Enabled by default\n- Uses queueing hints for pod scheduling\n\n**Common pitfalls**\n- May require additional configuration for Scheduler settings\n\n**Related**\nPod scheduling and resource allocation, Kubernetes Scheduler features",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SchedulerQueueingHints/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SchedulerQueueingHints.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SchedulerQueueingHints.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SchedulerQueueingHints/",
          "line_start": null,
          "line_end": null,
          "quote": "SchedulerQueueingHints"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/GracefulNodeShutdownBasedOnPodPriority",
      "type": "page",
      "title": "GracefulNodeShutdownBasedOnPodPriority",
      "summary": "GracefulNodeShutdownBasedOnPodPriority is a feature gate that enables nodes to shut down based on pod priority.",
      "body": "GracefulNodeShutdownBasedOnPodPriority is a feature gate that enables nodes to shut down based on pod priority.\n\n**Why it matters**\nThis feature ensures that critical pods are not terminated during node shutdown, maintaining cluster reliability and availability.\n\n**Key facts**\n- Enabled by default\n- Prioritizes pod termination\n\n**Common pitfalls**\n- May require additional configuration for pod priority settings\n\n**Related**\nPod prioritization and scheduling, Node shutdown and cluster reliability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GracefulNodeShutdownBasedOnPodPriority/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/GracefulNodeShutdownBasedOnPodPriority.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GracefulNodeShutdownBasedOnPodPriority.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GracefulNodeShutdownBasedOnPodPriority/",
          "line_start": null,
          "line_end": null,
          "quote": "GracefulNodeShutdownBasedOnPodPriority"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ExperimentalCriticalPodAnnotation",
      "type": "page",
      "title": "ExperimentalCriticalPodAnnotation",
      "summary": "ExperimentalCriticalPodAnnotation is a feature gate that enables the annotation of critical pods for priority handling.",
      "body": "ExperimentalCriticalPodAnnotation is a feature gate that enables the annotation of critical pods for priority handling.\n\n**Why it matters**\nThis feature allows administrators to mark critical pods and ensure they are prioritized during node shutdown or other cluster events.\n\n**Key facts**\n- Enabled by default\n- Uses pod annotations for priority handling\n\n**Common pitfalls**\n- May require additional configuration for annotation settings\n\n**Related**\nPod prioritization and scheduling, Kubernetes annotation features",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExperimentalCriticalPodAnnotation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ExperimentalCriticalPodAnnotation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExperimentalCriticalPodAnnotation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExperimentalCriticalPodAnnotation/",
          "line_start": null,
          "line_end": null,
          "quote": "ExperimentalCriticalPodAnnotation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AllowInsecureBackendProxy",
      "type": "page",
      "title": "AllowInsecureBackendProxy",
      "summary": "Enables insecure backend proxy connections.",
      "body": "Enables insecure backend proxy connections.\n\n**Why it matters**\nAllows for insecure connections between the API server and the backend proxy, which can be useful in certain environments or testing scenarios.\n\n**Key facts**\n- Can improve performance by reducing encryption overhead\n\n**Common pitfalls**\n- Security risks if not used carefully",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowInsecureBackendProxy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AllowInsecureBackendProxy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowInsecureBackendProxy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowInsecureBackendProxy/",
          "line_start": null,
          "line_end": null,
          "quote": "AllowInsecureBackendProxy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/LoadBalancerIPMode",
      "type": "page",
      "title": "LoadBalancerIPMode",
      "summary": "Configures the IP mode for load balancers.",
      "body": "Configures the IP mode for load balancers.\n\n**Why it matters**\nDetermines how load balancer IPs are allocated and managed within a cluster.\n\n**Key facts**\n- Can be set to either 'auto' or 'static'",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LoadBalancerIPMode/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/LoadBalancerIPMode.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LoadBalancerIPMode.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LoadBalancerIPMode/",
          "line_start": null,
          "line_end": null,
          "quote": "LoadBalancerIPMode"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGetAllocatable",
      "type": "page",
      "title": "KubeletPodResourcesGetAllocatable",
      "summary": "Determines how kubelet allocates resources for pods.",
      "body": "Determines how kubelet allocates resources for pods.\n\n**Why it matters**\nInfluences the way pod resource allocation is calculated and managed within a cluster.\n\n**Key facts**\n- Can be set to either 'true' or 'false'",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGetAllocatable/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGetAllocatable.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGetAllocatable.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGetAllocatable/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletPodResourcesGetAllocatable"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodCertificateRequest",
      "type": "page",
      "title": "PodCertificateRequest",
      "summary": "Manages certificate requests for pods.",
      "body": "Manages certificate requests for pods.\n\n**Why it matters**\nEnables or disables the ability to request certificates for pods within a cluster.\n\n**Key facts**\n- Can be set to either 'true' or 'false'",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodCertificateRequest/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodCertificateRequest.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodCertificateRequest.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodCertificateRequest/",
          "line_start": null,
          "line_end": null,
          "quote": "PodCertificateRequest"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SystemdWatchdog",
      "type": "page",
      "title": "SystemdWatchdog",
      "summary": "SystemdWatchdog is a feature gate that enables the use of systemd's watchdog functionality in Kubernetes.",
      "body": "SystemdWatchdog is a feature gate that enables the use of systemd's watchdog functionality in Kubernetes.\n\n**Why it matters**\nThis feature allows for more robust and reliable node monitoring, which can improve overall cluster health.\n\n**Key facts**\n- Enabled by default in some distributions\n- Can be disabled using `--feature-gates=SystemdWatchdog=false`\n\n**Common pitfalls**\n- May not work as expected if systemd is not properly configured",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SystemdWatchdog/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SystemdWatchdog.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SystemdWatchdog.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SystemdWatchdog/",
          "line_start": null,
          "line_end": null,
          "quote": "SystemdWatchdog"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodDisruptionConditions",
      "type": "page",
      "title": "PodDisruptionConditions",
      "summary": "PodDisruptionConditions is a feature gate that enables the use of pod disruption conditions in Kubernetes.",
      "body": "PodDisruptionConditions is a feature gate that enables the use of pod disruption conditions in Kubernetes.\n\n**Why it matters**\nThis feature allows for more flexible and customizable eviction policies, which can improve cluster resource utilization.\n\n**Key facts**\n- Enabled by default in some distributions\n- Can be disabled using `--feature-gates=PodDisruptionConditions=false`\n\n**Common pitfalls**\n- May require additional configuration to work correctly",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodDisruptionConditions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodDisruptionConditions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodDisruptionConditions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodDisruptionConditions/",
          "line_start": null,
          "line_end": null,
          "quote": "PodDisruptionConditions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodDeletionCost",
      "type": "page",
      "title": "PodDeletionCost",
      "summary": "PodDeletionCost is a feature gate that enables the use of pod deletion cost in Kubernetes.",
      "body": "PodDeletionCost is a feature gate that enables the use of pod deletion cost in Kubernetes.\n\n**Why it matters**\nThis feature allows for more accurate resource accounting and better cluster utilization, which can improve overall performance.\n\n**Key facts**\n- Enabled by default in some distributions\n- Can be disabled using `--feature-gates=PodDeletionCost=false`\n\n**Common pitfalls**\n- May require additional configuration to work correctly",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodDeletionCost/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodDeletionCost.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodDeletionCost.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodDeletionCost/",
          "line_start": null,
          "line_end": null,
          "quote": "PodDeletionCost"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InTreePluginAzureDiskUnregister",
      "type": "page",
      "title": "InTreePluginAzureDiskUnregister",
      "summary": "InTreePluginAzureDiskUnregister is a feature gate that enables the use of in-tree Azure disk unregister functionality in Kubernetes.",
      "body": "InTreePluginAzureDiskUnregister is a feature gate that enables the use of in-tree Azure disk unregister functionality in Kubernetes.\n\n**Why it matters**\nThis feature allows for more seamless and automatic cleanup of Azure disks, which can improve cluster resource utilization.\n\n**Key facts**\n- Enabled by default in some distributions\n- Can be disabled using `--feature-gates=InTreePluginAzureDiskUnregister=false`\n\n**Common pitfalls**\n- May not work as expected if Azure disk is not properly configured",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginAzureDiskUnregister/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InTreePluginAzureDiskUnregister.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InTreePluginAzureDiskUnregister.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginAzureDiskUnregister/",
          "line_start": null,
          "line_end": null,
          "quote": "InTreePluginAzureDiskUnregister"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WatchCacheInitializationPostStartHook",
      "type": "page",
      "title": "WatchCacheInitializationPostStartHook",
      "summary": "A feature gate for enabling WatchCache initialization as a post-start hook.",
      "body": "A feature gate for enabling WatchCache initialization as a post-start hook.\n\n**Why it matters**\nEnables WatchCache initialization after the container has started, allowing for more efficient resource monitoring.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later\n- Can be disabled using `--feature-gates=WatchCacheInitializationPostStartHook=false`\n\n**Common pitfalls**\n- May cause issues with older versions of Kubernetes or third-party tools that rely on the old behavior",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WatchCacheInitializationPostStartHook/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WatchCacheInitializationPostStartHook.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WatchCacheInitializationPostStartHook.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WatchCacheInitializationPostStartHook/",
          "line_start": null,
          "line_end": null,
          "quote": "WatchCacheInitializationPostStartHook"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/LegacyNodeRoleBehavior",
      "type": "page",
      "title": "LegacyNodeRoleBehavior",
      "summary": "A feature gate for enabling legacy node role behavior.",
      "body": "A feature gate for enabling legacy node role behavior.\n\n**Why it matters**\nAllows nodes to continue using the old role-based access control (RBAC) system, even if it's been deprecated.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later\n- Can be disabled using `--feature-gates=LegacyNodeRoleBehavior=false`\n\n**Common pitfalls**\n- May cause issues with newer versions of Kubernetes or third-party tools that rely on the new RBAC system",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyNodeRoleBehavior/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/LegacyNodeRoleBehavior.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LegacyNodeRoleBehavior.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyNodeRoleBehavior/",
          "line_start": null,
          "line_end": null,
          "quote": "LegacyNodeRoleBehavior"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InTreePluginAzureFileUnregister",
      "type": "page",
      "title": "InTreePluginAzureFileUnregister",
      "summary": "A feature gate for enabling in-tree plugin Azure File unregister.",
      "body": "A feature gate for enabling in-tree plugin Azure File unregister.\n\n**Why it matters**\nAllows the Azure File CSI driver to be unregistered, which can help with debugging and troubleshooting issues.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later\n- Can be disabled using `--feature-gates=InTreePluginAzureFileUnregister=false`\n\n**Common pitfalls**\n- May cause issues with older versions of Kubernetes or third-party tools that rely on the old behavior",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginAzureFileUnregister/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InTreePluginAzureFileUnregister.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InTreePluginAzureFileUnregister.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginAzureFileUnregister/",
          "line_start": null,
          "line_end": null,
          "quote": "InTreePluginAzureFileUnregister"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MountPropagation",
      "type": "page",
      "title": "MountPropagation",
      "summary": "A feature gate for enabling mount propagation.",
      "body": "A feature gate for enabling mount propagation.\n\n**Why it matters**\nAllows mounts to be propagated from one container to another, which can help with shared storage and networking scenarios.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later\n- Can be disabled using `--feature-gates=MountPropagation=false`\n\n**Common pitfalls**\n- May cause issues with older versions of Kubernetes or third-party tools that rely on the old behavior",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MountPropagation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MountPropagation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MountPropagation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MountPropagation/",
          "line_start": null,
          "line_end": null,
          "quote": "MountPropagation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScaling",
      "type": "page",
      "title": "InPlacePodVerticalScaling",
      "summary": "Enables in-place pod vertical scaling, allowing for automatic resizing of pods without restarting them.",
      "body": "Enables in-place pod vertical scaling, allowing for automatic resizing of pods without restarting them.\n\n**Why it matters**\nImproves resource utilization and reduces downtime by enabling dynamic scaling of pods.\n\n**Key facts**\n- Enabled by default since Kubernetes 1.24\n- Requires no configuration or intervention\n\n**Common pitfalls**\n- May not be suitable for all workloads, especially those with complex dependencies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScaling/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScaling.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScaling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScaling/",
          "line_start": null,
          "line_end": null,
          "quote": "InPlacePodVerticalScaling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CloudControllerManagerWebhook",
      "type": "page",
      "title": "CloudControllerManagerWebhook",
      "summary": "Enables the Cloud Controller Manager webhook, allowing it to manage cluster resources.",
      "body": "Enables the Cloud Controller Manager webhook, allowing it to manage cluster resources.\n\n**Why it matters**\nProvides a more integrated and automated way of managing cluster resources.\n\n**Key facts**\n- Enabled by default since Kubernetes 1.24\n\n**Common pitfalls**\n- Requires proper configuration and setup for optimal results",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CloudControllerManagerWebhook/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CloudControllerManagerWebhook.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CloudControllerManagerWebhook.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CloudControllerManagerWebhook/",
          "line_start": null,
          "line_end": null,
          "quote": "CloudControllerManagerWebhook"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ReloadKubeletServerCertificateFile",
      "type": "page",
      "title": "ReloadKubeletServerCertificateFile",
      "summary": "Enables the ability to reload the Kubelet server certificate file without restarting the Kubelet.",
      "body": "Enables the ability to reload the Kubelet server certificate file without restarting the Kubelet.\n\n**Why it matters**\nImproves security and reduces downtime by enabling automatic reloading of certificates.\n\n**Key facts**\n- Enabled by default since Kubernetes 1.24\n\n**Common pitfalls**\n- May not be suitable for all environments, especially those with strict security policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReloadKubeletServerCertificateFile/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ReloadKubeletServerCertificateFile.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ReloadKubeletServerCertificateFile.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReloadKubeletServerCertificateFile/",
          "line_start": null,
          "line_end": null,
          "quote": "ReloadKubeletServerCertificateFile"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AllowUnsafeMalformedObjectDeletion",
      "type": "page",
      "title": "AllowUnsafeMalformedObjectDeletion",
      "summary": "Enables the deletion of malformed objects without validation checks.",
      "body": "Enables the deletion of malformed objects without validation checks.\n\n**Why it matters**\nImproves cluster stability and reduces errors by allowing for more flexible object management.\n\n**Key facts**\n- Enabled by default since Kubernetes 1.24\n\n**Common pitfalls**\n- May increase security risks if not properly managed",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowUnsafeMalformedObjectDeletion/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AllowUnsafeMalformedObjectDeletion.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowUnsafeMalformedObjectDeletion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowUnsafeMalformedObjectDeletion/",
          "line_start": null,
          "line_end": null,
          "quote": "AllowUnsafeMalformedObjectDeletion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceInternalTrafficPolicy",
      "type": "page",
      "title": "ServiceInternalTrafficPolicy",
      "summary": "ServiceInternalTrafficPolicy is a feature gate that allows you to control how internal traffic is routed within a cluster.",
      "body": "ServiceInternalTrafficPolicy is a feature gate that allows you to control how internal traffic is routed within a cluster.\n\n**Why it matters**\nThis feature gate matters because it provides flexibility in managing internal traffic, which can be critical for certain applications or use cases.\n\n**Key facts**\n- The ServiceInternalTrafficPolicy feature gate controls the routing of internal traffic\n- It allows you to manage how internal traffic is routed within a cluster\n\n**Common pitfalls**\n- Misconfiguring this feature gate can lead to issues with internal traffic routing",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceInternalTrafficPolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceInternalTrafficPolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceInternalTrafficPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceInternalTrafficPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceInternalTrafficPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WindowsGracefulNodeShutdown",
      "type": "page",
      "title": "WindowsGracefulNodeShutdown",
      "summary": "WindowsGracefulNodeShutdown is a feature gate that enables graceful shutdown of nodes running Windows.",
      "body": "WindowsGracefulNodeShutdown is a feature gate that enables graceful shutdown of nodes running Windows.\n\n**Why it matters**\nThis feature gate matters because it provides a way to safely shut down nodes running Windows, which can be critical for certain environments or use cases.\n\n**Key facts**\n- The WindowsGracefulNodeShutdown feature gate enables graceful shutdown of Windows nodes\n- It allows you to safely shut down nodes running Windows\n\n**Common pitfalls**\n- Failing to enable this feature gate can lead to issues with node shutdown",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsGracefulNodeShutdown/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WindowsGracefulNodeShutdown.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsGracefulNodeShutdown.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsGracefulNodeShutdown/",
          "line_start": null,
          "line_end": null,
          "quote": "WindowsGracefulNodeShutdown"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ResourceQuotaScopeSelectors",
      "type": "page",
      "title": "ResourceQuotaScopeSelectors",
      "summary": "ResourceQuotaScopeSelectors is a feature gate that allows you to scope resource quotas to specific namespaces or labels.",
      "body": "ResourceQuotaScopeSelectors is a feature gate that allows you to scope resource quotas to specific namespaces or labels.\n\n**Why it matters**\nThis feature gate matters because it provides flexibility in managing resource quotas, which can be critical for certain applications or use cases.\n\n**Key facts**\n- The ResourceQuotaScopeSelectors feature gate scopes resource quotas to specific namespaces or labels\n- It allows you to manage resource quotas at a more granular level\n\n**Common pitfalls**\n- Misconfiguring this feature gate can lead to issues with resource quota management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ResourceQuotaScopeSelectors/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ResourceQuotaScopeSelectors.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ResourceQuotaScopeSelectors.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ResourceQuotaScopeSelectors/",
          "line_start": null,
          "line_end": null,
          "quote": "ResourceQuotaScopeSelectors"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InTreePluginAWSUnregister",
      "type": "page",
      "title": "InTreePluginAWSUnregister",
      "summary": "InTreePluginAWSUnregister is a feature gate that allows you to unregister in-tree plugins for AWS.",
      "body": "InTreePluginAWSUnregister is a feature gate that allows you to unregister in-tree plugins for AWS.\n\n**Why it matters**\nThis feature gate matters because it provides flexibility in managing in-tree plugins, which can be critical for certain applications or use cases.\n\n**Key facts**\n- The InTreePluginAWSUnregister feature gate unregisters in-tree plugins for AWS\n- It allows you to manage in-tree plugins at a more granular level\n\n**Common pitfalls**\n- Failing to enable this feature gate can lead to issues with in-tree plugin management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginAWSUnregister/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InTreePluginAWSUnregister.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InTreePluginAWSUnregister.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginAWSUnregister/",
          "line_start": null,
          "line_end": null,
          "quote": "InTreePluginAWSUnregister"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CPUManagerPolicyOptions",
      "type": "page",
      "title": "CPUManagerPolicyOptions",
      "summary": "CPUManagerPolicyOptions is a feature gate for managing CPU resources in Kubernetes.",
      "body": "CPUManagerPolicyOptions is a feature gate for managing CPU resources in Kubernetes.\n\n**Why it matters**\nThis feature allows administrators to control how CPUs are allocated and managed within the cluster, enabling more efficient resource utilization.\n\n**Key facts**\n- CPUManagerPolicyOptions enables fine-grained control over CPU allocation\n- It provides a way to manage CPU resources at the node level\n\n**Common pitfalls**\n- Misconfiguring CPUManagerPolicyOptions can lead to underutilization or over-allocation of CPU resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CPUManagerPolicyOptions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CPUManagerPolicyOptions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CPUManagerPolicyOptions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CPUManagerPolicyOptions/",
          "line_start": null,
          "line_end": null,
          "quote": "CPUManagerPolicyOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RetroactiveDefaultStorageClass",
      "type": "page",
      "title": "RetroactiveDefaultStorageClass",
      "summary": "RetroactiveDefaultStorageClass is a feature gate for automatically setting the default storage class in Kubernetes.",
      "body": "RetroactiveDefaultStorageClass is a feature gate for automatically setting the default storage class in Kubernetes.\n\n**Why it matters**\nThis feature ensures that new Persistent Volumes (PVs) are created with the correct default storage class, simplifying storage management.\n\n**Key facts**\n- RetroactiveDefaultStorageClass sets the default storage class for new PVs\n- It applies to existing and new PVs\n\n**Common pitfalls**\n- Incorrectly configuring RetroactiveDefaultStorageClass can lead to inconsistent storage settings across the cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RetroactiveDefaultStorageClass/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RetroactiveDefaultStorageClass.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RetroactiveDefaultStorageClass.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RetroactiveDefaultStorageClass/",
          "line_start": null,
          "line_end": null,
          "quote": "RetroactiveDefaultStorageClass"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StartupProbe",
      "type": "page",
      "title": "StartupProbe",
      "summary": "StartupProbe is a feature gate for Kubernetes that enables probes to be executed during pod startup.",
      "body": "StartupProbe is a feature gate for Kubernetes that enables probes to be executed during pod startup.\n\n**Why it matters**\nThis feature allows administrators to monitor and ensure the successful startup of pods, improving overall cluster reliability.\n\n**Key facts**\n- StartupProbe executes probes during pod startup\n- It provides an additional mechanism for monitoring pod health\n\n**Common pitfalls**\n- Misconfiguring StartupProbe can lead to false positives or negatives in pod startup detection",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StartupProbe/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StartupProbe.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StartupProbe.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StartupProbe/",
          "line_start": null,
          "line_end": null,
          "quote": "StartupProbe"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName",
      "type": "page",
      "title": "NamespaceDefaultLabelName",
      "summary": "NamespaceDefaultLabelName is a feature gate for setting the default label name for namespaces in Kubernetes.",
      "body": "NamespaceDefaultLabelName is a feature gate for setting the default label name for namespaces in Kubernetes.\n\n**Why it matters**\nThis feature allows administrators to customize namespace labels, improving cluster organization and management.\n\n**Key facts**\n- NamespaceDefaultLabelName sets the default label name for namespaces\n- It enables customization of namespace labels\n\n**Common pitfalls**\n- Incorrectly configuring NamespaceDefaultLabelName can lead to inconsistent namespace labeling across the cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName/",
          "line_start": null,
          "line_end": null,
          "quote": "NamespaceDefaultLabelName"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToProtobuf",
      "type": "page",
      "title": "StreamingCollectionEncodingToProtobuf",
      "summary": "Enables encoding of streaming collections to Protobuf format.",
      "body": "Enables encoding of streaming collections to Protobuf format.\n\n**Why it matters**\nThis feature allows for efficient encoding and decoding of streaming data in Protobuf format, reducing network overhead.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToProtobuf/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToProtobuf.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToProtobuf.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToProtobuf/",
          "line_start": null,
          "line_end": null,
          "quote": "StreamingCollectionEncodingToProtobuf"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ExternalServiceAccountTokenSigner",
      "type": "page",
      "title": "ExternalServiceAccountTokenSigner",
      "summary": "Uses an external service account token signer.",
      "body": "Uses an external service account token signer.\n\n**Why it matters**\nThis feature allows for the use of an external service account token signer, providing additional security and flexibility.\n\n**Key facts**\n- Requires an external service account token signer",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExternalServiceAccountTokenSigner/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ExternalServiceAccountTokenSigner.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExternalServiceAccountTokenSigner.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExternalServiceAccountTokenSigner/",
          "line_start": null,
          "line_end": null,
          "quote": "ExternalServiceAccountTokenSigner"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceNodeExclusion",
      "type": "page",
      "title": "ServiceNodeExclusion",
      "summary": "Allows excluding nodes from the cluster.",
      "body": "Allows excluding nodes from the cluster.\n\n**Why it matters**\nThis feature enables administrators to exclude specific nodes from the cluster, improving security and reducing resource utilization.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceNodeExclusion/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceNodeExclusion.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceNodeExclusion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceNodeExclusion/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceNodeExclusion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/index",
      "type": "page",
      "title": "Feature Gates",
      "summary": "",
      "body": "\nThis page contains an overview of the various feature gates an administrator\ncan specify on different Kubernetes components.\n\nSee [feature stages](#feature-stages) for an explanation of the stages for a feature.\n\n\n## Overview\n\nFeature gates are a set of key=value pairs that describe Kubernetes features.\nYou can turn these features on or off using the `--feature-gates` command line flag\non each Kubernetes component.\n\n## How to enable Feature Gates\n\nTo enable or disable a feature gate for a particular Kubernetes component, use the \n`--feature-gates` flag.\n\nThis flag accepts a comma-separated list of key=value pairs, where each key is a \nfeature gate name and each value is either `true` (enable) or `false` (disable).\n\n**Example usage:**\n\n```shell\nkube-apiserver --feature-gates=FeatureName1=true,FeatureName2=false\nkubelet --feature-gates=GracefulNodeShutdown=true\n```\n\nEach Kubernetes component supports only the feature gates relevant to its functions.\nUse `<component> -h` to list available feature gates for a specific component.\n\nFor detailed instructions on configuring feature gates in your cluster, see\n[Configure Feature Gates](/docs/tasks/administer-cluster/configure-feature-gates/).\n\n## Feature gates in Kubernetes v {#list-of-gates}\n\nThe following tables are a summary of the feature gates that you can set on\ndifferent Kubernetes components.\n\n- The \"Since\" column contains the Kubernetes release when a feature is introduced\n  or its release stage is changed.\n- The \"Until\" column, if not empty, contains the last Kubernetes release in which\n  you can still use a feature gate.\n- If a feature is in the Alpha or Beta state, you can find the feature listed\n  in the [Alpha/Beta feature gate table](#feature-gates-for-alpha-or-beta-features).\n- If a feature is stable you can find all stages for that feature listed in the\n  [Graduated/Deprecated feature gate table](#feature-gates-for-graduated-or-deprecated-features).\n- The [Graduated/Deprecated feature gate table](#feature-gates-for-graduated-or-deprecated-features)\n  also lists deprecated and withdrawn features.\n\n\n> **Note:** For a reference to old feature gates that are removed, please refer to\n[feature gates removed](/docs/reference/command-line-tools-reference/feature-gates-removed/).\n\n\n\n### Feature gates for Alpha or Beta features\n\n\n\n\n### Feature gates for graduated or deprecated features\n\n\n\n## Using a feature\n\n### Feature stages\n\nA feature can be in *Alpha*, *Beta* or *GA* stage.\nAn *Alpha* feature means:\n\n* Disabled by default.\n* Might be buggy. Enabling the feature may expose bugs.\n* Support for feature may be dropped at any time without notice.\n* The API may change in incompatible ways in a later software release without notice.\n* Recommended for use only in short-lived testing clusters, due to increased\n  risk of bugs and lack of long-term support.\n\nA *Beta* feature means:\n\n* Usually enabled by default. Beta API groups are\n  [disabled by default](https://github.com/kubernetes/enhancements/tree/master/keps/sig-architecture/3136-beta-apis-off-by-default).\n* The feature is well tested. Enabling the feature is considered safe.\n* Support for the overall feature will not be dropped, though details may change.\n* The schema and/or semantics of objects may change in incompatible ways in a\n  subsequent beta or stable release. When this happens, we will provide instructions\n  for migrating to the next version. This may require deleting, editing, and\n  re-creating API objects. The editing process may require some thought.\n  This may require downtime for applications that rely on the feature.\n* Recommended for only non-business-critical uses because of potential for\n  incompatible changes in subsequent releases. If you have multiple clusters\n  that can be upgraded independently, you may be able to relax this restriction.\n\n\n> **Note:** Please do try *Beta* features and give feedback on them!\nAfter they exit beta, it may not be practical for us to make more changes.\n\n\nA *General Availability\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/command-line-tools-reference/feature-gates/index.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": null,
          "line_end": null,
          "quote": "Feature Gates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-to-enable-feature-gates",
      "type": "concept",
      "title": "How to enable Feature Gates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 452,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:feature-gates-in-kubernetes-v-skew-currentversion-list-of-gates",
      "type": "concept",
      "title": "Feature gates in Kubernetes v{{% skew currentVersion %}} {#list-of-gates}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 1235,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-a-feature",
      "type": "concept",
      "title": "Using a feature",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 2919,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:list-of-feature-gates-feature-gates",
      "type": "concept",
      "title": "List of feature gates {#feature-gates}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 4826,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:feature-gates-for-alpha-or-beta-features",
      "type": "concept",
      "title": "Feature gates for Alpha or Beta features",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 2468,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:feature-gates-for-graduated-or-deprecated-features",
      "type": "concept",
      "title": "Feature gates for graduated or deprecated features",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 2750,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:feature-stages",
      "type": "concept",
      "title": "Feature stages",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 2939,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RotateKubeletServerCertificate",
      "type": "page",
      "title": "RotateKubeletServerCertificate",
      "summary": "Rotates the Kubelet server certificate.",
      "body": "Rotates the Kubelet server certificate.\n\n**Why it matters**\nThis feature automates the rotation of the Kubelet server certificate, improving security and reducing administrative burden.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RotateKubeletServerCertificate/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RotateKubeletServerCertificate.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RotateKubeletServerCertificate.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RotateKubeletServerCertificate/",
          "line_start": null,
          "line_end": null,
          "quote": "RotateKubeletServerCertificate"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WindowsRunAsUserName",
      "type": "page",
      "title": "WindowsRunAsUserName",
      "summary": "A feature gate that allows you to run Kubernetes components as a specific Windows user.",
      "body": "A feature gate that allows you to run Kubernetes components as a specific Windows user.\n\n**Why it matters**\nThis feature is useful for running Kubernetes components with elevated privileges on Windows systems.\n\n**Key facts**\n- The `WindowsRunAsUserName` feature gate controls the username used by Kubernetes components on Windows.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsRunAsUserName/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WindowsRunAsUserName.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsRunAsUserName.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsRunAsUserName/",
          "line_start": null,
          "line_end": null,
          "quote": "WindowsRunAsUserName"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WatchFromStorageWithoutResourceVersion",
      "type": "page",
      "title": "WatchFromStorageWithoutResourceVersion",
      "summary": "A feature gate that allows watching resources without a resource version.",
      "body": "A feature gate that allows watching resources without a resource version.\n\n**Why it matters**\nThis feature is useful for applications that need to watch resources in real-time, but do not require the latest version.\n\n**Key facts**\n- The `WatchFromStorageWithoutResourceVersion` feature gate controls whether resources can be watched from storage without a resource version.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WatchFromStorageWithoutResourceVersion/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WatchFromStorageWithoutResourceVersion.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WatchFromStorageWithoutResourceVersion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WatchFromStorageWithoutResourceVersion/",
          "line_start": null,
          "line_end": null,
          "quote": "WatchFromStorageWithoutResourceVersion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ComponentStatusz",
      "type": "page",
      "title": "ComponentStatusz",
      "summary": "A feature gate that allows you to display component status in the Kubernetes dashboard.",
      "body": "A feature gate that allows you to display component status in the Kubernetes dashboard.\n\n**Why it matters**\nThis feature is useful for administrators who need to monitor the health of their Kubernetes components.\n\n**Key facts**\n- The `ComponentStatusz` feature gate controls whether component status is displayed in the Kubernetes dashboard.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ComponentStatusz/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ComponentStatusz.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ComponentStatusz.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ComponentStatusz/",
          "line_start": null,
          "line_end": null,
          "quote": "ComponentStatusz"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountTokenPodNodeInfo",
      "type": "page",
      "title": "ServiceAccountTokenPodNodeInfo",
      "summary": "A feature gate that allows you to include pod node information in service account tokens.",
      "body": "A feature gate that allows you to include pod node information in service account tokens.\n\n**Why it matters**\nThis feature is useful for applications that need to authenticate with Kubernetes and require access to node information.\n\n**Key facts**\n- The `ServiceAccountTokenPodNodeInfo` feature gate controls whether pod node information is included in service account tokens.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenPodNodeInfo/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenPodNodeInfo.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenPodNodeInfo.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenPodNodeInfo/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceAccountTokenPodNodeInfo"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SetHostnameAsFQDN",
      "type": "page",
      "title": "SetHostnameAsFQDN",
      "summary": "SetHostnameAsFQDN is a feature gate that allows setting the hostname as the fully qualified domain name (FQDN) in Kubernetes.",
      "body": "SetHostnameAsFQDN is a feature gate that allows setting the hostname as the fully qualified domain name (FQDN) in Kubernetes.\n\n**Why it matters**\nThis feature enables users to set the hostname of their cluster to its FQDN, which can be useful for certain network configurations or requirements.\n\n**Key facts**\n- SetHostnameAsFQDN is a boolean feature gate\n- It allows setting the hostname as the FQDN",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SetHostnameAsFQDN/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SetHostnameAsFQDN.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SetHostnameAsFQDN.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SetHostnameAsFQDN/",
          "line_start": null,
          "line_end": null,
          "quote": "SetHostnameAsFQDN"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TopologyAwareHints",
      "type": "page",
      "title": "TopologyAwareHints",
      "summary": "TopologyAwareHints is a feature gate that enables topology-aware hints in Kubernetes.",
      "body": "TopologyAwareHints is a feature gate that enables topology-aware hints in Kubernetes.\n\n**Why it matters**\nThis feature provides hints to the scheduler about the placement of pods based on their resource requirements and availability.\n\n**Key facts**\n- TopologyAwareHints is an experimental feature\n- It provides hints for pod placement",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyAwareHints/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TopologyAwareHints.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TopologyAwareHints.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyAwareHints/",
          "line_start": null,
          "line_end": null,
          "quote": "TopologyAwareHints"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SeccompDefault",
      "type": "page",
      "title": "SeccompDefault",
      "summary": "SeccompDefault is a feature gate that enables the default seccomp profile in Kubernetes.",
      "body": "SeccompDefault is a feature gate that enables the default seccomp profile in Kubernetes.\n\n**Why it matters**\nThis feature restricts the system calls allowed for pods, improving security and reducing the attack surface.\n\n**Key facts**\n- SeccompDefault is an experimental feature\n- It enables the default seccomp profile",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SeccompDefault/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SeccompDefault.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SeccompDefault.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SeccompDefault/",
          "line_start": null,
          "line_end": null,
          "quote": "SeccompDefault"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EnableAggregatedDiscoveryTimeout",
      "type": "page",
      "title": "EnableAggregatedDiscoveryTimeout",
      "summary": "EnableAggregatedDiscoveryTimeout is a feature gate that allows configuring the aggregated discovery timeout in Kubernetes.",
      "body": "EnableAggregatedDiscoveryTimeout is a feature gate that allows configuring the aggregated discovery timeout in Kubernetes.\n\n**Why it matters**\nThis feature enables users to set a custom timeout for aggregated discovery, which can be useful for certain network configurations or requirements.\n\n**Key facts**\n- EnableAggregatedDiscoveryTimeout is a boolean feature gate\n- It allows configuring the aggregated discovery timeout",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EnableAggregatedDiscoveryTimeout/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EnableAggregatedDiscoveryTimeout.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EnableAggregatedDiscoveryTimeout.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EnableAggregatedDiscoveryTimeout/",
          "line_start": null,
          "line_end": null,
          "quote": "EnableAggregatedDiscoveryTimeout"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIStorageCapacity",
      "type": "page",
      "title": "CSIStorageCapacity",
      "summary": "Enables CSI Storage Capacity feature.",
      "body": "Enables CSI Storage Capacity feature.\n\n**Why it matters**\nThis feature allows Kubernetes to manage storage capacity for CSI drivers.\n\n**Key facts**\n- CSI drivers can report their storage capacity\n- Kubernetes uses this information to optimize resource allocation\n\n**Common pitfalls**\n- Incorrectly configured CSI driver may lead to inaccurate capacity reporting\n\n**Related**\nCSI drivers, Storage Capacity Management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIStorageCapacity/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIStorageCapacity.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIStorageCapacity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIStorageCapacity/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIStorageCapacity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/HugePages",
      "type": "page",
      "title": "HugePages",
      "summary": "Enables Huge Pages feature.",
      "body": "Enables Huge Pages feature.\n\n**Why it matters**\nThis feature allows Kubernetes to use huge pages for pods, improving performance.\n\n**Key facts**\n- Huge pages provide larger memory allocation\n- Improved performance in memory-intensive workloads\n\n**Common pitfalls**\n- Insufficient huge page support on the underlying infrastructure may lead to issues\n\n**Related**\nPods, Huge Pages Support",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HugePages/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/HugePages.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HugePages.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HugePages/",
          "line_start": null,
          "line_end": null,
          "quote": "HugePages"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DisableCloudProviders",
      "type": "page",
      "title": "DisableCloudProviders",
      "summary": "Disables cloud providers for Kubernetes.",
      "body": "Disables cloud providers for Kubernetes.\n\n**Why it matters**\nThis feature allows users to run Kubernetes without cloud provider integration.\n\n**Key facts**\n- Kubernetes will not use cloud provider features\n- Users must manage resources manually\n\n**Common pitfalls**\n- Lack of cloud provider features may limit scalability and flexibility\n\n**Related**\nCloud Providers, On-Premises Deployments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableCloudProviders/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DisableCloudProviders.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DisableCloudProviders.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableCloudProviders/",
          "line_start": null,
          "line_end": null,
          "quote": "DisableCloudProviders"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NetworkPolicyStatus",
      "type": "page",
      "title": "NetworkPolicyStatus",
      "summary": "Enables Network Policy Status feature.",
      "body": "Enables Network Policy Status feature.\n\n**Why it matters**\nThis feature allows users to view the status of network policies in Kubernetes.\n\n**Key facts**\n- Users can see the status of network policies\n- Improved debugging and troubleshooting\n\n**Common pitfalls**\n- Incorrectly configured network policy may lead to issues with policy status reporting\n\n**Related**\nNetwork Policies, Policy Status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NetworkPolicyStatus/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NetworkPolicyStatus.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NetworkPolicyStatus.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NetworkPolicyStatus/",
          "line_start": null,
          "line_end": null,
          "quote": "NetworkPolicyStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ManifestBasedAdmissionControlConfig",
      "type": "page",
      "title": "ManifestBasedAdmissionControlConfig",
      "summary": "A feature gate that enables Manifest-Based Admission Control.",
      "body": "A feature gate that enables Manifest-Based Admission Control.\n\n**Why it matters**\nThis feature allows for more fine-grained control over admission control policies.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later versions.\n\n**Common pitfalls**\n- Requires careful configuration to avoid unintended consequences.\n\n**Related**\nAdmission Control",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ManifestBasedAdmissionControlConfig/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ManifestBasedAdmissionControlConfig.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ManifestBasedAdmissionControlConfig.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ManifestBasedAdmissionControlConfig/",
          "line_start": null,
          "line_end": null,
          "quote": "ManifestBasedAdmissionControlConfig"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodReadyToStartContainersCondition",
      "type": "page",
      "title": "PodReadyToStartContainersCondition",
      "summary": "A feature gate that enables the PodReadyToStartContainers condition.",
      "body": "A feature gate that enables the PodReadyToStartContainers condition.\n\n**Why it matters**\nThis feature allows for more accurate tracking of pod readiness.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.23 and later versions.\n\n**Common pitfalls**\n- May require additional configuration to work correctly with other features.\n\n**Related**\nPod Readiness",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodReadyToStartContainersCondition/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodReadyToStartContainersCondition.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodReadyToStartContainersCondition.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodReadyToStartContainersCondition/",
          "line_start": null,
          "line_end": null,
          "quote": "PodReadyToStartContainersCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerClass",
      "type": "page",
      "title": "ServiceLoadBalancerClass",
      "summary": "A feature gate that enables the Service Load Balancer Class.",
      "body": "A feature gate that enables the Service Load Balancer Class.\n\n**Why it matters**\nThis feature allows for more flexible load balancing configurations.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.22 and later versions.\n\n**Common pitfalls**\n- May require additional configuration to work correctly with other features.\n\n**Related**\nService Load Balancing",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerClass/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerClass.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerClass.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerClass/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceLoadBalancerClass"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRADeviceTaints",
      "type": "page",
      "title": "DRADeviceTaints",
      "summary": "A feature gate that enables Device Taints for DRAs.",
      "body": "A feature gate that enables Device Taints for DRAs.\n\n**Why it matters**\nThis feature allows for more accurate tracking of device availability.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.21 and later versions.\n\n**Common pitfalls**\n- May require additional configuration to work correctly with other features.\n\n**Related**\nDevice Taints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRADeviceTaints/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRADeviceTaints.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRADeviceTaints.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRADeviceTaints/",
          "line_start": null,
          "line_end": null,
          "quote": "DRADeviceTaints"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/LoggingBetaOptions",
      "type": "page",
      "title": "LoggingBetaOptions",
      "summary": "The LoggingBetaOptions feature gate enables or disables beta features for logging.",
      "body": "The LoggingBetaOptions feature gate enables or disables beta features for logging.\n\n**Why it matters**\nThis feature gate allows users to opt-in or opt-out of beta logging features, which can be useful for testing and debugging purposes.\n\n**Key facts**\n- LoggingBetaOptions is a feature gate that controls the availability of beta logging features.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LoggingBetaOptions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/LoggingBetaOptions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LoggingBetaOptions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LoggingBetaOptions/",
          "line_start": null,
          "line_end": null,
          "quote": "LoggingBetaOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationAzureDisk",
      "type": "page",
      "title": "CSIMigrationAzureDisk",
      "summary": "The CSIMigrationAzureDisk feature gate enables or disables the migration of CSI (Container Storage Interface) drivers to Azure Disk.",
      "body": "The CSIMigrationAzureDisk feature gate enables or disables the migration of CSI (Container Storage Interface) drivers to Azure Disk.\n\n**Why it matters**\nThis feature gate allows users to control the migration of CSI drivers to Azure Disk, which can be useful for users who need to use Azure Disk as a storage solution.\n\n**Key facts**\n- CSIMigrationAzureDisk is a feature gate that controls the migration of CSI drivers to Azure Disk.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAzureDisk/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationAzureDisk.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationAzureDisk.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationAzureDisk/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationAzureDisk"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AtomicFIFO",
      "type": "page",
      "title": "AtomicFIFO",
      "summary": "The AtomicFIFO feature gate enables or disables the use of atomic FIFO (First-In-First-Out) for persistent volumes.",
      "body": "The AtomicFIFO feature gate enables or disables the use of atomic FIFO (First-In-First-Out) for persistent volumes.\n\n**Why it matters**\nThis feature gate allows users to opt-in or opt-out of using atomic FIFO for persistent volumes, which can be useful for users who need high-performance storage solutions.\n\n**Key facts**\n- AtomicFIFO is a feature gate that controls the use of atomic FIFO for persistent volumes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AtomicFIFO/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AtomicFIFO.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AtomicFIFO.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AtomicFIFO/",
          "line_start": null,
          "line_end": null,
          "quote": "AtomicFIFO"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodDisruptionBudget",
      "type": "page",
      "title": "PodDisruptionBudget",
      "summary": "The PodDisruptionBudget feature gate enables or disables pod disruption budgets.",
      "body": "The PodDisruptionBudget feature gate enables or disables pod disruption budgets.\n\n**Why it matters**\nThis feature gate allows users to control the availability of pod disruption budgets, which can be useful for users who need to manage resource utilization and ensure application availability.\n\n**Key facts**\n- PodDisruptionBudget is a feature gate that controls the availability of pod disruption budgets.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodDisruptionBudget/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodDisruptionBudget.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodDisruptionBudget.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodDisruptionBudget/",
          "line_start": null,
          "line_end": null,
          "quote": "PodDisruptionBudget"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RelaxedDNSSearchValidation",
      "type": "page",
      "title": "RelaxedDNSSearchValidation",
      "summary": "A feature gate that relaxes DNS search validation.",
      "body": "A feature gate that relaxes DNS search validation.\n\n**Why it matters**\nThis allows for more flexible DNS configuration in Kubernetes clusters.\n\n**Key facts**\n- RelaxedDNS search validation is enabled by default.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RelaxedDNSSearchValidation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RelaxedDNSSearchValidation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RelaxedDNSSearchValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RelaxedDNSSearchValidation/",
          "line_start": null,
          "line_end": null,
          "quote": "RelaxedDNSSearchValidation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DisableCPUQuotaWithExclusiveCPUs",
      "type": "page",
      "title": "DisableCPUQuotaWithExclusiveCPUs",
      "summary": "A feature gate that disables CPU quota with exclusive CPUs.",
      "body": "A feature gate that disables CPU quota with exclusive CPUs.\n\n**Why it matters**\nThis allows for more efficient resource allocation in Kubernetes clusters.\n\n**Key facts**\n- Disabling CPU quota with exclusive CPUs can improve performance.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableCPUQuotaWithExclusiveCPUs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DisableCPUQuotaWithExclusiveCPUs.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DisableCPUQuotaWithExclusiveCPUs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableCPUQuotaWithExclusiveCPUs/",
          "line_start": null,
          "line_end": null,
          "quote": "DisableCPUQuotaWithExclusiveCPUs"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ExternalPolicyForExternalIP",
      "type": "page",
      "title": "ExternalPolicyForExternalIP",
      "summary": "A feature gate that enables external policy for external IP.",
      "body": "A feature gate that enables external policy for external IP.\n\n**Why it matters**\nThis allows for more flexible IP management in Kubernetes clusters.\n\n**Key facts**\n- External policy for external IP is disabled by default.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExternalPolicyForExternalIP/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ExternalPolicyForExternalIP.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExternalPolicyForExternalIP.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExternalPolicyForExternalIP/",
          "line_start": null,
          "line_end": null,
          "quote": "ExternalPolicyForExternalIP"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RemoveSelfLink",
      "type": "page",
      "title": "RemoveSelfLink",
      "summary": "A feature gate that removes self-link.",
      "body": "A feature gate that removes self-link.\n\n**Why it matters**\nThis simplifies API object management in Kubernetes clusters.\n\n**Key facts**\n- Removing self-link can improve API performance.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RemoveSelfLink/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RemoveSelfLink.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RemoveSelfLink.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RemoveSelfLink/",
          "line_start": null,
          "line_end": null,
          "quote": "RemoveSelfLink"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/IPTablesOwnershipCleanup",
      "type": "page",
      "title": "IPTablesOwnershipCleanup",
      "summary": "IPTablesOwnershipCleanup is a feature gate that enables or disables the cleanup of IP tables ownership.",
      "body": "IPTablesOwnershipCleanup is a feature gate that enables or disables the cleanup of IP tables ownership.\n\n**Why it matters**\nThis feature gate matters because it allows users to control whether IP tables ownership is cleaned up, which can be useful in certain scenarios where manual intervention is required.\n\n**Key facts**\n- IPTablesOwnershipCleanup is a boolean flag that can be enabled or disabled\n- When enabled, the cleanup of IP tables ownership occurs\n\n**Common pitfalls**\n- Enabling this feature gate may require additional configuration or manual intervention",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IPTablesOwnershipCleanup/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/IPTablesOwnershipCleanup.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/IPTablesOwnershipCleanup.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IPTablesOwnershipCleanup/",
          "line_start": null,
          "line_end": null,
          "quote": "IPTablesOwnershipCleanup"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AffinityInAnnotations",
      "type": "page",
      "title": "AffinityInAnnotations",
      "summary": "AffinityInAnnotations is a feature gate that enables or disables the use of affinity in annotations.",
      "body": "AffinityInAnnotations is a feature gate that enables or disables the use of affinity in annotations.\n\n**Why it matters**\nThis feature gate matters because it allows users to control whether affinity can be specified in annotations, which can be useful for certain deployment scenarios.\n\n**Key facts**\n- AffinityInAnnotations is a boolean flag that can be enabled or disabled\n- When enabled, affinity can be specified in annotations\n\n**Common pitfalls**\n- Enabling this feature gate may lead to unexpected behavior if not used correctly",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AffinityInAnnotations/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AffinityInAnnotations.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AffinityInAnnotations.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AffinityInAnnotations/",
          "line_start": null,
          "line_end": null,
          "quote": "AffinityInAnnotations"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WindowsHostProcessContainers",
      "type": "page",
      "title": "WindowsHostProcessContainers",
      "summary": "WindowsHostProcessContainers is a feature gate that enables or disables the use of Windows host process containers.",
      "body": "WindowsHostProcessContainers is a feature gate that enables or disables the use of Windows host process containers.\n\n**Why it matters**\nThis feature gate matters because it allows users to control whether Windows host process containers are used, which can be useful for certain deployment scenarios on Windows systems.\n\n**Key facts**\n- WindowsHostProcessContainers is a boolean flag that can be enabled or disabled\n- When enabled, Windows host process containers are used\n\n**Common pitfalls**\n- Enabling this feature gate may require additional configuration or manual intervention",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsHostProcessContainers/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WindowsHostProcessContainers.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsHostProcessContainers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsHostProcessContainers/",
          "line_start": null,
          "line_end": null,
          "quote": "WindowsHostProcessContainers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/VolumeLimitScaling",
      "type": "page",
      "title": "VolumeLimitScaling",
      "summary": "VolumeLimitScaling is a feature gate that enables or disables the scaling of volumes.",
      "body": "VolumeLimitScaling is a feature gate that enables or disables the scaling of volumes.\n\n**Why it matters**\nThis feature gate matters because it allows users to control whether volume scaling occurs, which can be useful for certain deployment scenarios where storage needs to be managed dynamically.\n\n**Key facts**\n- VolumeLimitScaling is a boolean flag that can be enabled or disabled\n- When enabled, volume scaling occurs\n\n**Common pitfalls**\n- Enabling this feature gate may lead to unexpected behavior if not used correctly",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeLimitScaling/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/VolumeLimitScaling.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeLimitScaling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeLimitScaling/",
          "line_start": null,
          "line_end": null,
          "quote": "VolumeLimitScaling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StrictCostEnforcementForVAP",
      "type": "page",
      "title": "StrictCostEnforcementForVAP",
      "summary": "StrictCostEnforcementForVAP is a feature gate that enforces strict cost accounting for Virtualized Attached Persistent (VAP) volumes.",
      "body": "StrictCostEnforcementForVAP is a feature gate that enforces strict cost accounting for Virtualized Attached Persistent (VAP) volumes.\n\n**Why it matters**\nThis feature ensures accurate cost tracking and prevents unexpected costs due to misconfigured VAP volumes.\n\n**Key facts**\n- Enforces strict cost accounting for VAP volumes\n- Prevents unexpected costs due to misconfiguration\n\n**Common pitfalls**\n- Misconfigured VAP volumes can lead to high costs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StrictCostEnforcementForVAP/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StrictCostEnforcementForVAP.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StrictCostEnforcementForVAP.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StrictCostEnforcementForVAP/",
          "line_start": null,
          "line_end": null,
          "quote": "StrictCostEnforcementForVAP"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/JobReadyPods",
      "type": "page",
      "title": "JobReadyPods",
      "summary": "JobReadyPods is a feature gate that allows pods to be considered ready for use by jobs even if they have not yet completed their startup process.",
      "body": "JobReadyPods is a feature gate that allows pods to be considered ready for use by jobs even if they have not yet completed their startup process.\n\n**Why it matters**\nThis feature enables faster job execution and reduces startup time for pods.\n\n**Key facts**\n- Allows pods to be considered ready before startup completion\n- Enables faster job execution\n\n**Common pitfalls**\n- Pods may not be fully functional if they are considered ready too early",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobReadyPods/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/JobReadyPods.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobReadyPods.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobReadyPods/",
          "line_start": null,
          "line_end": null,
          "quote": "JobReadyPods"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StorageVersionMigrator",
      "type": "page",
      "title": "StorageVersionMigrator",
      "summary": "StorageVersionMigrator is a feature gate that enables the migration of storage versions to ensure compatibility with newer Kubernetes versions.",
      "body": "StorageVersionMigrator is a feature gate that enables the migration of storage versions to ensure compatibility with newer Kubernetes versions.\n\n**Why it matters**\nThis feature ensures seamless upgrades and prevents storage version incompatibility issues.\n\n**Key facts**\n- Enables storage version migration\n- Ensures compatibility with newer Kubernetes versions\n\n**Common pitfalls**\n- Incompatible storage versions can cause upgrade failures",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageVersionMigrator/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StorageVersionMigrator.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StorageVersionMigrator.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageVersionMigrator/",
          "line_start": null,
          "line_end": null,
          "quote": "StorageVersionMigrator"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/JobBackoffLimitPerIndex",
      "type": "page",
      "title": "JobBackoffLimitPerIndex",
      "summary": "JobBackoffLimitPerIndex is a feature gate that allows job backoff limits to be set per index, enabling more granular control over job retries.",
      "body": "JobBackoffLimitPerIndex is a feature gate that allows job backoff limits to be set per index, enabling more granular control over job retries.\n\n**Why it matters**\nThis feature enables more efficient job retry mechanisms and reduces unnecessary retries.\n\n**Key facts**\n- Allows job backoff limits to be set per index\n- Enables more efficient job retry mechanisms\n\n**Common pitfalls**\n- Incorrectly configured job backoff limits can lead to inefficient retries",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobBackoffLimitPerIndex/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/JobBackoffLimitPerIndex.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobBackoffLimitPerIndex.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobBackoffLimitPerIndex/",
          "line_start": null,
          "line_end": null,
          "quote": "JobBackoffLimitPerIndex"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletCredentialProviders",
      "type": "page",
      "title": "KubeletCredentialProviders",
      "summary": "KubeletCredentialProviders is a feature gate that enables Kubelet to use credential providers.",
      "body": "KubeletCredentialProviders is a feature gate that enables Kubelet to use credential providers.\n\n**Why it matters**\nThis feature allows Kubelet to authenticate with the API server using credential providers, such as Service Accounts or AWS IAM roles.\n\n**Key facts**\n- KubeletCredentialProviders is enabled by default in Kubernetes 1.24 and later versions.\n- To use this feature, you need to set the `KubeletCredentialProviders` feature gate to `true`.\n\n**Common pitfalls**\n- If not properly configured, Kubelet may fail to authenticate with the API server, leading to pod failures.\n\n**Related**\nService Accounts, AWS IAM roles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletCredentialProviders/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletCredentialProviders.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletCredentialProviders.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletCredentialProviders/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletCredentialProviders"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NodeInclusionPolicyInPodTopologySpread",
      "type": "page",
      "title": "NodeInclusionPolicyInPodTopologySpread",
      "summary": "NodeInclusionPolicyInPodTopologySpread is a feature gate that enables node inclusion policy in pod topology spread.",
      "body": "NodeInclusionPolicyInPodTopologySpread is a feature gate that enables node inclusion policy in pod topology spread.\n\n**Why it matters**\nThis feature allows the scheduler to take into account the node's inclusion policy when spreading pods across nodes.\n\n**Key facts**\n- NodeInclusionPolicyInPodTopologySpread is enabled by default in Kubernetes 1.24 and later versions.\n- To use this feature, you need to set the `NodeInclusionPolicyInPodTopologySpread` feature gate to `true`.\n\n**Common pitfalls**\n- If not properly configured, pod scheduling may be affected, leading to decreased cluster utilization.\n\n**Related**\nPod topology spread, Node selection",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeInclusionPolicyInPodTopologySpread/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NodeInclusionPolicyInPodTopologySpread.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeInclusionPolicyInPodTopologySpread.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeInclusionPolicyInPodTopologySpread/",
          "line_start": null,
          "line_end": null,
          "quote": "NodeInclusionPolicyInPodTopologySpread"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigration",
      "type": "page",
      "title": "CSIMigration",
      "summary": "CSIMigration is a feature gate that enables CSI migration.",
      "body": "CSIMigration is a feature gate that enables CSI migration.\n\n**Why it matters**\nThis feature allows Kubernetes to migrate from the legacy CSI driver to the new CSI driver.\n\n**Key facts**\n- CSIMigration is enabled by default in Kubernetes 1.24 and later versions.\n- To use this feature, you need to set the `CSIMigration` feature gate to `true`.\n\n**Common pitfalls**\n- If not properly configured, CSI migration may fail, leading to data loss or corruption.\n\n**Related**\nCSI drivers, Storage classes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigration/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigration.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigration.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigration/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AppArmorFields",
      "type": "page",
      "title": "AppArmorFields",
      "summary": "AppArmorFields is a feature gate that enables AppArmor fields.",
      "body": "AppArmorFields is a feature gate that enables AppArmor fields.\n\n**Why it matters**\nThis feature allows Kubernetes to use AppArmor profiles for pod security.\n\n**Key facts**\n- AppArmorFields is enabled by default in Kubernetes 1.24 and later versions.\n- To use this feature, you need to set the `AppArmorFields` feature gate to `true`.\n\n**Common pitfalls**\n- If not properly configured, AppArmor profiles may not be applied correctly, leading to security vulnerabilities.\n\n**Related**\nAppArmor profiles, Pod security",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AppArmorFields/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AppArmorFields.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AppArmorFields.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AppArmorFields/",
          "line_start": null,
          "line_end": null,
          "quote": "AppArmorFields"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceTopology",
      "type": "page",
      "title": "ServiceTopology",
      "summary": "Enables service topology awareness in Kubernetes.",
      "body": "Enables service topology awareness in Kubernetes.\n\n**Why it matters**\nAllows for more efficient resource allocation and scaling based on application topology.\n\n**Key facts**\n- Service topology is a feature that enables applications to be aware of their own topology.\n- This can lead to better scalability, reliability, and performance.\n\n**Common pitfalls**\n- Requires careful configuration to avoid unnecessary overhead or complexity.\n\n**Related**\nKubernetes resource allocation, Application scaling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceTopology/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceTopology.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceTopology.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceTopology/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceTopology"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfigurationEgressSelector",
      "type": "page",
      "title": "StructuredAuthenticationConfigurationEgressSelector",
      "summary": "Allows for structured authentication configuration in Kubernetes.",
      "body": "Allows for structured authentication configuration in Kubernetes.\n\n**Why it matters**\nProvides a standardized way to configure authentication settings across the cluster.\n\n**Key facts**\n- Structured authentication configuration enables consistent and secure authentication practices.\n- This feature simplifies authentication management for administrators.\n\n**Common pitfalls**\n- Requires proper configuration to avoid security vulnerabilities.\n\n**Related**\nKubernetes authentication, Cluster security",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfigurationEgressSelector/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfigurationEgressSelector.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfigurationEgressSelector.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StructuredAuthenticationConfigurationEgressSelector/",
          "line_start": null,
          "line_end": null,
          "quote": "StructuredAuthenticationConfigurationEgressSelector"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/APIServingWithRoutine",
      "type": "page",
      "title": "APIServingWithRoutine",
      "summary": "Enables serving APIs with the Routine framework in Kubernetes.",
      "body": "Enables serving APIs with the Routine framework in Kubernetes.\n\n**Why it matters**\nProvides a flexible and scalable way to serve APIs, allowing for better performance and reliability.\n\n**Key facts**\n- APIServingWithRoutine enables efficient API serving through the Routine framework.\n- This feature supports high-performance and scalable API deployment.\n\n**Common pitfalls**\n- Requires proper configuration of the Routine framework to avoid issues.\n\n**Related**\nKubernetes API serving, Application performance",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIServingWithRoutine/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/APIServingWithRoutine.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/APIServingWithRoutine.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIServingWithRoutine/",
          "line_start": null,
          "line_end": null,
          "quote": "APIServingWithRoutine"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DownwardAPIHugePages",
      "type": "page",
      "title": "DownwardAPIHugePages",
      "summary": "Provides access to huge pages through Downward API in Kubernetes.",
      "body": "Provides access to huge pages through Downward API in Kubernetes.\n\n**Why it matters**\nAllows for efficient use of huge pages, improving application performance and reducing memory usage.\n\n**Key facts**\n- DownwardAPIHugePages enables applications to request huge pages.\n- This feature supports better resource utilization and reduced memory overhead.\n\n**Common pitfalls**\n- Requires proper configuration to avoid issues with huge page allocation.\n\n**Related**\nKubernetes resource management, Application performance optimization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DownwardAPIHugePages/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DownwardAPIHugePages.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DownwardAPIHugePages.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DownwardAPIHugePages/",
          "line_start": null,
          "line_end": null,
          "quote": "DownwardAPIHugePages"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ContextualLogging",
      "type": "page",
      "title": "ContextualLogging",
      "summary": "Enables contextual logging for Kubernetes components.",
      "body": "Enables contextual logging for Kubernetes components.\n\n**Why it matters**\nProvides detailed logs to aid debugging and troubleshooting.\n\n**Key facts**\n- Enabled by default in some Kubernetes distributions.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContextualLogging/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ContextualLogging.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ContextualLogging.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContextualLogging/",
          "line_start": null,
          "line_end": null,
          "quote": "ContextualLogging"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceAppProtocol",
      "type": "page",
      "title": "ServiceAppProtocol",
      "summary": "Configures the protocol used for communication between services.",
      "body": "Configures the protocol used for communication between services.\n\n**Why it matters**\nAllows for customization of service-to-service communication protocols.\n\n**Key facts**\n- Can be set to HTTP or HTTPS.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAppProtocol/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceAppProtocol.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAppProtocol.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAppProtocol/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceAppProtocol"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EndpointSliceNodeName",
      "type": "page",
      "title": "EndpointSliceNodeName",
      "summary": "Configures the node name used for EndpointSlices.",
      "body": "Configures the node name used for EndpointSlices.\n\n**Why it matters**\nAllows for customization of EndpointSlice node names.\n\n**Key facts**\n- Can be set to a specific node name or left unset.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSliceNodeName/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EndpointSliceNodeName.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EndpointSliceNodeName.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSliceNodeName/",
          "line_start": null,
          "line_end": null,
          "quote": "EndpointSliceNodeName"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PortForwardWebsockets",
      "type": "page",
      "title": "PortForwardWebsockets",
      "summary": "Enables WebSocket support for port forwarding.",
      "body": "Enables WebSocket support for port forwarding.\n\n**Why it matters**\nAllows for bi-directional communication between the client and container.\n\n**Key facts**\n- Enabled by default in some Kubernetes distributions.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PortForwardWebsockets/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PortForwardWebsockets.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PortForwardWebsockets.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PortForwardWebsockets/",
          "line_start": null,
          "line_end": null,
          "quote": "PortForwardWebsockets"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/LogarithmicScaleDown",
      "type": "page",
      "title": "LogarithmicScaleDown",
      "summary": "A feature gate that enables logarithmic scale down of pods.",
      "body": "A feature gate that enables logarithmic scale down of pods.\n\n**Why it matters**\nThis feature allows for more efficient scaling of pods, reducing the number of requests to the API server.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.21 and later\n- Can be disabled using the `--feature-gates=LogarithmicScaleDown=false` flag\n\n**Common pitfalls**\n- May not work with older versions of Kubernetes or third-party tools that rely on linear scaling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LogarithmicScaleDown/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/LogarithmicScaleDown.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LogarithmicScaleDown.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LogarithmicScaleDown/",
          "line_start": null,
          "line_end": null,
          "quote": "LogarithmicScaleDown"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletFineGrainedAuthz",
      "type": "page",
      "title": "KubeletFineGrainedAuthz",
      "summary": "A feature gate that enables fine-grained authorization for the Kubelet.",
      "body": "A feature gate that enables fine-grained authorization for the Kubelet.\n\n**Why it matters**\nThis feature allows for more secure and flexible access control to node resources.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.20 and later\n- Requires a compatible version of the `kubelet` component\n\n**Common pitfalls**\n- May require additional configuration or updates to existing policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletFineGrainedAuthz/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletFineGrainedAuthz.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletFineGrainedAuthz.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletFineGrainedAuthz/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletFineGrainedAuthz"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MultiCIDRServiceAllocator",
      "type": "page",
      "title": "MultiCIDRServiceAllocator",
      "summary": "A feature gate that enables the use of multiple CIDRs for service allocation.",
      "body": "A feature gate that enables the use of multiple CIDRs for service allocation.\n\n**Why it matters**\nThis feature allows for more flexible and efficient service allocation in multi-network environments.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.22 and later\n- Requires a compatible version of the `service` component\n\n**Common pitfalls**\n- May require additional configuration or updates to existing networking policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MultiCIDRServiceAllocator/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MultiCIDRServiceAllocator.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MultiCIDRServiceAllocator.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MultiCIDRServiceAllocator/",
          "line_start": null,
          "line_end": null,
          "quote": "MultiCIDRServiceAllocator"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/HonorPVReclaimPolicy",
      "type": "page",
      "title": "HonorPVReclaimPolicy",
      "summary": "A feature gate that enables honoring of PV reclaim policy.",
      "body": "A feature gate that enables honoring of PV reclaim policy.\n\n**Why it matters**\nThis feature allows for more efficient and secure handling of persistent volumes.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.21 and later\n- Requires a compatible version of the `persistentvolume` component\n\n**Common pitfalls**\n- May require additional configuration or updates to existing storage policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HonorPVReclaimPolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/HonorPVReclaimPolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HonorPVReclaimPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HonorPVReclaimPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "HonorPVReclaimPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MutablePodResourcesForSuspendedJobs",
      "type": "page",
      "title": "MutablePodResourcesForSuspendedJobs",
      "summary": "MutablePodResourcesForSuspendedJobs is a feature gate that allows modifying pod resources for suspended jobs.",
      "body": "MutablePodResourcesForSuspendedJobs is a feature gate that allows modifying pod resources for suspended jobs.\n\n**Why it matters**\nThis feature enables more flexibility in managing job resources, even when jobs are suspended.\n\n**Key facts**\n- Feature gate: MutablePodResourcesForSuspendedJobs\n- Allows modification of pod resources for suspended jobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutablePodResourcesForSuspendedJobs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MutablePodResourcesForSuspendedJobs.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MutablePodResourcesForSuspendedJobs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutablePodResourcesForSuspendedJobs/",
          "line_start": null,
          "line_end": null,
          "quote": "MutablePodResourcesForSuspendedJobs"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RelaxedEnvironmentVariableValidation",
      "type": "page",
      "title": "RelaxedEnvironmentVariableValidation",
      "summary": "RelaxedEnvironmentVariableValidation is a feature gate that relaxes environment variable validation.",
      "body": "RelaxedEnvironmentVariableValidation is a feature gate that relaxes environment variable validation.\n\n**Why it matters**\nThis feature reduces the strictness of environment variable validation, allowing for more flexibility in job configurations.\n\n**Key facts**\n- Feature gate: RelaxedEnvironmentVariableValidation\n- Relaxes environment variable validation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RelaxedEnvironmentVariableValidation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RelaxedEnvironmentVariableValidation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RelaxedEnvironmentVariableValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RelaxedEnvironmentVariableValidation/",
          "line_start": null,
          "line_end": null,
          "quote": "RelaxedEnvironmentVariableValidation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/NativeHistograms",
      "type": "page",
      "title": "NativeHistograms",
      "summary": "NativeHistograms is a feature gate that enables native histograms.",
      "body": "NativeHistograms is a feature gate that enables native histograms.\n\n**Why it matters**\nThis feature provides more accurate and efficient histogram collection, improving performance and resource utilization.\n\n**Key facts**\n- Feature gate: NativeHistograms\n- Enables native histograms",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NativeHistograms/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/NativeHistograms.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NativeHistograms.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NativeHistograms/",
          "line_start": null,
          "line_end": null,
          "quote": "NativeHistograms"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CloudDualStackNodeIPs",
      "type": "page",
      "title": "CloudDualStackNodeIPs",
      "summary": "CloudDualStackNodeIPs is a feature gate that supports dual-stack node IPs in cloud environments.",
      "body": "CloudDualStackNodeIPs is a feature gate that supports dual-stack node IPs in cloud environments.\n\n**Why it matters**\nThis feature enables the use of both IPv4 and IPv6 addresses for node IPs, improving compatibility and flexibility in cloud deployments.\n\n**Key facts**\n- Feature gate: CloudDualStackNodeIPs\n- Supports dual-stack node IPs in cloud environments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CloudDualStackNodeIPs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CloudDualStackNodeIPs.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CloudDualStackNodeIPs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CloudDualStackNodeIPs/",
          "line_start": null,
          "line_end": null,
          "quote": "CloudDualStackNodeIPs"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ConsistentHTTPGetHandlers",
      "type": "page",
      "title": "ConsistentHTTPGetHandlers",
      "summary": "A feature gate that enables consistent HTTP GET handlers for Kubernetes components.",
      "body": "A feature gate that enables consistent HTTP GET handlers for Kubernetes components.\n\n**Why it matters**\nThis feature ensures that HTTP GET handlers behave consistently across different Kubernetes components, improving reliability and predictability.\n\n**Key facts**\n- Enables consistent HTTP GET handlers for Kubernetes components\n- Improves reliability and predictability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ConsistentHTTPGetHandlers/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ConsistentHTTPGetHandlers.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ConsistentHTTPGetHandlers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ConsistentHTTPGetHandlers/",
          "line_start": null,
          "line_end": null,
          "quote": "ConsistentHTTPGetHandlers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DisableAllocatorDualWrite",
      "type": "page",
      "title": "DisableAllocatorDualWrite",
      "summary": "A feature gate that disables allocator dual write for Kubernetes components.",
      "body": "A feature gate that disables allocator dual write for Kubernetes components.\n\n**Why it matters**\nThis feature can improve performance by reducing unnecessary writes to the allocator, but may require careful consideration of trade-offs.\n\n**Key facts**\n- Disables allocator dual write for Kubernetes components\n- May improve performance\n\n**Common pitfalls**\n- Requires careful consideration of trade-offs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableAllocatorDualWrite/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DisableAllocatorDualWrite.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DisableAllocatorDualWrite.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableAllocatorDualWrite/",
          "line_start": null,
          "line_end": null,
          "quote": "DisableAllocatorDualWrite"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DynamicVolumeProvisioning",
      "type": "page",
      "title": "DynamicVolumeProvisioning",
      "summary": "A feature gate that enables dynamic volume provisioning for Kubernetes components.",
      "body": "A feature gate that enables dynamic volume provisioning for Kubernetes components.\n\n**Why it matters**\nThis feature allows for more flexible and efficient storage management, but may require additional configuration and monitoring.\n\n**Key facts**\n- Enables dynamic volume provisioning for Kubernetes components\n- Improves flexibility and efficiency of storage management\n\n**Common pitfalls**\n- Requires additional configuration and monitoring",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicVolumeProvisioning/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DynamicVolumeProvisioning.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DynamicVolumeProvisioning.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicVolumeProvisioning/",
          "line_start": null,
          "line_end": null,
          "quote": "DynamicVolumeProvisioning"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SELinuxChangePolicy",
      "type": "page",
      "title": "SELinuxChangePolicy",
      "summary": "A feature gate that enables SELinux change policy for Kubernetes components.",
      "body": "A feature gate that enables SELinux change policy for Kubernetes components.\n\n**Why it matters**\nThis feature allows for more fine-grained control over security policies, but may require additional expertise and configuration.\n\n**Key facts**\n- Enables SELinux change policy for Kubernetes components\n- Improves flexibility of security policies\n\n**Common pitfalls**\n- Requires additional expertise and configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SELinuxChangePolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SELinuxChangePolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SELinuxChangePolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SELinuxChangePolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "SELinuxChangePolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/BlockVolume",
      "type": "page",
      "title": "BlockVolume",
      "summary": "A feature gate that enables block volumes in Kubernetes.",
      "body": "A feature gate that enables block volumes in Kubernetes.\n\n**Why it matters**\nEnables the use of persistent storage for pods and stateful applications.\n\n**Key facts**\n- Block volumes provide persistent storage for pods and stateful applications.\n- Enabled by default, but can be disabled if not needed.\n\n**Common pitfalls**\n- Requires proper configuration to avoid data loss or corruption.\n\n**Related**\nPersistent Volumes (PVs), StatefulSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BlockVolume/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/BlockVolume.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/BlockVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BlockVolume/",
          "line_start": null,
          "line_end": null,
          "quote": "BlockVolume"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodShareProcessNamespace",
      "type": "page",
      "title": "PodShareProcessNamespace",
      "summary": "A feature gate that enables sharing process namespace between pods.",
      "body": "A feature gate that enables sharing process namespace between pods.\n\n**Why it matters**\nAllows for more efficient use of system resources and improved security.\n\n**Key facts**\n- Enables sharing of process namespace between pods in the same namespace.\n- Improves resource utilization and reduces overhead.\n\n**Common pitfalls**\n- Requires careful configuration to avoid security risks.\n\n**Related**\nPods, Namespaces",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodShareProcessNamespace/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodShareProcessNamespace.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodShareProcessNamespace.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodShareProcessNamespace/",
          "line_start": null,
          "line_end": null,
          "quote": "PodShareProcessNamespace"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DeclarativeValidationBeta",
      "type": "page",
      "title": "DeclarativeValidationBeta",
      "summary": "",
      "body": "This feature gate acts as the Global Safety Switch for Beta-stage validation rules (`+k8s:beta`).\nIt allows cluster admins to disable enforcement for validations in the Beta stage if\nregressions are found, forcing them back to Shadow mode.\n\nIn Shadow mode, declarative validation is executed and mismatches against handwritten\nvalidation are logged as metrics, but failures do not reject requests.\nHandwritten validation remains authoritative and enforced.\n\nEnforcement logic for resources using `WithDeclarativeEnforcement()`:\n- Standard tags (no prefix): Always Enforced (Bypasses this gate).\n- Beta tags (`+k8s:beta`): Enforced when this gate is enabled (default), otherwise Shadowed.\n- Alpha tags (`+k8s:alpha`): Always Shadowed.\n\nThis gate has no effect if the master `DeclarativeValidation` feature gate is disabled.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidationBeta/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DeclarativeValidationBeta.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DeclarativeValidationBeta.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidationBeta/",
          "line_start": null,
          "line_end": null,
          "quote": "DeclarativeValidationBeta"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodOverhead",
      "type": "page",
      "title": "PodOverhead",
      "summary": "A feature gate that enables pod overhead calculation.",
      "body": "A feature gate that enables pod overhead calculation.\n\n**Why it matters**\nProvides accurate resource utilization metrics for pods and clusters.\n\n**Key facts**\n- Calculates the overhead of running a pod in terms of CPU and memory usage.\n- Helps optimize resource allocation and improve cluster efficiency.\n\n**Common pitfalls**\n- Requires proper configuration to avoid inaccurate calculations.\n\n**Related**\nPods, Resource Utilization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodOverhead/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodOverhead.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodOverhead.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodOverhead/",
          "line_start": null,
          "line_end": null,
          "quote": "PodOverhead"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DynamicProvisioningScheduling",
      "type": "page",
      "title": "DynamicProvisioningScheduling",
      "summary": "A feature gate that enables dynamic provisioning and scheduling.",
      "body": "A feature gate that enables dynamic provisioning and scheduling.\n\n**Why it matters**\nImproves resource allocation efficiency and reduces waiting times for pods.\n\n**Key facts**\n- Enables dynamic creation of Persistent Volumes (PVs) and scheduling of pods.\n- Improves resource utilization and reduces pod waiting times.\n\n**Common pitfalls**\n- Requires proper configuration to avoid resource contention and conflicts.\n\n**Related**\nPersistent Volumes (PVs), Pod Scheduling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicProvisioningScheduling/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DynamicProvisioningScheduling.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DynamicProvisioningScheduling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicProvisioningScheduling/",
          "line_start": null,
          "line_end": null,
          "quote": "DynamicProvisioningScheduling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountTokenJTI",
      "type": "page",
      "title": "ServiceAccountTokenJTI",
      "summary": "ServiceAccountTokenJTI is a feature gate that enables or disables Service Account Token JTI.",
      "body": "ServiceAccountTokenJTI is a feature gate that enables or disables Service Account Token JTI.\n\n**Why it matters**\nThis feature gate allows administrators to control the behavior of Service Account Token JTI in their cluster.\n\n**Key facts**\n- ServiceAccountTokenJTI is used to enable or disable Service Account Token JTI\n- Feature gates are a way to control the behavior of certain features in Kubernetes\n\n**Common pitfalls**\n- If not properly configured, ServiceAccountTokenJTI can lead to security vulnerabilities\n\n**Related**\nService Accounts, Tokens",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenJTI/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenJTI.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenJTI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenJTI/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceAccountTokenJTI"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MixedProtocolLBService",
      "type": "page",
      "title": "MixedProtocolLBService",
      "summary": "MixedProtocolLBService is a feature gate that enables or disables Mixed Protocol Load Balancer Service.",
      "body": "MixedProtocolLBService is a feature gate that enables or disables Mixed Protocol Load Balancer Service.\n\n**Why it matters**\nThis feature gate allows administrators to control the behavior of Mixed Protocol Load Balancer Service in their cluster.\n\n**Key facts**\n- MixedProtocolLBService is used to enable or disable Mixed Protocol Load Balancer Service\n- Feature gates are a way to control the behavior of certain features in Kubernetes\n\n**Common pitfalls**\n- If not properly configured, MixedProtocolLBService can lead to performance issues\n\n**Related**\nLoad Balancers, Services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MixedProtocolLBService/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MixedProtocolLBService.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MixedProtocolLBService.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MixedProtocolLBService/",
          "line_start": null,
          "line_end": null,
          "quote": "MixedProtocolLBService"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ExpandInUsePersistentVolumes",
      "type": "page",
      "title": "ExpandInUsePersistentVolumes",
      "summary": "ExpandInUsePersistentVolumes is a feature gate that enables or disables the expansion of in-use persistent volumes.",
      "body": "ExpandInUsePersistentVolumes is a feature gate that enables or disables the expansion of in-use persistent volumes.\n\n**Why it matters**\nThis feature gate allows administrators to control the behavior of expanding in-use persistent volumes in their cluster.\n\n**Key facts**\n- ExpandInUsePersistentVolumes is used to enable or disable the expansion of in-use persistent volumes\n- Feature gates are a way to control the behavior of certain features in Kubernetes\n\n**Common pitfalls**\n- If not properly configured, ExpandInUsePersistentVolumes can lead to data corruption\n\n**Related**\nPersistent Volumes, Volume Expansion",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandInUsePersistentVolumes/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ExpandInUsePersistentVolumes.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExpandInUsePersistentVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandInUsePersistentVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": "ExpandInUsePersistentVolumes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EvenPodsSpread",
      "type": "page",
      "title": "EvenPodsSpread",
      "summary": "EvenPodsSpread is a feature gate that enables or disables even pod spread.",
      "body": "EvenPodsSpread is a feature gate that enables or disables even pod spread.\n\n**Why it matters**\nThis feature gate allows administrators to control the behavior of even pod spread in their cluster.\n\n**Key facts**\n- EvenPodsSpread is used to enable or disable even pod spread\n- Feature gates are a way to control the behavior of certain features in Kubernetes\n\n**Common pitfalls**\n- If not properly configured, EvenPodsSpread can lead to uneven resource utilization\n\n**Related**\nPod Scheduling, Resource Utilization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EvenPodsSpread/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EvenPodsSpread.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EvenPodsSpread.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EvenPodsSpread/",
          "line_start": null,
          "line_end": null,
          "quote": "EvenPodsSpread"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodAffinity",
      "type": "page",
      "title": "MatchLabelKeysInPodAffinity",
      "summary": "A feature gate that enables matching label keys in pod affinity.",
      "body": "A feature gate that enables matching label keys in pod affinity.\n\n**Why it matters**\nThis feature allows for more flexible and fine-grained control over pod placement based on labels.\n\n**Key facts**\n- Enabled by default\n- Can be disabled using the `--feature-gates=MatchLabelKeysInPodAffinity=false` flag\n\n**Common pitfalls**\n- May require additional configuration for optimal performance\n\n**Related**\nPod affinity, Label selectors",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodAffinity/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodAffinity.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodAffinity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodAffinity/",
          "line_start": null,
          "line_end": null,
          "quote": "MatchLabelKeysInPodAffinity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ComponentSLIs",
      "type": "page",
      "title": "ComponentSLIs",
      "summary": "A feature gate that enables component-level service level indicators (SLIs).",
      "body": "A feature gate that enables component-level service level indicators (SLIs).\n\n**Why it matters**\nThis feature allows for more detailed and accurate monitoring of application performance.\n\n**Key facts**\n- Enabled by default\n- Provides SLIs at the component level\n\n**Common pitfalls**\n- May require additional configuration for optimal performance\n\n**Related**\nService level indicators (SLIs), Component monitoring",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ComponentSLIs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ComponentSLIs.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ComponentSLIs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ComponentSLIs/",
          "line_start": null,
          "line_end": null,
          "quote": "ComponentSLIs"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ShardedListAndWatch",
      "type": "page",
      "title": "ShardedListAndWatch",
      "summary": "A feature gate that enables sharding for list and watch operations.",
      "body": "A feature gate that enables sharding for list and watch operations.\n\n**Why it matters**\nThis feature improves performance by distributing load across multiple shards.\n\n**Key facts**\n- Enabled by default\n- Improves performance for large-scale applications\n\n**Common pitfalls**\n- May require additional configuration for optimal performance\n\n**Related**\nList and watch operations, Sharding",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ShardedListAndWatch/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ShardedListAndWatch.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ShardedListAndWatch.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ShardedListAndWatch/",
          "line_start": null,
          "line_end": null,
          "quote": "ShardedListAndWatch"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/HugePageStorageMediumSize",
      "type": "page",
      "title": "HugePageStorageMediumSize",
      "summary": "A feature gate that enables huge page storage with medium size.",
      "body": "A feature gate that enables huge page storage with medium size.\n\n**Why it matters**\nThis feature improves performance by reducing memory overhead.\n\n**Key facts**\n- Enabled by default\n- Reduces memory overhead\n\n**Common pitfalls**\n- May require additional configuration for optimal performance\n\n**Related**\nHuge page storage, Memory optimization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HugePageStorageMediumSize/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/HugePageStorageMediumSize.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HugePageStorageMediumSize.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HugePageStorageMediumSize/",
          "line_start": null,
          "line_end": null,
          "quote": "HugePageStorageMediumSize"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBindingValidation",
      "type": "page",
      "title": "ServiceAccountTokenNodeBindingValidation",
      "summary": "ServiceAccountTokenNodeBindingValidation is a feature gate that enables validation of service account token node bindings.",
      "body": "ServiceAccountTokenNodeBindingValidation is a feature gate that enables validation of service account token node bindings.\n\n**Why it matters**\nThis feature ensures that service accounts are properly bound to nodes, preventing potential security issues.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.21 and later\n- Can be disabled using the --feature-gates flag\n\n**Common pitfalls**\n- Disabling this feature may lead to security vulnerabilities\n\n**Related**\nService accounts, Node bindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBindingValidation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBindingValidation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBindingValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBindingValidation/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceAccountTokenNodeBindingValidation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CRIListStreaming",
      "type": "page",
      "title": "CRIListStreaming",
      "summary": "CRIListStreaming is a feature gate that enables streaming of CRI (Container Runtime Interface) list responses.",
      "body": "CRIListStreaming is a feature gate that enables streaming of CRI (Container Runtime Interface) list responses.\n\n**Why it matters**\nThis feature improves performance by reducing the amount of data transferred over the network.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.20 and later\n- Can be disabled using the --feature-gates flag\n\n**Common pitfalls**\n- Disabling this feature may impact performance\n\n**Related**\nCRI (Container Runtime Interface), Streaming responses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CRIListStreaming/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CRIListStreaming.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CRIListStreaming.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CRIListStreaming/",
          "line_start": null,
          "line_end": null,
          "quote": "CRIListStreaming"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/VolumePVCDataSource",
      "type": "page",
      "title": "VolumePVCDataSource",
      "summary": "VolumePVCDataSource is a feature gate that enables the use of Persistent Volume Claims (PVCs) as data sources for volumes.",
      "body": "VolumePVCDataSource is a feature gate that enables the use of Persistent Volume Claims (PVCs) as data sources for volumes.\n\n**Why it matters**\nThis feature allows for more flexible and dynamic volume management.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.19 and later\n- Can be disabled using the --feature-gates flag\n\n**Common pitfalls**\n- Disabling this feature may limit volume management capabilities\n\n**Related**\nPersistent Volume Claims (PVCs), Volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumePVCDataSource/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/VolumePVCDataSource.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumePVCDataSource.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumePVCDataSource/",
          "line_start": null,
          "line_end": null,
          "quote": "VolumePVCDataSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRASchedulerFilterTimeout",
      "type": "page",
      "title": "DRASchedulerFilterTimeout",
      "summary": "DRASchedulerFilterTimeout is a feature gate that enables the use of a timeout for DRA (Dynamic Resource Allocation) scheduler filters.",
      "body": "DRASchedulerFilterTimeout is a feature gate that enables the use of a timeout for DRA (Dynamic Resource Allocation) scheduler filters.\n\n**Why it matters**\nThis feature prevents infinite loops in the scheduler by enforcing timeouts on filter operations.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.22 and later\n- Can be disabled using the --feature-gates flag\n\n**Common pitfalls**\n- Disabling this feature may lead to scheduler issues\n\n**Related**\nDRA (Dynamic Resource Allocation) scheduler filters, Timeouts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRASchedulerFilterTimeout/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRASchedulerFilterTimeout.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRASchedulerFilterTimeout.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRASchedulerFilterTimeout/",
          "line_start": null,
          "line_end": null,
          "quote": "DRASchedulerFilterTimeout"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StableLoadBalancerNodeSet",
      "type": "page",
      "title": "StableLoadBalancerNodeSet",
      "summary": "StableLoadBalancerNodeSet is a feature gate that enables stable load balancer node sets.",
      "body": "StableLoadBalancerNodeSet is a feature gate that enables stable load balancer node sets.\n\n**Why it matters**\nThis feature gate ensures consistent and reliable load balancing across nodes in a cluster.\n\n**Key facts**\n- Enables stable load balancer node sets\n- Ensures consistent and reliable load balancing",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StableLoadBalancerNodeSet/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StableLoadBalancerNodeSet.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StableLoadBalancerNodeSet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StableLoadBalancerNodeSet/",
          "line_start": null,
          "line_end": null,
          "quote": "StableLoadBalancerNodeSet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/GRPCContainerProbe",
      "type": "page",
      "title": "GRPCContainerProbe",
      "summary": "GRPCContainerProbe is a feature gate that enables gRPC container probes.",
      "body": "GRPCContainerProbe is a feature gate that enables gRPC container probes.\n\n**Why it matters**\nThis feature gate allows for the use of gRPC protocol in container probing.\n\n**Key facts**\n- Enables gRPC container probes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GRPCContainerProbe/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/GRPCContainerProbe.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GRPCContainerProbe.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GRPCContainerProbe/",
          "line_start": null,
          "line_end": null,
          "quote": "GRPCContainerProbe"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/APIPriorityAndFairness",
      "type": "page",
      "title": "APIPriorityAndFairness",
      "summary": "APIPriorityAndFairness is a feature gate that enables API priority and fairness.",
      "body": "APIPriorityAndFairness is a feature gate that enables API priority and fairness.\n\n**Why it matters**\nThis feature gate ensures fair allocation of resources to APIs in the cluster.\n\n**Key facts**\n- Enables API priority and fairness",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIPriorityAndFairness/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/APIPriorityAndFairness.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/APIPriorityAndFairness.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIPriorityAndFairness/",
          "line_start": null,
          "line_end": null,
          "quote": "APIPriorityAndFairness"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpread",
      "type": "page",
      "title": "MatchLabelKeysInPodTopologySpread",
      "summary": "MatchLabelKeysInPodTopologySpread is a feature gate that enables matching label keys in pod topology spread.",
      "body": "MatchLabelKeysInPodTopologySpread is a feature gate that enables matching label keys in pod topology spread.\n\n**Why it matters**\nThis feature gate allows for more efficient placement of pods based on their labels and topology.\n\n**Key facts**\n- Enables matching label keys in pod topology spread",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpread/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpread.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpread.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpread/",
          "line_start": null,
          "line_end": null,
          "quote": "MatchLabelKeysInPodTopologySpread"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ContainerRestartRules",
      "type": "page",
      "title": "ContainerRestartRules",
      "summary": "A feature gate that allows you to control whether containers are restarted when a node is rebooted.",
      "body": "A feature gate that allows you to control whether containers are restarted when a node is rebooted.\n\n**Why it matters**\nThis feature gate matters because it gives users more fine-grained control over container restart behavior, which can be useful in certain scenarios such as testing or debugging.\n\n**Key facts**\n- ContainerRestartRules is a feature gate that controls whether containers are restarted when a node is rebooted\n- When enabled, containers will not be restarted on node reboot\n\n**Common pitfalls**\n- If not properly configured, container restart rules can lead to inconsistent behavior across nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContainerRestartRules/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ContainerRestartRules.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ContainerRestartRules.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContainerRestartRules/",
          "line_start": null,
          "line_end": null,
          "quote": "ContainerRestartRules"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/UserNamespacesHostNetworkSupport",
      "type": "page",
      "title": "UserNamespacesHostNetworkSupport",
      "summary": "A feature gate that enables support for user namespaces on the host network.",
      "body": "A feature gate that enables support for user namespaces on the host network.\n\n**Why it matters**\nThis feature gate matters because it allows users to run containers with user namespaces enabled, which can be useful in certain scenarios such as testing or development.\n\n**Key facts**\n- UserNamespacesHostNetworkSupport is a feature gate that enables support for user namespaces on the host network\n- When enabled, containers can use user namespaces on the host network\n\n**Common pitfalls**\n- Enabling this feature gate may introduce security risks if not properly configured",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesHostNetworkSupport/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/UserNamespacesHostNetworkSupport.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UserNamespacesHostNetworkSupport.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesHostNetworkSupport/",
          "line_start": null,
          "line_end": null,
          "quote": "UserNamespacesHostNetworkSupport"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIServiceAccountToken",
      "type": "page",
      "title": "CSIServiceAccountToken",
      "summary": "A feature gate that enables the use of service account tokens in CSI drivers.",
      "body": "A feature gate that enables the use of service account tokens in CSI drivers.\n\n**Why it matters**\nThis feature gate matters because it allows users to run CSI drivers with service account tokens, which can be useful in certain scenarios such as testing or development.\n\n**Key facts**\n- CSIServiceAccountToken is a feature gate that enables the use of service account tokens in CSI drivers\n- When enabled, CSI drivers can use service account tokens\n\n**Common pitfalls**\n- Enabling this feature gate may introduce security risks if not properly configured",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIServiceAccountToken/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIServiceAccountToken.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIServiceAccountToken.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIServiceAccountToken/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIServiceAccountToken"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationvSphereComplete",
      "type": "page",
      "title": "CSIMigrationvSphereComplete",
      "summary": "A feature gate that enables the complete migration of CSI drivers to vSphere.",
      "body": "A feature gate that enables the complete migration of CSI drivers to vSphere.\n\n**Why it matters**\nThis feature gate matters because it allows users to migrate CSI drivers to vSphere, which can be useful in certain scenarios such as upgrading or testing.\n\n**Key facts**\n- CSIMigrationvSphereComplete is a feature gate that enables the complete migration of CSI drivers to vSphere\n- When enabled, CSI drivers can be migrated to vSphere\n\n**Common pitfalls**\n- Enabling this feature gate may introduce compatibility issues if not properly configured",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationvSphereComplete/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationvSphereComplete.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationvSphereComplete.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationvSphereComplete/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationvSphereComplete"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EphemeralContainers",
      "type": "page",
      "title": "EphemeralContainers",
      "summary": "Ephemeral Containers are a feature in Kubernetes that allows for the creation of temporary, short-lived containers.",
      "body": "Ephemeral Containers are a feature in Kubernetes that allows for the creation of temporary, short-lived containers.\n\n**Why it matters**\nEphemeral Containers provide a way to isolate and manage ephemeral workloads, improving security and reducing resource utilization.\n\n**Key facts**\n- Ephemeral Containers are deleted when they are stopped or the pod is terminated\n- They can be used for tasks such as testing and development\n\n**Common pitfalls**\n- Ephemeral Containers require careful configuration to ensure proper cleanup\n\n**Related**\nPersistent Volumes, StatefulSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EphemeralContainers/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EphemeralContainers.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EphemeralContainers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EphemeralContainers/",
          "line_start": null,
          "line_end": null,
          "quote": "EphemeralContainers"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InTreePluginPortworxUnregister",
      "type": "page",
      "title": "InTreePluginPortworxUnregister",
      "summary": "In-Tree Plugin Portworx Unregister is a feature gate in Kubernetes that allows for the unregistration of Portworx plugins.",
      "body": "In-Tree Plugin Portworx Unregister is a feature gate in Kubernetes that allows for the unregistration of Portworx plugins.\n\n**Why it matters**\nThis feature gate provides a way to manage and update Portworx plugins within the Kubernetes cluster.\n\n**Key facts**\n- The In-Tree Plugin Portworx Unregister feature gate is used to unregister Portworx plugins\n- It requires careful configuration to avoid disrupting cluster operations\n\n**Common pitfalls**\n- Incorrect usage of this feature gate can lead to plugin registration issues\n\n**Related**\nPortworx, In-Tree Plugins",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginPortworxUnregister/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InTreePluginPortworxUnregister.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InTreePluginPortworxUnregister.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginPortworxUnregister/",
          "line_start": null,
          "line_end": null,
          "quote": "InTreePluginPortworxUnregister"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RemainingItemCount",
      "type": "page",
      "title": "RemainingItemCount",
      "summary": "Remaining Item Count is a feature in Kubernetes that allows for the tracking of remaining items in a list.",
      "body": "Remaining Item Count is a feature in Kubernetes that allows for the tracking of remaining items in a list.\n\n**Why it matters**\nThis feature provides a way to manage and monitor item counts within Kubernetes resources.\n\n**Key facts**\n- The Remaining Item Count feature tracks the number of remaining items in a list\n- It can be used to optimize resource utilization and improve cluster efficiency\n\n**Common pitfalls**\n- Incorrect usage of this feature can lead to inaccurate item counts\n\n**Related**\nListWatchers, Resource Monitoring",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RemainingItemCount/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RemainingItemCount.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RemainingItemCount.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RemainingItemCount/",
          "line_start": null,
          "line_end": null,
          "quote": "RemainingItemCount"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InTreePluginOpenStackUnregister",
      "type": "page",
      "title": "InTreePluginOpenStackUnregister",
      "summary": "In-Tree Plugin OpenStack Unregister is a feature gate in Kubernetes that allows for the unregistration of OpenStack plugins.",
      "body": "In-Tree Plugin OpenStack Unregister is a feature gate in Kubernetes that allows for the unregistration of OpenStack plugins.\n\n**Why it matters**\nThis feature gate provides a way to manage and update OpenStack plugins within the Kubernetes cluster.\n\n**Key facts**\n- The In-Tree Plugin OpenStack Unregister feature gate is used to unregister OpenStack plugins\n- It requires careful configuration to avoid disrupting cluster operations\n\n**Common pitfalls**\n- Incorrect usage of this feature gate can lead to plugin registration issues\n\n**Related**\nOpenStack, In-Tree Plugins",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginOpenStackUnregister/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InTreePluginOpenStackUnregister.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InTreePluginOpenStackUnregister.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginOpenStackUnregister/",
          "line_start": null,
          "line_end": null,
          "quote": "InTreePluginOpenStackUnregister"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodLogsQuerySplitStreams",
      "type": "page",
      "title": "PodLogsQuerySplitStreams",
      "summary": "PodLogsQuerySplitStreams is a feature gate that enables splitting logs into multiple streams.",
      "body": "PodLogsQuerySplitStreams is a feature gate that enables splitting logs into multiple streams.\n\n**Why it matters**\nThis feature allows for more efficient log collection and processing, especially in large-scale deployments.\n\n**Key facts**\n- Enabled by default\n- Can be disabled using the `--feature-gates=PodLogsQuerySplitStreams=false` flag\n\n**Common pitfalls**\n- May require additional configuration for log collection tools\n\n**Related**\nLog collection and processing best practices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLogsQuerySplitStreams/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodLogsQuerySplitStreams.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodLogsQuerySplitStreams.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLogsQuerySplitStreams/",
          "line_start": null,
          "line_end": null,
          "quote": "PodLogsQuerySplitStreams"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyAlphaOptions",
      "type": "page",
      "title": "TopologyManagerPolicyAlphaOptions",
      "summary": "TopologyManagerPolicyAlphaOptions is a feature gate that enables alpha options for the Topology Manager policy.",
      "body": "TopologyManagerPolicyAlphaOptions is a feature gate that enables alpha options for the Topology Manager policy.\n\n**Why it matters**\nThis feature allows for more fine-grained control over pod placement and scheduling.\n\n**Key facts**\n- Enabled by default\n- Can be disabled using the `--feature-gates=TopologyManagerPolicyAlphaOptions=false` flag\n\n**Common pitfalls**\n- May require additional configuration for topology-aware applications\n\n**Related**\nPod placement and scheduling best practices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyAlphaOptions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyAlphaOptions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyAlphaOptions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyAlphaOptions/",
          "line_start": null,
          "line_end": null,
          "quote": "TopologyManagerPolicyAlphaOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ImageVolume",
      "type": "page",
      "title": "ImageVolume",
      "summary": "ImageVolume is a feature gate that enables the use of images as volumes.",
      "body": "ImageVolume is a feature gate that enables the use of images as volumes.\n\n**Why it matters**\nThis feature allows for more efficient storage and management of container images.\n\n**Key facts**\n- Enabled by default\n- Can be disabled using the `--feature-gates=ImageVolume=false` flag\n\n**Common pitfalls**\n- May require additional configuration for image-based applications\n\n**Related**\nContainer image management best practices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImageVolume/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ImageVolume.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ImageVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImageVolume/",
          "line_start": null,
          "line_end": null,
          "quote": "ImageVolume"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAAdminAccess",
      "type": "page",
      "title": "DRAAdminAccess",
      "summary": "",
      "body": "Enables support for requesting [admin access](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#admin-access)\nin a ResourceClaim or a ResourceClaimTemplate. Admin access grants access to\nin-use devices and may enable additional permissions when making the device\navailable in a container. Starting with Kubernetes v1.33, only users authorized\nto create ResourceClaim or ResourceClaimTemplate objects in namespaces labeled\nwith `resource.kubernetes.io/admin-access: \"true\"` (case-sensitive) can use the\n`adminAccess` field. This ensures that non-admin users cannot misuse the\nfeature. Starting with Kubernetes v1.34, this label has been updated to `resource.kubernetes.io/admin-access: \"true\"`.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAAdminAccess/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAAdminAccess.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAAdminAccess.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAAdminAccess/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAAdminAccess"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyReplicaSet",
      "type": "page",
      "title": "StaleControllerConsistencyReplicaSet",
      "summary": "StaleControllerConsistencyReplicaSet is a feature gate that enables stale controller consistency for ReplicaSets.",
      "body": "StaleControllerConsistencyReplicaSet is a feature gate that enables stale controller consistency for ReplicaSets.\n\n**Why it matters**\nThis feature allows for more efficient and scalable management of ReplicaSets.\n\n**Key facts**\n- Enabled by default\n- Can be disabled using the `--feature-gates=StaleControllerConsistencyReplicaSet=false` flag\n\n**Common pitfalls**\n- May require additional configuration for high-availability applications\n\n**Related**\nReplicaSet management best practices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyReplicaSet/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyReplicaSet.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyReplicaSet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyReplicaSet/",
          "line_start": null,
          "line_end": null,
          "quote": "StaleControllerConsistencyReplicaSet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WorkloadWithJob",
      "type": "page",
      "title": "WorkloadWithJob",
      "summary": "A feature gate that enables workloads with jobs.",
      "body": "A feature gate that enables workloads with jobs.\n\n**Why it matters**\nEnables the creation of workloads with jobs, allowing for more complex workflows and automation.\n\n**Key facts**\n- Allows workloads to be created with jobs\n- Enables more complex workflows and automation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WorkloadWithJob/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WorkloadWithJob.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WorkloadWithJob.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WorkloadWithJob/",
          "line_start": null,
          "line_end": null,
          "quote": "WorkloadWithJob"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationGCEComplete",
      "type": "page",
      "title": "CSIMigrationGCEComplete",
      "summary": "A feature gate that enables complete CSI migration on GCE.",
      "body": "A feature gate that enables complete CSI migration on GCE.\n\n**Why it matters**\nEnables the complete migration of CSI (Container Storage Interface) to GCE, allowing for more efficient storage management.\n\n**Key facts**\n- Enables complete CSI migration on GCE\n- Improves storage management efficiency",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationGCEComplete/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationGCEComplete.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationGCEComplete.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationGCEComplete/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationGCEComplete"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ValidateProxyRedirects",
      "type": "page",
      "title": "ValidateProxyRedirects",
      "summary": "A feature gate that enables validation of proxy redirects.",
      "body": "A feature gate that enables validation of proxy redirects.\n\n**Why it matters**\nEnsures the correctness and security of proxy redirects, preventing potential issues with URL rewriting.\n\n**Key facts**\n- Validates proxy redirects for correctness and security\n- Prevents potential issues with URL rewriting",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ValidateProxyRedirects/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ValidateProxyRedirects.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ValidateProxyRedirects.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ValidateProxyRedirects/",
          "line_start": null,
          "line_end": null,
          "quote": "ValidateProxyRedirects"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PreventStaticPodAPIReferences",
      "type": "page",
      "title": "PreventStaticPodAPIReferences",
      "summary": "A feature gate that prevents static pod API references.",
      "body": "A feature gate that prevents static pod API references.\n\n**Why it matters**\nPrevents potential security vulnerabilities by blocking direct API references to static pods, ensuring isolation and containment.\n\n**Key facts**\n- Blocks direct API references to static pods\n- Ensures isolation and containment of static pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PreventStaticPodAPIReferences/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PreventStaticPodAPIReferences.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PreventStaticPodAPIReferences.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PreventStaticPodAPIReferences/",
          "line_start": null,
          "line_end": null,
          "quote": "PreventStaticPodAPIReferences"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DynamicKubeletConfig",
      "type": "page",
      "title": "DynamicKubeletConfig",
      "summary": "DynamicKubeletConfig enables dynamic configuration of Kubelet.",
      "body": "DynamicKubeletConfig enables dynamic configuration of Kubelet.\n\n**Why it matters**\nThis feature allows for more flexible and automated management of node configurations.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicKubeletConfig/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DynamicKubeletConfig.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DynamicKubeletConfig.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicKubeletConfig/",
          "line_start": null,
          "line_end": null,
          "quote": "DynamicKubeletConfig"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CRDValidationRatcheting",
      "type": "page",
      "title": "CRDValidationRatcheting",
      "summary": "CRDValidationRatcheting enables validation of Custom Resource Definitions (CRDs).",
      "body": "CRDValidationRatcheting enables validation of Custom Resource Definitions (CRDs).\n\n**Why it matters**\nThis feature helps ensure that CRDs are properly validated and do not introduce security vulnerabilities.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CRDValidationRatcheting/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CRDValidationRatcheting.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CRDValidationRatcheting.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CRDValidationRatcheting/",
          "line_start": null,
          "line_end": null,
          "quote": "CRDValidationRatcheting"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/APISelfSubjectReview",
      "type": "page",
      "title": "APISelfSubjectReview",
      "summary": "APISelfSubjectReview enables self-review of API requests.",
      "body": "APISelfSubjectReview enables self-review of API requests.\n\n**Why it matters**\nThis feature allows for more fine-grained control over API access and improves security.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APISelfSubjectReview/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/APISelfSubjectReview.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/APISelfSubjectReview.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APISelfSubjectReview/",
          "line_start": null,
          "line_end": null,
          "quote": "APISelfSubjectReview"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodSchedulingReadiness",
      "type": "page",
      "title": "PodSchedulingReadiness",
      "summary": "PodSchedulingReadiness enables readiness checks for pod scheduling.",
      "body": "PodSchedulingReadiness enables readiness checks for pod scheduling.\n\n**Why it matters**\nThis feature helps ensure that pods are properly configured and ready for scheduling before they are scheduled.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.24 and later.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodSchedulingReadiness/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodSchedulingReadiness.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodSchedulingReadiness.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodSchedulingReadiness/",
          "line_start": null,
          "line_end": null,
          "quote": "PodSchedulingReadiness"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RuntimeClassInImageCriApi",
      "type": "page",
      "title": "RuntimeClassInImageCriApi",
      "summary": "RuntimeClassInImageCriApi is a feature gate that allows the Kubernetes runtime class to be specified in the image cri-api.",
      "body": "RuntimeClassInImageCriApi is a feature gate that allows the Kubernetes runtime class to be specified in the image cri-api.\n\n**Why it matters**\nThis feature enables users to specify the runtime class for their containers, which can improve performance and resource utilization.\n\n**Key facts**\n- The RuntimeClassInImageCriApi feature gate is enabled by default\n- It allows users to specify the runtime class in the image cri-api",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RuntimeClassInImageCriApi/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RuntimeClassInImageCriApi.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RuntimeClassInImageCriApi.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RuntimeClassInImageCriApi/",
          "line_start": null,
          "line_end": null,
          "quote": "RuntimeClassInImageCriApi"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/JobMutableNodeSchedulingDirectives",
      "type": "page",
      "title": "JobMutableNodeSchedulingDirectives",
      "summary": "JobMutableNodeSchedulingDirectives is a feature gate that allows mutable node scheduling directives for jobs.",
      "body": "JobMutableNodeSchedulingDirectives is a feature gate that allows mutable node scheduling directives for jobs.\n\n**Why it matters**\nThis feature enables users to dynamically adjust the scheduling of their jobs based on changing resource availability or other factors.\n\n**Key facts**\n- The JobMutableNodeSchedulingDirectives feature gate is enabled by default\n- It allows users to specify mutable node scheduling directives for jobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobMutableNodeSchedulingDirectives/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/JobMutableNodeSchedulingDirectives.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobMutableNodeSchedulingDirectives.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobMutableNodeSchedulingDirectives/",
          "line_start": null,
          "line_end": null,
          "quote": "JobMutableNodeSchedulingDirectives"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRADeviceTaintRules",
      "type": "page",
      "title": "DRADeviceTaintRules",
      "summary": "DRADeviceTaintRules is a feature gate that allows device taint rules for DRAs.",
      "body": "DRADeviceTaintRules is a feature gate that allows device taint rules for DRAs.\n\n**Why it matters**\nThis feature enables users to specify device taint rules for their Devices, which can improve resource utilization and prevent conflicts.\n\n**Key facts**\n- The DRADeviceTaintRules feature gate is enabled by default\n- It allows users to specify device taint rules for DRAs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRADeviceTaintRules/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRADeviceTaintRules.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRADeviceTaintRules.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRADeviceTaintRules/",
          "line_start": null,
          "line_end": null,
          "quote": "DRADeviceTaintRules"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WinOverlay",
      "type": "page",
      "title": "WinOverlay",
      "summary": "WinOverlay is a feature gate that enables Windows overlay support.",
      "body": "WinOverlay is a feature gate that enables Windows overlay support.\n\n**Why it matters**\nThis feature allows users to run Windows applications on Kubernetes, which can improve compatibility and flexibility.\n\n**Key facts**\n- The WinOverlay feature gate is enabled by default\n- It enables Windows overlay support",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WinOverlay/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WinOverlay.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WinOverlay.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WinOverlay/",
          "line_start": null,
          "line_end": null,
          "quote": "WinOverlay"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SelectorIndex",
      "type": "page",
      "title": "SelectorIndex",
      "summary": "A feature gate for enabling or disabling the SelectorIndex feature.",
      "body": "A feature gate for enabling or disabling the SelectorIndex feature.\n\n**Why it matters**\nEnables or disables the SelectorIndex feature, which allows for more efficient indexing of selectors in the API server.\n\n**Key facts**\n- SelectorIndex is a feature gate that controls the use of an index on the selector field in the API server's etcd database.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SelectorIndex/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SelectorIndex.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SelectorIndex.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SelectorIndex/",
          "line_start": null,
          "line_end": null,
          "quote": "SelectorIndex"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SchedulerPopFromBackoffQ",
      "type": "page",
      "title": "SchedulerPopFromBackoffQ",
      "summary": "A feature gate for enabling or disabling the SchedulerPopFromBackoffQ feature.",
      "body": "A feature gate for enabling or disabling the SchedulerPopFromBackoffQ feature.\n\n**Why it matters**\nEnables or disables the SchedulerPopFromBackoffQ feature, which allows the scheduler to pop pods from the back-off queue when they are ready to be scheduled again.\n\n**Key facts**\n- SchedulerPopFromBackoffQ is a feature gate that controls whether the scheduler should pop pods from the back-off queue.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SchedulerPopFromBackoffQ/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SchedulerPopFromBackoffQ.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SchedulerPopFromBackoffQ.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SchedulerPopFromBackoffQ/",
          "line_start": null,
          "line_end": null,
          "quote": "SchedulerPopFromBackoffQ"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WindowsGMSA",
      "type": "page",
      "title": "WindowsGMSA",
      "summary": "A feature gate for enabling or disabling WindowsGMSA support.",
      "body": "A feature gate for enabling or disabling WindowsGMSA support.\n\n**Why it matters**\nEnables or disables WindowsGMSA (Group Managed Service Account) support, which allows Kubernetes to use GMSA credentials on Windows nodes.\n\n**Key facts**\n- WindowsGMSA is a feature gate that controls whether the cluster should use GMSA credentials for authentication.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsGMSA/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WindowsGMSA.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsGMSA.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsGMSA/",
          "line_start": null,
          "line_end": null,
          "quote": "WindowsGMSA"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodHostIPs",
      "type": "page",
      "title": "PodHostIPs",
      "summary": "A feature gate for enabling or disabling PodHostIPs.",
      "body": "A feature gate for enabling or disabling PodHostIPs.\n\n**Why it matters**\nEnables or disables the use of pod host IPs, which allows pods to be scheduled on nodes with a specific IP address.\n\n**Key facts**\n- PodHostIPs is a feature gate that controls whether pods can be scheduled on nodes based on their host IP addresses.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodHostIPs/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodHostIPs.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodHostIPs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodHostIPs/",
          "line_start": null,
          "line_end": null,
          "quote": "PodHostIPs"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SizeMemoryBackedVolumes",
      "type": "page",
      "title": "SizeMemoryBackedVolumes",
      "summary": "A feature gate that enables memory-backed volumes.",
      "body": "A feature gate that enables memory-backed volumes.\n\n**Why it matters**\nThis feature allows for the creation of memory-backed volumes, which can be useful in certain scenarios.\n\n**Key facts**\n- Enables memory-backed volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SizeMemoryBackedVolumes/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SizeMemoryBackedVolumes.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SizeMemoryBackedVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SizeMemoryBackedVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": "SizeMemoryBackedVolumes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TaintNodesByCondition",
      "type": "page",
      "title": "TaintNodesByCondition",
      "summary": "A feature gate that enables tainting nodes based on conditions.",
      "body": "A feature gate that enables tainting nodes based on conditions.\n\n**Why it matters**\nThis feature allows for the dynamic assignment of taints to nodes, which can be useful in certain scenarios.\n\n**Key facts**\n- Enables tainting nodes based on conditions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TaintNodesByCondition/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TaintNodesByCondition.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TaintNodesByCondition.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TaintNodesByCondition/",
          "line_start": null,
          "line_end": null,
          "quote": "TaintNodesByCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletServiceAccountTokenForCredentialProviders",
      "type": "page",
      "title": "KubeletServiceAccountTokenForCredentialProviders",
      "summary": "A feature gate that enables the use of Kubelet's service account token for credential providers.",
      "body": "A feature gate that enables the use of Kubelet's service account token for credential providers.\n\n**Why it matters**\nThis feature allows for the secure authentication of credential providers using Kubelet's service account token.\n\n**Key facts**\n- Enables the use of Kubelet's service account token for credential providers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletServiceAccountTokenForCredentialProviders/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletServiceAccountTokenForCredentialProviders.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletServiceAccountTokenForCredentialProviders.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletServiceAccountTokenForCredentialProviders/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletServiceAccountTokenForCredentialProviders"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/APIListChunking",
      "type": "page",
      "title": "APIListChunking",
      "summary": "A feature gate that enables API list chunking.",
      "body": "A feature gate that enables API list chunking.\n\n**Why it matters**\nThis feature allows for the efficient retrieval of large lists of data from the API server.\n\n**Key facts**\n- Enables API list chunking",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIListChunking/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/APIListChunking.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/APIListChunking.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APIListChunking/",
          "line_start": null,
          "line_end": null,
          "quote": "APIListChunking"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DelegateFSGroupToCSIDriver",
      "type": "page",
      "title": "DelegateFSGroupToCSIDriver",
      "summary": "DelegateFSGroupToCSIDriver is a feature gate that enables the CSI driver to delegate the file system group (FSGroup) to pods.",
      "body": "DelegateFSGroupToCSIDriver is a feature gate that enables the CSI driver to delegate the file system group (FSGroup) to pods.\n\n**Why it matters**\nThis feature allows for more fine-grained control over pod permissions and improves security by limiting the number of groups that need to be managed.\n\n**Key facts**\n- DelegateFSGroupToCSIDriver is enabled by default\n- CSI driver must support delegating FSGroup\n\n**Common pitfalls**\n- Incorrectly configured CSI driver may lead to permission issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DelegateFSGroupToCSIDriver/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DelegateFSGroupToCSIDriver.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DelegateFSGroupToCSIDriver.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DelegateFSGroupToCSIDriver/",
          "line_start": null,
          "line_end": null,
          "quote": "DelegateFSGroupToCSIDriver"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CoordinatedLeaderElection",
      "type": "page",
      "title": "CoordinatedLeaderElection",
      "summary": "CoordinatedLeaderElection is a feature gate that enables coordinated leader election in Kubernetes.",
      "body": "CoordinatedLeaderElection is a feature gate that enables coordinated leader election in Kubernetes.\n\n**Why it matters**\nThis feature improves cluster stability and reduces the likelihood of split brain scenarios by ensuring that only one leader exists at any given time.\n\n**Key facts**\n- CoordinatedLeaderElection is disabled by default\n- Requires a supported storage backend\n\n**Common pitfalls**\n- Insufficient resources may lead to election failures",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CoordinatedLeaderElection/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CoordinatedLeaderElection.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CoordinatedLeaderElection.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CoordinatedLeaderElection/",
          "line_start": null,
          "line_end": null,
          "quote": "CoordinatedLeaderElection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EventedPLEG",
      "type": "page",
      "title": "EventedPLEG",
      "summary": "EventedPLEG is a feature gate that enables event-driven pod lifecycle events in Kubernetes.",
      "body": "EventedPLEG is a feature gate that enables event-driven pod lifecycle events in Kubernetes.\n\n**Why it matters**\nThis feature improves cluster responsiveness and reduces latency by allowing for more efficient communication between components.\n\n**Key facts**\n- EventedPLEG is enabled by default\n- Requires a supported controller manager\n\n**Common pitfalls**\n- Incorrectly configured event handlers may lead to performance issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EventedPLEG/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EventedPLEG.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EventedPLEG.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EventedPLEG/",
          "line_start": null,
          "line_end": null,
          "quote": "EventedPLEG"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyJob",
      "type": "page",
      "title": "StaleControllerConsistencyJob",
      "summary": "StaleControllerConsistencyJob is a feature gate that enables stale controller consistency jobs in Kubernetes.",
      "body": "StaleControllerConsistencyJob is a feature gate that enables stale controller consistency jobs in Kubernetes.\n\n**Why it matters**\nThis feature improves cluster consistency and reduces the likelihood of data corruption by detecting and correcting stale controllers.\n\n**Key facts**\n- StaleControllerConsistencyJob is disabled by default\n- Requires a supported storage backend\n\n**Common pitfalls**\n- Insufficient resources may lead to job failures",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyJob/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyJob.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyJob.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyJob/",
          "line_start": null,
          "line_end": null,
          "quote": "StaleControllerConsistencyJob"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ClusterTrustBundleProjection",
      "type": "page",
      "title": "ClusterTrustBundleProjection",
      "summary": "A feature gate for enabling Cluster Trust Bundle Projection.",
      "body": "A feature gate for enabling Cluster Trust Bundle Projection.\n\n**Why it matters**\nAllows users to project Cluster Trust Bundles from one cluster to another, enhancing security and trust between clusters.\n\n**Key facts**\n- Enables projection of Cluster Trust Bundles\n- Enhances security and trust between clusters",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ClusterTrustBundleProjection/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ClusterTrustBundleProjection.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ClusterTrustBundleProjection.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ClusterTrustBundleProjection/",
          "line_start": null,
          "line_end": null,
          "quote": "ClusterTrustBundleProjection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KMSv1",
      "type": "page",
      "title": "KMSv1",
      "summary": "A feature gate for enabling KMS v1.",
      "body": "A feature gate for enabling KMS v1.\n\n**Why it matters**\nAllows users to enable Key Management Service version 1, providing a secure way to manage encryption keys.\n\n**Key facts**\n- Enables KMS v1\n- Provides secure key management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KMSv1/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KMSv1.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KMSv1.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KMSv1/",
          "line_start": null,
          "line_end": null,
          "quote": "KMSv1"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AuthorizeNodeWithSelectors",
      "type": "page",
      "title": "AuthorizeNodeWithSelectors",
      "summary": "A feature gate for enabling Authorize Node with Selectors.",
      "body": "A feature gate for enabling Authorize Node with Selectors.\n\n**Why it matters**\nAllows users to authorize nodes based on selectors, enhancing security and control over node access.\n\n**Key facts**\n- Enables authorization of nodes with selectors\n- Enhances security and control",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AuthorizeNodeWithSelectors/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AuthorizeNodeWithSelectors.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AuthorizeNodeWithSelectors.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AuthorizeNodeWithSelectors/",
          "line_start": null,
          "line_end": null,
          "quote": "AuthorizeNodeWithSelectors"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PodObservedGenerationTracking",
      "type": "page",
      "title": "PodObservedGenerationTracking",
      "summary": "A feature gate for enabling Pod Observed Generation Tracking.",
      "body": "A feature gate for enabling Pod Observed Generation Tracking.\n\n**Why it matters**\nAllows users to track observed generations of pods, enhancing reliability and fault tolerance.\n\n**Key facts**\n- Enables tracking of pod observed generations\n- Enhances reliability and fault tolerance",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodObservedGenerationTracking/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PodObservedGenerationTracking.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodObservedGenerationTracking.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodObservedGenerationTracking/",
          "line_start": null,
          "line_end": null,
          "quote": "PodObservedGenerationTracking"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ControllerManagerLeaderMigration",
      "type": "page",
      "title": "ControllerManagerLeaderMigration",
      "summary": "ControllerManagerLeaderMigration is a feature gate that enables or disables the leader migration functionality in the Controller Manager.",
      "body": "ControllerManagerLeaderMigration is a feature gate that enables or disables the leader migration functionality in the Controller Manager.\n\n**Why it matters**\nThis feature allows for more efficient and reliable operation of the Controller Manager by enabling it to migrate its leader node when necessary.\n\n**Key facts**\n- The feature gate controls whether leader migration is enabled or disabled\n- Leader migration enables the Controller Manager to move its leader node to a different node",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ControllerManagerLeaderMigration/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ControllerManagerLeaderMigration.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ControllerManagerLeaderMigration.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ControllerManagerLeaderMigration/",
          "line_start": null,
          "line_end": null,
          "quote": "ControllerManagerLeaderMigration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRANodeAllocatableResources",
      "type": "page",
      "title": "DRANodeAllocatableResources",
      "summary": "",
      "body": "Enables the kube-scheduler to incorporate Node Allocatable resources (such as\nCPU, memory, and hugepages) managed by Dynamic Resource Allocation (DRA) into\nits standard node resource accounting.\n\nWhen enabled, DRA drivers can use the `nodeAllocatableResourceMappings` field on\n`ResourceSlice` devices to specify how their devices consume node allocatable\nresources. This allows the scheduler to combine these DRA allocations with\nstandard Pod requests.\nIt also exposes the `status.nodeAllocatableResourceClaimStatuses` field on the\nPod API to track the resulting resource allocations.\n\nFor more information, see\n[Node Allocatable Resources](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#node-allocatable-resources)\nin the Dynamic Resource Allocation documentation.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRANodeAllocatableResources/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRANodeAllocatableResources.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRANodeAllocatableResources.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRANodeAllocatableResources/",
          "line_start": null,
          "line_end": null,
          "quote": "DRANodeAllocatableResources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/EndpointSlice",
      "type": "page",
      "title": "EndpointSlice",
      "summary": "EndpointSlice is a feature gate that enables or disables the Endpoint Slice functionality.",
      "body": "EndpointSlice is a feature gate that enables or disables the Endpoint Slice functionality.\n\n**Why it matters**\nThis feature allows for more efficient and scalable management of network endpoints in Kubernetes clusters.\n\n**Key facts**\n- The feature gate controls whether Endpoint Slices are enabled or disabled\n- Endpoint Slices provide a more efficient way to manage network endpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSlice/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/EndpointSlice.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EndpointSlice.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSlice/",
          "line_start": null,
          "line_end": null,
          "quote": "EndpointSlice"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/HPAScaleToZero",
      "type": "page",
      "title": "HPAScaleToZero",
      "summary": "HPAScaleToZero is a feature gate that enables or disables the ability to scale Horizontal Pod Autoscalers (HPAs) to zero replicas.",
      "body": "HPAScaleToZero is a feature gate that enables or disables the ability to scale Horizontal Pod Autoscalers (HPAs) to zero replicas.\n\n**Why it matters**\nThis feature allows for more flexible and efficient management of workloads in Kubernetes clusters by enabling HPAs to be scaled down to zero replicas when not needed.\n\n**Key facts**\n- The feature gate controls whether scaling to zero is enabled or disabled\n- Scaling to zero enables HPAs to be scaled down to zero replicas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HPAScaleToZero/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/HPAScaleToZero.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HPAScaleToZero.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HPAScaleToZero/",
          "line_start": null,
          "line_end": null,
          "quote": "HPAScaleToZero"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ProxyTerminatingEndpoints",
      "type": "page",
      "title": "ProxyTerminatingEndpoints",
      "summary": "ProxyTerminatingEndpoints is a feature gate that enables or disables the use of terminating endpoints in proxies.",
      "body": "ProxyTerminatingEndpoints is a feature gate that enables or disables the use of terminating endpoints in proxies.\n\n**Why it matters**\nThis feature allows for more efficient and reliable operation of proxies by enabling them to use terminating endpoints when necessary.\n\n**Key facts**\n- The feature gate controls whether terminating endpoints are enabled or disabled\n- Terminating endpoints enable proxies to handle connections more efficiently",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ProxyTerminatingEndpoints/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ProxyTerminatingEndpoints.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ProxyTerminatingEndpoints.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ProxyTerminatingEndpoints/",
          "line_start": null,
          "line_end": null,
          "quote": "ProxyTerminatingEndpoints"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InTreePluginvSphereUnregister",
      "type": "page",
      "title": "InTreePluginvSphereUnregister",
      "summary": "A feature gate to unregister In-Tree vSphere plugins.",
      "body": "A feature gate to unregister In-Tree vSphere plugins.\n\n**Why it matters**\nThis feature gate allows you to unregister In-Tree vSphere plugins, which can be useful for debugging or testing purposes.\n\n**Key facts**\n- In-Tree vSphere plugins are registered by default\n- Unregistering plugins requires this feature gate\n\n**Common pitfalls**\n- Unregistering plugins may cause issues with vSphere integration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginvSphereUnregister/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InTreePluginvSphereUnregister.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InTreePluginvSphereUnregister.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginvSphereUnregister/",
          "line_start": null,
          "line_end": null,
          "quote": "InTreePluginvSphereUnregister"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyBetaOptions",
      "type": "page",
      "title": "TopologyManagerPolicyBetaOptions",
      "summary": "A feature gate for Topology Manager policy beta options.",
      "body": "A feature gate for Topology Manager policy beta options.\n\n**Why it matters**\nThis feature gate enables or disables Topology Manager policy beta options, which can be useful for testing and experimentation.\n\n**Key facts**\n- Topology Manager policy beta options are enabled by default\n- Disabling this feature gate requires explicit configuration\n\n**Common pitfalls**\n- Enabling/disabling this feature gate may affect cluster performance",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyBetaOptions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyBetaOptions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyBetaOptions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyManagerPolicyBetaOptions/",
          "line_start": null,
          "line_end": null,
          "quote": "TopologyManagerPolicyBetaOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ValidatingAdmissionPolicy",
      "type": "page",
      "title": "ValidatingAdmissionPolicy",
      "summary": "A feature gate for validating admission policy.",
      "body": "A feature gate for validating admission policy.\n\n**Why it matters**\nThis feature gate enables or disables validation of admission policies, which can be useful for ensuring policy consistency and preventing errors.\n\n**Key facts**\n- Validation is enabled by default\n- Disabling this feature gate may lead to policy inconsistencies\n\n**Common pitfalls**\n- Enabling/disabling this feature gate may affect cluster security",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ValidatingAdmissionPolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ValidatingAdmissionPolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ValidatingAdmissionPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ValidatingAdmissionPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "ValidatingAdmissionPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationOpenStack",
      "type": "page",
      "title": "CSIMigrationOpenStack",
      "summary": "A feature gate for CSI migration on OpenStack.",
      "body": "A feature gate for CSI migration on OpenStack.\n\n**Why it matters**\nThis feature gate enables or disables CSI migration on OpenStack, which can be useful for upgrading to newer storage drivers.\n\n**Key facts**\n- CSI migration is disabled by default\n- Enabling this feature gate requires explicit configuration\n\n**Common pitfalls**\n- Enabling/disabling this feature gate may affect storage performance",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationOpenStack/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationOpenStack.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationOpenStack.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationOpenStack/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationOpenStack"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/VolumeAttributesClass",
      "type": "page",
      "title": "VolumeAttributesClass",
      "summary": "A feature gate that allows specifying a class for volume attributes.",
      "body": "A feature gate that allows specifying a class for volume attributes.\n\n**Why it matters**\nEnables fine-grained control over volume attribute classes.\n\n**Key facts**\n- Can be used to specify a custom class for volume attributes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeAttributesClass/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/VolumeAttributesClass.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeAttributesClass.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeAttributesClass/",
          "line_start": null,
          "line_end": null,
          "quote": "VolumeAttributesClass"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TokenRequestProjection",
      "type": "page",
      "title": "TokenRequestProjection",
      "summary": "A feature gate that enables token request projection.",
      "body": "A feature gate that enables token request projection.\n\n**Why it matters**\nAllows projecting tokens to other namespaces or services.\n\n**Key facts**\n- Enables token request projection for secure access control.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TokenRequestProjection/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TokenRequestProjection.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TokenRequestProjection.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TokenRequestProjection/",
          "line_start": null,
          "line_end": null,
          "quote": "TokenRequestProjection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAPartitionableDevices",
      "type": "page",
      "title": "DRAPartitionableDevices",
      "summary": "A feature gate that allows partitioning devices using DRAs.",
      "body": "A feature gate that allows partitioning devices using DRAs.\n\n**Why it matters**\nEnables dynamic partitioning of devices for improved resource utilization.\n\n**Key facts**\n- Allows partitioning devices using Device-Ready Alerts (DRAs).",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAPartitionableDevices/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAPartitionableDevices.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAPartitionableDevices.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAPartitionableDevices/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAPartitionableDevices"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SELinuxMountReadWriteOncePod",
      "type": "page",
      "title": "SELinuxMountReadWriteOncePod",
      "summary": "A feature gate that enables SELinux mount with read-write once pod.",
      "body": "A feature gate that enables SELinux mount with read-write once pod.\n\n**Why it matters**\nAllows secure and restricted access to mounts within a pod.\n\n**Key facts**\n- Enables SELinux mount with read-write once pod for improved security.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SELinuxMountReadWriteOncePod/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SELinuxMountReadWriteOncePod.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SELinuxMountReadWriteOncePod.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SELinuxMountReadWriteOncePod/",
          "line_start": null,
          "line_end": null,
          "quote": "SELinuxMountReadWriteOncePod"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DisableKubeletCloudCredentialProviders",
      "type": "page",
      "title": "DisableKubeletCloudCredentialProviders",
      "summary": "Disables cloud credential providers in Kubelet.",
      "body": "Disables cloud credential providers in Kubelet.\n\n**Why it matters**\nThis feature gate allows administrators to disable cloud credential providers in Kubelet, which can be useful for security or compliance reasons.\n\n**Key facts**\n- Disables cloud credential providers in Kubelet\n- Can be used for security or compliance reasons\n\n**Common pitfalls**\n- May require additional configuration for cloud providers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableKubeletCloudCredentialProviders/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DisableKubeletCloudCredentialProviders.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DisableKubeletCloudCredentialProviders.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableKubeletCloudCredentialProviders/",
          "line_start": null,
          "line_end": null,
          "quote": "DisableKubeletCloudCredentialProviders"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ConsistentListFromCache",
      "type": "page",
      "title": "ConsistentListFromCache",
      "summary": "",
      "body": "Enhance Kubernetes API server performance by serving consistent **list** requests\ndirectly from its watch cache, improving scalability and response times.\nTo consistent list from cache Kubernetes requires a newer etcd version (v3.4.31+ or v3.5.13+),\nthat includes fixes to watch progress request feature.\nIf older etcd version is provided Kubernetes will automatically detect it and fallback to serving consistent reads from etcd.\nProgress notifications ensure watch cache is consistent with etcd while reducing\nthe need for resource-intensive quorum reads from etcd.\n\nSee the Kubernetes documentation on [Semantics for **get** and **list**](/docs/reference/using-api/api-concepts/#semantics-for-get-and-list) for more details.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ConsistentListFromCache/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ConsistentListFromCache.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ConsistentListFromCache.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ConsistentListFromCache/",
          "line_start": null,
          "line_end": null,
          "quote": "ConsistentListFromCache"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceNodePortStaticSubrange",
      "type": "page",
      "title": "ServiceNodePortStaticSubrange",
      "summary": "Enables static subranges for NodePorts.",
      "body": "Enables static subranges for NodePorts.\n\n**Why it matters**\nThis feature gate allows administrators to enable static subranges for NodePorts, which can improve the security and stability of their cluster.\n\n**Key facts**\n- Enables static subranges for NodePorts\n- Improves security and stability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceNodePortStaticSubrange/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceNodePortStaticSubrange.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceNodePortStaticSubrange.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceNodePortStaticSubrange/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceNodePortStaticSubrange"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InTreePluginGCEUnregister",
      "type": "page",
      "title": "InTreePluginGCEUnregister",
      "summary": "Unregisters in-tree GCE plugins.",
      "body": "Unregisters in-tree GCE plugins.\n\n**Why it matters**\nThis feature gate allows administrators to unregister in-tree GCE plugins, which can be useful for debugging or testing purposes.\n\n**Key facts**\n- Unregisters in-tree GCE plugins\n- Can be used for debugging or testing",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginGCEUnregister/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InTreePluginGCEUnregister.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InTreePluginGCEUnregister.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginGCEUnregister/",
          "line_start": null,
          "line_end": null,
          "quote": "InTreePluginGCEUnregister"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TaintTolerationComparisonOperators",
      "type": "page",
      "title": "TaintTolerationComparisonOperators",
      "summary": "Adds comparison operators to taint and toleration.",
      "body": "Adds comparison operators to taint and toleration.\n\n**Why it matters**\nThis feature gate allows administrators to add comparison operators to taint and toleration, which can improve the flexibility and expressiveness of their pod scheduling policies.\n\n**Key facts**\n- Adds comparison operators to taint and toleration\n- Improves flexibility and expressiveness",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TaintTolerationComparisonOperators/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TaintTolerationComparisonOperators.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TaintTolerationComparisonOperators.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TaintTolerationComparisonOperators/",
          "line_start": null,
          "line_end": null,
          "quote": "TaintTolerationComparisonOperators"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGet",
      "type": "page",
      "title": "KubeletPodResourcesGet",
      "summary": "KubeletPodResourcesGet is a feature gate that enables or disables the ability to get pod resources from the Kubelet.",
      "body": "KubeletPodResourcesGet is a feature gate that enables or disables the ability to get pod resources from the Kubelet.\n\n**Why it matters**\nThis feature gate allows administrators to control whether pods can retrieve their own resource information from the Kubelet.\n\n**Key facts**\n- Enabled by default\n- Can be disabled for security reasons\n\n**Common pitfalls**\n- Disabling this feature may cause issues with pod management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGet/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGet.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGet/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeletPodResourcesGet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/InTreePluginRBDUnregister",
      "type": "page",
      "title": "InTreePluginRBDUnregister",
      "summary": "InTreePluginRBDUnregister is a feature gate that enables or disables the ability to unregister RBD plugins from within the cluster.",
      "body": "InTreePluginRBDUnregister is a feature gate that enables or disables the ability to unregister RBD plugins from within the cluster.\n\n**Why it matters**\nThis feature gate allows administrators to control whether RBD plugins can be unregistered from within the cluster.\n\n**Key facts**\n- Enabled by default\n- Can be disabled for security reasons\n\n**Common pitfalls**\n- Disabling this feature may cause issues with storage management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginRBDUnregister/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/InTreePluginRBDUnregister.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InTreePluginRBDUnregister.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InTreePluginRBDUnregister/",
          "line_start": null,
          "line_end": null,
          "quote": "InTreePluginRBDUnregister"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/JobSuccessPolicy",
      "type": "page",
      "title": "JobSuccessPolicy",
      "summary": "JobSuccessPolicy is a feature gate that enables or disables the ability to specify a success policy for jobs.",
      "body": "JobSuccessPolicy is a feature gate that enables or disables the ability to specify a success policy for jobs.\n\n**Why it matters**\nThis feature gate allows administrators to control whether jobs can have a specified success policy.\n\n**Key facts**\n- Enabled by default\n- Can be disabled for security reasons\n\n**Common pitfalls**\n- Disabling this feature may cause issues with job management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobSuccessPolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/JobSuccessPolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobSuccessPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobSuccessPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "JobSuccessPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/RunAsGroup",
      "type": "page",
      "title": "RunAsGroup",
      "summary": "RunAsGroup is a feature gate that enables or disables the ability to run pods as a specific group ID.",
      "body": "RunAsGroup is a feature gate that enables or disables the ability to run pods as a specific group ID.\n\n**Why it matters**\nThis feature gate allows administrators to control whether pods can be run as a specific group ID.\n\n**Key facts**\n- Enabled by default\n- Can be disabled for security reasons\n\n**Common pitfalls**\n- Disabling this feature may cause issues with pod management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RunAsGroup/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/RunAsGroup.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RunAsGroup.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RunAsGroup/",
          "line_start": null,
          "line_end": null,
          "quote": "RunAsGroup"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PersistentVolumeClaimUnusedSinceTime",
      "type": "page",
      "title": "PersistentVolumeClaimUnusedSinceTime",
      "summary": "PersistentVolumeClaimUnusedSinceTime is a feature gate that controls whether the time when a Persistent Volume Claim (PVC) was last used is tracked.",
      "body": "PersistentVolumeClaimUnusedSinceTime is a feature gate that controls whether the time when a Persistent Volume Claim (PVC) was last used is tracked.\n\n**Why it matters**\nThis feature gate allows administrators to control whether PVC usage tracking is enabled or disabled in their cluster.\n\n**Key facts**\n- PersistentVolumeClaimUnusedSinceTime tracks the time when a PVC was last used\n- Feature gate controls whether PVC usage tracking is enabled or disabled",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PersistentVolumeClaimUnusedSinceTime/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PersistentVolumeClaimUnusedSinceTime.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PersistentVolumeClaimUnusedSinceTime.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PersistentVolumeClaimUnusedSinceTime/",
          "line_start": null,
          "line_end": null,
          "quote": "PersistentVolumeClaimUnusedSinceTime"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StorageCapacityScoring",
      "type": "page",
      "title": "StorageCapacityScoring",
      "summary": "",
      "body": "The feature gate `VolumeCapacityPriority` was used in v1.32 to support storage that are\nstatically provisioned. Starting from v1.33, the new feature gate `StorageCapacityScoring`\nreplaces the old `VolumeCapacityPriority` gate with added support to dynamically provisioned storage.\nWhen `StorageCapacityScoring` is enabled, the VolumeBinding plugin in the kube-scheduler is extended\nto score Nodes based on the storage capacity on each of them.\nThis feature is applicable to CSI volumes that supported [Storage Capacity](/docs/concepts/storage/storage-capacity/),\nincluding local storage backed by a CSI driver.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageCapacityScoring/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StorageCapacityScoring.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StorageCapacityScoring.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageCapacityScoring/",
          "line_start": null,
          "line_end": null,
          "quote": "StorageCapacityScoring"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/IngressClassNamespacedParams",
      "type": "page",
      "title": "IngressClassNamespacedParams",
      "summary": "IngressClassNamespacedParams is a feature gate that controls whether Ingress Class parameters are namespaced.",
      "body": "IngressClassNamespacedParams is a feature gate that controls whether Ingress Class parameters are namespaced.\n\n**Why it matters**\nThis feature gate allows administrators to control whether Ingress Class parameter namespace scoping is enabled or disabled in their cluster.\n\n**Key facts**\n- IngressClassNamespacedParams controls Ingress Class parameter namespace scoping\n- Feature gate enables or disables namespace scoping for Ingress Class parameters",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IngressClassNamespacedParams/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/IngressClassNamespacedParams.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/IngressClassNamespacedParams.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IngressClassNamespacedParams/",
          "line_start": null,
          "line_end": null,
          "quote": "IngressClassNamespacedParams"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AllowInsecureKubeletCertificateSigningRequests",
      "type": "page",
      "title": "AllowInsecureKubeletCertificateSigningRequests",
      "summary": "AllowInsecureKubeletCertificateSigningRequests is a feature gate that controls whether Kubelet certificate signing requests are allowed to be insecure.",
      "body": "AllowInsecureKubeletCertificateSigningRequests is a feature gate that controls whether Kubelet certificate signing requests are allowed to be insecure.\n\n**Why it matters**\nThis feature gate allows administrators to control whether Kubelet certificate signing requests can bypass security checks in their cluster.\n\n**Key facts**\n- AllowInsecureKubeletCertificateSigningRequests enables or disables insecure Kubelet certificate signing requests\n- Feature gate controls Kubelet certificate signing request security",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowInsecureKubeletCertificateSigningRequests/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AllowInsecureKubeletCertificateSigningRequests.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowInsecureKubeletCertificateSigningRequests.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowInsecureKubeletCertificateSigningRequests/",
          "line_start": null,
          "line_end": null,
          "quote": "AllowInsecureKubeletCertificateSigningRequests"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/Sysctls",
      "type": "page",
      "title": "Sysctls",
      "summary": "Sysctls is a feature gate that controls whether sysctl settings are applied to the Kubernetes control plane.",
      "body": "Sysctls is a feature gate that controls whether sysctl settings are applied to the Kubernetes control plane.\n\n**Why it matters**\nThis feature gate allows administrators to control whether sysctl settings are enabled or disabled in their cluster.\n\n**Key facts**\n- Sysctls enables or disables sysctl settings for the Kubernetes control plane\n- Feature gate controls sysctl setting application",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/Sysctls/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/Sysctls.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/Sysctls.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/Sysctls/",
          "line_start": null,
          "line_end": null,
          "quote": "Sysctls"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/WindowsEndpointSliceProxying",
      "type": "page",
      "title": "WindowsEndpointSliceProxying",
      "summary": "Enables proxying of EndpointSlices on Windows nodes.",
      "body": "Enables proxying of EndpointSlices on Windows nodes.\n\n**Why it matters**\nAllows for proper functioning of EndpointSlices on Windows environments.\n\n**Key facts**\n- Requires Windows 10 or later",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsEndpointSliceProxying/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/WindowsEndpointSliceProxying.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsEndpointSliceProxying.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsEndpointSliceProxying/",
          "line_start": null,
          "line_end": null,
          "quote": "WindowsEndpointSliceProxying"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerFinalizer",
      "type": "page",
      "title": "ServiceLoadBalancerFinalizer",
      "summary": "Enables the finalizer for Service LoadBalancers.",
      "body": "Enables the finalizer for Service LoadBalancers.\n\n**Why it matters**\nEnsures proper cleanup of Service LoadBalancers when deleted.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerFinalizer/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerFinalizer.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerFinalizer.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerFinalizer/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceLoadBalancerFinalizer"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ReadWriteOncePod",
      "type": "page",
      "title": "ReadWriteOncePod",
      "summary": "Enables ReadWriteOnce access for Pods.",
      "body": "Enables ReadWriteOnce access for Pods.\n\n**Why it matters**\nAllows for flexible storage access for Pods.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReadWriteOncePod/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ReadWriteOncePod.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ReadWriteOncePod.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReadWriteOncePod/",
          "line_start": null,
          "line_end": null,
          "quote": "ReadWriteOncePod"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TokenRequestServiceAccountUIDValidation",
      "type": "page",
      "title": "TokenRequestServiceAccountUIDValidation",
      "summary": "Enables validation of Service Account UIDs in Token Requests.",
      "body": "Enables validation of Service Account UIDs in Token Requests.\n\n**Why it matters**\nEnsures security and integrity of Token Requests.\n\n**Key facts**\n- Enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TokenRequestServiceAccountUIDValidation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TokenRequestServiceAccountUIDValidation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TokenRequestServiceAccountUIDValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TokenRequestServiceAccountUIDValidation/",
          "line_start": null,
          "line_end": null,
          "quote": "TokenRequestServiceAccountUIDValidation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DynamicAuditing",
      "type": "page",
      "title": "DynamicAuditing",
      "summary": "DynamicAuditing is a feature gate that enables dynamic auditing for Kubernetes clusters.",
      "body": "DynamicAuditing is a feature gate that enables dynamic auditing for Kubernetes clusters.\n\n**Why it matters**\nDynamicAuditing allows administrators to enable or disable auditing dynamically without restarting the cluster.\n\n**Key facts**\n- DynamicAuditing can be enabled or disabled using the `--feature-gates=DynamicAuditing=true` flag\n- DynamicAuditing is not enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicAuditing/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DynamicAuditing.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DynamicAuditing.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicAuditing/",
          "line_start": null,
          "line_end": null,
          "quote": "DynamicAuditing"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIMigrationPortworx",
      "type": "page",
      "title": "CSIMigrationPortworx",
      "summary": "CSIMigrationPortworx is a feature gate that enables CSI migration for Portworx storage.",
      "body": "CSIMigrationPortworx is a feature gate that enables CSI migration for Portworx storage.\n\n**Why it matters**\nCSIMigrationPortworx allows administrators to migrate Portworx storage to CSI-compatible storage systems.\n\n**Key facts**\n- CSIMigrationPortworx can be enabled or disabled using the `--feature-gates=CSIMigrationPortworx=true` flag\n- CSIMigrationPortworx is not enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationPortworx/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIMigrationPortworx.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIMigrationPortworx.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIMigrationPortworx/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIMigrationPortworx"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceWebhookConversion",
      "type": "page",
      "title": "CustomResourceWebhookConversion",
      "summary": "CustomResourceWebhookConversion is a feature gate that enables conversion of custom resources to webhooks.",
      "body": "CustomResourceWebhookConversion is a feature gate that enables conversion of custom resources to webhooks.\n\n**Why it matters**\nCustomResourceWebhookConversion allows administrators to convert custom resources to webhooks without restarting the cluster.\n\n**Key facts**\n- CustomResourceWebhookConversion can be enabled or disabled using the `--feature-gates=CustomResourceWebhookConversion=true` flag\n- CustomResourceWebhookConversion is not enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceWebhookConversion/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CustomResourceWebhookConversion.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceWebhookConversion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceWebhookConversion/",
          "line_start": null,
          "line_end": null,
          "quote": "CustomResourceWebhookConversion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ConcurrentWatchObjectDecode",
      "type": "page",
      "title": "ConcurrentWatchObjectDecode",
      "summary": "ConcurrentWatchObjectDecode is a feature gate that enables concurrent decoding of watch objects.",
      "body": "ConcurrentWatchObjectDecode is a feature gate that enables concurrent decoding of watch objects.\n\n**Why it matters**\nConcurrentWatchObjectDecode allows administrators to improve the performance of watch object decoding by enabling concurrent processing.\n\n**Key facts**\n- ConcurrentWatchObjectDecode can be enabled or disabled using the `--feature-gates=ConcurrentWatchObjectDecode=true` flag\n- ConcurrentWatchObjectDecode is not enabled by default",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ConcurrentWatchObjectDecode/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ConcurrentWatchObjectDecode.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ConcurrentWatchObjectDecode.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ConcurrentWatchObjectDecode/",
          "line_start": null,
          "line_end": null,
          "quote": "ConcurrentWatchObjectDecode"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DefaultPodTopologySpread",
      "type": "page",
      "title": "DefaultPodTopologySpread",
      "summary": "A feature gate that enables or disables the default pod topology spread.",
      "body": "A feature gate that enables or disables the default pod topology spread.\n\n**Why it matters**\nThis feature gate allows administrators to control whether pods are spread across nodes based on their topology, which can improve resource utilization and reduce contention.\n\n**Key facts**\n- DefaultPodTopologySpread is a feature gate in Kubernetes\n- It enables or disables the default pod topology spread\n\n**Common pitfalls**\n- If disabled, pods may not be spread across nodes efficiently, leading to resource contention",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DefaultPodTopologySpread/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DefaultPodTopologySpread.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DefaultPodTopologySpread.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DefaultPodTopologySpread/",
          "line_start": null,
          "line_end": null,
          "quote": "DefaultPodTopologySpread"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AggregatedDiscoveryEndpoint",
      "type": "page",
      "title": "AggregatedDiscoveryEndpoint",
      "summary": "A feature gate that enables or disables the aggregated discovery endpoint.",
      "body": "A feature gate that enables or disables the aggregated discovery endpoint.\n\n**Why it matters**\nThis feature gate allows administrators to control whether the aggregated discovery endpoint is enabled, which can improve scalability and reduce load on the API server.\n\n**Key facts**\n- AggregatedDiscoveryEndpoint is a feature gate in Kubernetes\n- It enables or disables the aggregated discovery endpoint\n\n**Common pitfalls**\n- If disabled, the aggregated discovery endpoint will not be available, which can impact scalability and performance",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AggregatedDiscoveryEndpoint/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AggregatedDiscoveryEndpoint.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AggregatedDiscoveryEndpoint.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AggregatedDiscoveryEndpoint/",
          "line_start": null,
          "line_end": null,
          "quote": "AggregatedDiscoveryEndpoint"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SupportPodPidsLimit",
      "type": "page",
      "title": "SupportPodPidsLimit",
      "summary": "A feature gate that enables or disables support for pod PIDs limit.",
      "body": "A feature gate that enables or disables support for pod PIDs limit.\n\n**Why it matters**\nThis feature gate allows administrators to control whether pods can be limited by the number of processes they run, which can improve resource utilization and reduce contention.\n\n**Key facts**\n- SupportPodPidsLimit is a feature gate in Kubernetes\n- It enables or disables support for pod PIDs limit\n\n**Common pitfalls**\n- If disabled, pods may not be limited by the number of processes they run, leading to resource contention",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SupportPodPidsLimit/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SupportPodPidsLimit.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SupportPodPidsLimit.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SupportPodPidsLimit/",
          "line_start": null,
          "line_end": null,
          "quote": "SupportPodPidsLimit"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/PersistentLocalVolumes",
      "type": "page",
      "title": "PersistentLocalVolumes",
      "summary": "A feature gate that enables or disables persistent local volumes.",
      "body": "A feature gate that enables or disables persistent local volumes.\n\n**Why it matters**\nThis feature gate allows administrators to control whether persistent local volumes are supported, which can improve storage efficiency and reduce costs.\n\n**Key facts**\n- PersistentLocalVolumes is a feature gate in Kubernetes\n- It enables or disables persistent local volumes\n\n**Common pitfalls**\n- If disabled, persistent local volumes will not be available, which can impact storage efficiency and increase costs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PersistentLocalVolumes/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/PersistentLocalVolumes.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PersistentLocalVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PersistentLocalVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": "PersistentLocalVolumes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/UnauthenticatedHTTP2DOSMitigation",
      "type": "page",
      "title": "UnauthenticatedHTTP2DOSMitigation",
      "summary": "A feature gate that enables mitigation of HTTP/2 Denial-of-Service attacks without authentication.",
      "body": "A feature gate that enables mitigation of HTTP/2 Denial-of-Service attacks without authentication.\n\n**Why it matters**\nPrevents potential security vulnerabilities by limiting the impact of unauthenticated requests.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.23 and later\n- Can be disabled using the `--feature-gates=UnauthenticatedHTTP2DOSMitigation=false` flag\n\n**Common pitfalls**\n- May not be suitable for all environments, as it can impact performance\n- Requires careful consideration of security implications\n\n**Related**\nHTTP/2 Denial-of-Service attacks, feature gates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UnauthenticatedHTTP2DOSMitigation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/UnauthenticatedHTTP2DOSMitigation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UnauthenticatedHTTP2DOSMitigation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UnauthenticatedHTTP2DOSMitigation/",
          "line_start": null,
          "line_end": null,
          "quote": "UnauthenticatedHTTP2DOSMitigation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServiceLBNodePortControl",
      "type": "page",
      "title": "ServiceLBNodePortControl",
      "summary": "A feature gate that controls the node port range used by Service Load Balancers.",
      "body": "A feature gate that controls the node port range used by Service Load Balancers.\n\n**Why it matters**\nAllows administrators to customize the node port range for their cluster.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.19 and later\n- Can be disabled using the `--feature-gates=ServiceLBNodePortControl=false` flag\n\n**Common pitfalls**\n- May require updates to existing Service configurations\n- Can impact cluster scalability if not properly configured\n\n**Related**\nService Load Balancers, node ports",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceLBNodePortControl/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServiceLBNodePortControl.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceLBNodePortControl.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceLBNodePortControl/",
          "line_start": null,
          "line_end": null,
          "quote": "ServiceLBNodePortControl"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/KubeProxyDrainingTerminatingNodes",
      "type": "page",
      "title": "KubeProxyDrainingTerminatingNodes",
      "summary": "A feature gate that enables Kube-proxy to drain and terminate nodes during upgrades.",
      "body": "A feature gate that enables Kube-proxy to drain and terminate nodes during upgrades.\n\n**Why it matters**\nSimplifies node upgrade processes by automating the draining and termination of nodes.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.19 and later\n- Can be disabled using the `--feature-gates=KubeProxyDrainingTerminatingNodes=false` flag\n\n**Common pitfalls**\n- May require careful planning to avoid downtime during upgrades\n- Can impact cluster availability if not properly configured\n\n**Related**\nnode upgrades, Kube-proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeProxyDrainingTerminatingNodes/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/KubeProxyDrainingTerminatingNodes.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeProxyDrainingTerminatingNodes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeProxyDrainingTerminatingNodes/",
          "line_start": null,
          "line_end": null,
          "quote": "KubeProxyDrainingTerminatingNodes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToJSON",
      "type": "page",
      "title": "StreamingCollectionEncodingToJSON",
      "summary": "A feature gate that enables streaming collection encoding to JSON.",
      "body": "A feature gate that enables streaming collection encoding to JSON.\n\n**Why it matters**\nImproves performance by reducing the overhead of encoding data in streaming collections.\n\n**Key facts**\n- Enabled by default in Kubernetes 1.23 and later\n- Can be disabled using the `--feature-gates=StreamingCollectionEncodingToJSON=false` flag\n\n**Common pitfalls**\n- May require updates to existing applications that rely on streaming collections\n- Can impact compatibility with older versions of Kubernetes\n\n**Related**\nstreaming collections, JSON encoding",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToJSON/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToJSON.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToJSON.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToJSON/",
          "line_start": null,
          "line_end": null,
          "quote": "StreamingCollectionEncodingToJSON"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIVolumeFSGroupPolicy",
      "type": "page",
      "title": "CSIVolumeFSGroupPolicy",
      "summary": "CSIVolumeFSGroupPolicy is a feature gate that enables CSI volume's fsGroup policy.",
      "body": "CSIVolumeFSGroupPolicy is a feature gate that enables CSI volume's fsGroup policy.\n\n**Why it matters**\nThis feature allows for better management of file system groups in CSI volumes, which can improve security and performance.\n\n**Key facts**\n- Enabled by default\n- Enables CSI volume's fsGroup policy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIVolumeFSGroupPolicy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIVolumeFSGroupPolicy.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIVolumeFSGroupPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIVolumeFSGroupPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIVolumeFSGroupPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CSIServiceAccountTokenSecrets",
      "type": "page",
      "title": "CSIServiceAccountTokenSecrets",
      "summary": "CSIServiceAccountTokenSecrets is a feature gate that enables CSI service account token secrets.",
      "body": "CSIServiceAccountTokenSecrets is a feature gate that enables CSI service account token secrets.\n\n**Why it matters**\nThis feature allows for secure storage and management of CSI service account tokens, which can improve security.\n\n**Key facts**\n- Enabled by default\n- Enables CSI service account token secrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIServiceAccountTokenSecrets/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CSIServiceAccountTokenSecrets.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIServiceAccountTokenSecrets.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIServiceAccountTokenSecrets/",
          "line_start": null,
          "line_end": null,
          "quote": "CSIServiceAccountTokenSecrets"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DynamicResourceAllocation",
      "type": "page",
      "title": "DynamicResourceAllocation",
      "summary": "DynamicResourceAllocation is a feature gate that enables dynamic resource allocation.",
      "body": "DynamicResourceAllocation is a feature gate that enables dynamic resource allocation.\n\n**Why it matters**\nThis feature allows for more efficient use of cluster resources, which can improve performance and reduce costs.\n\n**Key facts**\n- Enabled by default\n- Enables dynamic resource allocation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicResourceAllocation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DynamicResourceAllocation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DynamicResourceAllocation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicResourceAllocation/",
          "line_start": null,
          "line_end": null,
          "quote": "DynamicResourceAllocation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/CPUManagerPolicyAlphaOptions",
      "type": "page",
      "title": "CPUManagerPolicyAlphaOptions",
      "summary": "CPUManagerPolicyAlphaOptions is a feature gate that enables CPU manager policy alpha options.",
      "body": "CPUManagerPolicyAlphaOptions is a feature gate that enables CPU manager policy alpha options.\n\n**Why it matters**\nThis feature allows for more fine-grained control over CPU resource allocation, which can improve performance and security.\n\n**Key facts**\n- Enabled by default\n- Enables CPU manager policy alpha options",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CPUManagerPolicyAlphaOptions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/CPUManagerPolicyAlphaOptions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CPUManagerPolicyAlphaOptions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CPUManagerPolicyAlphaOptions/",
          "line_start": null,
          "line_end": null,
          "quote": "CPUManagerPolicyAlphaOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/TopologyAwareWorkloadScheduling",
      "type": "page",
      "title": "TopologyAwareWorkloadScheduling",
      "summary": "Enable Topology Aware Workload Scheduling to allow Kubernetes to schedule pods based on node topology.",
      "body": "Enable Topology Aware Workload Scheduling to allow Kubernetes to schedule pods based on node topology.\n\n**Why it matters**\nThis feature enables more efficient resource utilization and better workload placement.\n\n**Key facts**\n- Topology aware scheduling takes into account node topology when placing pods\n- Enables more efficient resource utilization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyAwareWorkloadScheduling/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/TopologyAwareWorkloadScheduling.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TopologyAwareWorkloadScheduling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyAwareWorkloadScheduling/",
          "line_start": null,
          "line_end": null,
          "quote": "TopologyAwareWorkloadScheduling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ResilientWatchCacheInitialization",
      "type": "page",
      "title": "ResilientWatchCacheInitialization",
      "summary": "Enable Resilient Watch Cache Initialization to improve the performance of watch operations in Kubernetes.",
      "body": "Enable Resilient Watch Cache Initialization to improve the performance of watch operations in Kubernetes.\n\n**Why it matters**\nThis feature improves the performance and reliability of watch operations.\n\n**Key facts**\n- Improves performance of watch operations\n- Enhances reliability of watch operations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ResilientWatchCacheInitialization/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ResilientWatchCacheInitialization.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ResilientWatchCacheInitialization.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ResilientWatchCacheInitialization/",
          "line_start": null,
          "line_end": null,
          "quote": "ResilientWatchCacheInitialization"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/SupportNodePidsLimit",
      "type": "page",
      "title": "SupportNodePidsLimit",
      "summary": "Enable Support Node PIDs Limit to allow Kubernetes to limit the number of processes running on a node.",
      "body": "Enable Support Node PIDs Limit to allow Kubernetes to limit the number of processes running on a node.\n\n**Why it matters**\nThis feature enables better resource management and prevents process overload.\n\n**Key facts**\n- Allows limiting the number of processes running on a node\n- Enables better resource management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SupportNodePidsLimit/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/SupportNodePidsLimit.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SupportNodePidsLimit.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SupportNodePidsLimit/",
          "line_start": null,
          "line_end": null,
          "quote": "SupportNodePidsLimit"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/MutableCSINodeAllocatableCount",
      "type": "page",
      "title": "MutableCSINodeAllocatableCount",
      "summary": "Enable Mutable CSI Node Allocatable Count to allow Kubernetes to dynamically adjust the allocatable count of a node.",
      "body": "Enable Mutable CSI Node Allocatable Count to allow Kubernetes to dynamically adjust the allocatable count of a node.\n\n**Why it matters**\nThis feature enables more flexible resource allocation and better workload placement.\n\n**Key facts**\n- Allows dynamic adjustment of allocatable count\n- Enables more flexible resource allocation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutableCSINodeAllocatableCount/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/MutableCSINodeAllocatableCount.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MutableCSINodeAllocatableCount.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutableCSINodeAllocatableCount/",
          "line_start": null,
          "line_end": null,
          "quote": "MutableCSINodeAllocatableCount"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AttachVolumeLimit",
      "type": "page",
      "title": "AttachVolumeLimit",
      "summary": "AttachVolumeLimit is a feature gate that controls whether attaching volumes to pods is allowed.",
      "body": "AttachVolumeLimit is a feature gate that controls whether attaching volumes to pods is allowed.\n\n**Why it matters**\nThis feature gate matters because it allows administrators to control the attachment of volumes to pods, which can be useful for security or resource management purposes.\n\n**Key facts**\n- AttachVolumeLimit is enabled by default\n- When disabled, attaching volumes to pods will fail\n\n**Common pitfalls**\n- If not properly configured, disabling AttachVolumeLimit may cause issues with pod creation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AttachVolumeLimit/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AttachVolumeLimit.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AttachVolumeLimit.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AttachVolumeLimit/",
          "line_start": null,
          "line_end": null,
          "quote": "AttachVolumeLimit"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/AnonymousAuthConfigurableEndpoints",
      "type": "page",
      "title": "AnonymousAuthConfigurableEndpoints",
      "summary": "AnonymousAuthConfigurableEndpoints is a feature gate that controls whether anonymous authentication is allowed on configurable endpoints.",
      "body": "AnonymousAuthConfigurableEndpoints is a feature gate that controls whether anonymous authentication is allowed on configurable endpoints.\n\n**Why it matters**\nThis feature gate matters because it allows administrators to control the use of anonymous authentication on specific endpoints, which can be useful for security or access management purposes.\n\n**Key facts**\n- AnonymousAuthConfigurableEndpoints is disabled by default\n- When enabled, anonymous authentication will be allowed on configurable endpoints\n\n**Common pitfalls**\n- If not properly configured, enabling AnonymousAuthConfigurableEndpoints may cause security issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AnonymousAuthConfigurableEndpoints/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/AnonymousAuthConfigurableEndpoints.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AnonymousAuthConfigurableEndpoints.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AnonymousAuthConfigurableEndpoints/",
          "line_start": null,
          "line_end": null,
          "quote": "AnonymousAuthConfigurableEndpoints"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/ServerSideFieldValidation",
      "type": "page",
      "title": "ServerSideFieldValidation",
      "summary": "ServerSideFieldValidation is a feature gate that controls whether server-side field validation is enabled.",
      "body": "ServerSideFieldValidation is a feature gate that controls whether server-side field validation is enabled.\n\n**Why it matters**\nThis feature gate matters because it allows administrators to control the use of server-side field validation, which can be useful for data integrity or security purposes.\n\n**Key facts**\n- ServerSideFieldValidation is disabled by default\n- When enabled, server-side field validation will be performed\n\n**Common pitfalls**\n- If not properly configured, enabling ServerSideFieldValidation may cause performance issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServerSideFieldValidation/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/ServerSideFieldValidation.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServerSideFieldValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServerSideFieldValidation/",
          "line_start": null,
          "line_end": null,
          "quote": "ServerSideFieldValidation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRAExtendedResource",
      "type": "page",
      "title": "DRAExtendedResource",
      "summary": "DRAExtendedResource is a feature gate that controls whether extended resources are allowed for Distributed Resource Allocation (DRA).",
      "body": "DRAExtendedResource is a feature gate that controls whether extended resources are allowed for Distributed Resource Allocation (DRA).\n\n**Why it matters**\nThis feature gate matters because it allows administrators to control the use of extended resources for DRA, which can be useful for resource management or scalability purposes.\n\n**Key facts**\n- DRAExtendedResource is disabled by default\n- When enabled, extended resources will be allowed for DRA\n\n**Common pitfalls**\n- If not properly configured, enabling DRAExtendedResource may cause issues with resource allocation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAExtendedResource/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRAExtendedResource.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAExtendedResource.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAExtendedResource/",
          "line_start": null,
          "line_end": null,
          "quote": "DRAExtendedResource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/command-line-tools-reference/feature-gates/DRADeviceBindingConditions",
      "type": "page",
      "title": "DRADeviceBindingConditions",
      "summary": "DRADeviceBindingConditions is a feature gate in Kubernetes.",
      "body": "DRADeviceBindingConditions is a feature gate in Kubernetes.\n\n**Why it matters**\nThis feature gate enables or disables the DRADeviceBindingConditions functionality.\n\n**Key facts**\n- DRADeviceBindingConditions is used to manage device binding conditions.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRADeviceBindingConditions/",
      "meta": {
        "weight": null,
        "rel_path": "reference/command-line-tools-reference/feature-gates/DRADeviceBindingConditions.md"
      },
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRADeviceBindingConditions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRADeviceBindingConditions/",
          "line_start": null,
          "line_end": null,
          "quote": "DRADeviceBindingConditions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/debug-cluster/flow-control",
      "type": "page",
      "title": "Flow control",
      "summary": "",
      "body": "\n\nAPI Priority and Fairness controls the behavior of the Kubernetes API server in\nan overload situation. You can find more information about it in the\n[API Priority and Fairness](/docs/concepts/cluster-administration/flow-control/)\ndocumentation.\n\n\n\n## Diagnostics\n\nEvery HTTP response from an API server with the priority and fairness feature\nenabled has two extra headers: `X-Kubernetes-PF-FlowSchema-UID` and\n`X-Kubernetes-PF-PriorityLevel-UID`, noting the flow schema that matched the request\nand the priority level to which it was assigned, respectively. The API objects'\nnames are not included in these headers (to avoid revealing details in case the\nrequesting user does not have permission to view them). When debugging, you\ncan use a command such as:\n\n```shell\nkubectl get flowschemas -o custom-columns=\"uid:{metadata.uid},name:{metadata.name}\"\nkubectl get prioritylevelconfigurations -o custom-columns=\"uid:{metadata.uid},name:{metadata.name}\"\n```\n\nto get a mapping of UIDs to names for both FlowSchemas and\nPriorityLevelConfigurations.\n\n## Debug endpoints\n\nWith the `APIPriorityAndFairness` feature enabled, the `kube-apiserver`\nserves the following additional paths at its HTTP(S) ports.\n\nYou need to ensure you have permissions to access these endpoints.\nYou don't have to do anything if you are using admin.\nPermissions can be granted if needed following the [RBAC](/docs/reference/access-authn-authz/rbac/) doc\nto access `/debug/api_priority_and_fairness/` by specifying `nonResourceURLs`.\n\n- `/debug/api_priority_and_fairness/dump_priority_levels` - a listing of\n  all the priority levels and the current state of each.  You can fetch like this:\n\n  ```shell\n  kubectl get --raw /debug/api_priority_and_fairness/dump_priority_levels\n  ```\n\n  The output will be in CSV and similar to this:\n\n  ```none\n  PriorityLevelName, ActiveQueues, IsIdle, IsQuiescing, WaitingRequests, ExecutingRequests, DispatchedRequests, RejectedRequests, TimedoutRequests, CancelledRequests\n  catch-all,         0,            true,   false,       0,               0,                 1,                  0,                0,                0\n  exempt,            0,            true,   false,       0,               0,                 0,                  0,                0,                0\n  global-default,    0,            true,   false,       0,               0,                 46,                 0,                0,                0\n  leader-election,   0,            true,   false,       0,               0,                 4,                  0,                0,                0\n  node-high,         0,            true,   false,       0,               0,                 34,                 0,                0,                0\n  system,            0,            true,   false,       0,               0,                 48,                 0,                0,                0\n  workload-high,     0,            true,   false,       0,               0,                 500,                0,                0,                0\n  workload-low,      0,            true,   false,       0,               0,                 0,                  0,                0,                0\n  ```\n\n  Explanation for selected column names:\n  - `IsQuiescing` indicates if this priority level will be removed when its queues have been drained.\n\n- `/debug/api_priority_and_fairness/dump_queues` - a listing of all the\n  queues and their current state.  You can fetch like this:\n\n  ```shell\n  kubectl get --raw /debug/api_priority_and_fairness/dump_queues\n  ```\n\n  The output will be in CSV and similar to this:\n\n  ```none\n  PriorityLevelName, Index,  PendingRequests, ExecutingRequests, SeatsInUse, NextDispatchR,   InitialSeatsSum, MaxSeatsSum, TotalWorkSum\n  workload-low,      14,     27,              0,                 0,          77.64342019ss,   270,             270,         0.81000000ss\n  workload-low,      74,     26,              0,                 0,          76.95387841ss,   260,             260,   \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
      "meta": {
        "weight": 130,
        "rel_path": "reference/debug-cluster/flow-control.md"
      },
      "provenance": [
        {
          "source": "reference/debug-cluster/flow-control.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
          "line_start": null,
          "line_end": null,
          "quote": "Flow control"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:diagnostics",
      "type": "concept",
      "title": "Diagnostics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/debug-cluster/flow-control.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
          "line_start": 281,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debug-endpoints",
      "type": "concept",
      "title": "Debug endpoints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/debug-cluster/flow-control.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
          "line_start": 1079,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debug-logging",
      "type": "concept",
      "title": "Debug logging",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/debug-cluster/flow-control.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
          "line_start": 8905,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:response-headers",
      "type": "concept",
      "title": "Response headers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/debug-cluster/flow-control.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
          "line_start": 9709,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/debug-cluster/_index",
      "type": "page",
      "title": "Debug cluster",
      "summary": "A debug cluster in Kubernetes is a special type of cluster for debugging purposes.",
      "body": "A debug cluster in Kubernetes is a special type of cluster for debugging purposes.\n\n**Why it matters**\nDebug clusters provide a safe environment to test and debug applications without affecting production workloads.\n\n**Key facts**\n- Debug clusters are used for testing and debugging applications.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/debug-cluster/_index/",
      "meta": {
        "weight": 120,
        "rel_path": "reference/debug-cluster/_index.md"
      },
      "provenance": [
        {
          "source": "reference/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Debug cluster"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/node/what-happens-on-restart",
      "type": "page",
      "title": "What Happens After A Node Restart",
      "summary": "",
      "body": "System components on a node sometimes restart, either because of an upgrade, a\ncrash, or an explicit operator action. This page describes what happens to Pods\nand to the node when the [kubelet](#gloss:kubelet),\nthe [container runtime](#gloss:container-runtime),\nor the node as a whole restarts.\n\nIn a healthy cluster these restarts are usually safe and do not break running\nworkloads. The sections below describe the effects to be aware of, which become\nmore pronounced on large or heavily loaded nodes. The most disruptive case is a\n[node reboot](#impact-of-a-node-reboot), which encompasses both a container\nruntime restart and a kubelet restart, but with more consequences because every\ncontainer on the node stops first.\n\n## Impact of a kubelet restart\n\nIf only the kubelet restarts, the containers that are already running **continue to\nrun**. The kubelet re-establishes its view of the Node, and reconciles the running\ncontainers against the desired state. During this period of time, the following happens:\n\n* The kubelet re-initializes and re-synchronizes its caches, which produces a\n  burst of requests to the [API server](#gloss:kube-apiserver).\n  On large nodes with many Pods this burst can be significant.\n\n* The node is temporarily reported as `NotReady` until the kubelet finishes\n  initializing. While the node is `NotReady`, the\n  [scheduler](#gloss:kube-scheduler) does not\n  place new Pods on it.\n\n* [Node heartbeats](/docs/concepts/architecture/nodes/#node-heartbeats) pause\n  while the kubelet is down and resume once it has restarted and finished\n  initializing, when the kubelet renews its `Lease` object and posts node status\n  again.\n\n* The kubelet preserves the readiness of running containers across a restart.\n  Each Pod's readiness drives\n  [EndpointSlices](#gloss:endpoint-slice),\n  Endpoints, and\n  downstream configuration (such as Gateways or Ingresses); this means that resetting\n  container readiness on every restart would place a large\n  load on the API server and on components that watch endpoint state, and could\n  briefly remove healthy Pods from Service load balancing. This behavior is\n  described in\n  [KEP-4781: Fix inconsistent container ready state after kubelet restart](https://www.kubernetes.dev/resources/keps/4781/).\n  Resetting container readiness to `false` on every restart was the default\n  behavior for a long time. The `ChangeContainerStatusOnKubeletRestart`\n  [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\n  lets you revert to that behavior, but it is a deprecated legacy escape hatch\n  that is slated for removal, so you should not rely on it. For more detail, see\n  [Pod behavior during kubelet restarts](/docs/concepts/workloads/pods/pod-lifecycle/#kubelet-restarts).\n\n* During the initial kubelet startup,\n  [garbage collection](#gloss:garbage-collection)\n  of unused images and containers, and Pod\n  [evictions](/docs/concepts/scheduling-eviction/node-pressure-eviction/) driven\n  by node-pressure, are paused. This pause continues for a short\n  grace period after the kubelet has completed its main startup routines.\n  This delay can slow the node's reaction to memory or disk pressure.\n\n* Ongoing image pulls are cancelled. Depending on the container runtime, a\n  cancelled pull may have to start over from the beginning when it is retried.\n\n* Pod admission runs again for the Pods on the node as the kubelet replays them\n  through its admission checks. If the node's\n  [labels](#gloss:label) or\n  [taints](#gloss:taint) have changed while\n  the kubelet was down, a Pod can fail admission and be rejected even though it\n  was already running. This is an existing behavior, and whether it should be\n  considered a bug is still debated; see\n  [kubernetes/kubernetes#123859](https://github.com/kubernetes/kubernetes/issues/123859)\n  for the discussion and details.\n\nOverall, in a healthy cluster a kubelet restart does not break running\nworkloads. On large clusters with overcommitted nodes, however, the\nr\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
      "meta": {
        "weight": 90,
        "rel_path": "reference/node/what-happens-on-restart.md"
      },
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": null,
          "line_end": null,
          "quote": "What Happens After A Node Restart"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:impact-of-a-kubelet-restart",
      "type": "concept",
      "title": "Impact of a kubelet restart",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 791,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:impact-of-a-container-runtime-restart",
      "type": "concept",
      "title": "Impact of a container runtime restart",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 4706,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:impact-of-a-node-reboot",
      "type": "concept",
      "title": "Impact of a node reboot",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 6562,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/device-plugin-api-versions",
      "type": "page",
      "title": "Kubelet Device Manager API Versions",
      "summary": "",
      "body": "This page provides details of version compatibility between the Kubernetes\n[device plugin API](https://github.com/kubernetes/kubelet/tree/master/pkg/apis/deviceplugin),\nand different versions of Kubernetes itself.\n\n## Compatibility matrix\n\n|                 |  `v1alpha1` | `v1beta1`   |\n|-----------------|-------------|-------------|\n| Kubernetes 1.21 |  -          | ✓           |\n| Kubernetes 1.22 |  -          | ✓           |\n| Kubernetes 1.23 |  -          | ✓           |\n| Kubernetes 1.24 |  -          | ✓           |\n| Kubernetes 1.25 |  -          | ✓           |\n| Kubernetes 1.26 |  -          | ✓           |\n\nKey:\n\n* `✓` Exactly the same features / API objects in both device plugin API and\n   the Kubernetes version.\n* `+` The device plugin API has features or API objects that may not be present in the\n  Kubernetes cluster, either because the device plugin API has added additional new API\n  calls, or that the server has removed an old API call. However, everything they have in\n  common (most other APIs) will work. Note that alpha APIs may vanish or\n  change significantly between one minor release and the next.\n* `-` The Kubernetes cluster has features the device plugin API can't use,\n  either because server has added additional API calls, or that device plugin API has\n  removed an old API call. However, everything they share in common (most APIs) will work.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/device-plugin-api-versions/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/node/device-plugin-api-versions.md"
      },
      "provenance": [
        {
          "source": "reference/node/device-plugin-api-versions.md",
          "url": "https://kubernetes.io/docs/reference/node/device-plugin-api-versions/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet Device Manager API Versions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:compatibility-matrix",
      "type": "concept",
      "title": "Compatibility matrix",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/device-plugin-api-versions.md",
          "url": "https://kubernetes.io/docs/reference/node/device-plugin-api-versions/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/systemd-watchdog",
      "type": "page",
      "title": "Kubelet Systemd Watchdog",
      "summary": "",
      "body": "\n\nOn Linux nodes, Kubernetes  supports integrating with\n[systemd](https://systemd.io/) to allow the operating system supervisor to recover\na failed kubelet. This integration is not enabled by default.\nIt can be used as an alternative to periodically requesting\nthe kubelet's `/healthz` endpoint for health checks. If the kubelet\ndoes not respond to the watchdog within the timeout period, the watchdog\nwill kill the kubelet.\n\nThe systemd watchdog works by requiring the service to periodically send\na _keep-alive_ signal to the systemd process. If the signal is not received\nwithin a specified timeout period, the service is considered unresponsive\nand is terminated. The service can then be restarted according to the configuration.\n\n## Configuration\n\nUsing the systemd watchdog requires configuring the `WatchdogSec` parameter\nin the `[Service]` section of the kubelet service unit file:\n```\n[Service]\nWatchdogSec=30s\n```\n\nSetting `WatchdogSec=30s` indicates a service watchdog timeout of 30 seconds.\nWithin the kubelet, the `sd_notify()` function is invoked, at intervals of \\\\( WatchdogSec \\div 2\\\\). to send\n`WATCHDOG=1` (a keep-alive message). If the watchdog is not fed\nwithin the timeout period, the kubelet will be killed. Setting `Restart`\nto \"always\", \"on-failure\", \"on-watchdog\", or \"on-abnormal\" will ensure that the service\nis automatically restarted.\n\nSome details about the systemd configuration:\n\n1. If you set the systemd value for `WatchdogSec` to 0, or omit setting it, the systemd watchdog is not\n   enabled for this unit.\n2. The kubelet supports a minimum watchdog period of 1.0 seconds; this is to prevent the kubelet\n   from being killed unexpectedly. You can set the value of `WatchdogSec` in a systemd unit definition\n   to a period shorter than 1 second, but Kubernetes does not support any shorter interval.\n   The timeout does not have to be a whole integer number of seconds.\n3. The Kubernetes project suggests setting `WatchdogSec` to approximately a 15s period.\n   Periods longer than 10 minutes are supported but explicitly **not** recommended.\n\n### Example Configuration\n```systemd\n[Unit]\nDescription=kubelet: The Kubernetes Node Agent\nDocumentation=https://kubernetes.io/docs/home/\nWants=network-online.target\nAfter=network-online.target\n\n[Service]\nExecStart=/usr/bin/kubelet\n# Configures the watchdog timeout\nWatchdogSec=30s\nRestart=on-failure\nStartLimitInterval=0\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target\n```\n## \nFor more details about systemd configuration, refer to the\n[systemd documentation](https://www.freedesktop.org/software/systemd/man/latest/systemd.service.html#WatchdogSec=)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/systemd-watchdog/",
      "meta": {
        "weight": 80,
        "rel_path": "reference/node/systemd-watchdog.md"
      },
      "provenance": [
        {
          "source": "reference/node/systemd-watchdog.md",
          "url": "https://kubernetes.io/docs/reference/node/systemd-watchdog/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet Systemd Watchdog"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-configuration",
      "type": "concept",
      "title": "Example Configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/systemd-watchdog.md",
          "url": "https://kubernetes.io/docs/reference/node/systemd-watchdog/",
          "line_start": 2164,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/node-status",
      "type": "page",
      "title": "Node Status",
      "summary": "",
      "body": "\n\nThe status of a [node](/docs/concepts/architecture/nodes/) in Kubernetes is a critical\naspect of managing a Kubernetes cluster. In this article, we'll cover the basics of\nmonitoring and maintaining node status to ensure a healthy and stable cluster.\n\n## Node status fields\n\nA Node's status contains the following information:\n\n* [Addresses](#addresses)\n* [Conditions](#condition)\n* [Capacity and Allocatable](#capacity)\n* [Info](#info)\n* [Declared Features](#declaredfeatures)\n\nYou can use `kubectl` to view a Node's status and other details:\n\n```shell\nkubectl describe node <insert-node-name-here>\n```\n\nEach section of the output is described below.\n\n## Addresses\n\nThe usage of these fields varies depending on your cloud provider or bare metal configuration.\n\n* HostName: The hostname as reported by the node's kernel. Can be overridden via the kubelet\n  `--hostname-override` parameter.\n* ExternalIP: Typically the IP address of the node that is externally routable (available from\n  outside the cluster).\n* InternalIP: Typically the IP address of the node that is routable only within the cluster.\n\n## Conditions {#condition}\n\nThe `conditions` field describes the status of all `Running` nodes. Examples of conditions include:\n\n\n| Node Condition       | Description |\n|----------------------|-------------|\n| `Ready`              | `True` if the node is healthy and ready to accept pods, `False` if the node is not healthy and is not accepting pods, and `Unknown` if the node controller has not heard from the node in the last `node-monitor-grace-period` (default is 50 seconds) |\n| `DiskPressure`       | `True` if pressure exists on the disk size—that is, if the disk capacity is low; otherwise `False` |\n| `MemoryPressure`     | `True` if pressure exists on the node memory—that is, if the node memory is low; otherwise `False` |\n| `PIDPressure`        | `True` if pressure exists on the processes—that is, if there are too many processes on the node; otherwise `False` |\n| `NetworkUnavailable` | `True` if the network for the node is not correctly configured, otherwise `False` |\n\n\n\n> **Note:** If you use command-line tools to print details of a cordoned Node, the Condition includes\n`SchedulingDisabled`. `SchedulingDisabled` is not a Condition in the Kubernetes API; instead,\ncordoned nodes are marked Unschedulable in their spec.\n\n\nIn the Kubernetes API, a node's condition is represented as part of the `.status`\nof the Node resource. For example, the following JSON structure describes a healthy node:\n\n```json\n\"conditions\": [\n  {\n    \"type\": \"Ready\",\n    \"status\": \"True\",\n    \"reason\": \"KubeletReady\",\n    \"message\": \"kubelet is posting ready status\",\n    \"lastHeartbeatTime\": \"2019-06-05T18:38:35Z\",\n    \"lastTransitionTime\": \"2019-06-05T11:41:27Z\"\n  }\n]\n```\n\nWhen problems occur on nodes, the Kubernetes control plane automatically creates\n[taints](/docs/concepts/scheduling-eviction/taint-and-toleration/) that match the conditions\naffecting the node. An example of this is when the `status` of the Ready condition\nremains `Unknown` or `False` for longer than the kube-controller-manager's `NodeMonitorGracePeriod`,\nwhich defaults to 50 seconds. This will cause either an `node.kubernetes.io/unreachable` taint, for an `Unknown` status,\nor a `node.kubernetes.io/not-ready` taint, for a `False` status, to be added to the Node.\n\nThese taints affect pending pods as the scheduler takes the Node's taints into consideration when\nassigning a pod to a Node. Existing pods scheduled to the node may be evicted due to the application\nof `NoExecute` taints. Pods may also have [tolerations](#gloss:toleration) that let\nthem schedule to and continue running on a Node even though it has a specific taint.\n\nSee [Taint Based Evictions](/docs/concepts/scheduling-eviction/taint-and-toleration/#taint-based-evictions) and\n[Taint Nodes by Condition](/docs/concepts/scheduling-eviction/taint-and-toleration/#taint-nodes-by-condition)\nfor more details.\n\n## Capacity and Allocatable {#capacity}\n\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/node-status/",
      "meta": {
        "weight": 80,
        "rel_path": "reference/node/node-status.md"
      },
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": null,
          "line_end": null,
          "quote": "Node Status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:node-status-fields",
      "type": "concept",
      "title": "Node status fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 271,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:addresses",
      "type": "concept",
      "title": "Addresses",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 672,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:conditions-condition",
      "type": "concept",
      "title": "Conditions {#condition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 1123,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:capacity-and-allocatable-capacity",
      "type": "concept",
      "title": "Capacity and Allocatable {#capacity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 4128,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:info",
      "type": "concept",
      "title": "Info",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 4700,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:declared-features-declaredfeatures",
      "type": "concept",
      "title": "Declared features {#declaredfeatures}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 4995,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heartbeats",
      "type": "concept",
      "title": "Heartbeats",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 5829,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/kubelet-pod-info-grpc-api",
      "type": "page",
      "title": "Kubelet Pod Info gRPC API",
      "summary": "",
      "body": "\n\nThe Kubelet Pod Info gRPC API provides a way for node-local components to query information about pods running on the node directly from the kubelet. This increases reliability by removing the dependency on the Kubernetes API server for node-local information and reduces load on the control plane.\n\nAccess to this API is restricted to local admin users (typically `root`) through file permissions on the UNIX socket.\n\n## Endpoint {#endpoint}\n\nThe API listens on a UNIX socket at:\n`/var/lib/kubelet/pods/kubelet.sock`\n\n\n> **Note:** This API is not supported on Windows nodes.\n\n\n## Operations {#operations}\n\nThe API provides the following gRPC methods:\n\n### `ListPods` {#list-pods}\n\nReturns a list of all pods currently managed by the kubelet on the node.\n\n### `WatchPods` {#watch-pods}\n\nReturns a stream of pod updates. Whenever a pod's state changes locally, the kubelet sends the updated pod information through the stream.\n\n### `GetPod` {#get-pod}\n\nReturns information for a specific pod identified by its UID.\n\n## API Definition {#api-definition}\n\nThe API uses the following protobuf definition:\n\n```protobuf\nimport \"google/protobuf/field_mask.proto\";\nimport \"k8s.io/api/core/v1/generated.proto\";\n\nservice Pods {\n    // ListPods returns a list of v1.Pod, optionally filtered by field mask.\n    rpc ListPods(PodListRequest) returns (PodListResponse) {}\n    // WatchPods returns a stream of Pod updates, optionally filtered by field mask.\n    rpc WatchPods(PodWatchRequest) returns (stream PodWatchResponse) {}\n    // GetPod returns a v1.Pod for a given pod's UID, optionally filtered by field mask.\n    rpc GetPod(PodGetRequest) returns (PodGetResponse) {}\n}\n\nmessage PodListRequest {\n    // Optional field mask in the gRPC metadata, to specify which pod fields to return.\n}\n\nmessage PodListResponse {\n    repeated v1.Pod pods = 1;\n}\n\nmessage PodWatchRequest {\n    // Optional field mask in the gRPC metadata, to specify which pod fields to return.\n}\n\nmessage PodWatchResponse {\n    v1.Pod pod = 1;\n}\n\nmessage PodGetRequest {\n    string podUID = 1;\n    // Optional field mask in the gRPC metadata, to specify which pod fields to return.\n}\n\nmessage PodGetResponse {\n    v1.Pod pod = 1;\n}\n```\n\n## Field selection {#field-selection}\n\nThe API supports `google.protobuf.FieldMask` to allow clients to request only the specific fields they need (e.g., `status.phase`, `status.podIPs`). This enables lean and efficient data transfer. If no field mask is provided, the full `v1.Pod` object is returned.\n\n## Reliability and availability {#reliability}\n\nThe API serves the most up-to-date information known locally by the kubelet, derived from its internal cache and reconciliation with the container runtime. It remains available even if the node loses connectivity to the Kubernetes control plane.\n\nIf the kubelet has recently restarted and its internal state is not yet fully initialized, the API returns a gRPC `FAILED_PRECONDITION` error.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/node/kubelet-pod-info-grpc-api.md"
      },
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet Pod Info gRPC API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-definition-api-definition",
      "type": "concept",
      "title": "API Definition {#api-definition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 1083,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:field-selection-field-selection",
      "type": "concept",
      "title": "Field selection {#field-selection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 2263,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reliability-and-availability-reliability",
      "type": "concept",
      "title": "Reliability and availability {#reliability}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 2567,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:listpods-list-pods",
      "type": "concept",
      "title": "`ListPods` {#list-pods}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 721,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:watchpods-watch-pods",
      "type": "concept",
      "title": "`WatchPods` {#watch-pods}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 824,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:getpod-get-pod",
      "type": "concept",
      "title": "`GetPod` {#get-pod}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 995,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/kubelet-sync-loop",
      "type": "page",
      "title": "Kubelet Sync Loop",
      "summary": "",
      "body": "The [kubelet](/docs/reference/command-line-tools-reference/kubelet/) is the\nprimary \"node agent\" that creates and watches Pods on each node. The `kubelet`\nruns a sync loop that periodically reconciles the desired state (a Pod spec)\nwith the actual state of the running containers.\n\n1.  _Sync Loop_: The Sync Loop queues work (aggregated from many sources) for\n    the Pods assigned to its node (where `nodeName` matches the node). Over the\n    course of each loop, subprocesses called pod workers will attempt to\n    reconcile the desired state of these Pods against the current state of the\n    running containers.\n2.  _Sync Pod_: The majority of the `kubelet` logic is stored in a suite of\n    functions within the `podSyncer` interface, including the `SyncPod` function\n    and its variants (like `SyncTerminatingPod` and `SyncTerminatedPod`). During\n    each Sync Loop, a relevant `podSyncer` function will be executed for each Pod\n    in an attempt to drive its state on the node toward the desired state.\n3.  _[Container Runtime Interface](#gloss:cri)\n    (CRI)_: To actually run the containers, the `kubelet` uses the CRI to talk\n    to a container runtime (like containerd or CRI-O). The `kubelet` acts as the\n    client, instructing the runtime to create a \"pod sandbox\" and then\n    create/start the individual containers defined in the Pod spec.\n4.  _PLEG (Pod Lifecycle Event Generator)_: The `kubelet` needs to know when\n    containers start, stop, or fail. It relies on a component called PLEG to\n    periodically poll the runtime for the standard state of all containers. PLEG\n    generates events that wake up the Sync Loop to update the Pod status.\n\nBecause of this polling mechanism, the status seen in the API (like `kubectl get\npod`) might have a slight delay compared to the instant reality on the node.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/kubelet-sync-loop/",
      "meta": {
        "weight": 42,
        "rel_path": "reference/node/kubelet-sync-loop.md"
      },
      "provenance": [
        {
          "source": "reference/node/kubelet-sync-loop.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-sync-loop/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet Sync Loop"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/kubelet-config-directory-merging",
      "type": "page",
      "title": "Kubelet Configuration Directory Merging",
      "summary": "",
      "body": "When using the kubelet's `--config-dir` flag to specify a drop-in directory for\nconfiguration, there is some specific behavior on how different types are\nmerged.\n\nHere are some examples of how different data types behave during configuration merging:\n\n### Structure Fields\nThere are two types of structure fields in a YAML structure: singular (or a\nscalar type) and embedded (structures that contain scalar types).\nThe configuration merging process handles the overriding of singular and embedded struct fields to create a resulting kubelet configuration.\n\nFor instance, you may want a baseline kubelet configuration for all nodes, but you may want to customize the `address` and `authorization` fields.\nThis can be done as follows:\n\nMain kubelet configuration file contents:\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nport: 20250\nauthorization:\n  mode: Webhook\n  webhook:\n    cacheAuthorizedTTL: \"5m\"\n    cacheUnauthorizedTTL: \"30s\"\nserializeImagePulls: false\naddress: \"192.168.0.1\"\n```\n\nContents of a file in `--config-dir` directory:\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nauthorization:\n  mode: AlwaysAllow\n  webhook:\n    cacheAuthorizedTTL: \"8m\"\n    cacheUnauthorizedTTL: \"45s\"\naddress: \"192.168.0.8\"\n```\n\nThe resulting configuration will be as follows:\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nport: 20250\nserializeImagePulls: false\nauthorization:\n  mode: AlwaysAllow\n  webhook:\n    cacheAuthorizedTTL: \"8m\"\n    cacheUnauthorizedTTL: \"45s\"\naddress: \"192.168.0.8\"\n```\n\n### Lists\nYou can override the slices/lists values of the kubelet configuration.\nHowever, the entire list gets overridden during the merging process.\nFor example, you can override the `clusterDNS` list as follows:\n\nMain kubelet configuration file contents:\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nport: 20250\nserializeImagePulls: false\nclusterDNS:\n  - \"192.168.0.9\"\n  - \"192.168.0.8\"\n```\n\nContents of a file in `--config-dir` directory:\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nclusterDNS:\n  - \"192.168.0.2\"\n  - \"192.168.0.3\"\n  - \"192.168.0.5\"\n```\n\nThe resulting configuration will be as follows:\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nport: 20250\nserializeImagePulls: false\nclusterDNS:\n  - \"192.168.0.2\"\n  - \"192.168.0.3\"\n  - \"192.168.0.5\"\n```\n\n### Maps, including Nested Structures\n\nIndividual fields in maps, regardless of their value types (boolean, string, etc.), can be selectively overridden.\nHowever, for `map[string][]string`, the entire list associated with a specific field gets overridden.\nLet's understand this better with an example, particularly on fields like `featureGates` and `staticPodURLHeader`:\n\nMain kubelet configuration file contents:\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nport: 20250\nserializeImagePulls: false\nfeatureGates:\n  AllAlpha: false\n  MemoryQoS: true\nstaticPodURLHeader:\n  kubelet-api-support:\n  - \"Authorization: 234APSDFA\"\n  - \"X-Custom-Header: 123\"\n  custom-static-pod:\n  - \"Authorization: 223EWRWER\"\n  - \"X-Custom-Header: 456\"\n```\n\nContents of a file in `--config-dir` directory:\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nfeatureGates:\n  MemoryQoS: false\n  KubeletTracing: true\n  DynamicResourceAllocation: true\nstaticPodURLHeader:\n  custom-static-pod:\n  - \"Authorization: 223EWRWER\"\n  - \"X-Custom-Header: 345\"\n```\n\nThe resulting configuration will be as follows:\n```yaml\napiVersion: kubelet.config.k8s.io/v1beta1\nkind: KubeletConfiguration\nport: 20250\nserializeImagePulls: false\nfeatureGates:\n  AllAlpha: false\n  MemoryQoS: false\n  KubeletTracing: true\n  DynamicResourceAllocation: true\nstaticPodURLHeader:\n  kubelet-api-support:\n  - \"Authorization: 234APSDFA\"\n  - \"X-Custom-Header: 123\"\n  custom-static-pod:\n  - \"Authorization: 223EWRWER\"\n  - \"X-Custom-Header: 345\"\n```\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/kubelet-config-directory-merging/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/node/kubelet-config-directory-merging.md"
      },
      "provenance": [
        {
          "source": "reference/node/kubelet-config-directory-merging.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-config-directory-merging/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet Configuration Directory Merging"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:structure-fields",
      "type": "concept",
      "title": "Structure Fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-config-directory-merging.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-config-directory-merging/",
          "line_start": 253,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:maps-including-nested-structures",
      "type": "concept",
      "title": "Maps, including Nested Structures",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-config-directory-merging.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-config-directory-merging/",
          "line_start": 2440,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/kernel-version-requirements",
      "type": "page",
      "title": "Linux Kernel Version Requirements",
      "summary": "",
      "body": "\n\nMany features rely on specific kernel functionalities and have minimum kernel version requirements.\nHowever, relying solely on kernel version numbers may not be sufficient\nfor certain operating system distributions,\nas maintainers for distributions such as RHEL, Ubuntu and SUSE often backport selected features\nto older kernel releases (retaining the older kernel version).\n\n## Pod sysctls\n\nOn Linux, the `sysctl()` system call configures kernel parameters at run time. There is a command\nline tool named `sysctl` that you can use to configure these parameters, and many are exposed via\nthe `proc` filesystem.\n\nSome sysctls are only available if you have a modern enough kernel.\n\nThe following sysctls have a minimal kernel version requirement,\nand are supported in the [safe set](/docs/tasks/administer-cluster/sysctl-cluster/#safe-and-unsafe-sysctls):\n\n\n- `net.ipv4.ip_local_reserved_ports` (since Kubernetes 1.27, needs kernel 3.16+);\n- `net.ipv4.tcp_keepalive_time` (since Kubernetes 1.29, needs kernel 4.5+);\n- `net.ipv4.tcp_fin_timeout` (since Kubernetes 1.29, needs kernel 4.6+);\n- `net.ipv4.tcp_keepalive_intvl` (since Kubernetes 1.29, needs kernel 4.5+);\n- `net.ipv4.tcp_keepalive_probes` (since Kubernetes 1.29, needs kernel 4.5+);\n- `net.ipv4.tcp_syncookies` (namespaced since kernel 4.6+).\n- `net.ipv4.tcp_rmem` (since Kubernetes 1.32, needs kernel 4.15+).\n- `net.ipv4.tcp_wmem` (since Kubernetes 1.32, needs kernel 4.15+).\n- `net.ipv4.vs.conn_reuse_mode` (used in `ipvs` proxy mode, needs kernel 4.1+);\n\n### kube proxy `nftables` proxy mode\n\n\nFor Kubernetes , the\n[`nftables` mode](/docs/reference/networking/virtual-ips/#proxy-mode-nftables) of kube-proxy requires\nversion 1.0.1 or later\nof the nft command-line tool, as well as kernel 5.13 or later.\n\nFor testing/development purposes, you can use older kernels, as far back as 5.4 if you set the\n`nftables.skipKernelVersionCheck` option in the kube-proxy config.\nBut this is not recommended in production since it may cause problems with other nftables\nusers on the system.\n\n## Version 2 control groups\n\nKubernetes cgroup v1 support is in maintained mode starting from Kubernetes v1.31; using cgroup v2\nis recommended.\nIn [Linux 5.8](https://github.com/torvalds/linux/commit/4a7e89c5ec0238017a757131eb9ab8dc111f961c), the system-level `cpu.stat` file was added to the root cgroup for convenience.\n\nIn runc document, Kernel older than 5.2 is not recommended due to lack of freezer.\n\n## Pressure Stall Information (PSI) {#requirements-psi}\n\n[Pressure Stall Information](/docs/reference/instrumentation/understand-psi-metrics/) is supported in Linux kernel versions 4.20 and up, but requires the following configuration:\n\n- The kernel must be compiled with the `CONFIG_PSI=y` option. Most modern distributions enable this by default. You can check your kernel's configuration by running `zgrep CONFIG_PSI /proc/config.gz`.\n- Some Linux distributions may compile PSI into the kernel but disable it by default. If so, you need to enable it at boot time by adding the `psi=1` parameter to the kernel command line.\n\n## Other kernel requirements {#requirements-other}\n\nSome features may depend on new kernel functionalities and have specific kernel requirements:\n\n\n1. [Recursive read only mount](/docs/concepts/storage/volumes/#recursive-read-only-mounts):\n    This is implemented by applying the `MOUNT_ATTR_RDONLY` attribute with the `AT_RECURSIVE` flag\n    using `mount_setattr`(2) added in Linux kernel v5.12.\n2. Pod user namespace support requires minimal kernel version 6.5+, according to\n   [KEP-127](https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/127-user-namespaces/README.md).\n3. For [node system swap](/docs/concepts/architecture/nodes/#swap-memory), tmpfs set to `noswap`\n   is not supported until kernel 6.3.\n\n## Linux kernel long term maintenance\n\nActive kernel releases can be found in [kernel.org](https://www.kernel.org/category/releases.html).\n\nThere are usually several _long term maintenance_ kerne\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/node/kernel-version-requirements.md"
      },
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": null,
          "line_end": null,
          "quote": "Linux Kernel Version Requirements"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-sysctls",
      "type": "concept",
      "title": "Pod sysctls",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 405,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:version-2-control-groups",
      "type": "concept",
      "title": "Version 2 control groups",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 2373,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pressure-stall-information-psi-requirements-psi",
      "type": "concept",
      "title": "Pressure Stall Information (PSI) {#requirements-psi}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 2780,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:other-kernel-requirements-requirements-other",
      "type": "concept",
      "title": "Other kernel requirements {#requirements-other}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 3407,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:linux-kernel-long-term-maintenance",
      "type": "concept",
      "title": "Linux kernel long term maintenance",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 4487,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-proxy-nftables-proxy-mode",
      "type": "concept",
      "title": "kube proxy `nftables` proxy mode",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 1685,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/node-labels",
      "type": "page",
      "title": "Node Labels Populated By The Kubelet",
      "summary": "",
      "body": "Kubernetes [nodes](#gloss:node) come pre-populated\nwith a standard set of [labels](#gloss:label).\n\nYou can also set your own labels on nodes, either through the kubelet configuration or\nusing the Kubernetes API.\n\n## Preset labels\n\nThe preset labels that Kubernetes sets on nodes are:\n\n* [`kubernetes.io/arch`](/docs/reference/labels-annotations-taints/#kubernetes-io-arch)\n* [`kubernetes.io/hostname`](/docs/reference/labels-annotations-taints/#kubernetesiohostname)\n* [`kubernetes.io/os`](/docs/reference/labels-annotations-taints/#kubernetes-io-os)\n* [`node.kubernetes.io/instance-type`](/docs/reference/labels-annotations-taints/#nodekubernetesioinstance-type)\n  (if known to the kubelet &ndash; Kubernetes may not have this information to set the label)\n* [`topology.kubernetes.io/region`](/docs/reference/labels-annotations-taints/#topologykubernetesioregion)\n  (if known to the kubelet &ndash; Kubernetes may not have this information to set the label)\n* [`topology.kubernetes.io/zone`](/docs/reference/labels-annotations-taints/#topologykubernetesiozone)\n  (if known to the kubelet &ndash; Kubernetes may not have this information to set the label)\n\n\nThe value of these labels is cloud provider specific and is not guaranteed to be reliable.\nFor example, the value of `kubernetes.io/hostname` may be the same as the node name in some environments\nand a different value in other environments.\n\n\n## \n\n- See [Well-Known Labels, Annotations and Taints](/docs/reference/labels-annotations-taints/) for a list of common labels.\n- Learn how to [add a label to a node](/docs/tasks/configure-pod-container/assign-pods-nodes/#add-a-label-to-a-node).\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/node-labels/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/node/node-labels.md"
      },
      "provenance": [
        {
          "source": "reference/node/node-labels.md",
          "url": "https://kubernetes.io/docs/reference/node/node-labels/",
          "line_start": null,
          "line_end": null,
          "quote": "Node Labels Populated By The Kubelet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:preset-labels",
      "type": "concept",
      "title": "Preset labels",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/node-labels.md",
          "url": "https://kubernetes.io/docs/reference/node/node-labels/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/seccomp",
      "type": "page",
      "title": "Seccomp and Kubernetes",
      "summary": "",
      "body": "\n\nSeccomp stands for secure computing mode and has been a feature of the Linux\nkernel since version 2.6.12. It can be used to sandbox the privileges of a\nprocess, restricting the calls it is able to make from userspace into the\nkernel. Kubernetes lets you automatically apply seccomp profiles loaded onto a\n[node](#gloss:node) to your Pods and containers.\n\n## Seccomp fields\n\n\n\nThere are four ways to specify a seccomp profile for a\n[pod](#gloss:pod):\n\n- for the whole Pod using [`spec.securityContext.seccompProfile`](/docs/reference/kubernetes-api/workload-resources/pod-v1/#security-context)\n- for a single container using [`spec.containers[*].securityContext.seccompProfile`](/docs/reference/kubernetes-api/workload-resources/pod-v1/#security-context-1)\n- for an (restartable / sidecar) init container using [`spec.initContainers[*].securityContext.seccompProfile`](/docs/reference/kubernetes-api/workload-resources/pod-v1/#security-context-1)\n- for an [ephemeral container](/docs/concepts/workloads/pods/ephemeral-containers) using [`spec.ephemeralContainers[*].securityContext.seccompProfile`](/docs/reference/kubernetes-api/workload-resources/pod-v1/#security-context-2)\n\n\n\nThe Pod in the example above runs as `Unconfined`, while the\n`ephemeral-container` and `init-container` specifically defines\n`RuntimeDefault`. If the ephemeral or init container would not have set the\n`securityContext.seccompProfile` field explicitly, then the value would be\ninherited from the Pod. The same applies to the container, which runs a\n`Localhost` profile `my-profile.json`.\n\nGenerally speaking, fields from (ephemeral) containers have a higher priority\nthan the Pod level value, while containers which do not set the seccomp field\ninherit the profile from the Pod.\n\n\n> **Note:** It is not possible to apply a seccomp profile to a Pod or container running with\n`privileged: true` set in the container's `securityContext`. Privileged\ncontainers always run as `Unconfined`.\n\n\nThe following values are possible for the `seccompProfile.type`:\n\n`Unconfined`\n: The workload runs without any seccomp restrictions.\n\n`RuntimeDefault`\n: A default seccomp profile defined by the\n[container runtime](#gloss:container-runtime)\nis applied. The default profiles aim to provide a strong set of security\ndefaults while preserving the functionality of the workload. It is possible that\nthe default profiles differ between container runtimes and their release\nversions, for example when comparing those from\n[CRI-O](#gloss:cri-o) and\n[containerd](#gloss:containerd).\n\n`Localhost`\n: The `localhostProfile` will be applied, which has to be available on the node\ndisk (on Linux it's `/var/lib/kubelet/seccomp`). The availability of the seccomp\nprofile is verified by the\n[container runtime](#gloss:container-runtime)\non container creation. If the profile does not exist, then the container\ncreation will fail with a `CreateContainerError`.\n\n### `Localhost` profiles\n\nSeccomp profiles are JSON files following the scheme defined by the\n[OCI runtime specification](https://github.com/opencontainers/runtime-spec/blob/f329913/config-linux.md#seccomp).\nA profile basically defines actions based on matched syscalls, but also allows\nto pass specific values as arguments to syscalls. For example:\n\n```json\n{\n  \"defaultAction\": \"SCMP_ACT_ERRNO\",\n  \"defaultErrnoRet\": 38,\n  \"syscalls\": [\n    {\n      \"names\": [\n        \"adjtimex\",\n        \"alarm\",\n        \"bind\",\n        \"waitid\",\n        \"waitpid\",\n        \"write\",\n        \"writev\"\n      ],\n      \"action\": \"SCMP_ACT_ALLOW\"\n    }\n  ]\n}\n```\n\nThe `defaultAction` in the profile above is defined as `SCMP_ACT_ERRNO` and\nwill return as fallback to the actions defined in `syscalls`. The error is\ndefined as code `38` via the `defaultErrnoRet` field.\n\nThe following actions are generally possible:\n\n`SCMP_ACT_ERRNO`\n: Return the specified error code.\n\n`SCMP_ACT_ALLOW`\n: Allow the syscall to be executed.\n\n`SCMP_ACT_KILL_PROCESS`\n: Kill the process.\n\n`SCMP_ACT_KILL_THREAD` and `SCMP_ACT_K\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/seccomp/",
      "meta": {
        "weight": 80,
        "rel_path": "reference/node/seccomp.md"
      },
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": null,
          "line_end": null,
          "quote": "Seccomp and Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:seccomp-fields",
      "type": "concept",
      "title": "Seccomp fields",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 407,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:localhost-profiles",
      "type": "concept",
      "title": "`Localhost` profiles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 3255,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/kubelet-files",
      "type": "page",
      "title": "Local Files And Paths Used By The Kubelet",
      "summary": "",
      "body": "The [kubelet](#gloss:kubelet) is mostly a stateless\nprocess running on a Kubernetes [node](#gloss:node).\nThis document outlines files that kubelet reads and writes.\n\n\n> **Note:** This document is for informational purpose and not describing any guaranteed behaviors or APIs.\nIt lists resources used by the kubelet, which is an implementation detail and a subject to change at any release.\n\n\nThe kubelet typically uses the [control plane](#gloss:control-plane) as\nthe source of truth on what needs to run on the Node, and the\n[container runtime](#gloss:container-runtime) to retrieve\nthe current state of containers. So long as you provide a _kubeconfig_ (API client configuration)\nto the kubelet, the kubelet does connect to your control plane; otherwise the node operates in\n_standalone mode_.\n\nOn Linux nodes, the kubelet also relies on reading cgroups and various system files to collect metrics.\n\nOn Windows nodes, the kubelet collects metrics via a different mechanism that does not rely on\npaths.\n\nThere are also a few other files that are used by the kubelet as well,\nas kubelet communicates using local Unix-domain sockets. Some are sockets that the\nkubelet listens on, and for other sockets the kubelet discovers them and then connects\nas a client.\n\n\n> **Note:** This page lists paths as Linux paths, which map to the Windows paths by adding a root disk\n`C:\\` in place of `/` (unless specified otherwise).\nFor example, `/var/lib/kubelet/device-plugins` maps to `C:\\var\\lib\\kubelet\\device-plugins`.\n\n\n## Configuration\n\n### Kubelet configuration files\n\nThe path to the kubelet configuration file can be configured\nusing the command line argument `--config`. The kubelet also supports\n[drop-in configuration files](/docs/tasks/administer-cluster/kubelet-config-file/#kubelet-conf-d)\nto enhance configuration.\n\n### Certificates\n\nCertificates and private keys are typically located at `/var/lib/kubelet/pki`,\nbut can be configured using the `--cert-dir` kubelet command line argument.\nNames of certificate files are also configurable.\n\n### Manifests\n\nManifests for static pods are typically located in `/etc/kubernetes/manifests`.\nLocation can be configured using the `staticPodPath` kubelet configuration option.\n\n### Systemd unit settings\n\nWhen kubelet is running as a systemd unit, some kubelet configuration may be declared\nin systemd unit settings file. Typically it includes:\n\n- command line arguments to [run kubelet](/docs/reference/command-line-tools-reference/kubelet/)\n- environment variables, used by kubelet or [configuring golang runtime](https://pkg.go.dev/runtime#hdr-Environment_Variables)\n\n## State\n\n### Checkpoint files for resource managers {#resource-managers-state}\n\nAll resource managers keep the mapping of Pods to allocated resources in state files.\nState files are located in the kubelet's base directory, also termed the _root directory_\n(but not the same as `/`, the node root directory). You can configure the base directory\nfor the kubelet\nusing the kubelet command line argument `--root-dir`.\n\nNames of files:\n\n- `memory_manager_state` for the [Memory Manager](/docs/tasks/administer-cluster/memory-manager/)\n- `cpu_manager_state` for the [CPU Manager](/docs/tasks/administer-cluster/cpu-management-policies/)\n- `dra_manager_state` for [DRA](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/)\n\n### Checkpoint file for device manager {#device-manager-state}\n\nDevice manager creates checkpoints in the same directory with socket files: `/var/lib/kubelet/device-plugins/`.\nThis path is hardcoded and is not relative to the kubelet root directory.\nThe name of a checkpoint file is `kubelet_internal_checkpoint` for\n[Device Manager](/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/#device-plugin-integration-with-the-topology-manager)\n\n### Pod resource checkpoints\n\n\n\nIf a node has enabled the `InPlacePodVerticalScaling`[feature gate](/docs/reference/command-line-tools-reference/feature-gates/),\nthe kubelet stores a local record of _\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
      "meta": {
        "weight": 42,
        "rel_path": "reference/node/kubelet-files.md"
      },
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": null,
          "line_end": null,
          "quote": "Local Files And Paths Used By The Kubelet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:state",
      "type": "concept",
      "title": "State",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 2769,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:security-profiles-configuration",
      "type": "concept",
      "title": "Security profiles & configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 7888,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:locking",
      "type": "concept",
      "title": "Locking",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 8302,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-configuration-files",
      "type": "concept",
      "title": "Kubelet configuration files",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 1684,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificates",
      "type": "concept",
      "title": "Certificates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 1973,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manifests",
      "type": "concept",
      "title": "Manifests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 2197,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:systemd-unit-settings",
      "type": "concept",
      "title": "Systemd unit settings",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 2376,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:checkpoint-files-for-resource-managers-resource-managers-state",
      "type": "concept",
      "title": "Checkpoint files for resource managers {#resource-managers-state}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 2779,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:checkpoint-file-for-device-manager-device-manager-state",
      "type": "concept",
      "title": "Checkpoint file for device manager {#device-manager-state}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 3500,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-resource-checkpoints",
      "type": "concept",
      "title": "Pod resource checkpoints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 3957,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:pod-resources-api",
      "type": "concept",
      "title": "Pod resources API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 5714,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dra-csi-and-device-plugins",
      "type": "concept",
      "title": "DRA, CSI, and Device plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 6029,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:graceful-node-shutdown",
      "type": "concept",
      "title": "Graceful node shutdown",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 6767,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:image-pull-records",
      "type": "concept",
      "title": "Image Pull Records",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 7035,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:apparmor",
      "type": "concept",
      "title": "AppArmor",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 8103,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/kubelet-checkpoint-api",
      "type": "page",
      "title": "Kubelet Checkpoint API",
      "summary": "",
      "body": "\n\nCheckpointing a container is the functionality to create a stateful copy of a\nrunning container. Once you have a stateful copy of a container, you could\nmove it to a different computer for debugging or similar purposes.\n\nIf you move the checkpointed container data to a computer that's able to restore\nit, that restored container continues to run at exactly the same\npoint it was checkpointed. You can also inspect the saved data, provided that you\nhave suitable tools for doing so.\n\nCreating a checkpoint of a container might have security implications. Typically\na checkpoint contains all memory pages of all processes in the checkpointed\ncontainer. This means that everything that used to be in memory is now available\non the local disk. This includes all private data and possibly keys used for\nencryption. The underlying CRI implementations (the container runtime on that node)\nshould create the checkpoint archive to be only accessible by the `root` user. It\nis still important to remember if the checkpoint archive is transferred to another\nsystem all memory pages will be readable by the owner of the checkpoint archive.\n\n## Operations {#operations}\n\n### `post` checkpoint the specified container {#post-checkpoint}\n\nTell the kubelet to checkpoint a specific container from the specified Pod.\n\nConsult the [Kubelet authentication/authorization reference](/docs/reference/access-authn-authz/kubelet-authn-authz)\nfor more information about how access to the kubelet checkpoint interface is\ncontrolled.\n\nThe kubelet will request a checkpoint from the underlying\n[CRI](#gloss:cri) implementation. In the checkpoint\nrequest the kubelet will specify the name of the checkpoint archive as\n`checkpoint-<podFullName>-<containerName>-<timestamp>.tar` and also request to\nstore the checkpoint archive in the `checkpoints` directory below its root\ndirectory (as defined by `--root-dir`).  This defaults to\n`/var/lib/kubelet/checkpoints`.\n\nThe checkpoint archive is in _tar_ format, and could be listed using an implementation of\n[`tar`](https://pubs.opengroup.org/onlinepubs/7908799/xcu/tar.html). The contents of the\narchive depend on the underlying CRI implementation (the container runtime on that node).\n\n#### HTTP Request {#post-checkpoint-request}\n\nPOST /checkpoint/{namespace}/{pod}/{container}\n\n#### Parameters {#post-checkpoint-params}\n\n- **namespace** (*in path*): string, required\n\n  [namespace](#gloss:namespace)\n\n- **pod** (*in path*): string, required\n\n  [pod](#gloss:pod)\n\n- **container** (*in path*): string, required\n\n  [container](#gloss:container)\n\n- **timeout** (*in query*): integer\n\n  Timeout in seconds to wait until the checkpoint creation is finished.\n  If zero or no timeout is specified the default [CRI](#gloss:cri) timeout value will be used. Checkpoint\n  creation time depends directly on the used memory of the container.\n  The more memory a container uses the more time is required to create\n  the corresponding checkpoint.\n\n#### Response {#post-checkpoint-response}\n\n200: OK\n\n401: Unauthorized\n\n404: Not Found (if the `ContainerCheckpoint` feature gate is disabled)\n\n404: Not Found (if the specified `namespace`, `pod` or `container` cannot be found)\n\n500: Internal Server Error (if the CRI implementation encounter an error during checkpointing (see error message for further details))\n\n500: Internal Server Error (if the CRI implementation does not implement the checkpoint CRI API (see error message for further details))\n\n\nTODO: Add more information about return codes once CRI implementation have checkpoint/restore.\n      This TODO cannot be fixed before the release, because the CRI implementation need\n      the Kubernetes changes to be merged to implement the new ContainerCheckpoint CRI API\n      call. We need to wait after the 1.25 release to fix this.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/node/kubelet-checkpoint-api.md"
      },
      "provenance": [
        {
          "source": "reference/node/kubelet-checkpoint-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet Checkpoint API"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:post-checkpoint-the-specified-container-post-checkpoint",
      "type": "concept",
      "title": "`post` checkpoint the specified container {#post-checkpoint}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/kubelet-checkpoint-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/",
          "line_start": 1223,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/topics-on-dockershim-and-cri-compatible-runtimes",
      "type": "page",
      "title": "Articles on dockershim Removal and on Using CRI-compatible Runtimes",
      "summary": "",
      "body": "\nThis is a list of articles and other pages that are either\nabout the Kubernetes' deprecation and removal of _dockershim_,\nor about using CRI-compatible container runtimes,\nin connection with that removal.\n\n\n\n## Kubernetes project\n\n* Kubernetes blog: [Dockershim Removal FAQ](/blog/2020/12/02/dockershim-faq/) (originally published 2020/12/02)\n\n* Kubernetes blog: [Updated: Dockershim Removal FAQ](/blog/2022/02/17/dockershim-faq/) (updated published 2022/02/17)\n\n* Kubernetes blog: [Kubernetes is Moving on From Dockershim: Commitments and Next Steps](/blog/2022/01/07/kubernetes-is-moving-on-from-dockershim/) (published 2022/01/07)\n\n* Kubernetes blog: [Dockershim removal is coming. Are you ready?](/blog/2021/11/12/are-you-ready-for-dockershim-removal/) (published 2021/11/12)\n\n* Kubernetes documentation: [Migrating from dockershim](/docs/tasks/administer-cluster/migrating-from-dockershim/)\n\n* Kubernetes documentation: [Container Runtimes](/docs/setup/production-environment/container-runtimes/)\n\n* Kubernetes enhancement proposal: [KEP-2221: Removing dockershim from kubelet](https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/2221-remove-dockershim/README.md)\n\n* Kubernetes enhancement proposal issue: [Removing dockershim from kubelet](https://github.com/kubernetes/enhancements/issues/2221) (_k/enhancements#2221_)\n\n\nYou can provide feedback via the GitHub issue [**Dockershim removal feedback & issues**](https://github.com/kubernetes/kubernetes/issues/106917). (_k/kubernetes/#106917_)\n\n## External sources {#third-party}\n\n\n\n* Amazon Web Services EKS documentation: [Amazon EKS is ending support for Dockershim](https://docs.aws.amazon.com/eks/latest/userguide/dockershim-deprecation.html)\n\n* CNCF conference video: [Lessons Learned Migrating Kubernetes from Docker to containerd Runtime](https://www.youtube.com/watch?v=uDOu6rK4yOk) (Ana Caylin, at KubeCon Europe 2019)\n\n* Docker.com blog: [What developers need to know about Docker, Docker Engine, and Kubernetes v1.20](https://www.docker.com/blog/what-developers-need-to-know-about-docker-docker-engine-and-kubernetes-v1-20/) (published 2020/12/04)\n\n* \"_Google Open Source_\" channel on YouTube: [Learn Kubernetes with Google - Migrating from Dockershim to Containerd](https://youtu.be/fl7_4hjT52g)\n\n* Microsoft Apps on Azure blog: [Dockershim deprecation and AKS](https://techcommunity.microsoft.com/t5/apps-on-azure-blog/dockershim-deprecation-and-aks/ba-p/3055902) (published 2022/01/21)\n\n* Mirantis blog: [The Future of Dockershim is cri-dockerd](https://www.mirantis.com/blog/the-future-of-dockershim-is-cri-dockerd/) (published 2021/04/21)\n\n* Mirantis: [Mirantis/cri-dockerd](https://mirantis.github.io/cri-dockerd/) Official Documentation\n\n* Tripwire: [How Dockershim’s Forthcoming Deprecation Affects Your Kubernetes](https://www.tripwire.com/state-of-security/security-data-protection/cloud/how-dockershim-forthcoming-deprecation-affects-your-kubernetes/) (published 2021/07/01)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/topics-on-dockershim-and-cri-compatible-runtimes/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/node/topics-on-dockershim-and-cri-compatible-runtimes.md"
      },
      "provenance": [
        {
          "source": "reference/node/topics-on-dockershim-and-cri-compatible-runtimes.md",
          "url": "https://kubernetes.io/docs/reference/node/topics-on-dockershim-and-cri-compatible-runtimes/",
          "line_start": null,
          "line_end": null,
          "quote": "Articles on dockershim Removal and on Using CRI-compatible Runtimes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-project",
      "type": "concept",
      "title": "Kubernetes project",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/topics-on-dockershim-and-cri-compatible-runtimes.md",
          "url": "https://kubernetes.io/docs/reference/node/topics-on-dockershim-and-cri-compatible-runtimes/",
          "line_start": 240,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-sources-third-party",
      "type": "concept",
      "title": "External sources {#third-party}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/node/topics-on-dockershim-and-cri-compatible-runtimes.md",
          "url": "https://kubernetes.io/docs/reference/node/topics-on-dockershim-and-cri-compatible-runtimes/",
          "line_start": 1549,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/swap-behavior",
      "type": "page",
      "title": "Linux Node Swap Behaviors",
      "summary": "",
      "body": "To allow Kubernetes workloads to use swap, on a Linux node,\nyou must disable the kubelet's default behavior of failing when swap is detected,\nand specify memory-swap behavior as `LimitedSwap`:\n\nThe available choices for swap behavior are:\n\n`NoSwap`\n: (default) Workloads running as Pods on this node do not and cannot use swap. However, processes\n  outside of Kubernetes' scope, such as system daemons (including the kubelet itself!) **can** utilize swap.\n  This behavior is beneficial for protecting the node from system-level memory spikes,\n  but it does not safeguard the workloads themselves from such spikes.\n\n`LimitedSwap`\n: Kubernetes workloads can utilize swap memory. The amount of swap available to a Pod is determined automatically.\n\nTo learn more, read [swap memory management](/docs/concepts/cluster-administration/swap-memory-management/).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/swap-behavior/",
      "meta": {
        "weight": 110,
        "rel_path": "reference/node/swap-behavior.md"
      },
      "provenance": [
        {
          "source": "reference/node/swap-behavior.md",
          "url": "https://kubernetes.io/docs/reference/node/swap-behavior/",
          "line_start": null,
          "line_end": null,
          "quote": "Linux Node Swap Behaviors"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/node/_index",
      "type": "page",
      "title": "Node Reference Information",
      "summary": "",
      "body": "This section contains the following reference topics about nodes:\n\n* the kubelet's [sync loop](/docs/reference/node/kubelet-sync-loop/)\n\n* the kubelet's [checkpoint API](/docs/reference/node/kubelet-checkpoint-api/)\n* the kubelet's [Pod Info gRPC API](/docs/reference/node/kubelet-pod-info-grpc-api/)\n* a list of [Articles on dockershim Removal and on Using CRI-compatible Runtimes](/docs/reference/node/topics-on-dockershim-and-cri-compatible-runtimes/)\n\n* [Kubelet Device Manager API Versions](/docs/reference/node/device-plugin-api-versions)\n\n* [Node Labels Populated By The Kubelet](/docs/reference/node/node-labels)\n\n* [Local Files And Paths Used By The Kubelet](/docs/reference/node/kubelet-files)\n\n* [Node `.status` information](/docs/reference/node/node-status/)\n\n* [Linux Node Swap Behaviors](/docs/reference/node/swap-behavior/)\n\n* [Seccomp information](/docs/reference/node/seccomp/)\n\n* [What happens after a node restart](/docs/reference/node/what-happens-on-restart/)\n\nYou can also read node reference details from elsewhere in the\nKubernetes documentation, including:\n\n* [Node Metrics Data](/docs/reference/instrumentation/node-metrics).\n\n* [CRI Pod & Container Metrics](/docs/reference/instrumentation/cri-pod-container-metrics).\n\n* [Understand Pressure Stall Information (PSI) Metrics](/docs/reference/instrumentation/understand-psi-metrics).\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/node/_index/",
      "meta": {
        "weight": 80,
        "rel_path": "reference/node/_index.md"
      },
      "provenance": [
        {
          "source": "reference/node/_index.md",
          "url": "https://kubernetes.io/docs/reference/node/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Node Reference Information"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/issues-security/issues",
      "type": "page",
      "title": "Kubernetes Issue Tracker",
      "summary": "",
      "body": "To report a security issue, please follow the [Kubernetes security disclosure process](/docs/reference/issues-security/security/#report-a-vulnerability).\n\nWork on Kubernetes code and public issues are tracked using [GitHub Issues](https://github.com/kubernetes/kubernetes/issues/).\n\n* Official [list of known CVEs](/docs/reference/issues-security/official-cve-feed/)\n  (security vulnerabilities) that have been announced by the\n  [Security Response Committee](https://github.com/kubernetes/committee-security-response)\n* [CVE-related GitHub issues](https://github.com/kubernetes/kubernetes/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3Aarea%2Fsecurity+in%3Atitle+CVE)\n\nSecurity-related announcements are sent to the [kubernetes-security-announce@googlegroups.com](https://groups.google.com/forum/#!forum/kubernetes-security-announce) mailing list.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/issues-security/issues/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/issues-security/issues.md"
      },
      "provenance": [
        {
          "source": "reference/issues-security/issues.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/issues/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Issue Tracker"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/issues-security/official-cve-feed",
      "type": "page",
      "title": "Official CVE Feed",
      "summary": "",
      "body": "\n\nThis is a community maintained list of official CVEs announced by\nthe Kubernetes Security Response Committee. See\n[Kubernetes Security and Disclosure Information](/docs/reference/issues-security/security/)\nfor more details.\n\nThe Kubernetes project publishes a programmatically accessible feed of published\nsecurity issues in [JSON feed](/docs/reference/issues-security/official-cve-feed/index.json)\nand [RSS feed](/docs/reference/issues-security/official-cve-feed/feed.xml)\nformats. You can access it by executing the following commands:\n\n\n\n[Link to JSON format](/docs/reference/issues-security/official-cve-feed/index.json)\n```shell\ncurl -Lv https://k8s.io/docs/reference/issues-security/official-cve-feed/index.json\n```\n\n\n[Link to RSS format](/docs/reference/issues-security/official-cve-feed/feed.xml)\n```shell\ncurl -Lv https://k8s.io/docs/reference/issues-security/official-cve-feed/feed.xml\n```\n\n\n\n\n\n\n\nThis feed is auto-refreshing with a noticeable but small lag (minutes to hours)\nfrom the time a CVE is announced to the time it is accessible in this feed.\n\nThe source of truth of this feed is a set of GitHub Issues, filtered by a controlled and\nrestricted label `official-cve-feed`. The raw data is stored in a Google Cloud\nBucket which is writable only by a small number of trusted members of the\nCommunity.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/issues-security/official-cve-feed/",
      "meta": {
        "weight": 25,
        "rel_path": "reference/issues-security/official-cve-feed.md"
      },
      "provenance": [
        {
          "source": "reference/issues-security/official-cve-feed.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/official-cve-feed/",
          "line_start": null,
          "line_end": null,
          "quote": "Official CVE Feed"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/issues-security/_index",
      "type": "page",
      "title": "Kubernetes Issues and Security",
      "summary": "Kubernetes Issues and Security is a page that discusses security-related issues in Kubernetes.",
      "body": "Kubernetes Issues and Security is a page that discusses security-related issues in Kubernetes.\n\n**Why it matters**\nThis page helps users understand and address security concerns in their Kubernetes clusters.\n\n**Key facts**\n- Kubernetes Issues and Security provides information on security-related issues.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/issues-security/_index/",
      "meta": {
        "weight": 70,
        "rel_path": "reference/issues-security/_index.md"
      },
      "provenance": [
        {
          "source": "reference/issues-security/_index.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Issues and Security"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/issues-security/security",
      "type": "page",
      "title": "Kubernetes Security and Disclosure Information",
      "summary": "",
      "body": "\nThis page describes Kubernetes security and disclosure information.\n\n\n## Security Announcements\n\nJoin the [kubernetes-security-announce](https://groups.google.com/forum/#!forum/kubernetes-security-announce)\ngroup for emails about security and major API announcements.\n\n## Report a Vulnerability\n\nWe're extremely grateful for security researchers and users that report vulnerabilities to\nthe Kubernetes Open Source Community. All reports are thoroughly investigated by a set of community volunteers.\n\nTo make a report, submit your vulnerability to the [Kubernetes bug bounty program](https://hackerone.com/kubernetes).\nThis allows triage and handling of the vulnerability with standardized response times.\n\nYou can also email the private [security@kubernetes.io](mailto:security@kubernetes.io)\nlist with the security details and the details expected for\n[all Kubernetes bug reports](https://github.com/kubernetes/kubernetes/blob/master/.github/ISSUE_TEMPLATE/bug-report.yaml).\n\nYou may encrypt your email to this list using the GPG keys of the\n[Security Response Committee members](https://git.k8s.io/security/README.md#product-security-committee-psc).\nEncryption using GPG is NOT required to make a disclosure.\n\n### When Should I Report a Vulnerability?\n\n- You think you discovered a potential security vulnerability in Kubernetes\n- You are unsure how a vulnerability affects Kubernetes\n- You think you discovered a vulnerability in another project that Kubernetes depends on\n  - For projects with their own vulnerability reporting and disclosure process, please report it directly there\n\n### When Should I NOT Report a Vulnerability?\n\n- You need help tuning Kubernetes components for security\n- You need help applying security related updates\n- Your issue is not security related\n\n## Security Vulnerability Response\n\nEach report is acknowledged and analyzed by Security Response Committee members within 3 working days.\nThis will set off the [Security Release Process](https://git.k8s.io/security/security-release-process.md#disclosures).\n\nAny vulnerability information shared with Security Response Committee stays within Kubernetes project\nand will not be disseminated to other projects unless it is necessary to get the issue fixed.\n\nAs the security issue moves from triage, to identified fix, to release planning we will keep the reporter updated.\n\n## Public Disclosure Timing\n\nA public disclosure date is negotiated by the Kubernetes Security Response Committee and the bug submitter.\nWe prefer to fully disclose the bug as soon as possible once a user mitigation is available. It is reasonable\nto delay disclosure when the bug or the fix is not yet fully understood, the solution is not well-tested,\nor for vendor coordination. The timeframe for disclosure is from immediate (especially if it's already publicly known)\nto a few weeks. For a vulnerability with a straightforward mitigation, we expect report date to disclosure date\nto be on the order of 7 days. The Kubernetes Security Response Committee holds the final say when setting a disclosure date.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/issues-security/security/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/issues-security/security.md"
      },
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Security and Disclosure Information"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:security-announcements",
      "type": "concept",
      "title": "Security Announcements",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:report-a-vulnerability",
      "type": "concept",
      "title": "Report a Vulnerability",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 301,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:security-vulnerability-response",
      "type": "concept",
      "title": "Security Vulnerability Response",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 1814,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:public-disclosure-timing",
      "type": "concept",
      "title": "Public Disclosure Timing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 2386,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-should-i-report-a-vulnerability",
      "type": "concept",
      "title": "When Should I Report a Vulnerability?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 1244,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:when-should-i-not-report-a-vulnerability",
      "type": "concept",
      "title": "When Should I NOT Report a Vulnerability?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 1621,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/quick-reference",
      "type": "page",
      "title": "kubectl Quick Reference",
      "summary": "",
      "body": "\n\nThis page contains a list of commonly used `kubectl` commands and flags.\n\n\n> **Note:** These instructions are for Kubernetes v. To check the version, use the `kubectl version` command.\n\n\n\n## Kubectl autocomplete\n\n### BASH\n\n```bash\nsource <(kubectl completion bash) # set up autocomplete in bash into the current shell, bash-completion package should be installed first.\necho \"source <(kubectl completion bash)\" >> ~/.bashrc # add autocomplete permanently to your bash shell.\n```\n\nYou can also use a shorthand alias for `kubectl` that also works with completion:\n\n```bash\nalias k=kubectl\ncomplete -o default -F __start_kubectl k\n```\n\n### ZSH\n\n```bash\nsource <(kubectl completion zsh)  # set up autocomplete in zsh into the current shell\necho '[[ $commands[kubectl] ]] && source <(kubectl completion zsh)' >> ~/.zshrc # add autocomplete permanently to your zsh shell\n```\n\n### FISH\n\n\n> **Note:** Requires kubectl version 1.23 or above.\n\n\n```bash\necho 'kubectl completion fish | source' > ~/.config/fish/completions/kubectl.fish && source ~/.config/fish/completions/kubectl.fish\n```\n\n### A note on `--all-namespaces`\n\nAppending `--all-namespaces` happens frequently enough that you should be aware of the shorthand for `--all-namespaces`:\n\n```kubectl -A```\n\n## Kubectl context and configuration\n\nSet which Kubernetes cluster `kubectl` communicates with and modifies configuration\ninformation. See [Authenticating Across Clusters with kubeconfig](/docs/tasks/access-application-cluster/configure-access-multiple-clusters/) documentation for\ndetailed config file information.\n\n```bash\nkubectl config view # Show Merged kubeconfig settings.\n\n# use multiple kubeconfig files at the same time and view merged config\nKUBECONFIG=~/.kube/config:~/.kube/kubconfig2\n\nkubectl config view\n\n# Show merged kubeconfig settings and raw certificate data and exposed secrets\nkubectl config view --raw\n\n# get the password for the e2e user\nkubectl config view -o jsonpath='{.users[?(@.name == \"e2e\")].user.password}'\n\n# get the certificate for the e2e user\nkubectl config view --raw -o jsonpath='{.users[?(.name == \"e2e\")].user.client-certificate-data}' | base64 -d\n\nkubectl config view -o jsonpath='{.users[].name}'    # display the first user\nkubectl config view -o jsonpath='{.users[*].name}'   # get a list of users\nkubectl config get-contexts                          # display list of contexts\nkubectl config get-contexts -o name                  # get all context names\nkubectl config current-context                       # display the current-context\nkubectl config use-context my-cluster-name           # set the default context to my-cluster-name\n\nkubectl config set-cluster my-cluster-name           # set a cluster entry in the kubeconfig\n\n# configure the URL to a proxy server to use for requests made by this client in the kubeconfig\nkubectl config set-cluster my-cluster-name --proxy-url=my-proxy-url\n\n# add a new user to your kubeconf that supports basic auth\nkubectl config set-credentials kubeuser/foo.kubernetes.com --username=kubeuser --password=kubepassword\n\n# permanently save the namespace for all subsequent kubectl commands in that context.\nkubectl config set-context --current --namespace=ggckad-s2\n\n# set a context utilizing a specific username and namespace.\nkubectl config set-context gce --user=cluster-admin --namespace=foo \\\n  && kubectl config use-context gce\n\nkubectl config unset users.foo                       # delete user foo\n\n# short alias to set/show context/namespace (only works for bash and bash-compatible shells, current context to be set before using kn to set namespace)\nalias kx='f() { [ \"$1\" ] && kubectl config use-context $1 || kubectl config current-context ; } ; f'\nalias kn='f() { [ \"$1\" ] && kubectl config set-context --current --namespace $1 || kubectl config view --minify | grep namespace | cut -d\" \" -f6 ; } ; f'\n```\n\n## Kubectl apply\n\n`apply` manages applications through files defining Kubernetes resources. It creates and updates resources in a cluster thro\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubectl/quick-reference.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl Quick Reference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-autocomplete",
      "type": "concept",
      "title": "Kubectl autocomplete",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 261,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-context-and-configuration",
      "type": "concept",
      "title": "Kubectl context and configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 1340,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-objects",
      "type": "concept",
      "title": "Creating objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 4249,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:viewing-and-finding-resources",
      "type": "concept",
      "title": "Viewing and finding resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 5876,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updating-resources",
      "type": "concept",
      "title": "Updating resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 10215,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:patching-resources",
      "type": "concept",
      "title": "Patching resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 12056,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:editing-resources",
      "type": "concept",
      "title": "Editing resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 13147,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:scaling-resources",
      "type": "concept",
      "title": "Scaling resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 13408,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deleting-resources",
      "type": "concept",
      "title": "Deleting resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 13904,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:interacting-with-running-pods",
      "type": "concept",
      "title": "Interacting with running Pods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 14716,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:copying-files-and-directories-to-and-from-containers",
      "type": "concept",
      "title": "Copying files and directories to and from containers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 17276,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:interacting-with-deployments-and-services",
      "type": "concept",
      "title": "Interacting with Deployments and Services",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 18472,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:interacting-with-nodes-and-cluster",
      "type": "concept",
      "title": "Interacting with Nodes and cluster",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 19341,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bash",
      "type": "concept",
      "title": "BASH",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 286,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:zsh",
      "type": "concept",
      "title": "ZSH",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 706,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fish",
      "type": "concept",
      "title": "FISH",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 943,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:a-note-on-all-namespaces",
      "type": "concept",
      "title": "A note on `--all-namespaces`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 1166,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:formatting-output",
      "type": "concept",
      "title": "Formatting output",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 21583,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-output-verbosity-and-debugging",
      "type": "concept",
      "title": "Kubectl output verbosity and debugging",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 23668,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/conventions",
      "type": "page",
      "title": "kubectl Usage Conventions",
      "summary": "",
      "body": "\nRecommended usage conventions for `kubectl`.\n\n\n\n\n## Using `kubectl` in Reusable Scripts\n\nFor a stable output in a script:\n\n* Request one of the machine-oriented output forms, such as `-o name`, `-o json`, `-o yaml`, `-o go-template`, or `-o jsonpath`.\n* Fully-qualify the version. For example, `jobs.v1.batch/myjob`. This will ensure that kubectl does not use its default version that can change over time.\n* Don't rely on context, preferences, or other implicit states.\n\n## Subresources\n\n* You can use the `--subresource` argument for kubectl subcommands such as `get`, `patch`,\n`edit`, `apply` and `replace` to fetch and update subresources for all resources that\nsupport them. In Kubernetes version , only the `status`, `scale`\nand `resize` subresources are supported.\n  * For `kubectl edit`, the `scale` subresource is not supported. If you use  `--subresource` with\n    `kubectl edit` and specify `scale` as the subresource, the command will error out.\n* The API contract against a subresource is identical to a full resource. While updating the\n`status` subresource to a new value, keep in mind that the subresource could be potentially\nreconciled by a controller to a different value.\n\n\n## Best Practices\n\n### `kubectl run`\n\nFor `kubectl run` to satisfy infrastructure as code:\n\n* Tag the image with a version-specific tag and don't move that tag to a new version. For example, use `:v1234`, `v1.2.3`, `r03062016-1-4`, rather than `:latest` (For more information, see [Kubernetes Configuration Good Practices](/blog/2025/11/25/configuration-good-practices/)).\n* Check in the script for an image that is heavily parameterized.\n* Switch to configuration files checked into source control for features that are needed, but not expressible via `kubectl run` flags.\n\nYou can use the `--dry-run=client` flag to preview the object that would be sent to your cluster, without really submitting it.\n\n### `kubectl proxy`\n\n\n> **Caution:** Browsing untrusted pod or service endpoints through `kubectl proxy` is dangerous,\nas the served content has implicit access to the Kubernetes API using the proxy's\ncredentials. Use caution and avoid accessing untrusted endpoints while using\nprivileged credentials.\n\nTo reduce risk:\n\n* Avoid browsing to untrusted pods or services through `kubectl proxy`.\n* Use `--reject-methods='POST,PUT,PATCH,DELETE'` to restrict the proxy to\n  read-only operations when you only need to view resources.\n* Use `--reject-paths` to limit which API paths the proxy exposes.\n* Do not run `kubectl proxy` with cluster-admin credentials unless necessary.\n\n\n### `kubectl apply`\n\n* You can use `kubectl apply` to create or update resources. For more information about using kubectl apply to update resources, see [Kubectl Book](https://kubectl.docs.kubernetes.io).\n\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/kubectl/conventions.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl Usage Conventions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-kubectl-in-reusable-scripts",
      "type": "concept",
      "title": "Using `kubectl` in Reusable Scripts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:best-practices",
      "type": "concept",
      "title": "Best Practices",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": 1253,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-run",
      "type": "concept",
      "title": "`kubectl run`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": 1272,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-proxy",
      "type": "concept",
      "title": "`kubectl proxy`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": 1957,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/jsonpath",
      "type": "page",
      "title": "JSONPath Support",
      "summary": "",
      "body": "\nThe [kubectl](#gloss:kubectl) tool supports JSONPath templates as an output format.\n\n\n\n\nA _JSONPath template_ is composed of JSONPath expressions enclosed by curly braces: `{` and `}`.\nKubectl uses JSONPath expressions to filter on specific fields in the JSON object and format the output.\nIn addition to the original JSONPath template syntax, the following functions and syntax are valid:\n\n1. Use double quotes to quote text inside JSONPath expressions.\n2. Use the `range`, `end` operators to iterate lists.\n3. Use negative slice indices to step backwards through a list.  \n   Negative indices do _not_ \"wrap around\" a list and are valid as long as \\\\( ( - index + listLength ) \\ge 0 \\\\).\n\n\n> **Note:** - The `$` operator is optional since the expression always starts from the root object by default.\n\n- The result object is printed as its `String()` function.\n\n\n## Functions in Kubernetes JSONPath {#functions}\n\nGiven the JSON input:\n\n```json\n{\n  \"kind\": \"List\",\n  \"items\":[\n    {\n      \"kind\":\"None\",\n      \"metadata\":{\n        \"name\":\"127.0.0.1\",\n        \"labels\":{\n          \"kubernetes.io/hostname\":\"127.0.0.1\"\n        }\n      },\n      \"status\":{\n        \"capacity\":{\"cpu\":\"4\"},\n        \"addresses\":[{\"type\": \"LegacyHostIP\", \"address\":\"127.0.0.1\"}]\n      }\n    },\n    {\n      \"kind\":\"None\",\n      \"metadata\":{\"name\":\"127.0.0.2\"},\n      \"status\":{\n        \"capacity\":{\"cpu\":\"8\"},\n        \"addresses\":[\n          {\"type\": \"LegacyHostIP\", \"address\":\"127.0.0.2\"},\n          {\"type\": \"another\", \"address\":\"127.0.0.3\"}\n        ]\n      }\n    }\n  ],\n  \"users\":[\n    {\n      \"name\": \"myself\",\n      \"user\": {}\n    },\n    {\n      \"name\": \"e2e\",\n      \"user\": {\"username\": \"admin\", \"password\": \"secret\"}\n    }\n  ]\n}\n```\n\n\nFunction            | Description                  | Example                                                         | Result\n--------------------|------------------------------|-----------------------------------------------------------------|------------------\n`text`              | the plain text               | `kind is {.kind}`                                               | `kind is List`\n`@`                 | the current object           | `{@}`                                                           | the same as input\n`.` or `[]`         | child operator               | `{.kind}`, `{['kind']}` or `{['name\\.type']}`                   | `List`\n`..`                | recursive descent            | `{..name}`                                                      | `127.0.0.1 127.0.0.2 myself e2e`\n`*`                 | wildcard. Get all objects    | `{.items[*].metadata.name}`                                     | `[127.0.0.1 127.0.0.2]`\n`[start:end:step]` | subscript operator           | `{.users[0].name}`                                              | `myself`\n`[,]`               | union operator               | `{.items[*]['metadata.name', 'status.capacity']}`               | `127.0.0.1 127.0.0.2 map[cpu:4] map[cpu:8]`\n`?()`               | filter                       | `{.users[?(@.name==\"e2e\")].user.password}`                      | `secret`\n`range`, `end`      | iterate list                 | `{range .items[*]}[{.metadata.name}, {.status.capacity}] {end}` | `[127.0.0.1, map[cpu:4]] [127.0.0.2, map[cpu:8]]`\n`''`                | quote interpreted string     | `{range .items[*]}{.metadata.name}{'\\t'}{end}`                  | `127.0.0.1      127.0.0.2`\n`\\`                 | escape termination character | `{.items[0].metadata.labels.kubernetes\\.io/hostname}`           | `127.0.0.1`\n\n\n## Using JSONPath expressions with kubectl {#use-with-kubectl}\n\nExamples using `kubectl` and JSONPath expressions:\n\n```shell\nkubectl get pods -o json\nkubectl get pods -o=jsonpath='{@}'\nkubectl get pods -o=jsonpath='{.items[0]}'\nkubectl get pods -o=jsonpath='{.items[0].metadata.name}'\nkubectl get pods -o=jsonpath=\"{.items[*]['metadata.name', 'status.capacity']}\"\nkubectl get pods -o=jsonpath='{range .items[*]}{.metadata.name}{\"\\t\"}{.status.startTime}{\"\\n\"}{e\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/jsonpath/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/kubectl/jsonpath.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/jsonpath.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/jsonpath/",
          "line_start": null,
          "line_end": null,
          "quote": "JSONPath Support"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:functions-in-kubernetes-jsonpath-functions",
      "type": "concept",
      "title": "Functions in Kubernetes JSONPath {#functions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/jsonpath.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/jsonpath/",
          "line_start": 944,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-jsonpath-expressions-with-kubectl-use-with-kubectl",
      "type": "concept",
      "title": "Using JSONPath expressions with kubectl {#use-with-kubectl}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/jsonpath.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/jsonpath/",
          "line_start": 3722,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:regular-expressions-in-jsonpath",
      "type": "concept",
      "title": "Regular expressions in JSONPath",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/jsonpath.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/jsonpath/",
          "line_start": 5056,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/kubectl-cmds",
      "type": "page",
      "title": "kubectl Commands",
      "summary": "kubectl Commands is a page that lists available kubectl commands.",
      "body": "kubectl Commands is a page that lists available kubectl commands.\n\n**Why it matters**\nThis page helps users find and use the necessary kubectl commands for their tasks.\n\n**Key facts**\n- kubectl Commands provides information on available kubectl commands.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/kubectl-cmds/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/kubectl/kubectl-cmds.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/kubectl-cmds.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kubectl-cmds/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl Commands"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubectl/kubectl",
      "type": "page",
      "title": "kubectl",
      "summary": "",
      "body": "## \n\n[definition:kubectl]\n\nFind more information in [Command line tool](/docs/reference/kubectl/) (`kubectl`).\n\n```shell\nkubectl [flags]\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--add-dir-header</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">If true, adds the file directory to the header of the log messages</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--alsologtostderr</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">log to standard error as well as files</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">Username to impersonate for the operation</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group stringArray</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--azure-container-registry-config string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">Path to the file containing Azure container registry configuration information.</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">Default cache directory</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">Path to a cert file for the certificate authority</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">Path to a client certificate file for TLS</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">Path to a client key file for TLS</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cloud-provider-gce-l7lb-src-cidrs cidrs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 130.211.0.0/22,35.191.0.0/16</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">CIDRs opened in GCE firewall for L7 LB traffic proxy & health checks</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cloud-provider-gce-lb-src-cidrs cidrs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 130.211.0.0/22,209.85.152.0/22,209.85.204.0/22,35.191.0.0/16</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">CIDRs opened in GCE firewall for L4 LB traffic proxy & health checks</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">The name of the kubeconfig cluster to use</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">The name of the kubeconfig context to use</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--default-not-ready-toleration-seconds int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 300</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">Indicates the tolerationSeconds of the toleration for notReady:NoExecute that is added by default to every pod that does not already have such a toleration.</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--default-unreachable-toleration-seconds int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 300</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">Indicates the tolerationSeconds of the toleration for unreachable:NoExecute that is added by default to every pod that does not already have such a toleration.</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">help for kubectl</td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\">If true, the server's certificate \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/kubectl/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/kubectl.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-envvars",
      "type": "concept",
      "title": "{{% heading \"envvars\" %}}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kubectl/",
          "line_start": 9649,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/introduction",
      "type": "page",
      "title": "Introduction to kubectl",
      "summary": "",
      "body": "kubectl is a command-line tool for interacting with Kubernetes clusters, using the Kubernetes API.\nUse it to deploy applications, inspect resources, and manage workloads.\n\nWhile this Book is focused on using kubectl to declaratively manage applications in Kubernetes, it\nalso covers other kubectl functions.\n\n## Command Families\n\nMost kubectl commands typically fall into one of a few categories:\n\n| Type                                   | Used For                   | Description                                        |\n|----------------------------------------|----------------------------|----------------------------------------------------|\n| Declarative Resource Management        | Deployment and operations (e.g. GitOps)   | Declaratively manage Kubernetes workloads using resource configuration     |\n| Imperative Resource Management         | Development Only           | Run commands to manage Kubernetes workloads using Command Line arguments and flags |\n| Printing Workload State | Debugging  | Print information about workloads |\n| Interacting with Containers | Debugging  | Exec, attach, cp, logs |\n| Cluster Management | Cluster operations | Drain and cordon Nodes |\n\n## Declarative Application Management\n\nThe preferred approach for managing resources is through\ndeclarative files called resource configuration used with the kubectl *Apply* command.\nThis command reads a local (or remote) file structure and modifies cluster state to\nreflect the declared intent.\n\n\nApply is the preferred mechanism for managing resources in a Kubernetes cluster.\n\n\n## Printing State about Workloads\n\nUsers will need to view workload state.\n\n- Printing summarize state and information about resources\n- Printing complete state and information about resources\n- Printing specific fields from resources\n- Query resources matching labels\n\n## Debugging Workloads\n\nkubectl supports debugging by providing commands for:\n\n- Printing Container logs\n- Printing cluster events\n- Exec or attaching to a Container\n- Copying files from Containers in the cluster to a user's filesystem\n\n## Cluster Management\n\nOn occasion, users may need to perform operations to the Nodes of cluster. kubectl supports\ncommands to drain workloads from a Node so that it can be decommissioned or debugged.\n\n## Porcelain\n\nUsers may find using resource configuration overly verbose for *development* and prefer to work with\nthe cluster *imperatively* with a shell-like workflow. kubectl offers porcelain commands for\ngenerating and modifying resources.\n\n- Generating + creating resources such as Deployments, StatefulSets, Services, ConfigMaps, etc.\n- Setting fields on resources\n- Editing (live) resources in a text editor\n\n\nPorcelain commands are time saving for experimenting with workloads in a dev cluster, but shouldn't\nbe used for production.\n\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
      "meta": {
        "weight": 1,
        "rel_path": "reference/kubectl/introduction.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": null,
          "line_end": null,
          "quote": "Introduction to kubectl"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:command-families",
      "type": "concept",
      "title": "Command Families",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 310,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:declarative-application-management",
      "type": "concept",
      "title": "Declarative Application Management",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 1187,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:printing-state-about-workloads",
      "type": "concept",
      "title": "Printing State about Workloads",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 1625,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:debugging-workloads",
      "type": "concept",
      "title": "Debugging Workloads",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 1895,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:porcelain",
      "type": "concept",
      "title": "Porcelain",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 2334,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/kuberc",
      "type": "page",
      "title": "Kubectl user preferences (kuberc)",
      "summary": "",
      "body": "\n\nA Kubernetes `kuberc` configuration file allows you to define preferences for\n[kubectl](#gloss:kubectl),\nsuch as default options and command aliases. Unlike the kubeconfig file, a `kuberc`\nconfiguration file does **not** contain cluster details, usernames or passwords.\n\nOn Linux / POSIX computers, the default location of this configuration file is `$HOME/.kube/kuberc`.\nThe default path on Windows is similar: `%USERPROFILE%\\.kube\\kuberc`.\nTo provide kubectl with a path to a custom kuberc file, use the `--kuberc` command line option,\nor set the `KUBERC` environment variable.\n\nA `kuberc` using the `kubectl.config.k8s.io/v1beta1` format allows you to define\nthe following types of user preferences:\n\n1. [Aliases](#aliases) - allow you to create shorter versions of your favorite\n   commands, optionally setting options and arguments.\n2. [Defaults](#defaults) - allow you to configure default option values for your\n   favorite commands.\n3. [Credential Plugin Policy](#credential-plugin-policy) - allow you to configure\n   a policy for exec credential plugins.\n\n## aliases\n\nWithin a `kuberc` configuration, the _aliases_ section allows you to define custom\nshortcuts for kubectl commands, optionally with preset command line arguments\nand flags.\n\nThis next example defines a `kubectl getn` alias for the `kubectl get` subcommand,\nadditionally specifying JSON output format: `--output=json`.\n\n```yaml\napiVersion: kubectl.config.k8s.io/v1beta1\nkind: Preference\naliases:\n- name: getn\n  command: get\n  options:\n   - name: output\n     default: json\n```\n\nIn this example, the following settings were used:\n\n1. `name` - Alias name must not collide with the built-in commands.\n1. `command` - Specify the underlying built-in command that your alias will execute.\n   This includes support for subcommands like `create role`.\n1. `options` - Specify default values for options. If you explicitly specify an option\n   when you run `kubectl`, the value you provide takes precedence over the default\n   one defined in `kuberc`.\n\nWith this alias, running `kubectl getn pods` will default JSON output. However,\nif you execute `kubectl getn pods -oyaml`, the output will be in YAML format.\n\nFull `kuberc` schema is available [here](/docs/reference/config-api/kuberc.v1beta1/).\n\n### prependArgs\n\nThis next example, will expand the previous one, introducing `prependArgs` section,\nwhich allows inserting arbitrary arguments immediately after the kubectl command\nand its subcommand (if any).\n\n```yaml\napiVersion: kubectl.config.k8s.io/v1beta1\nkind: Preference\naliases:\n  - name: getn\n    command: get\n    options:\n      - name: output\n        default: json\n    prependArgs:\n      - namespace\n```\n\nIn this example, the following settings were used:\n\n1. `name` - Alias name must not collide with the built-in commands.\n1. `command` - Specify the underlying built-in command that your alias will execute.\n   This includes support for subcommands like `create role`.\n1. `options` - Specify default values for options. If you explicitly specify an option\n   when you run `kubectl`, the value you provide takes precedence over the default\n   one defined in `kuberc`.\n1. `prependArgs` - Specify explicit argument that will be placed right after the\n   command. Here, this will be translated to `kubectl get namespace test-ns --output json`.\n\n### appendArgs\n\nThis next example, will introduce a mechanism similar to prepending arguments,\nthis time, though, we will append arguments to the end of the kubectl command.\n\n```yaml\napiVersion: kubectl.config.k8s.io/v1beta1\nkind: Preference\naliases:\n- name: runx\n  command: run\n  options:\n    - name: image\n      default: busybox\n    - name: namespace\n      default: test-ns\n  appendArgs:\n    - --\n    - custom-arg\n```\n\nIn this example, the following settings were used:\n\n1. `name` - Alias name must not collide with the built-in commands.\n1. `command` - Specify the underlying built-in command that your alias will execute.\n   This includes support for subcommands like `create r\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
      "meta": {
        "weight": 70,
        "rel_path": "reference/kubectl/kuberc.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubectl user preferences (kuberc)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aliases",
      "type": "concept",
      "title": "aliases",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 1155,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credential-plugin-policy",
      "type": "concept",
      "title": "Credential plugin policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 5408,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:suggested-defaults",
      "type": "concept",
      "title": "Suggested defaults",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 12246,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disable-kuberc",
      "type": "concept",
      "title": "Disable kuberc",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 13767,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prependargs",
      "type": "concept",
      "title": "prependArgs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 2353,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:appendargs",
      "type": "concept",
      "title": "appendArgs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 3407,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialpluginpolicy",
      "type": "concept",
      "title": "credentialPluginPolicy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 5786,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:credentialpluginallowlist",
      "type": "concept",
      "title": "credentialPluginAllowlist",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 6711,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-credential-plugin-policy-example",
      "type": "concept",
      "title": "Example {#credential-plugin-policy-example}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 10325,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:managing-credential-plugin-policy-with-kubectl-kuberc-set",
      "type": "concept",
      "title": "Managing credential plugin policy with `kubectl kuberc set`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 11002,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/docker-cli-to-kubectl",
      "type": "page",
      "title": "kubectl for Docker Users",
      "summary": "",
      "body": "\nYou can use the Kubernetes command line tool `kubectl` to interact with the API Server. Using kubectl is straightforward if you are familiar with the Docker command line tool. However, there are a few differences between the Docker commands and the kubectl commands. The following sections show a Docker sub-command and describe the equivalent `kubectl` command.\n\n\n\n## docker run\n\nTo run an nginx Deployment and expose the Deployment, see [kubectl create deployment](/docs/reference/generated/kubectl/kubectl-commands#-em-deployment-em-).\n\ndocker:\n\n```shell\ndocker run -d --restart=always -e DOMAIN=cluster --name nginx-app -p 80:80 nginx\n```\n```\n55c103fa129692154a7652490236fee9be47d70a8dd562281ae7d2f9a339a6db\n```\n\n```shell\ndocker ps\n```\n```\nCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES\n55c103fa1296        nginx               \"nginx -g 'daemon of…\"   9 seconds ago       Up 9 seconds        0.0.0.0:80->80/tcp   nginx-app\n```\n\nkubectl:\n\n```shell\n# start the pod running nginx\nkubectl create deployment --image=nginx nginx-app\n```\n```\ndeployment.apps/nginx-app created\n```\n\n```shell\n# add env to nginx-app\nkubectl set env deployment/nginx-app  DOMAIN=cluster\n```\n```\ndeployment.apps/nginx-app env updated\n```\n\n\n> **Note:** `kubectl` commands print the type and name of the resource created or mutated, which can then be used in subsequent commands. You can expose a new Service after a Deployment is created.\n\n\n```shell\n# expose a port through with a service\nkubectl expose deployment nginx-app --port=80 --name=nginx-http\n```\n```\nservice \"nginx-http\" exposed\n```\n\nBy using kubectl, you can create a [Deployment](/docs/concepts/workloads/controllers/deployment/) to ensure that N pods are running nginx, where N is the number of replicas stated in the spec and defaults to 1. You can also create a [service](/docs/concepts/services-networking/service/) with a selector that matches the pod labels. For more information, see [Use a Service to Access an Application in a Cluster](/docs/tasks/access-application-cluster/service-access-application-cluster).\n\nBy default images run in the background, similar to `docker run -d ...`. To run things in the foreground, use [`kubectl run`](/docs/reference/generated/kubectl/kubectl-commands/#run) to create pod:\n```shell\nkubectl run [-i] [--tty] --attach <name> --image=<image>\n```\n\nUnlike `docker run ...`, if you specify `--attach`, then you attach `stdin`, `stdout` and `stderr`. You cannot control which streams are attached (`docker -a ...`).\nTo detach from the container, you can type the escape sequence Ctrl+P followed by Ctrl+Q.\n\n## docker ps\n\nTo list what is currently running, see [kubectl get](/docs/reference/generated/kubectl/kubectl-commands/#get).\n\ndocker:\n\n```shell\ndocker ps -a\n```\n```\nCONTAINER ID        IMAGE               COMMAND                  CREATED              STATUS                     PORTS                NAMES\n14636241935f        ubuntu:16.04        \"echo test\"              5 seconds ago        Exited (0) 5 seconds ago                        cocky_fermi\n55c103fa1296        nginx               \"nginx -g 'daemon of…\"   About a minute ago   Up About a minute          0.0.0.0:80->80/tcp   nginx-app\n```\n\nkubectl:\n\n```shell\nkubectl get po\n```\n```\nNAME                        READY     STATUS      RESTARTS   AGE\nnginx-app-8df569cb7-4gd89   1/1       Running     0          3m\nubuntu                      0/1       Completed   0          20s\n```\n\n## docker attach\n\nTo attach a process that is already running in a container, see [kubectl attach](/docs/reference/generated/kubectl/kubectl-commands/#attach).\n\ndocker:\n\n```shell\ndocker ps\n```\n```\nCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES\n55c103fa1296        nginx               \"nginx -g 'daemon of…\"   5 minutes ago       Up 5 minutes        0.0.0.0:80->80/tcp   nginx-app\n```\n\n```shell\ndocker att\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/kubectl/docker-cli-to-kubectl.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl for Docker Users"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-run",
      "type": "concept",
      "title": "docker run",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 398,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-ps",
      "type": "concept",
      "title": "docker ps",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 2714,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-attach",
      "type": "concept",
      "title": "docker attach",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 3555,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-exec",
      "type": "concept",
      "title": "docker exec",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 4369,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-logs",
      "type": "concept",
      "title": "docker logs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 5432,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-stop-and-docker-rm",
      "type": "concept",
      "title": "docker stop and docker rm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 6844,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-login",
      "type": "concept",
      "title": "docker login",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 8142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-version",
      "type": "concept",
      "title": "docker version",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 8375,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:docker-info",
      "type": "concept",
      "title": "docker info",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 9472,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/_index",
      "type": "page",
      "title": "Command line tool (kubectl)",
      "summary": "",
      "body": "\n[definition:kubectl]\n\nThis tool is named `kubectl`.\n\nFor configuration, `kubectl` looks for a file named `config` in the `$HOME/.kube` directory.\nYou can specify other [kubeconfig](/docs/concepts/configuration/organize-cluster-access-kubeconfig/)\nfiles by setting the `KUBECONFIG` environment variable or by setting the\n[`--kubeconfig`](/docs/concepts/configuration/organize-cluster-access-kubeconfig/) flag.\n\nThis overview covers `kubectl` syntax, describes the command operations, and provides common examples.\nFor details about each command, including all the supported flags and subcommands, see the\n[kubectl](/docs/reference/kubectl/generated/kubectl/) reference documentation.\n\nFor an overview, see [The kubectl command-line tool](/docs/concepts/overview/kubectl/).\nFor installation instructions, see [Installing kubectl](/docs/tasks/tools/#kubectl);\nfor a quick guide, see the [cheat sheet](/docs/reference/kubectl/quick-reference/).\nIf you're used to using the `docker` command-line tool,\n[`kubectl` for Docker Users](/docs/reference/kubectl/docker-cli-to-kubectl/) explains some equivalent commands for Kubernetes.\n\n\n\n## Syntax\n\nUse the following syntax to run `kubectl` commands from your terminal window:\n\n```shell\nkubectl [command] [TYPE] [NAME] [flags]\n```\n\nwhere `command`, `TYPE`, `NAME`, and `flags` are:\n\n* `command`: Specifies the operation that you want to perform on one or more resources,\n  for example `create`, `get`, `describe`, `delete`.\n\n* `TYPE`: Specifies the [resource type](#resource-types). Resource types are case-insensitive and\n  you can specify the singular, plural, or abbreviated forms.\n  For example, the following commands produce the same output:\n\n  ```shell\n  kubectl get pod pod1\n  kubectl get pods pod1\n  kubectl get po pod1\n  ```\n\n* `NAME`: Specifies the name of the resource. Names are case-sensitive. If the name is omitted,\n  details for all resources are displayed, for example `kubectl get pods`.\n\n  When performing an operation on multiple resources, you can specify each resource by\n  type and name or specify one or more files:\n\n  * To specify resources by type and name:\n\n    * To group resources if they are all the same type:  `TYPE1 name1 name2 name<#>`.<br/>\n      Example: `kubectl get pod example-pod1 example-pod2`\n\n    * To specify multiple resource types individually:  `TYPE1/name1 TYPE1/name2 TYPE2/name3 TYPE<#>/name<#>`.<br/>\n      Example: `kubectl get pod/example-pod1 replicationcontroller/example-rc1`\n\n  * To specify resources with one or more files:  `-f file1 -f file2 -f file<#>`\n\n    * Use YAML rather than JSON\n      since YAML tends to be more user-friendly, especially for configuration files.<br/>\n      Example: `kubectl get -f ./pod.yaml`\n\n* `flags`: Specifies optional flags. For example, you can use the `-s` or `--server` flags\n  to specify the address and port of the Kubernetes API server.<br/>\n\n\n> **Caution:** Flags that you specify from the command line override default values and any corresponding environment variables.\n\n\nIf you need help, run `kubectl help` from the terminal window.\n\n## In-cluster authentication and namespace overrides\n\nBy default `kubectl` will first determine if it is running within a pod, and thus in a cluster.\nIt starts by checking for the `KUBERNETES_SERVICE_HOST` and `KUBERNETES_SERVICE_PORT` environment\nvariables and the existence of a service account token file at `/var/run/secrets/kubernetes.io/serviceaccount/token`.\nIf all three are found in-cluster authentication is assumed.\n\nTo maintain backwards compatibility, if the `POD_NAMESPACE` environment variable is set\nduring in-cluster authentication it will override the default namespace from the\nservice account token. Any manifests or tools relying on namespace defaulting will be affected by this.\n\n**`POD_NAMESPACE` environment variable**\n\nIf the `POD_NAMESPACE` environment variable is set, cli operations on namespaced resources\nwill default to the variable value. For example, if the variable is set to `seattle`,\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
      "meta": {
        "weight": 110,
        "rel_path": "reference/kubectl/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "Command line tool (kubectl)"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:syntax",
      "type": "concept",
      "title": "Syntax",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 1231,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:in-cluster-authentication-and-namespace-overrides",
      "type": "concept",
      "title": "In-cluster authentication and namespace overrides",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 3198,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:operations",
      "type": "concept",
      "title": "Operations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 5399,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:output-options",
      "type": "concept",
      "title": "Output options",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 16626,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:examples-common-operations",
      "type": "concept",
      "title": "Examples: Common operations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 20684,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:examples-creating-and-using-plugins",
      "type": "concept",
      "title": "Examples: Creating and using plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 24840,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sorting-list-objects",
      "type": "concept",
      "title": "Sorting list objects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 20154,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl",
      "type": "page",
      "title": "kubectl",
      "summary": "kubectl controls the Kubernetes cluster manager",
      "body": "\n\n\n## \n\n\nkubectl controls the Kubernetes cluster manager.\n\n Find more information at: https://kubernetes.io/docs/reference/kubectl/\n\n```\nkubectl [flags]\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kubectl</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI request</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--password string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Password for basic authentication to the API s\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/_index",
      "type": "page",
      "title": "kubectl reference",
      "summary": "A reference document for kubectl commands and flags.",
      "body": "A reference document for kubectl commands and flags.\n\n**Why it matters**\nProvides a comprehensive guide to using kubectl effectively.\n\n**Key facts**\n- Includes information on kubectl commands, flags, and options.\n- Covers various topics such as configuration, authentication, and authorization.\n\n**Common pitfalls**\n- Can be overwhelming due to its extensive scope.\n- Requires prior knowledge of Kubernetes basics.\n\n**Related**\nkubectl command-line tool, Kubernetes documentation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/_index/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/kubectl/generated/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl reference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_attach/_index",
      "type": "page",
      "title": "kubectl attach",
      "summary": "Attach to a running container",
      "body": "\n\n\n## \n\n\nAttach to a process that is already running inside an existing container.\n\n```\nkubectl attach (POD | TYPE/NAME) -c CONTAINER\n```\n\n## \n\n```\n  # Get output from running pod mypod; use the 'kubectl.kubernetes.io/default-container' annotation\n  # for selecting the container to be attached or the first container in the pod will be chosen\n  kubectl attach mypod\n  \n  # Get output from ruby-container from pod mypod\n  kubectl attach mypod -c ruby-container\n  \n  # Switch to raw terminal mode; sends stdin to 'bash' in ruby-container from pod mypod\n  # and sends stdout/stderr from 'bash' back to the client\n  kubectl attach mypod -c ruby-container -i -t\n  \n  # Get output from the first pod of a replica set named nginx\n  kubectl attach rs/nginx\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-c, --container string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Container name. If omitted, use the kubectl.kubernetes.io/default-container annotation for selecting the container to be attached or the first container in the pod will be chosen</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--detach-keys string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"ctrl-p,ctrl-q\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Override the key sequence for detaching a container</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for attach</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--pod-running-timeout duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 1m0s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-q, --quiet</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Only print output from the remote session</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-i, --stdin</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Pass stdin to the container</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-t, --tty</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Stdin is a TTY</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_attach/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_attach/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_attach/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_attach/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl attach"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-examples",
      "type": "concept",
      "title": "{{% heading \"examples\" %}}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_attach/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_attach/_index/",
          "line_start": 740,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:heading-parentoptions",
      "type": "concept",
      "title": "{{% heading \"parentoptions\" %}}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_attach/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_attach/_index/",
          "line_start": 3055,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_subject",
      "type": "page",
      "title": "kubectl set subject",
      "summary": "Update the user, group, or service account in a role binding or cluster role binding",
      "body": "\n\n\n## \n\n\nUpdate the user, group, or service account in a role binding or cluster role binding.\n\n```\nkubectl set subject (-f FILENAME | TYPE NAME) [--user=username] [--group=groupname] [--serviceaccount=namespace:serviceaccountname] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Update a cluster role binding for serviceaccount1\n  kubectl set subject clusterrolebinding admin --serviceaccount=namespace:serviceaccount1\n  \n  # Update a role binding for user1, user2, and group1\n  kubectl set subject rolebinding admin --user=user1 --user=user2 --group=group1\n  \n  # Print the result (in YAML format) of updating rolebinding subjects from a local, without hitting the server\n  kubectl create rolebinding admin --role=admin --user=admin -o yaml --dry-run=client | kubectl set subject --local -f - --user=foo -o yaml\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources, in the namespace of the specified resource types</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-set\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files the resource to update the subjects</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Groups to bind to the role</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for subject</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--local</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, set subject will NOT contact api-server but run locally.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_subject/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_set/kubectl_set_subject.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_subject.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_subject/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl set subject"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_selector",
      "type": "page",
      "title": "kubectl set selector",
      "summary": "Set the selector on a resource",
      "body": "\n\n\n## \n\n\nSet the selector on a resource. Note that the new selector will overwrite the old selector if the resource had one prior to the invocation of 'set selector'.\n\n A selector must begin with a letter or number, and may contain letters, numbers, hyphens, dots, and underscores, up to 63 characters. If --resource-version is specified, then updates will use this resource version, otherwise the existing resource-version will be used. Note: currently selectors can only be set on Service objects.\n\n```\nkubectl set selector (-f FILENAME | TYPE NAME) EXPRESSIONS [--resource-version=version]\n```\n\n## \n\n```\n  # Set the labels and selector before creating a deployment/service pair\n  kubectl create service clusterip my-svc --clusterip=\"None\" -o yaml --dry-run=client | kubectl set selector --local -f - 'environment=qa' -o yaml | kubectl create -f -\n  kubectl create deployment my-dep --image=nginx -o yaml --dry-run=client | kubectl label --local -f - environment=qa -o yaml | kubectl create -f -\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources in the namespace of the specified resource types</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-set\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>identifying the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for selector</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--local</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, annotation will NOT contact api-server but run locally.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--resource-version string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If non-empty, the selectors update will only succeed if this is the current resource-version for the object. Only valid when specifying a single resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colsp\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_selector/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_set/kubectl_set_selector.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_selector.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_selector/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl set selector"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_env",
      "type": "page",
      "title": "kubectl set env",
      "summary": "Update environment variables on a pod template",
      "body": "\n\n\n## \n\n\nUpdate environment variables on a pod template.\n\n List environment variable definitions in one or more pods, pod templates. Add, update, or remove container environment variable definitions in one or more pod templates (within replication controllers or deployment configurations). View or modify the environment variable definitions on all containers in the specified pods or pod templates, or just those that match a wildcard.\n\n If \"--env -\" is passed, environment variables can be read from STDIN using the standard env syntax.\n\n Possible resources include (case insensitive):\n\n        pod (po), replicationcontroller (rc), deployment (deploy), daemonset (ds), statefulset (sts), cronjob (cj), replicaset (rs)\n\n```\nkubectl set env RESOURCE/NAME KEY_1=VAL_1 ... KEY_N=VAL_N\n```\n\n## \n\n```\n  # Update deployment 'registry' with a new environment variable\n  kubectl set env deployment/registry STORAGE_DIR=/local\n  \n  # List the environment variables defined on a deployments 'sample-build'\n  kubectl set env deployment/sample-build --list\n  \n  # List the environment variables defined on all pods\n  kubectl set env pods --all --list\n  \n  # Output modified deployment in YAML, and does not alter the object on the server\n  kubectl set env deployment/sample-build STORAGE_DIR=/data -o yaml\n  \n  # Update all containers in all replication controllers in the project to have ENV=prod\n  kubectl set env rc --all ENV=prod\n  \n  # Import environment from a secret\n  kubectl set env --from=secret/mysecret deployment/myapp\n  \n  # Import environment from a config map with a prefix\n  kubectl set env --from=configmap/myconfigmap --prefix=MYSQL_ deployment/myapp\n  \n  # Import specific keys from a config map\n  kubectl set env --keys=my-example-key --from=configmap/myconfigmap deployment/myapp\n  \n  # Remove the environment variable ENV from container 'c1' in all deployment configs\n  kubectl set env deployments --all --containers=\"c1\" ENV-\n  \n  # Remove the environment variable ENV from a deployment definition on disk and\n  # update the deployment config on the server\n  kubectl set env -f deploy.json ENV-\n  \n  # Set some of the local shell environment into a deployment config on the server\n  env | grep RAILS_ | kubectl set env -e - deployment/registry\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, select all resources in the namespace of the specified resource types</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-c, --containers string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"*\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The names of containers in the selected pod templates to change - may use wildcards</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-e, --env strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a key-value pair for an environment variable to set into each container.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-set\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-h\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_env/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_set/kubectl_set_env.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_env.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_env/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl set env"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount",
      "type": "page",
      "title": "kubectl set serviceaccount",
      "summary": "Update the service account of a resource",
      "body": "\n\n\n## \n\n\nUpdate the service account of pod template resources.\n\n Possible resources (case insensitive) can be:\n\n replicationcontroller (rc), deployment (deploy), daemonset (ds), job, replicaset (rs), statefulset\n\n```\nkubectl set serviceaccount (-f FILENAME | TYPE NAME) SERVICE_ACCOUNT\n```\n\n## \n\n```\n  # Set deployment nginx-deployment's service account to serviceaccount1\n  kubectl set serviceaccount deployment nginx-deployment serviceaccount1\n  \n  # Print the result (in YAML format) of updated nginx deployment with the service account from local file, without hitting the API server\n  kubectl set sa -f nginx-deployment.yaml serviceaccount1 --local --dry-run=client -o yaml\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources, in the namespace of the specified resource types</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-set\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to get from a server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for serviceaccount</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--local</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, set serviceaccount will NOT contact api-server but run locally.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl set serviceaccount"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_resources",
      "type": "page",
      "title": "kubectl set resources",
      "summary": "Update resource requests/limits on objects with pod templates",
      "body": "\n\n\n## \n\n\nSpecify compute resource requirements (CPU, memory) for any resource that defines a pod template.  If a pod is successfully scheduled, it is guaranteed the amount of resource requested, but may burst up to its specified limits.\n\n For each compute resource, if a limit is specified and a request is omitted, the request will default to the limit.\n\n Possible resources include (case insensitive): Use \"kubectl api-resources\" for a complete list of supported resources..\n\n```\nkubectl set resources (-f FILENAME | TYPE NAME)  ([--limits=LIMITS & --requests=REQUESTS]\n```\n\n## \n\n```\n  # Set a deployments nginx container cpu limits to \"200m\" and memory to \"512Mi\"\n  kubectl set resources deployment nginx -c=nginx --limits=cpu=200m,memory=512Mi\n  \n  # Set the resource request and limits for all containers in nginx\n  kubectl set resources deployment nginx --limits=cpu=200m,memory=512Mi --requests=cpu=100m,memory=256Mi\n  \n  # Remove the resource requests for resources on containers in nginx\n  kubectl set resources deployment nginx --limits=cpu=0,memory=0 --requests=cpu=0,memory=0\n  \n  # Print the result (in yaml format) of updating nginx container limits from a local, without hitting the server\n  kubectl set resources -f path/to/file.yaml --limits=cpu=200m,memory=512Mi --local -o yaml\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources, in the namespace of the specified resource types</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-c, --containers string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"*\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The names of containers in the selected pod templates to change, all containers are selected by default - may use wildcards</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-set\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to get from a server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for resources</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--limits string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The resource requirement requests for this container.  For example, 'cpu=100m,memory=256Mi'.  Note that server side components may assign requests depending on the server configuration, such as limit ranges.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--local</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: b\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_resources/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_set/kubectl_set_resources.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_resources.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_resources/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl set resources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_image",
      "type": "page",
      "title": "kubectl set image",
      "summary": "Update the image of a pod template",
      "body": "\n\n\n## \n\n\nUpdate existing container image(s) of resources.\n\n Possible resources include (case insensitive):\n\n        pod (po), replicationcontroller (rc), deployment (deploy), daemonset (ds), statefulset (sts), cronjob (cj), replicaset (rs)\n\n```\nkubectl set image (-f FILENAME | TYPE NAME) CONTAINER_NAME_1=CONTAINER_IMAGE_1 ... CONTAINER_NAME_N=CONTAINER_IMAGE_N\n```\n\n## \n\n```\n  # Set a deployment's nginx container image to 'nginx:1.9.1', and its busybox container image to 'busybox'\n  kubectl set image deployment/nginx busybox=busybox nginx=nginx:1.9.1\n  \n  # Update all deployments' and rc's nginx container's image to 'nginx:1.9.1'\n  kubectl set image deployments,rc nginx=nginx:1.9.1 --all\n  \n  # Update image of all containers of daemonset abc to 'nginx:1.9.1'\n  kubectl set image daemonset abc *=nginx:1.9.1\n  \n  # Print result (in yaml format) of updating nginx container image from local file, without hitting the server\n  kubectl set image -f path/to/file.yaml nginx=nginx:1.9.1 --local -o yaml\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources, in the namespace of the specified resource types</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-set\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to get from a server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for image</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--local</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, set image will NOT contact api-server but run locally.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy al\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_image/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_set/kubectl_set_image.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_image.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_image/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl set image"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_set/_index",
      "type": "page",
      "title": "kubectl set",
      "summary": "Set specific features on objects",
      "body": "\n\n\n## \n\n\nConfigure application resources.\n\n These commands help you make changes to existing application resources.\n\n```\nkubectl set SUBCOMMAND\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for set</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI request</p></td>\n</tr>\n\n<tr>\n<td colsp\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_set/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl set"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_run/_index",
      "type": "page",
      "title": "kubectl run",
      "summary": "Run a particular image on the cluster",
      "body": "\n\n\n## \n\n\nCreate and run a particular image in a pod.\n\n```\nkubectl run NAME --image=image [--env=\"key=value\"] [--port=port] [--dry-run=server|client] [--overrides=inline-json] [--command] -- [COMMAND] [args...]\n```\n\n## \n\n```\n  # Start a nginx pod\n  kubectl run nginx --image=nginx\n  \n  # Start a hazelcast pod and let the container expose port 5701\n  kubectl run hazelcast --image=hazelcast/hazelcast --port=5701\n  \n  # Start a hazelcast pod and set environment variables \"DNS_DOMAIN=cluster\" and \"POD_NAMESPACE=default\" in the container\n  kubectl run hazelcast --image=hazelcast/hazelcast --env=\"DNS_DOMAIN=cluster\" --env=\"POD_NAMESPACE=default\"\n  \n  # Start a hazelcast pod and set labels \"app=hazelcast\" and \"env=prod\" in the container\n  kubectl run hazelcast --image=hazelcast/hazelcast --labels=\"app=hazelcast,env=prod\"\n  \n  # Dry run; print the corresponding API objects without creating them\n  kubectl run nginx --image=nginx --dry-run=client\n  \n  # Start a nginx pod, but overload the spec with a partial set of values parsed from JSON\n  kubectl run nginx --image=nginx --overrides='{ \"apiVersion\": \"v1\", \"spec\": { ... } }'\n  \n  # Start a busybox pod and keep it in the foreground, don't restart it if it exits\n  kubectl run -i -t busybox --image=busybox --restart=Never\n  \n  # Start the nginx pod using the default command, but use custom arguments (arg1 .. argN) for that command\n  kubectl run nginx --image=nginx -- <arg1> <arg2> ... <argN>\n  \n  # Start the nginx pod using a different command and custom arguments\n  kubectl run nginx --image=nginx --command -- <cmd> <arg1> ... <argN>\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--annotations strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Annotations to apply to the pod.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--attach</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, wait for the Pod to start running, and then attach to the Pod as if 'kubectl attach ...' were called.  Default false, unless '-i/--stdin' is set, in which case the default is true. With '--restart=Never' the exit code of the container process is returned.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cascade string[=\"background\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"background\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;background&quot;, &quot;orphan&quot;, or &quot;foreground&quot;. Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--command</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true and extra arguments are present, use them as the 'command' field in the container, rather than the 'args' field which is the default.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--detach-keys string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"ctrl-p,ctrl-q\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Override the key sequence for detaching a container.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_run/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_run/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_run/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_run/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl run"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_debug/_index",
      "type": "page",
      "title": "kubectl debug",
      "summary": "Create debugging sessions for troubleshooting workloads and nodes",
      "body": "\n\n\n## \n\n\nDebug cluster resources using interactive debugging containers.\n\n 'debug' provides automation for common debugging tasks for cluster objects identified by resource and name. Pods will be used by default if no resource is specified.\n\n The action taken by 'debug' varies depending on what resource is specified. Supported actions include:\n\n  *  Workload: Create a copy of an existing pod with certain attributes changed, for example changing the image tag to a new version.\n  *  Workload: Add an ephemeral container to an already running pod, for example to add debugging utilities without restarting the pod.\n  *  Node: Create a new pod that runs in the node's host namespaces and can access the node's filesystem.\n\n Note: When a non-root user is configured for the entire target Pod, some capabilities granted by debug profile may not work.\n\n```\nkubectl debug (POD | TYPE[[.VERSION].GROUP]/NAME) [ -- COMMAND [args...] ]\n```\n\n## \n\n```\n  # Create an interactive debugging session in pod mypod and immediately attach to it.\n  kubectl debug mypod -it --image=busybox\n  \n  # Create an interactive debugging session for the pod in the file pod.yaml and immediately attach to it.\n  # (requires the EphemeralContainers feature to be enabled in the cluster)\n  kubectl debug -f pod.yaml -it --image=busybox\n  \n  # Create a debug container named debugger using a custom automated debugging image.\n  kubectl debug --image=myproj/debug-tools -c debugger mypod\n  \n  # Create a copy of mypod adding a debug container and attach to it\n  kubectl debug mypod -it --image=busybox --copy-to=my-debugger\n  \n  # Create a copy of mypod changing the command of mycontainer\n  kubectl debug mypod -it --copy-to=my-debugger --container=mycontainer -- sh\n  \n  # Create a copy of mypod changing all container images to busybox\n  kubectl debug mypod --copy-to=my-debugger --set-image=*=busybox\n  \n  # Create a copy of mypod adding a debug container and changing container images\n  kubectl debug mypod -it --copy-to=my-debugger --image=debian --set-image=app=app:debug,sidecar=sidecar:debug\n  \n  # Create an interactive debugging session on a node and immediately attach to it.\n  # The container will run in the host namespaces and the host's filesystem will be mounted at /host\n  kubectl debug node/mynode -it --image=busybox\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--arguments-only</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If specified, everything after -- will be passed to the new container as Args instead of Command.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--attach</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, wait for the container to start running, and then attach as if 'kubectl attach ...' were called.  Default false, unless '-i/--stdin' is set, in which case the default is true.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-c, --container string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Container name to use for debug container.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--copy-to string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Create a copy of the target Pod with this name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--custom string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a JSON or YAML file containing a partial container spec to customize built-in debug profiles.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--env stringToString&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: []</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Environment variables to set in the container.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>identifying the resource to debug</p>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_debug/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_debug/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_debug/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_debug/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl debug"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_api-resources/_index",
      "type": "page",
      "title": "kubectl api-resources",
      "summary": "Print the supported API resources on the server",
      "body": "\n\n\n## \n\n\nPrint the supported API resources on the server.\n\n```\nkubectl api-resources [flags]\n```\n\n## \n\n```\n  # Print the supported API resources\n  kubectl api-resources\n  \n  # Print the supported API resources with more information\n  kubectl api-resources -o wide\n  \n  # Print the supported API resources sorted by a column\n  kubectl api-resources --sort-by=name\n  \n  # Print the supported namespaced resources\n  kubectl api-resources --namespaced=true\n  \n  # Print the supported non-namespaced resources\n  kubectl api-resources --namespaced=false\n  \n  # Print the supported API resources with a specific APIGroup\n  kubectl api-resources --api-group=rbac.authorization.k8s.io\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--api-group string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Limit to resources in the specified API group.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cached</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Use the cached list of resources if available.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--categories strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Limit to resources that belong to the specified categories.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for api-resources</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--namespaced&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If false, non-namespaced resources will be returned, otherwise returning namespaced resources by default.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--no-headers</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>When using the default or custom-column output format, don't print headers (default print headers).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, wide).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--sort-by string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If non-empty, sort list of resources using specified field. The field can be either 'name' or 'kind'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--verbs strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Limit to resources that support the specified verbs.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir stri\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-resources/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_api-resources/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-resources/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-resources/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl api-resources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_expose/_index",
      "type": "page",
      "title": "kubectl expose",
      "summary": "Take a replication controller, service, deployment or pod and expose it as a new Kubernetes service",
      "body": "\n\n\n## \n\n\nExpose a resource as a new Kubernetes service.\n\n Looks up a deployment, service, replica set, replication controller or pod by name and uses the selector for that resource as the selector for a new service on the specified port. A deployment or replica set will be exposed as a service only if its selector is convertible to a selector that service supports, i.e. when the selector contains only the matchLabels component. Note that if no port is specified via --port and the exposed resource has multiple ports, all will be re-used by the new service. Also if no labels are specified, the new service will re-use the labels from the resource it exposes.\n\n Possible resources include (case insensitive):\n\n pod (po), service (svc), replicationcontroller (rc), deployment (deploy), replicaset (rs)\n\n```\nkubectl expose (-f FILENAME | TYPE NAME) [--port=port] [--protocol=TCP|UDP|SCTP] [--target-port=number-or-name] [--name=name] [--external-ip=external-ip-of-service] [--type=type]\n```\n\n## \n\n```\n  # Create a service for a replicated nginx, which serves on port 80 and connects to the containers on port 8000\n  kubectl expose rc nginx --port=80 --target-port=8000\n  \n  # Create a service for a replication controller identified by type and name specified in \"nginx-controller.yaml\", which serves on port 80 and connects to the containers on port 8000\n  kubectl expose -f nginx-controller.yaml --port=80 --target-port=8000\n  \n  # Create a service for a pod valid-pod, which serves on port 444 with the name \"frontend\"\n  kubectl expose pod valid-pod --port=444 --name=frontend\n  \n  # Create a second service based on the above service, exposing the container port 8443 as port 443 with the name \"nginx-https\"\n  kubectl expose service nginx --port=443 --target-port=8443 --name=nginx-https\n  \n  # Create a service for a replicated streaming application on port 4100 balancing UDP traffic and named 'video-stream'.\n  kubectl expose rc streamer --port=4100 --protocol=UDP --name=video-stream\n  \n  # Create a service for a replicated nginx using replica set, which serves on port 80 and connects to the containers on port 8000\n  kubectl expose rs nginx --port=80 --target-port=8000\n  \n  # Create a service for an nginx deployment, which serves on port 80 and connects to the containers on port 8000\n  kubectl expose deployment nginx --port=80 --target-port=8000\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster-ip string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>ClusterIP to be assigned to the service. Leave empty to auto-allocate, or set to 'None' to create a headless service.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--external-ip string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Additional external IP address (not managed by Kubernetes) to accept for the service. If this IP is routed to a node, the service can be accessed by this IP in addition to its generated service IP.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-expose\"</td>\n</tr>\n<tr>\n<td></td><td st\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_expose/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_expose/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_expose/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_expose/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl expose"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_annotate/_index",
      "type": "page",
      "title": "kubectl annotate",
      "summary": "Update the annotations on a resource",
      "body": "\n\n\n## \n\n\nUpdate the annotations on one or more resources.\n\n All Kubernetes objects support the ability to store additional data with the object as annotations. Annotations are key/value pairs that can be larger than labels and include arbitrary string values such as structured JSON. Tools and system extensions may use annotations to store their own data.\n\n Attempting to set an annotation that already exists will fail unless --overwrite is set. If --resource-version is specified and does not match the current resource version on the server the command will fail.\n\nUse \"kubectl api-resources\" for a complete list of supported resources.\n\n```\nkubectl annotate [--overwrite] (-f FILENAME | TYPE NAME) KEY_1=VAL_1 ... KEY_N=VAL_N [--resource-version=version]\n```\n\n## \n\n```\n  # Update pod 'foo' with the annotation 'description' and the value 'my frontend'\n  # If the same annotation is set multiple times, only the last value will be applied\n  kubectl annotate pods foo description='my frontend'\n  \n  # Update a pod identified by type and name in \"pod.json\"\n  kubectl annotate -f pod.json description='my frontend'\n  \n  # Update pod 'foo' with the annotation 'description' and the value 'my frontend running nginx', overwriting any existing value\n  kubectl annotate --overwrite pods foo description='my frontend running nginx'\n  \n  # Update all pods in the namespace\n  kubectl annotate pods --all description='my frontend running nginx'\n  \n  # Update pod 'foo' only if the resource is unchanged from version 1\n  kubectl annotate pods foo description='my frontend running nginx' --resource-version=1\n  \n  # Update pod 'foo' by removing an annotation named 'description' if it exists\n  # Does not require the --overwrite flag\n  kubectl annotate pods foo description-\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources, in the namespace of the specified resource types.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-A, --all-namespaces</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, check the specified action in all namespaces.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-annotate\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (field query) to filter on, supports '=', '==', and '!='.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to update the annotation</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for a\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_annotate/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_annotate/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_annotate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_annotate/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl annotate"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump",
      "type": "page",
      "title": "kubectl cluster-info dump",
      "summary": "Dump relevant information for debugging and diagnosis",
      "body": "\n\n\n## \n\n\nDump cluster information out suitable for debugging and diagnosing cluster problems.  By default, dumps everything to stdout. You can optionally specify a directory with --output-directory.  If you specify a directory, Kubernetes will build a set of files in that directory.  By default, only dumps things in the current namespace and 'kube-system' namespace, but you can switch to a different namespace with the --namespaces flag, or specify --all-namespaces to dump all namespaces.\n\n The command also dumps the logs of all of the pods in the cluster; these logs are dumped into different directories based on namespace and pod name.\n\n```\nkubectl cluster-info dump [flags]\n```\n\n## \n\n```\n  # Dump current cluster state to stdout\n  kubectl cluster-info dump\n  \n  # Dump current cluster state to /path/to/cluster-state\n  kubectl cluster-info dump --output-directory=/path/to/cluster-state\n  \n  # Dump all namespaces to stdout\n  kubectl cluster-info dump --all-namespaces\n  \n  # Dump a set of namespaces to /path/to/cluster-state\n  kubectl cluster-info dump --namespaces default,kube-system --output-directory=/path/to/cluster-state\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-A, --all-namespaces</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, dump all namespaces.  If true, --namespaces is ignored.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for dump</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--namespaces strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A comma separated list of namespaces to dump.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"json\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--output-directory string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Where to output the files.  If empty or '-' uses stdout, otherwise creates a directory hierarchy in that directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--pod-running-timeout duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 20s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td co\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl cluster-info dump"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_cluster-info/_index",
      "type": "page",
      "title": "kubectl cluster-info",
      "summary": "Display cluster information",
      "body": "\n\n\n## \n\n\nDisplay addresses of the control plane and services with label kubernetes.io/cluster-service=true. To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.\n\n```\nkubectl cluster-info [flags]\n```\n\n## \n\n```\n  # Print the address of the control plane and cluster services\n  kubectl cluster-info\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for cluster-info</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\"\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_cluster-info/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl cluster-info"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_explain/_index",
      "type": "page",
      "title": "kubectl explain",
      "summary": "Get documentation for a resource",
      "body": "\n\n\n## \n\n\nDescribe fields and structure of various resources.\n\n This command describes the fields associated with each supported API resource. Fields are identified via a simple JSONPath identifier:\n\n        &lt;type&gt;.&lt;fieldName&gt;[.&lt;fieldName&gt;]\n        \n Information about each field is retrieved from the server in OpenAPI format.\n\nUse \"kubectl api-resources\" for a complete list of supported resources.\n\n```\nkubectl explain TYPE [--recursive=FALSE|TRUE] [--api-version=api-version-group] [-o|--output=plaintext|plaintext-openapiv2]\n```\n\n## \n\n```\n  # Get the documentation of the resource and its fields\n  kubectl explain pods\n  \n  # Get all the fields in the resource\n  kubectl explain pods --recursive\n  \n  # Get the explanation for deployment in supported api versions\n  kubectl explain deployments --api-version=apps/v1\n  \n  # Get the documentation of a specific field of a resource\n  kubectl explain pods.spec.containers\n  \n  # Get the documentation of resources in different format\n  kubectl explain deployment --output=plaintext-openapiv2\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--api-version string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Get different explanations for particular API version (API group/version)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for explain</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"plaintext\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Format in which to render the schema (plaintext, plaintext-openapiv2)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Print the fields of fields (Currently only 1 level deep)</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_explain/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_explain/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_explain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_explain/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl explain"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_describe/_index",
      "type": "page",
      "title": "kubectl describe",
      "summary": "Show details of a specific resource or group of resources",
      "body": "\n\n\n## \n\n\nShow details of a specific resource or group of resources.\n\n Print a detailed description of the selected resources, including related resources such as events or controllers. You may select a single object by name, all objects of that type, provide a name prefix, or label selector. For example:\n\n        $ kubectl describe TYPE NAME_PREFIX\n        \n will first check for an exact match on TYPE and NAME_PREFIX. If no such resource exists, it will output details for every resource that has a name prefixed with NAME_PREFIX.\n\nUse \"kubectl api-resources\" for a complete list of supported resources.\n\n```\nkubectl describe (-f FILENAME | TYPE [NAME_PREFIX | -l label] | TYPE/NAME)\n```\n\n## \n\n```\n  # Describe a node\n  kubectl describe nodes kubernetes-node-emt8.c.myproject.internal\n  \n  # Describe a pod\n  kubectl describe pods/nginx\n  \n  # Describe a pod identified by type and name in \"pod.json\"\n  kubectl describe -f pod.json\n  \n  # Describe all pods\n  kubectl describe pods\n  \n  # Describe pods by label name=myLabel\n  kubectl describe pods -l name=myLabel\n  \n  # Describe all pods managed by the 'frontend' replication controller\n  # (rc-created pods get the name of the rc as a prefix in the pod name)\n  kubectl describe pods frontend\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-A, --all-namespaces</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--chunk-size int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 500</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Return large lists in chunks rather than all at once. Pass 0 to disable.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files containing the resource to describe</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for describe</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-events&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, display events related to the described object. Defaults to true for a single object, false for multiple objects and prefix matching.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impers\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_describe/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_describe/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_describe/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_describe/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl describe"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_edit/_index",
      "type": "page",
      "title": "kubectl edit",
      "summary": "Edit a resource on the server",
      "body": "\n\n\n## \n\n\nEdit a resource from the default editor.\n\n The edit command allows you to directly edit any API resource you can retrieve via the command-line tools. It will open the editor defined by your KUBE_EDITOR, or EDITOR environment variables, or fall back to 'vi' for Linux or 'notepad' for Windows. When attempting to open the editor, it will first attempt to use the shell that has been defined in the 'SHELL' environment variable. If this is not defined, the default shell will be used, which is '/bin/bash' for Linux or 'cmd' for Windows.\n\n You can edit multiple objects, although changes are applied one at a time. The command accepts file names as well as command-line arguments, although the files you point to must be previously saved versions of resources.\n\n Editing is done with the API version used to fetch the resource. To edit using a specific API version, fully-qualify the resource, version, and group.\n\n The default format is YAML. To edit in JSON, specify \"-o json\".\n\n The flag --windows-line-endings can be used to force Windows line endings, otherwise the default for your operating system will be used.\n\n In the event an error occurs while updating, a temporary file will be created on disk that contains your unapplied changes. The most common error when updating a resource is another editor changing the resource on the server. When this occurs, you will have to apply your changes to the newer version of the resource, or update your temporary saved copy to include the latest resource version.\n\n```\nkubectl edit (RESOURCE/NAME | -f FILENAME)\n```\n\n## \n\n```\n  # Edit the service named 'registry'\n  kubectl edit svc/registry\n  \n  # Use an alternative editor\n  KUBE_EDITOR=\"nano\" kubectl edit svc/registry\n  \n  # Edit the job 'myjob' in JSON using the v1 API format\n  kubectl edit job.v1.batch/myjob -o json\n  \n  # Edit the deployment 'mydeployment' in YAML and save the modified config in its annotation\n  kubectl edit deployment/mydeployment -o yaml --save-config\n  \n  # Edit the 'status' subresource for the 'mydeployment' deployment\n  kubectl edit deployment mydeployment --subresource='status'\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-edit\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files to use to edit the resource</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for edit</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--output-patch</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output the patch if the resource is edited.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap:\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_edit/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_edit/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_edit/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_edit/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl edit"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_events/_index",
      "type": "page",
      "title": "kubectl events",
      "summary": "List events",
      "body": "\n\n\n## \n\n\nDisplay events.\n\n Prints a table of the most important information about events. You can request events for a namespace, for all namespace, or filtered to only those pertaining to a specified resource.\n\n```\nkubectl events [(-o|--output=)json|yaml|kyaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file] [--for TYPE/NAME] [--watch] [--types=Normal,Warning]\n```\n\n## \n\n```\n  # List recent events in the default namespace\n  kubectl events\n  \n  # List recent events in all namespaces\n  kubectl events --all-namespaces\n  \n  # List recent events for the specified pod, then wait for more events and list them as they arrive\n  kubectl events --for pod/web-pod-13je7 --watch\n  \n  # List recent events in YAML format\n  kubectl events -oyaml\n  \n  # List recent only events of type 'Warning' or 'Normal'\n  kubectl events --types=Warning,Normal\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-A, --all-namespaces</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--chunk-size int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 500</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Return large lists in chunks rather than all at once. Pass 0 to disable.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--for string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filter events to only those pertaining to the specified resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for events</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--no-headers</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>When using the default output format, don't print headers.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--types strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output only events of given types.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-w, --watch</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>After listing the requested events, watch for more events.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_events/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_events/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_events/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_events/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_logs/_index",
      "type": "page",
      "title": "kubectl logs",
      "summary": "Print the logs for a container in a pod",
      "body": "\n\n\n## \n\n\nPrint the logs for a container in a pod or specified resource. If the pod has only one container, the container name is optional.\n\n```\nkubectl logs [-f] [-p] (POD | TYPE/NAME) [-c CONTAINER]\n```\n\n## \n\n```\n  # Return snapshot logs from pod nginx with only one container\n  kubectl logs nginx\n  \n  # Return snapshot logs from pod nginx, prefixing each line with the source pod and container name\n  kubectl logs nginx --prefix\n  \n  # Return snapshot logs from pod nginx, limiting output to 500 bytes\n  kubectl logs nginx --limit-bytes=500\n  \n  # Return snapshot logs from pod nginx, waiting up to 20 seconds for it to start running.\n  kubectl logs nginx --pod-running-timeout=20s\n  \n  # Return snapshot logs from pod nginx with multi containers\n  kubectl logs nginx --all-containers=true\n  \n  # Return snapshot logs from all pods in the deployment nginx\n  kubectl logs deployment/nginx --all-pods=true\n  \n  # Return snapshot logs from all containers in pods defined by label app=nginx\n  kubectl logs -l app=nginx --all-containers=true\n  \n  # Return snapshot logs from all pods defined by label app=nginx, limiting concurrent log requests to 10 pods\n  kubectl logs -l app=nginx --max-log-requests=10\n  \n  # Return snapshot of previous terminated ruby container logs from pod web-1\n  kubectl logs -p -c ruby web-1\n  \n  # Begin streaming the logs from pod nginx, continuing even if errors occur\n  kubectl logs nginx -f --ignore-errors=true\n  \n  # Begin streaming the logs of the ruby container in pod web-1\n  kubectl logs -f -c ruby web-1\n  \n  # Begin streaming the logs from all containers in pods defined by label app=nginx\n  kubectl logs -f -l app=nginx --all-containers=true\n  \n  # Display only the most recent 20 lines of output in pod nginx\n  kubectl logs --tail=20 nginx\n  \n  # Show all logs from pod nginx written in the last hour\n  kubectl logs --since=1h nginx\n  \n  # Show all logs with timestamps from pod nginx starting from August 30, 2024, at 06:00:00 UTC\n  kubectl logs nginx --since-time=2024-08-30T06:00:00Z --timestamps=true\n  \n  # Show logs from a kubelet with an expired serving certificate\n  kubectl logs --insecure-skip-tls-verify-backend nginx\n  \n  # Return snapshot logs from first container of a job named hello\n  kubectl logs job/hello\n  \n  # Return snapshot logs from container nginx-1 of a deployment named nginx\n  kubectl logs deployment/nginx -c nginx-1\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all-containers</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Get all containers' logs in the pod(s).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--all-pods</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Get logs from all pod(s). Sets prefix to true.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-c, --container string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Print the logs of this container</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --follow</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify if the logs should be streamed.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for logs</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-errors</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If watching / following pod logs, allow for any errors that occur to be non-fatal</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify-backend</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Skip verifying the identity of the kubelet that logs are requested from.  In theory, an attacker could provide invalid log content back. You might want to use this if your kubelet serving certificates have expired.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--limit-bytes\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_logs/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_logs/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_logs/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_logs/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl logs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_autoscale/_index",
      "type": "page",
      "title": "kubectl autoscale",
      "summary": "Auto-scale a deployment, replica set, stateful set, or replication controller",
      "body": "\n\n\n## \n\n\nCreates an autoscaler that automatically chooses and sets the number of pods that run in a Kubernetes cluster. The command will attempt to use the autoscaling/v2 API first, in case of an error, it will fall back to autoscaling/v1 API.\n\n Looks up a deployment, replica set, stateful set, or replication controller by name and creates an autoscaler that uses the given resource as a reference. An autoscaler can automatically increase or decrease number of pods deployed within the system as needed.\n\n```\nkubectl autoscale (-f FILENAME | TYPE NAME | TYPE/NAME) [--min=MINPODS] --max=MAXPODS [--cpu=CPU] [--memory=MEMORY]\n```\n\n## \n\n```\n  # Auto scale a deployment \"foo\", with the number of pods between 2 and 10, no target CPU utilization specified so a default autoscaling policy will be used\n  kubectl autoscale deployment foo --min=2 --max=10\n  \n  # Auto scale a replication controller \"foo\", with the number of pods between 1 and 5, target CPU utilization at 80%\n  kubectl autoscale rc foo --max=5 --cpu=80%\n  \n  # Auto scale a deployment \"bar\", with the number of pods between 3 and 6, target average CPU of 500m and memory of 200Mi\n  kubectl autoscale deployment bar --min=3 --max=6 --cpu=500m --memory=200Mi\n  \n  # Auto scale a deployment \"bar\", with the number of pods between 2 and 8, target CPU utilization 60% and memory utilization 70%\n  kubectl autoscale deployment bar --min=3 --max=6 --cpu=60% --memory=70%\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cpu string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Target CPU utilization over all the pods. When specified as a percentage (e.g.&quot;70%&quot; for 70% of requested CPU) it will target average utilization. When specified as quantity (e.g.&quot;500m&quot; for 500 milliCPU) it will target average value. Value without units is treated as a quantity with miliCPU being the unit (e.g.&quot;500&quot; is &quot;500m&quot;).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-autoscale\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to autoscale.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for autoscale</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--max int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: -1</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The upper limit for the number of pods that can be set by the autoscaler. Required.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--memory string</td>\n</tr>\n<tr>\n<td><\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_autoscale/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_autoscale/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_autoscale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_autoscale/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl autoscale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_options/_index",
      "type": "page",
      "title": "kubectl options",
      "summary": "Print the list of flags inherited by all commands",
      "body": "\n\n\n## \n\n\nPrint the list of flags inherited by all commands\n\n```\nkubectl options [flags]\n```\n\n## \n\n```\n  # Print flags inherited by all commands\n  kubectl options\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for options</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI request</p></td>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_options/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_options/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_options/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_options/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl options"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_namespace",
      "type": "page",
      "title": "kubectl create namespace",
      "summary": "Create a namespace with the specified name",
      "body": "\n\n\n## \n\n\nCreate a namespace with the specified name.\n\n```\nkubectl create namespace NAME [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a new namespace named my-namespace\n  kubectl create namespace my-namespace\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for namespace</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. &quot;warn&quot; will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled on the API server, and behave as &quot;ignore&quot; otherwise. &quot;false&quot; or &quot;ignore&quot; will not perform any schema validation, silently dropping any unknown or duplicate fields.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strin\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_namespace/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_namespace.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_namespace.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_namespace/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create namespace"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_token",
      "type": "page",
      "title": "kubectl create token",
      "summary": "Request a service account token",
      "body": "\n\n\n## \n\n\nRequest a service account token.\n\n```\nkubectl create token SERVICE_ACCOUNT_NAME\n```\n\n## \n\n```\n  # Request a token to authenticate to the kube-apiserver as the service account \"myapp\" in the current namespace\n  kubectl create token myapp\n  \n  # Request a token for a service account in a custom namespace\n  kubectl create token myapp --namespace myns\n  \n  # Request a token with a custom expiration\n  kubectl create token myapp --duration 10m\n  \n  # Request a token with a custom audience\n  kubectl create token myapp --audience https://example.com\n  \n  # Request a token bound to an instance of a Secret object\n  kubectl create token myapp --bound-object-kind Secret --bound-object-name mysecret\n  \n  # Request a token bound to an instance of a Secret object with a specific UID\n  kubectl create token myapp --bound-object-kind Secret --bound-object-name mysecret --bound-object-uid 0d4691ed-659b-4935-a832-355f77ee47cc\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--audience strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Audience of the requested token. If unset, defaults to requesting a token for use with the Kubernetes API server. May be repeated to request a token valid for multiple audiences.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--bound-object-kind string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Kind of an object to bind the token to. Supported kinds are Node, Pod, Secret. If set, --bound-object-name must be provided.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--bound-object-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of an object to bind the token to. The token will expire when the object is deleted. Requires --bound-object-kind.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--bound-object-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID of an object to bind the token to. Requires --bound-object-kind and --bound-object-name. If unset, the UID of the existing object is used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--duration duration</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Requested lifetime of the issued token. If not set or if set to 0, the lifetime will be determined by the server automatically. The server may return a token with a longer or shorter lifetime.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for token</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_token/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_token.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_token.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_token/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create token"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_ingress",
      "type": "page",
      "title": "kubectl create ingress",
      "summary": "Create an ingress with the specified name",
      "body": "\n\n\n## \n\n\nCreate an ingress with the specified name.\n\n```\nkubectl create ingress NAME --rule=host/path=service:port[,tls[=secret]] \n```\n\n## \n\n```\n  # Create a single ingress called 'simple' that directs requests to foo.com/bar to svc\n  # svc1:8080 with a TLS secret \"my-cert\"\n  kubectl create ingress simple --rule=\"foo.com/bar=svc1:8080,tls=my-cert\"\n  \n  # Create a catch all ingress of \"/path\" pointing to service svc:port and Ingress Class as \"otheringress\"\n  kubectl create ingress catch-all --class=otheringress --rule=\"/path=svc:port\"\n  \n  # Create an ingress with two annotations: ingress.annotation1 and ingress.annotations2\n  kubectl create ingress annotated --class=default --rule=\"foo.com/bar=svc:port\" \\\n  --annotation ingress.annotation1=foo \\\n  --annotation ingress.annotation2=bla\n  \n  # Create an ingress with the same host and multiple paths\n  kubectl create ingress multipath --class=default \\\n  --rule=\"foo.com/=svc:port\" \\\n  --rule=\"foo.com/admin/=svcadmin:portadmin\"\n  \n  # Create an ingress with multiple hosts and the pathType as Prefix\n  kubectl create ingress ingress1 --class=default \\\n  --rule=\"foo.com/path*=svc:8080\" \\\n  --rule=\"bar.com/admin*=svc2:http\"\n  \n  # Create an ingress with TLS enabled using the default ingress certificate and different path types\n  kubectl create ingress ingtls --class=default \\\n  --rule=\"foo.com/=svc:https,tls\" \\\n  --rule=\"foo.com/path/subpath*=othersvc:8080\"\n  \n  # Create an ingress with TLS enabled using a specific secret and pathType as Prefix\n  kubectl create ingress ingsecret --class=default \\\n  --rule=\"foo.com/*=svc:8080,tls=secret1\"\n  \n  # Create an ingress with a default backend\n  kubectl create ingress ingdefault --class=default \\\n  --default-backend=defaultsvc:http \\\n  --rule=\"foo.com/*=svc:8080,tls=secret1\"\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--annotation strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Annotation to insert in the ingress object, in the format annotation=value</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--class string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Ingress Class to be used</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--default-backend string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default service for backend, in format of svcname:port</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for ingress</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--rule strings</td>\n</tr>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_ingress/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_ingress.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_ingress.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_ingress/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create ingress"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_deployment",
      "type": "page",
      "title": "kubectl create deployment",
      "summary": "Create a deployment with the specified name",
      "body": "\n\n\n## \n\n\nCreate a deployment with the specified name.\n\n```\nkubectl create deployment NAME --image=image -- [COMMAND] [args...]\n```\n\n## \n\n```\n  # Create a deployment named my-dep that runs the busybox image\n  kubectl create deployment my-dep --image=busybox\n  \n  # Create a deployment with a command\n  kubectl create deployment my-dep --image=busybox -- date\n  \n  # Create a deployment named my-dep that runs the nginx image with 3 replicas\n  kubectl create deployment my-dep --image=nginx --replicas=3\n  \n  # Create a deployment named my-dep that runs the busybox image and expose port 5701\n  kubectl create deployment my-dep --image=busybox --port=5701\n  \n  # Create a deployment named my-dep that runs multiple containers\n  kubectl create deployment my-dep --image=busybox:latest --image=ubuntu:latest --image=nginx\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for deployment</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Image names to run. A deployment can have multiple images set for multi-container pod.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--port int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: -1</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The containerPort that this deployment exposes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-r, --replicas int32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 1</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Number of replicas to create. Default is 1.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate st\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_deployment/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_deployment.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_deployment.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_deployment/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create deployment"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer",
      "type": "page",
      "title": "kubectl create service loadbalancer",
      "summary": "Create a LoadBalancer service",
      "body": "\n\n\n## \n\n\nCreate a LoadBalancer service with the specified name.\n\n```\nkubectl create service loadbalancer NAME [--tcp=port:targetPort] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a new LoadBalancer service named my-lbs\n  kubectl create service loadbalancer my-lbs --tcp=5678:8080\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for loadbalancer</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--tcp strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port pairs can be specified as '&lt;port&gt;:&lt;targetPort&gt;'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. &quot;warn&quot; will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled on the API server, and behave as &quot;ignore&quot; otherwise. &quot;false&quot; or &quot;ignore&quot; will not perform any schema validation, silently dropping any unknown or duplicate fields.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create service loadbalancer"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname",
      "type": "page",
      "title": "kubectl create service externalname",
      "summary": "Create an ExternalName service",
      "body": "\n\n\n## \n\n\nCreate an ExternalName service with the specified name.\n\n ExternalName service references to an external DNS address instead of only pods, which will allow application authors to reference services that exist off platform, on other clusters, or locally.\n\n```\nkubectl create service externalname NAME --external-name external.name [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a new ExternalName service named my-ns\n  kubectl create service externalname my-ns --external-name bar.com\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--external-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>External name of service</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for externalname</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--tcp strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port pairs can be specified as '&lt;port&gt;:&lt;targetPort&gt;'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. &quot;warn&quot; will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled o\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create service externalname"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret",
      "type": "page",
      "title": "kubectl create secret",
      "summary": "Create a secret using a specified subcommand",
      "body": "\n\n\n## \n\n\nCreate a secret with specified type.\n\n A docker-registry type secret is for accessing a container registry.\n\n A generic type secret indicate an Opaque secret type.\n\n A tls type secret holds TLS certificate and its associated key.\n\n```\nkubectl create secret (docker-registry | generic | tls)\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for secret</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n<\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_secret.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create secret"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass",
      "type": "page",
      "title": "kubectl create priorityclass",
      "summary": "Create a priority class with the specified name",
      "body": "\n\n\n## \n\n\nCreate a priority class with the specified name, value, globalDefault and description.\n\n```\nkubectl create priorityclass NAME --value=VALUE --global-default=BOOL [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a priority class named high-priority\n  kubectl create priorityclass high-priority --value=1000 --description=\"high priority\"\n  \n  # Create a priority class named default-priority that is considered as the global default priority\n  kubectl create priorityclass default-priority --value=1000 --global-default=true --description=\"default priority\"\n  \n  # Create a priority class named high-priority that cannot preempt pods with lower priority\n  kubectl create priorityclass high-priority --value=1000 --description=\"high priority\" --preemption-policy=\"Never\"\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--description string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>description is an arbitrary string that usually provides guidelines on when this priority class should be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--global-default</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>global-default specifies whether this PriorityClass should be considered as the default priority.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for priorityclass</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--preemption-policy string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"PreemptLowerPriority\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>preemption-policy is the policy for preempting pods with lower priority.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/templat\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create priorityclass"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget",
      "type": "page",
      "title": "kubectl create poddisruptionbudget",
      "summary": "Create a pod disruption budget with the specified name",
      "body": "\n\n\n## \n\n\nCreate a pod disruption budget with the specified name, selector, and desired minimum available pods.\n\n```\nkubectl create poddisruptionbudget NAME --selector=SELECTOR --min-available=N [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a pod disruption budget named my-pdb that will select all pods with the app=rails label\n  # and require at least one of them being available at any point in time\n  kubectl create poddisruptionbudget my-pdb --selector=app=rails --min-available=1\n  \n  # Create a pod disruption budget named my-pdb that will select all pods with the app=nginx label\n  # and require at least half of the pods selected to be available at any point in time\n  kubectl create pdb my-pdb --selector=app=nginx --min-available=50%\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for poddisruptionbudget</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--max-unavailable string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The maximum number or percentage of unavailable pods this budget requires.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--min-available string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The minimum number or percentage of available pods this budget requires.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A label selector to use for this budget. Only equality-based selector requirements are supported.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default:\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create poddisruptionbudget"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_configmap",
      "type": "page",
      "title": "kubectl create configmap",
      "summary": "Create a config map from a local file, directory or literal value",
      "body": "\n\n\n## \n\n\nCreate a config map based on a file, directory, or specified literal value.\n\n A single config map may package one or more key/value pairs.\n\n When creating a config map based on a file, the key will default to the basename of the file, and the value will default to the file content.  If the basename is an invalid key, you may specify an alternate key.\n\n When creating a config map based on a directory, each file whose basename is a valid key in the directory will be packaged into the config map.  Any directory entries except regular files are ignored (e.g. subdirectories, symlinks, devices, pipes, etc).\n\n```\nkubectl create configmap NAME [--from-file=[key=]source] [--from-literal=key1=value1] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a new config map named my-config based on folder bar\n  kubectl create configmap my-config --from-file=path/to/bar\n  \n  # Create a new config map named my-config with specified keys instead of file basenames on disk\n  kubectl create configmap my-config --from-file=key1=/path/to/bar/file1.txt --from-file=key2=/path/to/bar/file2.txt\n  \n  # Create a new config map named my-config with key1=config1 and key2=config2\n  kubectl create configmap my-config --from-literal=key1=config1 --from-literal=key2=config2\n  \n  # Create a new config map named my-config with key=value pairs from an env file\n  kubectl create configmap my-config --from-env-file=path/to/bar.env\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--append-hash</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Append a hash of the configmap to its name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--from-env-file strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the path to a file to read lines of key=val pairs to create a configmap.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--from-file strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Key file can be specified using its file path, in which case file basename will be used as configmap key, or optionally with a key and file path, in which case the given key will be used.  Specifying a directory will iterate each named file in the directory whose basename is a valid configmap key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--from-literal strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a key and literal value to insert in configmap (i.e. mykey=somevalue)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for configmap</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, tem\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_configmap/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_configmap.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_configmap.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_configmap/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create configmap"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service",
      "type": "page",
      "title": "kubectl create service",
      "summary": "Create a service using a specified subcommand",
      "body": "\n\n\n## \n\n\nCreate a service using a specified subcommand.\n\n```\nkubectl create service [flags]\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for service</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI request</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--password string</td>\n</tr>\n<tr>\n<td></t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_service.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create service"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding",
      "type": "page",
      "title": "kubectl create clusterrolebinding",
      "summary": "Create a cluster role binding for a particular cluster role",
      "body": "\n\n\n## \n\n\nCreate a cluster role binding for a particular cluster role.\n\n```\nkubectl create clusterrolebinding NAME --clusterrole=NAME [--user=username] [--group=groupname] [--serviceaccount=namespace:serviceaccountname] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a cluster role binding for user1, user2, and group1 using the cluster-admin cluster role\n  kubectl create clusterrolebinding cluster-admin --clusterrole=cluster-admin --user=user1 --user=user2 --group=group1\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--clusterrole string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>ClusterRole this ClusterRoleBinding should reference</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Groups to bind to the clusterrole. The flag can be repeated to add multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for clusterrolebinding</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--serviceaccount strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Service accounts to bind to the clusterrole, in the format &lt;namespace&gt;:&lt;name&gt;. The flag can be repeated to add multiple service accounts.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--user strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Usernames to bind to the clusterrole. The flag can be repeated to add multiple users.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create clusterrolebinding"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic",
      "type": "page",
      "title": "kubectl create secret generic",
      "summary": "Create a secret from a local file, directory, or literal value",
      "body": "\n\n\n## \n\n\nCreate a secret based on a file, directory, or specified literal value.\n\n A single secret may package one or more key/value pairs.\n\n When creating a secret based on a file, the key will default to the basename of the file, and the value will default to the file content. If the basename is an invalid key or you wish to chose your own, you may specify an alternate key.\n\n When creating a secret based on a directory, each file whose basename is a valid key in the directory will be packaged into the secret. Any directory entries except regular files are ignored (e.g. subdirectories, symlinks, devices, pipes, etc).\n\n```\nkubectl create secret generic NAME [--type=string] [--from-file=[key=]source] [--from-literal=key1=value1] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a new secret named my-secret with keys for each file in folder bar\n  kubectl create secret generic my-secret --from-file=path/to/bar\n  \n  # Create a new secret named my-secret with specified keys instead of names on disk\n  kubectl create secret generic my-secret --from-file=ssh-privatekey=path/to/id_rsa --from-file=ssh-publickey=path/to/id_rsa.pub\n  \n  # Create a new secret named my-secret with key1=supersecret and key2=topsecret\n  kubectl create secret generic my-secret --from-literal=key1=supersecret --from-literal=key2=topsecret\n  \n  # Create a new secret named my-secret using a combination of a file and a literal\n  kubectl create secret generic my-secret --from-file=ssh-privatekey=path/to/id_rsa --from-literal=passphrase=topsecret\n  \n  # Create a new secret named my-secret from env files\n  kubectl create secret generic my-secret --from-env-file=path/to/foo.env --from-env-file=path/to/bar.env\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--append-hash</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Append a hash of the secret to its name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--from-env-file strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify the path to a file to read lines of key=val pairs to create a secret.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--from-file strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Key files can be specified using their file path, in which case a default name will be given to them, or optionally with a name and file path, in which case the given name will be used.  Specifying a directory will iterate each named file in the directory that is a valid secret key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--from-literal strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Specify a key and literal value to insert in secret (i.e. mykey=somevalue)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: brea\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create secret generic"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_quota",
      "type": "page",
      "title": "kubectl create quota",
      "summary": "Create a quota with the specified name",
      "body": "\n\n\n## \n\n\nCreate a resource quota with the specified name, hard limits, and optional scopes.\n\n```\nkubectl create quota NAME [--hard=key1=value1,key2=value2] [--scopes=Scope1,Scope2] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a new resource quota named my-quota\n  kubectl create quota my-quota --hard=cpu=1,memory=1G,pods=2,services=3,replicationcontrollers=2,resourcequotas=1,secrets=5,persistentvolumeclaims=10\n  \n  # Create a new resource quota named best-effort\n  kubectl create quota best-effort --hard=pods=100 --scopes=BestEffort\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--hard string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A comma-delimited set of resource=quantity pairs that define a hard limit.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for quota</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--scopes string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A comma-delimited set of quota scopes that must all match each object tracked by the quota.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. &quot;warn&quot; will warn\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_quota/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_quota.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_quota.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_quota/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create quota"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls",
      "type": "page",
      "title": "kubectl create secret tls",
      "summary": "Create a TLS secret",
      "body": "\n\n\n## \n\n\nCreate a TLS secret from the given public/private key pair.\n\n The public/private key pair must exist beforehand. The public key certificate must be .PEM encoded and match the given private key.\n\n```\nkubectl create secret tls NAME --cert=path/to/cert/file --key=path/to/key/file [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a new TLS secret named tls-secret with the given key pair\n  kubectl create secret tls tls-secret --cert=path/to/tls.crt --key=path/to/tls.key\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--append-hash</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Append a hash of the secret to its name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cert string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to PEM encoded public key certificate.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for tls</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to private key associated with given certificate.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validat\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create secret tls"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_cronjob",
      "type": "page",
      "title": "kubectl create cronjob",
      "summary": "Create a cron job with the specified name",
      "body": "\n\n\n## \n\n\nCreate a cron job with the specified name.\n\n```\nkubectl create cronjob NAME --image=image --schedule='0/5 * * * ?' -- [COMMAND] [args...] [flags]\n```\n\n## \n\n```\n  # Create a cron job\n  kubectl create cronjob my-job --image=busybox --schedule=\"*/1 * * * *\"\n  \n  # Create a cron job with a command\n  kubectl create cronjob my-job --image=busybox --schedule=\"*/1 * * * *\" -- date\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for cronjob</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Image name to run.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--restart string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>job's restart policy. supported values: OnFailure, Never</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--schedule string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A schedule in the Cron format the job should be run with.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. &quot;warn&quot; will warn about unknown or duplicate fields without blocking the\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_cronjob/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_cronjob.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_cronjob.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_cronjob/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create cronjob"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_job",
      "type": "page",
      "title": "kubectl create job",
      "summary": "Create a job with the specified name",
      "body": "\n\n\n## \n\n\nCreate a job with the specified name.\n\n```\nkubectl create job NAME --image=image [--from=cronjob/name] -- [COMMAND] [args...]\n```\n\n## \n\n```\n  # Create a job\n  kubectl create job my-job --image=busybox\n  \n  # Create a job with a command\n  kubectl create job my-job --image=busybox -- date\n  \n  # Create a job from a cron job named \"a-cronjob\"\n  kubectl create job test-job --from=cronjob/a-cronjob\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--from string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the resource to create a Job from (only CronJob is supported).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for job</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--image string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Image name to run.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. &quot;warn&quot; will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled on the API server, and behave as &quot;ignore&quot; otherwise. &quot;false&quot; or &quot;ignore&quot; will not\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_job/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_job.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_job.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_job/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create job"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip",
      "type": "page",
      "title": "kubectl create service clusterip",
      "summary": "Create a ClusterIP service",
      "body": "\n\n\n## \n\n\nCreate a ClusterIP service with the specified name.\n\n```\nkubectl create service clusterip NAME [--tcp=<port>:<targetPort>] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a new ClusterIP service named my-cs\n  kubectl create service clusterip my-cs --tcp=5678:8080\n  \n  # Create a new ClusterIP service named my-cs (in headless mode)\n  kubectl create service clusterip my-cs --clusterip=\"None\"\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--clusterip string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Assign your own ClusterIP or set to 'None' for a 'headless' service (no loadbalancing).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for clusterip</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--tcp strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port pairs can be specified as '&lt;port&gt;:&lt;targetPort&gt;'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. &quot;warn&quot; will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled on the API server, and behave as &quo\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create service clusterip"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_role",
      "type": "page",
      "title": "kubectl create role",
      "summary": "Create a role with single rule",
      "body": "\n\n\n## \n\n\nCreate a role with single rule.\n\n```\nkubectl create role NAME --verb=verb --resource=resource.group/subresource [--resource-name=resourcename] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a role named \"pod-reader\" that allows user to perform \"get\", \"watch\" and \"list\" on pods\n  kubectl create role pod-reader --verb=get --verb=list --verb=watch --resource=pods\n  \n  # Create a role named \"pod-reader\" with ResourceName specified\n  kubectl create role pod-reader --verb=get --resource=pods --resource-name=readablepod --resource-name=anotherpod\n  \n  # Create a role named \"foo\" with API Group specified\n  kubectl create role foo --verb=get,list,watch --resource=rs.apps\n  \n  # Create a role named \"foo\" with SubResource specified\n  kubectl create role foo --verb=get,list,watch --resource=pods,pods/status\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for role</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--resource strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Resource that the rule applies to</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--resource-name strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Resource in the white list that the rule applies to, repeat this flag for multiple items</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_role/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_role.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_role.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_role/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create role"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding",
      "type": "page",
      "title": "kubectl create rolebinding",
      "summary": "Create a role binding for a particular role or cluster role",
      "body": "\n\n\n## \n\n\nCreate a role binding for a particular role or cluster role.\n\n```\nkubectl create rolebinding NAME --clusterrole=NAME|--role=NAME [--user=username] [--group=groupname] [--serviceaccount=namespace:serviceaccountname] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a role binding for user1, user2, and group1 using the admin cluster role\n  kubectl create rolebinding admin --clusterrole=admin --user=user1 --user=user2 --group=group1\n  \n  # Create a role binding for service account monitoring:sa-dev using the admin role\n  kubectl create rolebinding admin-binding --role=admin --serviceaccount=monitoring:sa-dev\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--clusterrole string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>ClusterRole this RoleBinding should reference</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Groups to bind to the role. The flag can be repeated to add multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for rolebinding</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--role string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Role this RoleBinding should reference</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--serviceaccount strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Service accounts to bind to the role, in the format &lt;namespace&gt;:&lt;name&gt;. The flag can be repeated to add multiple service accounts.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--user strin\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create rolebinding"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry",
      "type": "page",
      "title": "kubectl create secret docker-registry",
      "summary": "Create a secret for use with a Docker registry",
      "body": "\n\n\n## \n\n\nCreate a new secret for use with Docker registries.\n        \n        Dockercfg secrets are used to authenticate against Docker registries.\n        \n        When using the Docker command line to push images, you can authenticate to a given registry by running:\n        '$ docker login DOCKER_REGISTRY_SERVER --username=DOCKER_USER --password=DOCKER_PASSWORD --email=DOCKER_EMAIL'.\n        \n That produces a ~/.dockercfg file that is used by subsequent 'docker push' and 'docker pull' commands to authenticate to the registry. The email address is optional.\n\n        When creating applications, you may have a Docker registry that requires authentication.  In order for the\n        nodes to pull images on your behalf, they must have the credentials.  You can provide this information\n        by creating a dockercfg secret and attaching it to your service account.\n\n```\nkubectl create secret docker-registry NAME --docker-username=user --docker-password=password --docker-email=email [--docker-server=string] [--from-file=[key=]source] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # If you do not already have a .dockercfg file, create a dockercfg secret directly\n  kubectl create secret docker-registry my-secret --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL\n  \n  # Create a new secret named my-secret from ~/.docker/config.json\n  kubectl create secret docker-registry my-secret --from-file=path/to/.docker/config.json\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--append-hash</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Append a hash of the secret to its name.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--docker-email string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Email for Docker registry</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--docker-password string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Password for Docker registry authentication</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--docker-server string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"https://index.docker.io/v1/\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Server location for Docker registry</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--docker-username string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username for Docker registry authentication</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--from-file strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Key files can be specified using their file path, in which case a default name of .dockerconfigjson will be given to them, or optionally with a name and file path, in which case the given name will be used. Specifying a directory will iter\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create secret docker-registry"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport",
      "type": "page",
      "title": "kubectl create service nodeport",
      "summary": "Create a NodePort service",
      "body": "\n\n\n## \n\n\nCreate a NodePort service with the specified name.\n\n```\nkubectl create service nodeport NAME [--tcp=port:targetPort] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a new NodePort service named my-ns\n  kubectl create service nodeport my-ns --tcp=5678:8080\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for nodeport</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--node-port int</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port used to expose the service on each node in a cluster.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--tcp strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Port pairs can be specified as '&lt;port&gt;:&lt;targetPort&gt;'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. &quot;warn&quot; will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled on the API server, and behave as &quot;ignore&quot; otherwise. &quot;false&quot; or &quot;ignore&quot; will not perform any schema validation, silently dropping any unknown or duplicate fields.</p></td>\n</tr\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create service nodeport"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount",
      "type": "page",
      "title": "kubectl create serviceaccount",
      "summary": "Create a service account with the specified name",
      "body": "\n\n\n## \n\n\nCreate a service account with the specified name.\n\n```\nkubectl create serviceaccount NAME [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a new service account named my-service-account\n  kubectl create serviceaccount my-service-account\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for serviceaccount</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate string[=\"strict\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"strict\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be one of: strict (or true), warn, ignore (or false). &quot;true&quot; or &quot;strict&quot; will use a schema to validate the input and fail the request if invalid. It will perform server side validation if ServerSideFieldValidation is enabled on the api-server, but will fall back to less reliable client-side validation if not. &quot;warn&quot; will warn about unknown or duplicate fields without blocking the request if server-side field validation is enabled on the API server, and behave as &quot;ignore&quot; otherwise. &quot;false&quot; or &quot;ignore&quot; will not perform any schema validation, silently dropping any unknown or duplicate fields.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create serviceaccount"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole",
      "type": "page",
      "title": "kubectl create clusterrole",
      "summary": "Create a cluster role",
      "body": "\n\n\n## \n\n\nCreate a cluster role.\n\n```\nkubectl create clusterrole NAME --verb=verb --resource=resource.group [--resource-name=resourcename] [--dry-run=server|client|none]\n```\n\n## \n\n```\n  # Create a cluster role named \"pod-reader\" that allows user to perform \"get\", \"watch\" and \"list\" on pods\n  kubectl create clusterrole pod-reader --verb=get,list,watch --resource=pods\n  \n  # Create a cluster role named \"pod-reader\" with ResourceName specified\n  kubectl create clusterrole pod-reader --verb=get --resource=pods --resource-name=readablepod --resource-name=anotherpod\n  \n  # Create a cluster role named \"foo\" with API Group specified\n  kubectl create clusterrole foo --verb=get,list,watch --resource=rs.apps\n  \n  # Create a cluster role named \"foo\" with SubResource specified\n  kubectl create clusterrole foo --verb=get,list,watch --resource=pods,pods/status\n  \n  # Create a cluster role name \"foo\" with NonResourceURL specified\n  kubectl create clusterrole \"foo\" --verb=get --non-resource-url=/logs/*\n  \n  # Create a cluster role name \"monitoring\" with AggregationRule specified\n  kubectl create clusterrole monitoring --aggregation-rule=\"rbac.example.com/aggregate-to-monitoring=true\"\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--aggregation-rule &lt;comma-separated 'key=value' pairs&gt;</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>An aggregation label selector for combining ClusterRoles.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for clusterrole</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--non-resource-url strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A partial url that user should have access to.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--resource strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Resource that the rule applies to</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--resource-name strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Resource in the white list that the rule applies to, repeat this flag for multiple items</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-f\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create clusterrole"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_create/_index",
      "type": "page",
      "title": "kubectl create",
      "summary": "Create a resource from a file or from stdin",
      "body": "\n\n\n## \n\n\nCreate a resource from a file or from stdin.\n\n JSON and YAML formats are accepted.\n\n```\nkubectl create -f FILENAME\n```\n\n## \n\n```\n  # Create a pod using the data in pod.json\n  kubectl create -f ./pod.json\n  \n  # Create a pod based on the JSON passed into stdin\n  cat pod.json | kubectl create -f -\n  \n  # Edit the data in registry.yaml in JSON then create the resource using the edited data\n  kubectl create -f registry.yaml --edit -o json\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--edit</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Edit the API resource before creating</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-create\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files to use to create the resource</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for create</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--raw string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Raw URI to POST to the server.  Uses the transport specified by the kubeconfig file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--save-config</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_create/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl create"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_api-versions/_index",
      "type": "page",
      "title": "kubectl api-versions",
      "summary": "Print the supported API versions on the server, in the form of \"group/version\"",
      "body": "\n\n\n## \n\n\nPrint the supported API versions on the server, in the form of \"group/version\".\n\n```\nkubectl api-versions\n```\n\n## \n\n```\n  # Print the supported API versions\n  kubectl api-versions\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for api-versions</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace sco\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-versions/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_api-versions/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-versions/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-versions/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl api-versions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_exec/_index",
      "type": "page",
      "title": "kubectl exec",
      "summary": "Execute a command in a container",
      "body": "\n\n\n## \n\n\nExecute a command in a container.\n\n```\nkubectl exec (POD | TYPE/NAME) [-c CONTAINER] [flags] -- COMMAND [args...]\n```\n\n## \n\n```\n  # Get output from running the 'date' command from pod mypod, using the first container by default\n  kubectl exec mypod -- date\n  \n  # Get output from running the 'date' command in ruby-container from pod mypod\n  kubectl exec mypod -c ruby-container -- date\n  \n  # Switch to raw terminal mode; sends stdin to 'bash' in ruby-container from pod mypod\n  # and sends stdout/stderr from 'bash' back to the client\n  kubectl exec mypod -c ruby-container -i -t -- bash -il\n  \n  # List contents of /usr from the first container of pod mypod and sort by modification time\n  # If the command you want to execute in the pod has any flags in common (e.g. -i),\n  # you must use two dashes (--) to separate your command's flags/arguments\n  # Also note, do not surround your command and its flags/arguments with quotes\n  # unless that is how you would execute it normally (i.e., do ls -t /usr, not \"ls -t /usr\")\n  kubectl exec mypod -i -t -- ls -t /usr\n  \n  # Get output from running 'date' command from the first pod of the deployment mydeployment, using the first container by default\n  kubectl exec deploy/mydeployment -- date\n  \n  # Get output from running 'date' command from the first pod of the service myservice, using the first container by default\n  kubectl exec svc/myservice -- date\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-c, --container string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Container name. If omitted, use the kubectl.kubernetes.io/default-container annotation for selecting the container to be attached or the first container in the pod will be chosen</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>to use to exec into the resource</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for exec</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--pod-running-timeout duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 1m0s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-q, --quiet</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Only print output from the remote session</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-i, --stdin</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Pass stdin to the container</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-t, --tty</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Stdin is a TTY</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify mul\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_exec/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_exec/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_exec/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_exec/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl exec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_patch/_index",
      "type": "page",
      "title": "kubectl patch",
      "summary": "Update fields of a resource",
      "body": "\n\n\n## \n\n\nUpdate fields of a resource using strategic merge patch, a JSON merge patch, or a JSON patch.\n\n JSON and YAML formats are accepted.\n\n Note: Strategic merge patch is not supported for custom resources.\n\n```\nkubectl patch (-f FILENAME | TYPE NAME) [-p PATCH|--patch-file FILE]\n```\n\n## \n\n```\n  # Partially update a node using a strategic merge patch, specifying the patch as JSON\n  kubectl patch node k8s-node-1 -p '{\"spec\":{\"unschedulable\":true}}'\n  \n  # Partially update a node using a strategic merge patch, specifying the patch as YAML\n  kubectl patch node k8s-node-1 -p $'spec:\\n unschedulable: true'\n  \n  # Partially update a node identified by the type and name specified in \"node.json\" using strategic merge patch\n  kubectl patch -f node.json -p '{\"spec\":{\"unschedulable\":true}}'\n  \n  # Update a container's image; spec.containers[*].name is required because it's a merge key\n  kubectl patch pod valid-pod -p '{\"spec\":{\"containers\":[{\"name\":\"kubernetes-serve-hostname\",\"image\":\"new image\"}]}}'\n  \n  # Update a container's image using a JSON patch with positional arrays\n  kubectl patch pod valid-pod --type='json' -p='[{\"op\": \"replace\", \"path\": \"/spec/containers/0/image\", \"value\":\"new image\"}]'\n  \n  # Update a deployment's replicas through the 'scale' subresource using a merge patch\n  kubectl patch deployment nginx-deployment --subresource='scale' --type='merge' -p '{\"spec\":{\"replicas\":2}}'\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-patch\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to update</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for patch</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--local</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, patch will operate on the content of the file, not the server-side resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-p, --patch string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The patch to be applied to the resource JSON file.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--patch-file string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>A file containing a patch to be a\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_patch/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_patch/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_patch/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_patch/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl patch"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_drain/_index",
      "type": "page",
      "title": "kubectl drain",
      "summary": "Drain node in preparation for maintenance",
      "body": "\n\n\n## \n\n\nDrain node in preparation for maintenance.\n\n The given node will be marked unschedulable to prevent new pods from arriving. 'drain' evicts the pods if the API server supports https://kubernetes.io/docs/concepts/workloads/pods/disruptions/ eviction https://kubernetes.io/docs/concepts/workloads/pods/disruptions/ . Otherwise, it will use normal DELETE to delete the pods. The 'drain' evicts or deletes all pods except mirror pods (which cannot be deleted through the API server).  If there are daemon set-managed pods, drain will not proceed without --ignore-daemonsets, and regardless it will not delete any daemon set-managed pods, because those pods would be immediately replaced by the daemon set controller, which ignores unschedulable markings.  If there are any pods that are neither mirror pods nor managed by a replication controller, replica set, daemon set, stateful set, or job, then drain will not delete any pods unless you use --force.  --force will also allow deletion to proceed if the managing resource of one or more pods is missing.\n\n 'drain' waits for graceful termination. You should not operate on the machine until the command completes.\n\n When you are ready to put the node back into service, use kubectl uncordon, which will make the node schedulable again.\n\nhttps://kubernetes.io/images/docs/kubectl_drain.svg Workflowhttps://kubernetes.io/images/docs/kubectl_drain.svg\n\n```\nkubectl drain NODE\n```\n\n## \n\n```\n  # Drain node \"foo\", even if there are pods not managed by a replication controller, replica set, job, daemon set, or stateful set on it\n  kubectl drain foo --force\n  \n  # As above, but abort if there are pods not managed by a replication controller, replica set, job, daemon set, or stateful set, and use a grace period of 15 minutes\n  kubectl drain foo --grace-period=900\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--chunk-size int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 500</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Return large lists in chunks rather than all at once. Pass 0 to disable.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--delete-emptydir-data</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Continue even if there are pods using emptyDir (local data that will be deleted when the node is drained).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-eviction</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Force drain to use delete, even if eviction is supported. This will bypass checking PodDisruptionBudgets, use with caution.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--force</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Continue even if there are pods that do not declare a controller.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--grace-period int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: -1</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Period of time in seconds given to each pod to terminate gracefully. If negative, the default value specified in the pod will be used.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for drain</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--ignore-daemonsets</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Ignore DaemonSet-managed pods.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_drain/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_drain/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_drain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_drain/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl drain"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_label/_index",
      "type": "page",
      "title": "kubectl label",
      "summary": "Update the labels on a resource",
      "body": "\n\n\n## \n\n\nUpdate the labels on a resource.\n\n  *  A label key and value must begin with a letter or number, and may contain letters, numbers, hyphens, dots, and underscores, up to 63 characters each.\n  *  Optionally, the key can begin with a DNS subdomain prefix and a single '/', like example.com/my-app.\n  *  If --overwrite is true, then existing labels can be overwritten, otherwise attempting to overwrite a label will result in an error.\n  *  If --resource-version is specified, then updates will use this resource version, otherwise the existing resource-version will be used.\n\n```\nkubectl label [--overwrite] (-f FILENAME | TYPE NAME) KEY_1=VAL_1 ... KEY_N=VAL_N [--resource-version=version]\n```\n\n## \n\n```\n  # Update pod 'foo' with the label 'unhealthy' and the value 'true'\n  kubectl label pods foo unhealthy=true\n  \n  # Update pod 'foo' with the label 'status' and the value 'unhealthy', overwriting any existing value\n  kubectl label --overwrite pods foo status=unhealthy\n  \n  # Update all pods in the namespace\n  kubectl label pods --all status=unhealthy\n  \n  # Update a pod identified by the type and name in \"pod.json\"\n  kubectl label -f pod.json status=unhealthy\n  \n  # Update pod 'foo' only if the resource is unchanged from version 1\n  kubectl label pods foo status=unhealthy --resource-version=1\n  \n  # Update pod 'foo' by removing a label named 'bar' if it exists\n  # Does not require the --overwrite flag\n  kubectl label pods foo bar-\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources, in the namespace of the specified resource types</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-A, --all-namespaces</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, check the specified action in all namespaces.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-label\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (field query) to filter on, supports '=', '==', and '!='.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to update the labels</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for label</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--list</td>\n</tr>\n<tr>\n<td></td><td style=\"line-heigh\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_label/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_label/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_label/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_label/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl label"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami",
      "type": "page",
      "title": "kubectl auth whoami",
      "summary": "Experimental: Check self subject attributes",
      "body": "\n\n\n## \n\n\nExperimental: Check who you are and your attributes (groups, extra).\n\n        This command is helpful to get yourself aware of the current user attributes,\n        especially when dynamic authentication, e.g., token webhook, auth proxy, or OIDC provider,\n        is enabled in the Kubernetes cluster.\n\n```\nkubectl auth whoami\n```\n\n## \n\n```\n  # Get your subject attributes\n  kubectl auth whoami\n  \n  # Get your subject attributes in JSON format\n  kubectl auth whoami -o json\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for whoami</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--conte\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl auth whoami"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile",
      "type": "page",
      "title": "kubectl auth reconcile",
      "summary": "Reconciles rules for RBAC role, role binding, cluster role, and cluster role binding objects",
      "body": "\n\n\n## \n\n\nReconciles rules for RBAC role, role binding, cluster role, and cluster role binding objects.\n\n Missing objects are created, and the containing namespace is created for namespaced objects, if required.\n\n Existing roles are updated to include the permissions in the input objects, and remove extra permissions if --remove-extra-permissions is specified.\n\n Existing bindings are updated to include the subjects in the input objects, and remove extra subjects if --remove-extra-subjects is specified.\n\n This is preferred to 'apply' for RBAC resources so that semantically-aware merging of rules and subjects is done.\n\n```\nkubectl auth reconcile -f FILENAME\n```\n\n## \n\n```\n  # Reconcile RBAC resources from a file\n  kubectl auth reconcile -f my-rbac-rules.yaml\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to reconcile.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for reconcile</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--remove-extra-permissions</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, removes extra permissions added to roles</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--remove-extra-subjects</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, removes extra subjects added to rolebindings</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td sty\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl auth reconcile"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i",
      "type": "page",
      "title": "kubectl auth can-i",
      "summary": "Check whether an action is allowed",
      "body": "\n\n\n## \n\n\nCheck whether an action is allowed.\n\n VERB is a logical Kubernetes API verb like 'get', 'list', 'watch', 'delete', etc. TYPE is a Kubernetes resource. Shortcuts and groups will be resolved. NONRESOURCEURL is a partial URL that starts with \"/\". NAME is the name of a particular Kubernetes resource. This command pairs nicely with impersonation. See --as global flag.\n\n```\nkubectl auth can-i VERB [TYPE | TYPE/NAME | NONRESOURCEURL]\n```\n\n## \n\n```\n  # Check to see if I can create pods in any namespace\n  kubectl auth can-i create pods --all-namespaces\n  \n  # Check to see if I can list deployments in my current namespace\n  kubectl auth can-i list deployments.apps\n  \n  # Check to see if service account \"foo\" of namespace \"dev\" can list pods in the namespace \"prod\"\n  # You must be allowed to use impersonation for the global option \"--as\"\n  kubectl auth can-i list pods --as=system:serviceaccount:dev:foo -n prod\n  \n  # Check to see if I can do everything in my current namespace (\"*\" means all)\n  kubectl auth can-i '*' '*'\n  \n  # Check to see if I can get the job named \"bar\" in namespace \"foo\"\n  kubectl auth can-i list jobs.batch/bar -n foo\n  \n  # Check to see if I can read pod logs\n  kubectl auth can-i get pods --subresource=log\n  \n  # Check to see if I can access the URL /logs/\n  kubectl auth can-i get /logs/\n  \n  # Check to see if I can approve certificates.k8s.io\n  kubectl auth can-i approve certificates.k8s.io\n  \n  # List all allowed actions in namespace \"foo\"\n  kubectl auth can-i --list --namespace=foo\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-A, --all-namespaces</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, check the specified action in all namespaces.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for can-i</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--list</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, prints all allowed actions.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--no-headers</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, prints allowed actions without headers</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-q, --quiet</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, suppress output and just return the exit code.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--subresource string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>SubResource such as pod/log or deployment/scale</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cach\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl auth can-i"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_auth/_index",
      "type": "page",
      "title": "kubectl auth",
      "summary": "Inspect authorization",
      "body": "\n\n\n## \n\n\nInspect authorization.\n\n```\nkubectl auth [flags]\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for auth</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI request</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--password string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_auth/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl auth"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_cp/_index",
      "type": "page",
      "title": "kubectl cp",
      "summary": "Copy files and directories to and from containers",
      "body": "\n\n\n## \n\n\nCopy files and directories to and from containers.\n\n```\nkubectl cp <file-spec-src> <file-spec-dest>\n```\n\n## \n\n```\n  # !!!Important Note!!!\n  # Requires that the 'tar' binary is present in your container\n  # image.  If 'tar' is not present, 'kubectl cp' will fail.\n  #\n  # For advanced use cases, such as symlinks, wildcard expansion or\n  # file mode preservation, consider using 'kubectl exec'.\n  \n  # Copy /tmp/foo local file to /tmp/bar in a remote pod in namespace <some-namespace>\n  tar cf - /tmp/foo | kubectl exec -i -n <some-namespace> <some-pod> -- tar xf - -C /tmp/bar\n  \n  # Copy /tmp/foo from a remote pod to /tmp/bar locally\n  kubectl exec -n <some-namespace> <some-pod> -- tar cf - /tmp/foo | tar xf - -C /tmp/bar\n  \n  # Copy /tmp/foo_dir local directory to /tmp/bar_dir in a remote pod in the default namespace\n  kubectl cp /tmp/foo_dir <some-pod>:/tmp/bar_dir\n  \n  # Copy /tmp/foo local file to /tmp/bar in a remote pod in a specific container\n  kubectl cp /tmp/foo <some-pod>:/tmp/bar -c <specific-container>\n  \n  # Copy /tmp/foo local file to /tmp/bar in a remote pod in namespace <some-namespace>\n  kubectl cp /tmp/foo <some-namespace>/<some-pod>:/tmp/bar\n  \n  # Copy /tmp/foo from a remote pod to /tmp/bar locally\n  kubectl cp <some-namespace>/<some-pod>:/tmp/foo /tmp/bar\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-c, --container string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Container name. If omitted, use the kubectl.kubernetes.io/default-container annotation for selecting the container to be attached or the first container in the pod will be chosen</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for cp</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--no-preserve</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The copied file/directory's ownership and permissions will not be preserved in the container</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--retries int</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Set number of retries to complete a copy operation from a container. Specify 0 to disable or any negative value for infinite retrying. The default is 0 (no retry).</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cp/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_cp/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cp/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cp/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl cp"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_port-forward/_index",
      "type": "page",
      "title": "kubectl port-forward",
      "summary": "Forward one or more local ports to a pod",
      "body": "\n\n\n## \n\n\nForward one or more local ports to a pod.\n\n Use resource type/name such as deployment/mydeployment to select a pod. Resource type defaults to 'pod' if omitted.\n\n If there are multiple pods matching the criteria, a pod will be selected automatically. The forwarding session ends when the selected pod terminates, and a rerun of the command is needed to resume forwarding.\n\n```\nkubectl port-forward TYPE/NAME [options] [LOCAL_PORT:]REMOTE_PORT [...[LOCAL_PORT_N:]REMOTE_PORT_N]\n```\n\n## \n\n```\n  # Listen on ports 5000 and 6000 locally, forwarding data to/from ports 5000 and 6000 in the pod\n  kubectl port-forward pod/mypod 5000 6000\n  \n  # Listen on ports 5000 and 6000 locally, forwarding data to/from ports 5000 and 6000 in a pod selected by the deployment\n  kubectl port-forward deployment/mydeployment 5000 6000\n  \n  # Listen on port 8443 locally, forwarding to the targetPort of the service's port named \"https\" in a pod selected by the service\n  kubectl port-forward service/myservice 8443:https\n  \n  # Listen on port 8888 locally, forwarding to 5000 in the pod\n  kubectl port-forward pod/mypod 8888:5000\n  \n  # Listen on port 8888 on all addresses, forwarding to 5000 in the pod\n  kubectl port-forward --address 0.0.0.0 pod/mypod 8888:5000\n  \n  # Listen on port 8888 on localhost and selected IP, forwarding to 5000 in the pod\n  kubectl port-forward --address localhost,10.19.21.23 pod/mypod 8888:5000\n  \n  # Listen on a random port locally, forwarding to 5000 in the pod\n  kubectl port-forward pod/mypod :5000\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--address strings&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"localhost\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Addresses to listen on (comma separated). Only accepts IP addresses or localhost as a value. When localhost is supplied, kubectl will try to bind on both 127.0.0.1 and ::1 and will fail if neither of these addresses are available to bind.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for port-forward</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--pod-running-timeout duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 1m0s</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the c\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_port-forward/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_port-forward/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_port-forward/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_port-forward/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl port-forward"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_replace/_index",
      "type": "page",
      "title": "kubectl replace",
      "summary": "Replace a resource by file name or stdin",
      "body": "\n\n\n## \n\n\nReplace a resource by file name or stdin.\n\n JSON and YAML formats are accepted. If replacing an existing resource, the complete resource spec must be provided. This can be obtained by\n\n        $ kubectl get TYPE NAME -o yaml\n\n```\nkubectl replace -f FILENAME\n```\n\n## \n\n```\n  # Replace a pod using the data in pod.json\n  kubectl replace -f ./pod.json\n  \n  # Replace a pod based on the JSON passed into stdin\n  cat pod.json | kubectl replace -f -\n  \n  # Update a single-container pod's image version (tag) to v4\n  kubectl get pod mypod -o yaml | sed 's/\\(image: myimage\\):.*$/\\1:v4/' | kubectl replace -f -\n  \n  # Force replace, delete and then re-create the resource\n  kubectl replace --force -f ./pod.json\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cascade string[=\"background\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"background\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;background&quot;, &quot;orphan&quot;, or &quot;foreground&quot;. Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-replace\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The files that contain the configurations to replace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--force</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, immediately remove resources from API and bypass graceful deletion. Note that immediate deletion of some resources may result in inconsistency or data loss and requires confirmation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--grace-period int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: -1</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Period of time in seconds given to the resource to terminate gracefully. Ignored if negative. Set to 1 for immediate shutdown. Can only be set to 0 when --force is true (force deletion).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for replace</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process a kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--raw string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Raw URI to PUT to the server.  Uses the transport specifi\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_replace/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_replace/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_replace/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_replace/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl replace"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_get/_index",
      "type": "page",
      "title": "kubectl get",
      "summary": "Display one or many resources",
      "body": "\n\n\n## \n\n\nDisplay one or many resources.\n\n Prints a table of the most important information about the specified resources. You can filter the list using a label selector and the --selector flag. If the desired resource type is namespaced you will only see results in the current namespace if you don't specify any namespace.\n\n By specifying the output as 'template' and providing a Go template as the value of the --template flag, you can filter the attributes of the fetched resources.\n\nUse \"kubectl api-resources\" for a complete list of supported resources.\n\n```\nkubectl get [(-o|--output=)json|yaml|kyaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file|custom-columns|custom-columns-file|wide] (TYPE[.VERSION][.GROUP] [NAME | -l label] | TYPE[.VERSION][.GROUP]/NAME ...) [flags]\n```\n\n## \n\n```\n  # List all pods in ps output format\n  kubectl get pods\n  \n  # List all pods in ps output format with more information (such as node name)\n  kubectl get pods -o wide\n  \n  # List a single replication controller with specified NAME in ps output format\n  kubectl get replicationcontroller web\n  \n  # List deployments in JSON output format, in the \"v1\" version of the \"apps\" API group\n  kubectl get deployments.v1.apps -o json\n  \n  # List a single pod in JSON output format\n  kubectl get -o json pod web-pod-13je7\n  \n  # List a pod identified by type and name specified in \"pod.yaml\" in JSON output format\n  kubectl get -f pod.yaml -o json\n  \n  # List resources from a directory with kustomization.yaml - e.g. dir/kustomization.yaml\n  kubectl get -k dir/\n  \n  # Return only the phase value of the specified pod\n  kubectl get -o template pod/web-pod-13je7 --template={{.status.phase}}\n  \n  # List resource information in custom columns\n  kubectl get pod test-pod -o custom-columns=CONTAINER:.spec.containers[0].name,IMAGE:.spec.containers[0].image\n  \n  # List all replication controllers and services together in ps output format\n  kubectl get rc,services\n  \n  # List one or more resources by their type and names\n  kubectl get rc/web service/frontend pods/web-pod-13je7\n  \n  # List the 'status' subresource for a single pod\n  kubectl get pod web-pod-13je7 --subresource status\n  \n  # List all deployments in namespace 'backend'\n  kubectl get deployments.apps --namespace backend\n  \n  # List all pods existing in all namespaces\n  kubectl get pods --all-namespaces\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-A, --all-namespaces</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--chunk-size int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 500</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Return large lists in chunks rather than all at once. Pass 0 to disable.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (field query) to filter on, supports '=', '==', and '!='.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to get from a server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_get/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_get/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_get/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_get/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl get"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_diff/_index",
      "type": "page",
      "title": "kubectl diff",
      "summary": "Diff the live version against a would-be applied version",
      "body": "\n\n\n## \n\n\nDiff configurations specified by file name or stdin between the current online configuration, and the configuration as it would be if applied.\n\n The output is always YAML.\n\n KUBECTL_EXTERNAL_DIFF environment variable can be used to select your own diff command. Users can use external commands with params too, example: KUBECTL_EXTERNAL_DIFF=\"colordiff -N -u\"\n\n By default, the \"diff\" command available in your path will be run with the \"-u\" (unified diff) and \"-N\" (treat absent files as empty) options.\n\n Exit status: 0 No differences were found. 1 Differences were found. &gt;1 Kubectl or diff failed with an error.\n\n Note: KUBECTL_EXTERNAL_DIFF, if used, is expected to follow that convention.\n\n```\nkubectl diff -f FILENAME\n```\n\n## \n\n```\n  # Diff resources included in pod.json\n  kubectl diff -f pod.json\n  \n  # Diff file read from stdin\n  cat service.yaml | kubectl diff -f -\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--concurrency int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 1</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Number of objects to process in parallel when diffing against the live version. Larger number = faster, but more memory, I/O and CPU over that shorter period of time.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-client-side-apply\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files contains the configuration to diff</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--force-conflicts</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, server-side apply will force the changes against conflicts.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for diff</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--prune</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Include resources that would be deleted by pruning. Can be used with -l and default shows all resources would be pruned</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--prune-allowlist strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Overwrite the default allowlist with &lt;group/version/kind&gt; for --prune</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--server-side</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, apply runs in the server instead of the client.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, include managed fields in the diff.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-secrets</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: b\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_diff/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_diff/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_diff/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_diff/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl diff"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view",
      "type": "page",
      "title": "kubectl kuberc view",
      "summary": "Display the current kuberc configuration",
      "body": "\n\n\n## \n\n\nDisplay the contents of the kuberc file in the specified output format.\n\n```\nkubectl kuberc view\n```\n\n## \n\n```\n  # View kuberc configuration in YAML format (default)\n  kubectl kuberc view\n  \n  # View kuberc configuration in JSON format\n  kubectl kuberc view --output json\n  \n  # View a specific kuberc file\n  kubectl kuberc view --kuberc /path/to/kuberc\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for view</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"yaml\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl kuberc view"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set",
      "type": "page",
      "title": "kubectl kuberc set",
      "summary": "Set values in the kuberc configuration",
      "body": "\n\n\n## \n\n\nSet values in the kuberc configuration file.\n\n Use --section to specify whether to set defaults or aliases.\n\n For defaults: Sets default flag values for kubectl commands. The --command flag should specify only the command (e.g., \"get\", \"create\", \"set env\"), not resources.\n\n For aliases: Creates command aliases with optional default flag values and arguments. Use --prependarg and --appendarg to include resources or other arguments.\n\n```\nkubectl kuberc set --section (defaults|aliases) --command COMMAND\n```\n\n## \n\n```\n  # Set default output format for 'get' command\n  kubectl kuberc set --section defaults --command get --option output=wide\n  \n  # Set default output format for a subcommand\n  kubectl kuberc set --section defaults --command \"set env\" --option output=yaml\n  \n  # Create an alias 'getn' for 'get' command with prepended 'nodes' resource\n  kubectl kuberc set --section aliases --name getn --command get --prependarg nodes --option output=wide\n  \n  # Create an alias 'runx' for 'run' command with appended arguments\n  kubectl kuberc set --section aliases --name runx --command run --option image=nginx --appendarg \"--\" --appendarg custom-arg1\n  \n  # Overwrite an existing default\n  kubectl kuberc set --section defaults --command get --option output=json --overwrite\n  \n  # Set the credential plugin policy and allowlist\n  kubectl kuberc set --section credentialplugin --policy Allowlist --allowlist-entry command=cloud-credential-helper\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allowlist-entry strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Allowlist entry the form field=value (can be specified multiple times)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--appendarg strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Argument to append to the command (can be specified multiple times, for aliases only)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--command string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Command to configure (e.g., 'get', 'create', 'set env')</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for set</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Alias name (required for --section=aliases)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--option strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Flag option in the form flag=value (can be specified multiple times)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--overwrite</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Allow overwriting existing entries</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--policy string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Plugin policy to use for exec credential plugins, must be one of 'AllowAll', 'DenyAll' or 'Allowlist'</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--prependarg strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Argument to prepend to the command (can be specified multiple times, for aliases only)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--section string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Section to modify: 'defaults', 'aliases', or 'credentialplugin'</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl kuberc set"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_kuberc/_index",
      "type": "page",
      "title": "kubectl kuberc",
      "summary": "Manage kuberc configuration files",
      "body": "\n\n\n## \n\n\nManage user preferences (kuberc) file.\n\n The kuberc file allows you to customize your kubectl experience.\n\n```\nkubectl kuberc SUBCOMMAND\n```\n\n## \n\n```\n  # View the current kuberc configuration\n  kubectl kuberc view\n  \n  # Set a default value for a command flag\n  kubectl kuberc set --section defaults --command get --option output=wide\n  \n  # Create an alias for a command\n  kubectl kuberc set --section aliases --name getn --command get --prependarg nodes --option output=wide\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kuberc</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_kuberc/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl kuberc"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_delete/_index",
      "type": "page",
      "title": "kubectl delete",
      "summary": "Delete resources by file names, stdin, resources and names, or by resources and label selector",
      "body": "\n\n\n## \n\n\nDelete resources by file names, stdin, resources and names, or by resources and label selector.\n\n JSON and YAML formats are accepted. Only one type of argument may be specified: file names, resources and names, or resources and label selector.\n\n Some resources, such as pods, support graceful deletion. These resources define a default period before they are forcibly terminated (the grace period) but you may override that value with the --grace-period flag, or pass --now to set a grace-period of 1. Because these resources often represent entities in the cluster, deletion may not be acknowledged immediately. If the node hosting a pod is down or cannot reach the API server, termination may take significantly longer than the grace period. To force delete a resource, you must specify the --force flag. Note: only a subset of resources support graceful deletion. In absence of the support, the --grace-period flag is ignored.\n\n IMPORTANT: Force deleting pods does not wait for confirmation that the pod's processes have been terminated, which can leave those processes running until the node detects the deletion and completes graceful deletion. If your processes use shared storage or talk to a remote API and depend on the name of the pod to identify themselves, force deleting those pods may result in multiple processes running on different machines using the same identification which may lead to data corruption or inconsistency. Only force delete pods when you are sure the pod is terminated, or if your application can tolerate multiple copies of the same pod running at once. Also, if you force delete pods, the scheduler may place new pods on those nodes before the node has released those resources and causing those pods to be evicted immediately.\n\n Note that the delete command does NOT do resource version checks, so if someone submits an update to a resource right when you submit a delete, their update will be lost along with the rest of the resource.\n\n After a CustomResourceDefinition is deleted, invalidation of discovery cache may take up to 6 hours. If you don't want to wait, you might want to run \"kubectl api-resources\" to refresh the discovery cache.\n\n```\nkubectl delete ([-f FILENAME] | [-k DIRECTORY] | TYPE [(NAME | -l label | --all)])\n```\n\n## \n\n```\n  # Delete a pod using the type and name specified in pod.json\n  kubectl delete -f ./pod.json\n  \n  # Delete resources from a directory containing kustomization.yaml - e.g. dir/kustomization.yaml\n  kubectl delete -k dir\n  \n  # Delete resources from all files that end with '.json'\n  kubectl delete -f '*.json'\n  \n  # Delete a pod based on the type and name in the JSON passed into stdin\n  cat pod.json | kubectl delete -f -\n  \n  # Delete pods and services with same names \"baz\" and \"foo\"\n  kubectl delete pod,service baz foo\n  \n  # Delete pods and services with label name=myLabel\n  kubectl delete pods,services -l name=myLabel\n  \n  # Delete a pod with minimal delay\n  kubectl delete pod foo --now\n  \n  # Force delete a pod on a dead node\n  kubectl delete pod foo --force\n  \n  # Delete all pods\n  kubectl delete pods --all\n  \n  # Delete all pods only if the user confirms the deletion\n  kubectl delete pods --all --interactive\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Delete all resources, in the namespace of the specified resource types.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-A, --all-namespaces</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cascade string[=\"background\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"background\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 13\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_delete/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_delete/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_delete/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_delete/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve",
      "type": "page",
      "title": "kubectl certificate approve",
      "summary": "Approve a certificate signing request",
      "body": "\n\n\n## \n\n\nApprove a certificate signing request.\n\n kubectl certificate approve allows a cluster admin to approve a certificate signing request (CSR). This action tells a certificate signing controller to issue a certificate to the requester with the attributes requested in the CSR.\n\n SECURITY NOTICE: Depending on the requested attributes, the issued certificate can potentially grant a requester access to cluster resources or to authenticate as a requested identity. Before approving a CSR, ensure you understand what the signed certificate can do.\n\n```\nkubectl certificate approve (-f FILENAME | NAME)\n```\n\n## \n\n```\n  # Approve CSR 'csr-sqgzp'\n  kubectl certificate approve csr-sqgzp\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to update</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--force</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Update the CSR even if it is already approved.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for approve</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to imperso\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl certificate approve"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny",
      "type": "page",
      "title": "kubectl certificate deny",
      "summary": "Deny a certificate signing request",
      "body": "\n\n\n## \n\n\nDeny a certificate signing request.\n\n kubectl certificate deny allows a cluster admin to deny a certificate signing request (CSR). This action tells a certificate signing controller to not to issue a certificate to the requester.\n\n```\nkubectl certificate deny (-f FILENAME | NAME)\n```\n\n## \n\n```\n  # Deny CSR 'csr-sqgzp'\n  kubectl certificate deny csr-sqgzp\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to update</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--force</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Update the CSR even if it is already denied.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for deny</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl certificate deny"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_certificate/_index",
      "type": "page",
      "title": "kubectl certificate",
      "summary": "Modify certificate resources",
      "body": "\n\n\n## \n\n\nModify certificate resources.\n\n```\nkubectl certificate SUBCOMMAND\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for certificate</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI request</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--password string</td>\n</tr>\n<tr>\n<td></td><td style=\"\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_certificate/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl certificate"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_cordon/_index",
      "type": "page",
      "title": "kubectl cordon",
      "summary": "Mark node as unschedulable",
      "body": "\n\n\n## \n\n\nMark node as unschedulable.\n\n```\nkubectl cordon NODE\n```\n\n## \n\n```\n  # Mark node \"foo\" as unschedulable\n  kubectl cordon foo\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for cordon</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cordon/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_cordon/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cordon/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl cordon"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-users",
      "type": "page",
      "title": "kubectl config get-users",
      "summary": "Display users defined in the kubeconfig",
      "body": "\n\n\n## \n\n\nDisplay users defined in the kubeconfig.\n\n```\nkubectl config get-users [flags]\n```\n\n## \n\n```\n  # List the users that kubectl knows about\n  kubectl config get-users\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for get-users</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI request</p></td>\n</tr>\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-users/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_get-users.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-users.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-users/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config get-users"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_unset",
      "type": "page",
      "title": "kubectl config unset",
      "summary": "Unset an individual value in a kubeconfig file",
      "body": "\n\n\n## \n\n\nUnset an individual value in a kubeconfig file.\n\n PROPERTY_NAME is a dot delimited name where each token represents either an attribute name or a map key.  Map keys may not contain dots.\n\n```\nkubectl config unset PROPERTY_NAME\n```\n\n## \n\n```\n  # Unset the current-context\n  kubectl config unset current-context\n  \n  # Unset namespace in foo context\n  kubectl config unset contexts.foo.namespace\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for unset</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_unset/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_unset.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_unset.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_unset/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config unset"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-user",
      "type": "page",
      "title": "kubectl config delete-user",
      "summary": "Delete the specified user from the kubeconfig",
      "body": "\n\n\n## \n\n\nDelete the specified user from the kubeconfig.\n\n```\nkubectl config delete-user NAME\n```\n\n## \n\n```\n  # Delete the minikube user\n  kubectl config delete-user minikube\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for delete-user</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI request</p></td>\n</t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-user/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-user.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-user.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-user/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config delete-user"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster",
      "type": "page",
      "title": "kubectl config delete-cluster",
      "summary": "Delete the specified cluster from the kubeconfig",
      "body": "\n\n\n## \n\n\nDelete the specified cluster from the kubeconfig.\n\n```\nkubectl config delete-cluster NAME\n```\n\n## \n\n```\n  # Delete the minikube cluster\n  kubectl config delete-cluster minikube\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for delete-cluster</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI reque\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config delete-cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-context",
      "type": "page",
      "title": "kubectl config delete-context",
      "summary": "Delete the specified context from the kubeconfig",
      "body": "\n\n\n## \n\n\nDelete the specified context from the kubeconfig.\n\n```\nkubectl config delete-context NAME\n```\n\n## \n\n```\n  # Delete the context for the minikube cluster\n  kubectl config delete-context minikube\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for delete-context</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope fo\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-context/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-context.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-context/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config delete-context"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts",
      "type": "page",
      "title": "kubectl config get-contexts",
      "summary": "Describe one or many contexts",
      "body": "\n\n\n## \n\n\nDisplay one or many contexts from the kubeconfig file.\n\n```\nkubectl config get-contexts [(-o|--output=)name)]\n```\n\n## \n\n```\n  # List all the contexts in your kubeconfig file\n  kubectl config get-contexts\n  \n  # Describe one context in your kubeconfig file\n  kubectl config get-contexts my-context\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for get-contexts</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--no-headers</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>When using the default or custom-column output format, don't print headers (default print headers).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (name).</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kube\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config get-contexts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_current-context",
      "type": "page",
      "title": "kubectl config current-context",
      "summary": "Display the current-context",
      "body": "\n\n\n## \n\n\nDisplay the current-context.\n\n```\nkubectl config current-context [flags]\n```\n\n## \n\n```\n  # Display the current-context\n  kubectl config current-context\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for current-context</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI request</p></td>\n</tr>\n\n<tr>\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_current-context/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_current-context.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_current-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_current-context/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config current-context"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials",
      "type": "page",
      "title": "kubectl config set-credentials",
      "summary": "Set a user entry in kubeconfig",
      "body": "\n\n\n## \n\n\nSet a user entry in kubeconfig.\n\n Specifying a name that already exists will merge new fields on top of existing values.\n\n        Client-certificate flags:\n        --client-certificate=certfile --client-key=keyfile\n        \n        Bearer token flags:\n        --token=bearer_token\n        \n        Basic auth flags:\n        --username=basic_user --password=basic_password\n        \n Bearer token and basic auth are mutually exclusive.\n\n```\nkubectl config set-credentials NAME [--client-certificate=path/to/certfile] [--client-key=path/to/keyfile] [--token=bearer_token] [--username=basic_user] [--password=basic_password] [--auth-provider=provider_name] [--auth-provider-arg=key=value] [--exec-command=exec_command] [--exec-api-version=exec_api_version] [--exec-arg=arg] [--exec-env=key=value]\n```\n\n## \n\n```\n  # Set only the \"client-key\" field on the \"cluster-admin\"\n  # entry, without touching other values\n  kubectl config set-credentials cluster-admin --client-key=~/.kube/admin.key\n  \n  # Set basic auth for the \"cluster-admin\" entry\n  kubectl config set-credentials cluster-admin --username=admin --password=uXFGweU9l35qcif\n  \n  # Embed client certificate data in the \"cluster-admin\" entry\n  kubectl config set-credentials cluster-admin --client-certificate=~/.kube/admin.crt --embed-certs=true\n  \n  # Enable the Google Compute Platform auth provider for the \"cluster-admin\" entry\n  kubectl config set-credentials cluster-admin --auth-provider=gcp\n  \n  # Enable the OpenID Connect auth provider for the \"cluster-admin\" entry with additional arguments\n  kubectl config set-credentials cluster-admin --auth-provider=oidc --auth-provider-arg=client-id=foo --auth-provider-arg=client-secret=bar\n  \n  # Remove the \"client-secret\" config value for the OpenID Connect auth provider for the \"cluster-admin\" entry\n  kubectl config set-credentials cluster-admin --auth-provider=oidc --auth-provider-arg=client-secret-\n  \n  # Enable new exec auth plugin for the \"cluster-admin\" entry\n  kubectl config set-credentials cluster-admin --exec-command=/path/to/the/executable --exec-api-version=client.authentication.k8s.io/v1beta1\n  \n  # Enable new exec auth plugin for the \"cluster-admin\" entry with interactive mode\n  kubectl config set-credentials cluster-admin --exec-command=/path/to/the/executable --exec-api-version=client.authentication.k8s.io/v1beta1 --exec-interactive-mode=Never\n  \n  # Define new exec auth plugin arguments for the \"cluster-admin\" entry\n  kubectl config set-credentials cluster-admin --exec-arg=arg1 --exec-arg=arg2\n  \n  # Create or update exec auth plugin environment variables for the \"cluster-admin\" entry\n  kubectl config set-credentials cluster-admin --exec-env=key1=val1 --exec-env=key2=val2\n  \n  # Remove exec auth plugin environment variables for the \"cluster-admin\" entry\n  kubectl config set-credentials cluster-admin --exec-env=var-to-remove-\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--auth-provider string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Auth provider for the user entry in kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--auth-provider-arg strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>'key=value' arguments for the auth provider</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to client-certificate file for the user entry in kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to client-key file for the user entry in kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--embed-certs tristate[=true]</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Embed client cert/key for the user entry in kubeco\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config set-credentials"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster",
      "type": "page",
      "title": "kubectl config set-cluster",
      "summary": "Set a cluster entry in kubeconfig",
      "body": "\n\n\n## \n\n\nSet a cluster entry in kubeconfig.\n\n Specifying a name that already exists will merge new fields on top of existing values for those fields.\n\n```\nkubectl config set-cluster NAME [--server=server] [--certificate-authority=path/to/certificate/authority] [--insecure-skip-tls-verify=true] [--tls-server-name=example.com]\n```\n\n## \n\n```\n  # Set only the server field on the e2e cluster entry without touching other values\n  kubectl config set-cluster e2e --server=https://1.2.3.4\n  \n  # Embed certificate authority data for the e2e cluster entry\n  kubectl config set-cluster e2e --embed-certs --certificate-authority=~/.kube/e2e/kubernetes.ca.crt\n  \n  # Disable cert checking for the e2e cluster entry\n  kubectl config set-cluster e2e --insecure-skip-tls-verify=true\n  \n  # Set the custom TLS server name to use for validation for the e2e cluster entry\n  kubectl config set-cluster e2e --tls-server-name=my-cluster-name\n  \n  # Set the proxy URL for the e2e cluster entry\n  kubectl config set-cluster e2e --proxy-url=https://1.2.3.4\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to certificate-authority file for the cluster entry in kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--embed-certs tristate[=true]</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>embed-certs for the cluster entry in kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for set-cluster</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify tristate[=true]</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>insecure-skip-tls-verify for the cluster entry in kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--proxy-url string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>proxy-url for the cluster entry in kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--server string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>server for the cluster entry in kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--tls-server-name string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>tls-server-name for the cluster entry in kubeconfig</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS<\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config set-cluster"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-context",
      "type": "page",
      "title": "kubectl config set-context",
      "summary": "Set a context entry in kubeconfig",
      "body": "\n\n\n## \n\n\nSet a context entry in kubeconfig.\n\n Specifying a name that already exists will merge new fields on top of existing values for those fields.\n\n```\nkubectl config set-context [NAME | --current] [--cluster=cluster_nickname] [--user=user_nickname] [--namespace=namespace]\n```\n\n## \n\n```\n  # Set the user field on the gce context entry without touching other values\n  kubectl config set-context gce --user=cluster-admin\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>cluster for the context entry in kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--current</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Modify the current context</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for set-context</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>namespace for the context entry in kubeconfig</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--user string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>user for the context entry in kubeconfig</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td sty\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-context/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_set-context.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-context/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config set-context"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set",
      "type": "page",
      "title": "kubectl config set",
      "summary": "Set an individual value in a kubeconfig file",
      "body": "\n\n\n## \n\n\nSet an individual value in a kubeconfig file.\n\n PROPERTY_NAME is a dot delimited name where each token represents either an attribute name or a map key.  Map keys may not contain dots.\n\n PROPERTY_VALUE is the new value you want to set. Binary fields such as 'certificate-authority-data' expect a base64 encoded string unless the --set-raw-bytes flag is used.\n\n Specifying an attribute name that already exists will merge new fields on top of existing values.\n\n```\nkubectl config set PROPERTY_NAME PROPERTY_VALUE\n```\n\n## \n\n```\n  # Set the server field on the my-cluster cluster to https://1.2.3.4\n  kubectl config set clusters.my-cluster.server https://1.2.3.4\n  \n  # Set the certificate-authority-data field on the my-cluster cluster\n  kubectl config set clusters.my-cluster.certificate-authority-data $(echo \"cert_data_here\" | base64 -i -)\n  \n  # Set the cluster field in the my-context context to my-cluster\n  kubectl config set contexts.my-context.cluster my-cluster\n  \n  # Set the client-key-data field in the cluster-admin user using --set-raw-bytes option\n  kubectl config set users.cluster-admin.client-key-data cert_data_here --set-raw-bytes=true\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for set</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--set-raw-bytes tristate[=true]</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>When writing a []byte PROPERTY_VALUE, write the given string directly without base64 decoding.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-heig\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_set.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config set"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_use-context",
      "type": "page",
      "title": "kubectl config use-context",
      "summary": "Set the current-context in a kubeconfig file",
      "body": "\n\n\n## \n\n\nSet the current-context in a kubeconfig file.\n\n```\nkubectl config use-context CONTEXT_NAME\n```\n\n## \n\n```\n  # Use the context for the minikube cluster\n  kubectl config use-context minikube\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for use-context</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this C\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_use-context/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_use-context.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_use-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_use-context/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config use-context"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_rename-context",
      "type": "page",
      "title": "kubectl config rename-context",
      "summary": "Rename a context from the kubeconfig file",
      "body": "\n\n\n## \n\n\nRenames a context from the kubeconfig file.\n\n CONTEXT_NAME is the context name that you want to change.\n\n NEW_NAME is the new name you want to set.\n\n Note: If the context being renamed is the 'current-context', this field will also be updated.\n\n```\nkubectl config rename-context CONTEXT_NAME NEW_NAME\n```\n\n## \n\n```\n  # Rename the context 'old-name' to 'new-name' in your kubeconfig file\n  kubectl config rename-context old-name new-name\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for rename-context</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-w\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_rename-context/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_rename-context.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_rename-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_rename-context/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config rename-context"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters",
      "type": "page",
      "title": "kubectl config get-clusters",
      "summary": "Display clusters defined in the kubeconfig",
      "body": "\n\n\n## \n\n\nDisplay clusters defined in the kubeconfig.\n\n```\nkubectl config get-clusters [flags]\n```\n\n## \n\n```\n  # List the clusters that kubectl knows about\n  kubectl config get-clusters\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for get-clusters</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--match-server-version</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Require server version to match client version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-n, --namespace string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, the namespace scope for this CLI request<\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config get-clusters"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/_index",
      "type": "page",
      "title": "kubectl config",
      "summary": "Modify kubeconfig files",
      "body": "\n\n\n## \n\n\nModify kubeconfig files using subcommands like \"kubectl config set current-context my-context\".\n\n The loading order follows these rules:\n\n  1.  If the --kubeconfig flag is set, then only that file is loaded. The flag may only be set once and no merging takes place.\n  2.  If $KUBECONFIG environment variable is set, then it is used as a list of paths (normal path delimiting rules for your system). These paths are merged. When a value is modified, it is modified in the file that defines the stanza. When a value is created, it is created in the first file that exists. If no files in the chain exist, then it creates the last file in the list.\n  3.  Otherwise, ${HOME}/.kube/config is used and no merging takes place.\n\n```\nkubectl config SUBCOMMAND\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for config</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use a particular kubeconfig file</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_view",
      "type": "page",
      "title": "kubectl config view",
      "summary": "Display merged kubeconfig settings or a specified kubeconfig file",
      "body": "\n\n\n## \n\n\nDisplay merged kubeconfig settings or a specified kubeconfig file.\n\n You can use --output jsonpath={...} to extract specific values using a jsonpath expression.\n\n```\nkubectl config view [flags]\n```\n\n## \n\n```\n  # Show merged kubeconfig settings\n  kubectl config view\n  \n  # Show merged kubeconfig settings, raw certificate data, and exposed secrets\n  kubectl config view --raw\n  \n  # Get the password for the e2e user\n  kubectl config view -o jsonpath='{.users[?(@.name == \"e2e\")].user.password}'\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--flatten</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Flatten the resulting kubeconfig file into self-contained output (useful for creating portable kubeconfig files)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for view</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--merge tristate[=true]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Merge the full hierarchy of kubeconfig files</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--minify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Remove all information not used by current-context from the output</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"yaml\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--raw</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Display raw byte data and sensitive data</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kub\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_view/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_config/kubectl_config_view.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_view/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl config view"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_uncordon/_index",
      "type": "page",
      "title": "kubectl uncordon",
      "summary": "Mark node as schedulable",
      "body": "\n\n\n## \n\n\nMark node as schedulable.\n\n```\nkubectl uncordon NODE\n```\n\n## \n\n```\n  # Mark node \"foo\" as schedulable\n  kubectl uncordon foo\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for uncordon</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_uncordon/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_uncordon/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_uncordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_uncordon/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl uncordon"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_proxy/_index",
      "type": "page",
      "title": "kubectl proxy",
      "summary": "Run a proxy to the Kubernetes API server",
      "body": "\n\n\n## \n\n\nCreates a proxy server or application-level gateway between localhost and the Kubernetes API server. It also allows serving static content over specified HTTP path. All incoming data enters through one port and gets forwarded to the remote Kubernetes API server port, except for the path matching the static content path.\n\n```\nkubectl proxy [--port=PORT] [--www=static-dir] [--www-prefix=prefix] [--api-prefix=prefix]\n```\n\n## \n\n```\n  # To proxy all of the Kubernetes API and nothing else\n  kubectl proxy --api-prefix=/\n  \n  # To proxy only part of the Kubernetes API and also some static files\n  # You can get pods info with 'curl localhost:8001/api/v1/pods'\n  kubectl proxy --www=/my/files --www-prefix=/static/ --api-prefix=/api/\n  \n  # To proxy the entire Kubernetes API at a different root\n  # You can get pods info with 'curl localhost:8001/custom/api/v1/pods'\n  kubectl proxy --api-prefix=/custom/\n  \n  # Run a proxy to the Kubernetes API server on port 8011, serving static content from ./local/www/\n  kubectl proxy --port=8011 --www=./local/www/\n  \n  # Run a proxy to the Kubernetes API server on an arbitrary local port\n  # The chosen port for the server will be output to stdout\n  kubectl proxy --port=0\n  \n  # Run a proxy to the Kubernetes API server, changing the API prefix to k8s-api\n  # This makes e.g. the pods API available at localhost:8001/k8s-api/v1/pods/\n  kubectl proxy --api-prefix=/k8s-api\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--accept-hosts string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"^localhost$,^127\\.0\\.0\\.1$,^\\[::1\\]$\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Regular expression for hosts that the proxy should accept.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--accept-paths string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"^.*\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Regular expression for paths that the proxy should accept.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--address string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"127.0.0.1\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The IP address on which to serve on.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--api-prefix string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"/\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Prefix to serve the proxied API under.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--append-server-path</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, enables automatic path appending of the kube context server path to each request.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-filter</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, disable request filtering in the proxy. This is dangerous, and can leave you vulnerable to XSRF attacks, when used with an accessible port.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for proxy</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--keepalive duration</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>keepalive specifies the keep-alive period for an active network connection. Set to 0 to disable keepalive.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-p, --port int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: 8001</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The port on which to run the proxy. Set to 0 to pick a random port.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--reject-methods string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"^$\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Regular expression for HTTP methods that the proxy should reject (example --reject-methods='POST,PUT,PATCH').</p></td>\n</tr>\n\n<tr>\n<td colsp\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_proxy/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_proxy/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_proxy/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_proxy/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_pod",
      "type": "page",
      "title": "kubectl top pod",
      "summary": "Display resource (CPU/memory) usage of pods",
      "body": "\n\n\n## \n\n\nDisplay resource (CPU/memory) usage of pods.\n\n The 'top pod' command allows you to see the resource consumption of pods.\n\n Due to the metrics pipeline delay, they may be unavailable for a few minutes since pod creation.\n\n```\nkubectl top pod [NAME | -l label]\n```\n\n## \n\n```\n  # Show metrics for all pods in the default namespace\n  kubectl top pod\n  \n  # Show metrics for all pods in the given namespace\n  kubectl top pod --namespace=NAMESPACE\n  \n  # Show metrics for a given pod and its containers\n  kubectl top pod POD_NAME --containers\n  \n  # Show metrics for the pods defined by label name=myLabel\n  kubectl top pod -l name=myLabel\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-A, --all-namespaces</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--containers</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, print usage of containers within a pod.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (field query) to filter on, supports '=', '==', and '!='.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for pod</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--no-headers</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, print output without headers.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-swap</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Print pod resources related to swap memory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--sort-by string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If non-empty, sort pods list using specified field. The field can be either 'cpu' or 'memory'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--sum</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Print the sum of the resource usage</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--use-protocol-buffers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Enables using protocol-buffers to access Metrics API.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_pod/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_top/kubectl_top_pod.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_pod.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_pod/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl top pod"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_node",
      "type": "page",
      "title": "kubectl top node",
      "summary": "Display resource (CPU/memory) usage of nodes",
      "body": "\n\n\n## \n\n\nDisplay resource (CPU/memory) usage of nodes.\n\n The top-node command allows you to see the resource consumption of nodes.\n\n```\nkubectl top node [NAME | -l label]\n```\n\n## \n\n```\n  # Show metrics for all nodes\n  kubectl top node\n  \n  # Show metrics for a given node\n  kubectl top node NODE_NAME\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for node</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--no-headers</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, print output without headers</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-capacity</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Print node resources based on Capacity instead of Allocatable(default) of the nodes.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-swap</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Print node resources related to swap memory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--sort-by string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If non-empty, sort nodes list using specified field. The field can be either 'cpu' or 'memory'.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--use-protocol-buffers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Enables using protocol-buffers to access Metrics API.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n<\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_node/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_top/kubectl_top_node.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_node.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_node/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl top node"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_top/_index",
      "type": "page",
      "title": "kubectl top",
      "summary": "Display resource (CPU/memory) usage",
      "body": "\n\n\n## \n\n\nDisplay resource (CPU/memory) usage.\n\n This command provides a view of recent resource consumption for nodes and pods. It fetches metrics from the Metrics Server, which aggregates this data from the kubelet on each node. The Metrics Server must be installed and running in the cluster for this command to work.\n\n The metrics shown are specifically optimized for Kubernetes autoscaling decisions, such as those made by the Horizontal Pod Autoscaler (HPA) and Vertical Pod Autoscaler (VPA). Because of this, the values may not match those from standard OS tools like 'top', as the metrics are designed to provide a stable signal for autoscalers rather than for pinpoint accuracy.\n\n FAQ for Metrics Server: https://github.com/kubernetes-sigs/metrics-server/blob/master/FAQ.md\n\n When to use this command:\n\n  *  For on-the-fly spot-checks of resource usage (e.g. identify which pods are consuming the most resources at a glance, or get a quick sense of the load on your nodes)\n  *  Understand current resource consumption patterns\n  *  Validate the behavior of your HPA or VPA configurations by seeing the metrics they use for scaling decisions.\n\n It is not intended to be a replacement for full-featured monitoring solutions. Its primary design goal is to provide a low-overhead signal for autoscalers, not to be a perfectly accurate monitoring tool. For high-accuracy reporting, historical analysis, dashboarding, or alerting, you should use a dedicated monitoring solution.\n\n```\nkubectl top [flags]\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for top</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_top/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl top"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_scale/_index",
      "type": "page",
      "title": "kubectl scale",
      "summary": "Set a new size for a deployment, replica set, or replication controller",
      "body": "\n\n\n## \n\n\nSet a new size for a deployment, replica set, replication controller, or stateful set.\n\n Scale also allows users to specify one or more preconditions for the scale action.\n\n If --current-replicas or --resource-version is specified, it is validated before the scale is attempted, and it is guaranteed that the precondition holds true when the scale is sent to the server.\n\n```\nkubectl scale [--resource-version=version] [--current-replicas=count] --replicas=COUNT (-f FILENAME | TYPE NAME)\n```\n\n## \n\n```\n  # Scale a replica set named 'foo' to 3\n  kubectl scale --replicas=3 rs/foo\n  \n  # Scale a resource identified by type and name specified in \"foo.yaml\" to 3\n  kubectl scale --replicas=3 -f foo.yaml\n  \n  # If the deployment named mysql's current size is 2, scale mysql to 3\n  kubectl scale --current-replicas=2 --replicas=3 deployment/mysql\n  \n  # Scale multiple replication controllers\n  kubectl scale --replicas=5 rc/example1 rc/example2 rc/example3\n  \n  # Scale stateful set named 'web' to 3\n  kubectl scale --replicas=3 statefulset/web\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources in the namespace of the specified resource types</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--current-replicas int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: -1</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Precondition for current size. Requires that the current size of the resource match this value in order to scale. -1 (default) for no condition.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to set a new size</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for scale</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--replicas int</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The new desired number of replicas. Required.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--resource-version string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Precondition for resource version. Requires \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_scale/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_scale/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_scale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_scale/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list",
      "type": "page",
      "title": "kubectl plugin list",
      "summary": "List all visible plugin executables on a user's PATH",
      "body": "\n\n\n## \n\n\nList all available plugin files on a user's PATH. To see plugins binary names without the full path use --name-only flag.\n\n Available plugin files are those that are: - executable - anywhere on the user's PATH - begin with \"kubectl-\"\n\n```\nkubectl plugin list [flags]\n```\n\n## \n\n```\n  # List all available plugins\n  kubectl plugin list\n  \n  # List only binary names of available plugins without paths\n  kubectl plugin list --name-only\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for list</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--name-only</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, display only the binary name of each plugin, rather than its full path</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl plugin list"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_plugin/_index",
      "type": "page",
      "title": "kubectl plugin",
      "summary": "Provides utilities for interacting with plugins",
      "body": "\n\n\n## \n\n\nProvides utilities for interacting with plugins.\n\n Plugins provide extended functionality that is not part of the major command-line distribution. Please refer to the documentation and examples for more information about how write your own plugins.\n\n The easiest way to discover and install plugins is via the kubernetes sub-project krew: [krew.sigs.k8s.io]. To install krew, visit https://krew.sigs.k8s.io/docs/user-guide/setup/install\n\n```\nkubectl plugin [flags]\n```\n\n## \n\n```\n  # List all available plugins\n  kubectl plugin list\n  \n  # List only binary names of available plugins without paths\n  kubectl plugin list --name-only\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for plugin</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled b\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_plugin/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl plugin"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_wait/_index",
      "type": "page",
      "title": "kubectl wait",
      "summary": "Wait for a specific condition on one or many resources",
      "body": "\n\n\n## \n\n\nWait for a specific condition on one or many resources.\n\n The command takes multiple resources and waits until the specified condition is seen in the Status field of every given resource.\n\n Alternatively, the command can wait for the given set of resources to be created or deleted by providing the \"create\" or \"delete\" keyword as the value to the --for flag.\n\n A successful message will be printed to stdout indicating when the specified condition has been met. You can use -o option to change to output destination.\n\n```\nkubectl wait ([-f FILENAME] | resource.group/resource.name | resource.group [(-l label | --all)]) [--for=create|--for=delete|--for condition=available|--for=jsonpath='{}'[=value]]\n```\n\n## \n\n```\n  # Wait for the pod \"busybox1\" to contain the status condition of type \"Ready\"\n  kubectl wait --for=condition=Ready pod/busybox1\n  \n  # The default value of status condition is true; you can wait for other targets after an equal delimiter (compared after Unicode simple case folding, which is a more general form of case-insensitivity)\n  kubectl wait --for=condition=Ready=false pod/busybox1\n  \n  # Wait for the pod \"busybox1\" to contain the status phase to be \"Running\"\n  kubectl wait --for=jsonpath='{.status.phase}'=Running pod/busybox1\n  \n  # Wait for pod \"busybox1\" to be Ready\n  kubectl wait --for='jsonpath={.status.conditions[?(@.type==\"Ready\")].status}=True' pod/busybox1\n  \n  # Wait for the service \"loadbalancer\" to have ingress\n  kubectl wait --for=jsonpath='{.status.loadBalancer.ingress}' service/loadbalancer\n  \n  # Wait for the secret \"busybox1\" to be created, with a timeout of 30s\n  kubectl create secret generic busybox1\n  kubectl wait --for=create secret/busybox1 --timeout=30s\n  \n  # Wait for the pod \"busybox1\" to be deleted, with a timeout of 60s, after having issued the \"delete\" command\n  kubectl delete pod/busybox1\n  kubectl wait --for=delete pod/busybox1 --timeout=60s\n  \n  # Wait for pod \"busybox1\" to be created AND reach the \"Ready\" status condition\n  kubectl wait --for=condition=Ready --for=create pod/busybox1\n  \n  # Wait for pod \"busybox1\" to reach the \"Ready\" status OR for its containers to report a \"False\" readiness state\n  until kubectl wait pod/busybox1 --for=condition=Ready --timeout=1s 2>/dev/null || \\\n  kubectl wait pod/busybox1 --for=condition=ContainersReady=False --timeout=1s 2>/dev/null; \\\n  do echo \"Checking conditions...\"; sleep 1; done\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources in the namespace of the specified resource types</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-A, --all-namespaces</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (field query) to filter on, supports '=', '==', and '!='.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>identifying the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--for strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The condi\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_wait/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_wait/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_wait/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_wait/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl wait"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_taint/_index",
      "type": "page",
      "title": "kubectl taint",
      "summary": "Update the taints on one or more nodes",
      "body": "\n\n\n## \n\n\nUpdate the taints on one or more nodes.\n\n  *  A taint consists of a key, value, and effect. As an argument here, it is expressed as key=value:effect.\n  *  The key must begin with a letter or number, and may contain letters, numbers, hyphens, dots, and underscores, up to 253 characters.\n  *  Optionally, the key can begin with a DNS subdomain prefix and a single '/', like example.com/my-app.\n  *  The value is optional. If given, it must begin with a letter or number, and may contain letters, numbers, hyphens, dots, and underscores, up to 63 characters.\n  *  The effect must be NoSchedule, PreferNoSchedule or NoExecute.\n  *  Currently taint can only apply to node.\n\n```\nkubectl taint NODE NAME KEY_1=VAL_1:TAINT_EFFECT_1 ... KEY_N=VAL_N:TAINT_EFFECT_N\n```\n\n## \n\n```\n  # Update node 'foo' with a taint with key 'dedicated' and value 'special-user' and effect 'NoSchedule'\n  # If a taint with that key and effect already exists, its value is replaced as specified\n  kubectl taint nodes foo dedicated=special-user:NoSchedule\n  \n  # Remove from node 'foo' the taint with key 'dedicated' and effect 'NoSchedule' if one exists\n  kubectl taint nodes foo dedicated:NoSchedule-\n  \n  # Remove from node 'foo' all the taints with key 'dedicated'\n  kubectl taint nodes foo dedicated-\n  \n  # Add a taint with key 'dedicated' on nodes having label myLabel=X\n  kubectl taint node -l myLabel=X  dedicated=foo:PreferNoSchedule\n  \n  # Add to node 'foo' a taint with key 'bar' and no value\n  kubectl taint nodes foo bar:NoSchedule\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all nodes in the cluster</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-taint\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for taint</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--overwrite</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, allow taints to be overwritten, otherwise reject taint updates that overwrite existing taints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFi\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_taint/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_taint/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_taint/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_taint/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl taint"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_completion/_index",
      "type": "page",
      "title": "kubectl completion",
      "summary": "Output shell completion code for the specified shell (bash, zsh, fish, or powershell)",
      "body": "\n\n\n## \n\n\nOutput shell completion code for the specified shell (bash, zsh, fish, or powershell). The shell code must be evaluated to provide interactive completion of kubectl commands.  This can be done by sourcing it from the .bash_profile.\n\n Detailed instructions on how to do this are available here:\n\n        for macOS:\n        https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/#enable-shell-autocompletion\n        \n        for linux:\n        https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#enable-shell-autocompletion\n        \n        for windows:\n        https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/#enable-shell-autocompletion\n        \n Note for zsh users: [1] zsh completions are only supported in versions of zsh &gt;= 5.2.\n\n```\nkubectl completion SHELL\n```\n\n## \n\n```\n  # Installing bash completion on macOS using homebrew\n  ## If running Bash 3.2 included with macOS\n  brew install bash-completion\n  ## or, if running Bash 4.1+\n  brew install bash-completion@2\n  ## If kubectl is installed via homebrew, this should start working immediately\n  ## If you've installed via other means, you may need add the completion to your completion directory\n  kubectl completion bash > $(brew --prefix)/etc/bash_completion.d/kubectl\n  \n  \n  # Installing bash completion on Linux\n  ## If bash-completion is not installed on Linux, install the 'bash-completion' package\n  ## via your distribution's package manager.\n  ## Load the kubectl completion code for bash into the current shell\n  source <(kubectl completion bash)\n  ## Write bash completion code to a file and source it from .bash_profile\n  kubectl completion bash > ~/.kube/completion.bash.inc\n  printf \"\n  # kubectl shell completion\n  source '$HOME/.kube/completion.bash.inc'\n  \" >> $HOME/.bash_profile\n  source $HOME/.bash_profile\n  \n  # Load the kubectl completion code for zsh[1] into the current shell\n  source <(kubectl completion zsh)\n  # Set the kubectl completion code for zsh[1] to autoload on startup\n  kubectl completion zsh > \"${fpath[1]}/_kubectl\"\n  \n  \n  # Load the kubectl completion code for fish[2] into the current shell\n  kubectl completion fish | source\n  # To load completions for each session, execute once:\n  kubectl completion fish > ~/.config/fish/completions/kubectl.fish\n  \n  # Load the kubectl completion code for powershell into the current shell\n  kubectl completion powershell | Out-String | Invoke-Expression\n  # Set kubectl completion code for powershell to run on startup\n  ## Save completion code to a script and execute in the profile\n  kubectl completion powershell > \"$HOME\\.kube\\completion.ps1\"\n  Add-Content $PROFILE \". '$HOME\\.kube\\completion.ps1'\"\n  ## Execute completion code in the profile\n  Add-Content $PROFILE \"if (Get-Command kubectl -ErrorAction SilentlyContinue) {\n  kubectl completion powershell | Out-String | Invoke-Expression\n  }\"\n  ## Add completion code directly to the $PROFILE script\n  kubectl completion powershell >> $PROFILE\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for completion</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_completion/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_completion/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_completion/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl completion"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo",
      "type": "page",
      "title": "kubectl rollout undo",
      "summary": "Undo a previous rollout",
      "body": "\n\n\n## \n\n\nRoll back to a previous rollout.\n\n```\nkubectl rollout undo (TYPE NAME | TYPE/NAME) [flags]\n```\n\n## \n\n```\n  # Roll back to the previous deployment\n  kubectl rollout undo deployment/abc\n  \n  # Roll back to daemonset revision 3\n  kubectl rollout undo daemonset/abc --to-revision=3\n  \n  # Roll back to the previous deployment with dry-run\n  kubectl rollout undo --dry-run=server deployment/abc\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to get from a server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for undo</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--to-revision int</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The revision to rollback to. Default to 0 (last revision).</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl rollout undo"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume",
      "type": "page",
      "title": "kubectl rollout resume",
      "summary": "Resume a paused resource",
      "body": "\n\n\n## \n\n\nResume a paused resource.\n\n Paused resources will not be reconciled by a controller. By resuming a resource, we allow it to be reconciled again. Currently only deployments support being resumed.\n\n```\nkubectl rollout resume RESOURCE\n```\n\n## \n\n```\n  # Resume an already paused deployment\n  kubectl rollout resume deployment/nginx\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-rollout\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to get from a server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for resume</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl rollout resume"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart",
      "type": "page",
      "title": "kubectl rollout restart",
      "summary": "Restart a resource",
      "body": "\n\n\n## \n\n\nRestart a resource.\n\n        Resource rollout will be restarted.\n\n```\nkubectl rollout restart RESOURCE\n```\n\n## \n\n```\n  # Restart all deployments in the test-namespace namespace\n  kubectl rollout restart deployment -n test-namespace\n  \n  # Restart a deployment\n  kubectl rollout restart deployment/nginx\n  \n  # Restart a daemon set\n  kubectl rollout restart daemonset/abc\n  \n  # Restart deployments with the app=nginx label\n  kubectl rollout restart deployment --selector=app=nginx\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-rollout\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to get from a server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for restart</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl rollout restart"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status",
      "type": "page",
      "title": "kubectl rollout status",
      "summary": "Show the status of the rollout",
      "body": "\n\n\n## \n\n\nShow the status of the rollout.\n\n By default 'rollout status' will watch the status of the latest rollout until it's done. If you don't want to wait for the rollout to finish then you can use --watch=false. Note that if a new rollout starts in-between, then 'rollout status' will continue watching the latest revision. If you want to pin to a specific revision and abort if it is rolled over by another revision, use --revision=N where N is the revision you need to watch for.\n\n```\nkubectl rollout status (TYPE NAME | TYPE/NAME) [flags]\n```\n\n## \n\n```\n  # Watch the rollout status of a deployment\n  kubectl rollout status deployment/nginx\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to get from a server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for status</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--revision int</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Pin to a specific revision for showing its status. Defaults to 0 (last revision).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--timeout duration</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The length of time to wait before ending watch, zero means never. Any other values should contain a corresponding time unit (e.g. 1s, 2m, 3h).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-w, --watch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Watch the status of the rollout until it's done.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache \n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl rollout status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause",
      "type": "page",
      "title": "kubectl rollout pause",
      "summary": "Mark the provided resource as paused",
      "body": "\n\n\n## \n\n\nMark the provided resource as paused.\n\n Paused resources will not be reconciled by a controller. Use \"kubectl rollout resume\" to resume a paused resource. Currently only deployments support being paused.\n\n```\nkubectl rollout pause RESOURCE\n```\n\n## \n\n```\n  # Mark the nginx deployment as paused\n  # Any current state of the deployment will continue its function; new updates\n  # to the deployment will not have an effect as long as the deployment is paused\n  kubectl rollout pause deployment/nginx\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-rollout\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to get from a server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for pause</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl rollout pause"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_rollout/_index",
      "type": "page",
      "title": "kubectl rollout",
      "summary": "Manage the rollout of a resource",
      "body": "\n\n\n## \n\n\nManage the rollout of one or many resources.\n        \n Valid resource types include:\n\n  *  deployments\n  *  daemonsets\n  *  statefulsets\n\n```\nkubectl rollout SUBCOMMAND\n```\n\n## \n\n```\n  # Rollback to the previous deployment\n  kubectl rollout undo deployment/abc\n  \n  # Check the rollout status of a daemonset\n  kubectl rollout status daemonset/foo\n  \n  # Restart a deployment\n  kubectl rollout restart deployment/abc\n  \n  # Restart deployments with the 'app=nginx' label\n  kubectl rollout restart deployment --selector=app=nginx\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for rollout</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=off.</p></td>\n</tr>\n\n<\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_rollout/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl rollout"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history",
      "type": "page",
      "title": "kubectl rollout history",
      "summary": "View rollout history",
      "body": "\n\n\n## \n\n\nView previous rollout revisions and configurations.\n\n```\nkubectl rollout history (TYPE NAME | TYPE/NAME) [flags]\n```\n\n## \n\n```\n  # View the rollout history of a deployment\n  kubectl rollout history deployment/abc\n  \n  # View the details of daemonset revision 3\n  kubectl rollout history daemonset/abc --revision=3\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files identifying the resource to get from a server.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for history</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--revision int</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>See the details, including podTemplate of the revision specified</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extr\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl rollout history"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied",
      "type": "page",
      "title": "kubectl apply set-last-applied",
      "summary": "Set the last-applied-configuration annotation on a live object to match the contents of a file",
      "body": "\n\n\n## \n\n\nSet the latest last-applied-configuration annotations by setting it to match the contents of a file. This results in the last-applied-configuration being updated as though 'kubectl apply -f&lt;file&gt; ' was run, without updating any other parts of the object.\n\n```\nkubectl apply set-last-applied -f FILENAME\n```\n\n## \n\n```\n  # Set the last-applied-configuration of a resource to match the contents of a file\n  kubectl apply set-last-applied -f deploy.yaml\n  \n  # Execute set-last-applied against each configuration file in a directory\n  kubectl apply set-last-applied -f path/\n  \n  # Set the last-applied-configuration of a resource to match the contents of a file; will create the annotation if it does not already exist\n  kubectl apply set-last-applied -f deploy.yaml --create-annotation=true\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--create-annotation</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Will create 'last-applied-configuration' annotations if current objects doesn't have one</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files that contains the last-applied-configuration annotations</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for set-last-applied</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-u\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl apply set-last-applied"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied",
      "type": "page",
      "title": "kubectl apply edit-last-applied",
      "summary": "Edit latest last-applied-configuration annotations of a resource/object",
      "body": "\n\n\n## \n\n\nEdit the latest last-applied-configuration annotations of resources from the default editor.\n\n The edit-last-applied command allows you to directly edit any API resource you can retrieve via the command-line tools. It will open the editor defined by your KUBE_EDITOR, or EDITOR environment variables, or fall back to 'vi' for Linux or 'notepad' for Windows. You can edit multiple objects, although changes are applied one at a time. The command accepts file names as well as command-line arguments, although the files you point to must be previously saved versions of resources.\n\n The default format is YAML. To edit in JSON, specify \"-o json\".\n\n The flag --windows-line-endings can be used to force Windows line endings, otherwise the default for your operating system will be used.\n\n In the event an error occurs while updating, a temporary file will be created on disk that contains your unapplied changes. The most common error when updating a resource is another editor changing the resource on the server. When this occurs, you will have to apply your changes to the newer version of the resource, or update your temporary saved copy to include the latest resource version.\n\n```\nkubectl apply edit-last-applied (RESOURCE/NAME | -f FILENAME)\n```\n\n## \n\n```\n  # Edit the last-applied-configuration annotations by type/name in YAML\n  kubectl apply edit-last-applied deployment/nginx\n  \n  # Edit the last-applied-configuration annotations by file in JSON\n  kubectl apply edit-last-applied -f deploy.yaml -o json\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-client-side-apply\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files to use to edit the resource</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for edit-last-applied</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. One of: (json, yaml, kyaml, name, go-template, go-template-file, template, templatefile, jsonpath, jsonpath-as-json, jsonpath-file).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--show-managed-fields</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, keep the managedFields when printing objects in JSON or YAML format.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--template string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--validate strin\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl apply edit-last-applied"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied",
      "type": "page",
      "title": "kubectl apply view-last-applied",
      "summary": "View the latest last-applied-configuration annotations of a resource/object",
      "body": "\n\n\n## \n\n\nView the latest last-applied-configuration annotations by type/name or file.\n\n The default output will be printed to stdout in YAML format. You can use the -o option to change the output format.\n\n```\nkubectl apply view-last-applied (TYPE [NAME | -l label] | TYPE/NAME | -f FILENAME)\n```\n\n## \n\n```\n  # View the last-applied-configuration annotations by type/name in YAML\n  kubectl apply view-last-applied deployment/nginx\n  \n  # View the last-applied-configuration annotations by file in JSON\n  kubectl apply view-last-applied -f deploy.yaml -o json\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources in the namespace of the specified resource types</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Filename, directory, or URL to files that contains the last-applied-configuration annotations</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for view-last-applied</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-k, --kustomize string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the kustomization directory. This flag can't be used together with -f or -R.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"yaml\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Output format. Must be one of (yaml, json)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-R, --recursive</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-l, --selector string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Selector (label query) to filter on, supports '=', '==', '!=', 'in', 'notin'.(e.g. -l key1=value1,key2=value2,key3 in (value3)). Matching objects must satisfy all of the specified label constraints.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl apply view-last-applied"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_apply/_index",
      "type": "page",
      "title": "kubectl apply",
      "summary": "Apply a configuration to a resource by file name or stdin",
      "body": "\n\n\n## \n\n\nApply a configuration to a resource by file name or stdin. The resource name must be specified. This resource will be created if it doesn't exist yet. To use 'apply', always create the resource initially with either 'apply' or 'create --save-config'.\n\n JSON and YAML formats are accepted.\n\n Alpha Disclaimer: the --prune functionality is not yet complete. Do not use unless you are aware of what the current state is. See https://issues.k8s.io/34274.\n\n```\nkubectl apply (-f FILENAME | -k DIRECTORY)\n```\n\n## \n\n```\n  # Apply the configuration in pod.json to a pod\n  kubectl apply -f ./pod.json\n  \n  # Apply resources from a directory containing kustomization.yaml - e.g. dir/kustomization.yaml\n  kubectl apply -k dir/\n  \n  # Apply the JSON passed into stdin to a pod\n  cat pod.json | kubectl apply -f -\n  \n  # Apply the configuration from all files that end with '.json'\n  kubectl apply -f '*.json'\n  \n  # Note: --prune is still in Alpha\n  # Apply the configuration in manifest.yaml that matches label app=nginx and delete all other resources that are not in the file and match label app=nginx\n  kubectl apply --prune -f manifest.yaml -l app=nginx\n  \n  # Apply the configuration in manifest.yaml and delete all the other config maps that are not in the file\n  kubectl apply --prune -f manifest.yaml --all --prune-allowlist=core/v1/ConfigMap\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--all</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Select all resources in the namespace of the specified resource types.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--allow-missing-template-keys&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: true</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cascade string[=\"background\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"background\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;background&quot;, &quot;orphan&quot;, or &quot;foreground&quot;. Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--dry-run string[=\"unchanged\"]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"none\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--field-manager string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"kubectl-client-side-apply\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Name of the manager used to track field ownership.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-f, --filename strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The files that contain the configurations to apply.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--force</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, immediately remove resources from API and bypass graceful deletion. Note that immediate deletion of some resources may result in inconsistency or data loss and requires confirmation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--force-conflicts</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, server-side apply will force the changes against conflicts.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--grace-period int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: -1</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-w\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_apply/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl apply"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_version/_index",
      "type": "page",
      "title": "kubectl version",
      "summary": "Print the client and server version information",
      "body": "\n\n\n## \n\n\nPrint the client and server version information for the current context.\n\n```\nkubectl version [flags]\n```\n\n## \n\n```\n  # Print the client and server versions for the current context\n  kubectl version\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--client</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, shows client version only (no server required).</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for version</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>One of 'yaml' or 'json'.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular user or a service account in a namespace.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-group strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Group to impersonate for the operation, this flag can be repeated to specify multiple groups.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-uid string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>UID to impersonate for the operation.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--as-user-extra strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>User extras to impersonate for the operation, this flag can be repeated to specify multiple values for the same key.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cache-dir string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"$HOME/.kube/cache\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Default cache directory</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--certificate-authority string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a cert file for the certificate authority</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-certificate string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client certificate file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--client-key string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to a client key file for TLS</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--cluster string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig cluster to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--context string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>The name of the kubeconfig context to use</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--disable-compression</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, opt-out of response compression for all requests to the server</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--insecure-skip-tls-verify</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kubeconfig string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kubeconfig file to use for CLI requests.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--kuberc string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Path to the kuberc file to use for preferences. This can be disabled by exporting KUBECTL_KUBERC=false feature gate or turning off the feature KUBERC=of\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_version/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_version/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_version/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_version/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl version"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/kubectl/generated/kubectl_kustomize/_index",
      "type": "page",
      "title": "kubectl kustomize",
      "summary": "Build a kustomization target from a directory or URL",
      "body": "\n\n\n## \n\n\nBuild a set of KRM resources using a 'kustomization.yaml' file. The DIR argument must be a path to a directory containing 'kustomization.yaml', or a git repository URL with a path suffix specifying same with respect to the repository root. If DIR is omitted, '.' is assumed.\n\n```\nkubectl kustomize DIR [flags]\n```\n\n## \n\n```\n  # Build the current working directory\n  kubectl kustomize\n  \n  # Build some shared configuration directory\n  kubectl kustomize /home/config/production\n  \n  # Build from github\n  kubectl kustomize https://github.com/kubernetes-sigs/kustomize.git/examples/helloWorld?ref=v1.0.6\n```\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as-current-user</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>use the uid and gid of the command executor to run the function in the container</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--enable-alpha-plugins</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>enable kustomize plugins</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--enable-helm</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Enable use of the Helm chart inflator generator.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-e, --env strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>a list of environment variables to be used by functions</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--helm-api-versions strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Kubernetes api versions used by Helm for Capabilities.APIVersions</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--helm-command string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"helm\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>helm command (path to executable)</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--helm-debug</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Enable debug output from the Helm chart inflator generator.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--helm-kube-version string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Kubernetes version used by Helm for Capabilities.KubeVersion</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-h, --help</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>help for kustomize</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--load-restrictor string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"LoadRestrictionsRootOnly\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>if set to 'LoadRestrictionsNone', local kustomizations may load files from outside their root. This does, however, break the relocatability of the kustomization.</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--mount strings</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>a list of storage options read from the filesystem</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--network</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>enable network access for functions that declare it</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">--network-name string&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default: \"bridge\"</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>the docker network to run the container in</p></td>\n</tr>\n\n<tr>\n<td colspan=\"2\">-o, --output string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>If specified, write output to this path.</p></td>\n</tr>\n\n</tbody>\n</table>\n\n\n\n## \n\n   <table style=\"width: 100%; table-layout: fixed;\">\n<colgroup>\n<col span=\"1\" style=\"width: 10px;\" />\n<col span=\"1\" />\n</colgroup>\n<tbody>\n\n<tr>\n<td colspan=\"2\">--as string</td>\n</tr>\n<tr>\n<td></td><td style=\"line-height: 130%; word-wrap: break-word;\"><p>Username to impersonate for the operation. User could be a regular u\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kustomize/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/kubectl/generated/kubectl_kustomize/_index.md"
      },
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kustomize/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kustomize/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "kubectl kustomize"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/authentication",
      "type": "page",
      "title": "Authenticating",
      "summary": "",
      "body": "\nThis page provides an overview of authentication in Kubernetes, with a focus on\nauthentication to the [Kubernetes API](/docs/concepts/overview/kubernetes-api/).\n\n\n## Users in Kubernetes\n\nAll Kubernetes clusters have two categories of users: service accounts managed\nby Kubernetes, and normal users.\n\nIt is assumed that a cluster-independent service manages normal users in the following ways:\n\n- an administrator distributing private keys\n- a user store like Keystone or Google Accounts\n- a file with a list of usernames and passwords\n\nIn this regard, _Kubernetes does not have objects which represent normal user accounts._\nNormal users cannot be added to a cluster through an API call.\n\nEven though a normal user cannot be added via an API call, any user that\npresents a valid certificate signed by the cluster's certificate authority\n(CA) is considered authenticated. In this configuration, Kubernetes determines\nthe username from the common name field in the 'subject' of the cert (e.g.,\n\"/CN=bob\"). From there, the role based access control (RBAC) sub-system would\ndetermine whether the user is authorized to perform a specific operation on a\nresource.\n\nIn contrast, service accounts are users managed by the Kubernetes API. They are\nbound to specific namespaces, and created automatically by the API server or\nmanually through API calls. Service accounts are tied to a set of credentials\nstored as `Secrets`, which are mounted into pods allowing in-cluster processes\nto talk to the Kubernetes API.\n\nAPI requests are tied to either a normal user or a service account, or are treated\nas [anonymous requests](#anonymous-requests). This means every process inside or outside the cluster, from\na human user typing `kubectl` on a workstation, to `kubelets` on nodes, to members\nof the control plane, must authenticate when making requests to the API server,\nor be treated as an anonymous user.\n\nIf you attempt to authenticate and it succeeds, the API server automatically\nmarks that you are a member of the special group `system:authenticated`.\n\n## Authentication strategies\n\nKubernetes uses client certificates, bearer tokens, or an authenticating proxy to\nauthenticate API requests through authentication plugins. As HTTP requests are\nmade to the API server, plugins attempt to associate the following attributes\nwith the request:\n\n* Username: a string which identifies the end user. Common values might be `kube-admin` or `jane@example.com`.\n* UID: a string which identifies the end user and attempts to be more consistent and unique than username.\n* Groups: a set of strings, each of which indicates the user's membership in a named logical collection of users.\n  Common values might be `system:masters` or `devops-team`.\n* Extra fields: a map of strings to list of strings which holds additional information authorizers may find useful.\n\n\n> **Note:** All values are opaque to the authentication system and only hold significance\nwhen interpreted by an [authorizer](/docs/reference/access-authn-authz/authorization/).\n\n\n## Anonymous requests\n\nWhen enabled, requests that are not rejected by other configured authentication methods are\ntreated as anonymous requests, and given a username of `system:anonymous` and a group of\n`system:unauthenticated`.\n\nFor example, on a server with token authentication configured, and anonymous access enabled,\na request providing an invalid bearer token would receive a `401 Unauthorized` error.\nA request providing no bearer token would be treated as an anonymous request.\n\nAnonymous access is enabled by default if an\n[authorization mode](/docs/reference/access-authn-authz/authorization/#authorization-modules)\nother than `AlwaysAllow` is used; you can disable it by passing the `--anonymous-auth=false`\ncommand line option to the API server.\nThe built-in ABAC and RBAC authorizers require explicit authorization of the\n`system:anonymous` user or the `system:unauthenticated` group; if you have legacy policy rules\n(from Kubernetes version 1.5 or earlier), t\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
      "meta": {
        "weight": 10,
        "rel_path": "reference/access-authn-authz/authentication.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": null,
          "line_end": null,
          "quote": "Authenticating"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:users-in-kubernetes",
      "type": "concept",
      "title": "Users in Kubernetes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 195,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authentication-strategies",
      "type": "concept",
      "title": "Authentication strategies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 2078,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:anonymous-requests",
      "type": "concept",
      "title": "Anonymous requests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 3069,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authentication-methods",
      "type": "concept",
      "title": "Authentication methods",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 5392,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-integrations",
      "type": "concept",
      "title": "External integrations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 17638,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:user-impersonation",
      "type": "concept",
      "title": "User impersonation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 62056,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authentication-configuration-api-server-authn-config",
      "type": "concept",
      "title": "Authentication configuration {#api-server-authn-config}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 62241,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:client-go-credential-plugins",
      "type": "concept",
      "title": "client-go credential plugins",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 72021,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-access-to-authentication-information-for-a-client-self-subject-review",
      "type": "concept",
      "title": "API access to authentication information for a client {#self-subject-review}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 87120,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:anonymous-authenticator-configuration",
      "type": "concept",
      "title": "Anonymous authenticator configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 4164,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:x-509-client-certificates-x509-client-certificates",
      "type": "concept",
      "title": "X.509 client certificates {#x509-client-certificates}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 6417,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bootstrap-tokens",
      "type": "concept",
      "title": "Bootstrap tokens",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 12431,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-account-tokens",
      "type": "concept",
      "title": "Service account tokens",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 14648,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:json-web-token-authentication",
      "type": "concept",
      "title": "JSON Web Token authentication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 18575,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhook-token-authentication",
      "type": "concept",
      "title": "Webhook token authentication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 50399,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authenticating-reverse-proxy-authenticating-proxy",
      "type": "concept",
      "title": "Authenticating reverse proxy {#authenticating-proxy}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 58389,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:static-token-file-integration-static-token-file",
      "type": "concept",
      "title": "Static token file integration {#static-token-file}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 60708,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuration-via-command-line-arguments-api-server-authn-config-cli",
      "type": "concept",
      "title": "Configuration via command line arguments {#api-server-authn-config-cli}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 62526,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuration-via-configuration-file-api-server-authn-config-file",
      "type": "concept",
      "title": "Configuration via configuration file {#api-server-authn-config-file}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 70644,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-use-case",
      "type": "concept",
      "title": "Example use case",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 72884,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:input-and-output-formats",
      "type": "concept",
      "title": "Input and output formats",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 80070,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:http-access-to-authentication-information-self-subject-review-http-api",
      "type": "concept",
      "title": "HTTP access to authentication information {#self-subject-review-http-api}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 88281,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cli-access-to-authentication-information-self-subject-review-cli",
      "type": "concept",
      "title": "CLI access to authentication information {#self-subject-review-cli}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 92383,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/abac",
      "type": "page",
      "title": "Using ABAC Authorization",
      "summary": "",
      "body": "\nAttribute-based access control (ABAC) defines an access control paradigm whereby access rights are granted\nto users through the use of policies which combine attributes together.\n\n\n## Policy File Format\n\nTo enable `ABAC` mode, specify `--authorization-policy-file=SOME_FILENAME` and `--authorization-mode=ABAC`\non startup.\n\nThe file format is [one JSON object per line](https://jsonlines.org/). There\nshould be no enclosing list or map, only one map per line.\n\nEach line is a \"policy object\", where each such object is a map with the following\nproperties:\n\n- Versioning properties:\n  - `apiVersion`, type string; valid values are \"abac.authorization.kubernetes.io/v1beta1\". Allows versioning\n    and conversion of the policy format.\n  - `kind`, type string: valid values are \"Policy\". Allows versioning and conversion of the policy format.\n- `spec` property set to a map with the following properties:\n  - Subject-matching properties:\n    - `user`, type string; the user-string from `--token-auth-file`. If you specify `user`, it must match the\n      username of the authenticated user.\n    - `group`, type string; if you specify `group`, it must match one of the groups of the authenticated user.\n      `system:authenticated` matches all authenticated requests. `system:unauthenticated` matches all\n      unauthenticated requests.\n  - Resource-matching properties:\n    - `apiGroup`, type string; an API group.\n      - Ex: `apps`, `networking.k8s.io`\n      - Wildcard: `*` matches all API groups.\n    - `namespace`, type string; a namespace.\n      - Ex: `kube-system`\n      - Wildcard: `*` matches all resource requests.\n    - `resource`, type string; a resource type\n      - Ex: `pods`, `deployments`\n      - Wildcard: `*` matches all resource requests.\n  - Non-resource-matching properties:\n    - `nonResourcePath`, type string; non-resource request paths.\n      - Ex: `/version` or `/apis`\n      - Wildcard:\n        - `*` matches all non-resource requests.\n        - `/foo/*` matches all subpaths of `/foo/`.\n  - `readonly`, type boolean, when true, means that the Resource-matching policy only applies to get, list,\n    and watch operations, Non-resource-matching policy only applies to get operation.\n\n\n> **Note:** An unset property is the same as a property set to the zero value for its type\n(e.g. empty string, 0, false). However, unset should be preferred for\nreadability.\n\nIn the future, policies may be expressed in a JSON format, and managed via a\nREST interface.\n\n\n## Authorization Algorithm\n\nA request has attributes which correspond to the properties of a policy object.\n\nWhen a request is received, the attributes are determined. Unknown attributes\nare set to the zero value of its type (e.g. empty string, 0, false).\n\nA property set to `\"*\"` will match any value of the corresponding attribute.\n\nThe tuple of attributes is checked for a match against every policy in the\npolicy file. If at least one line matches the request attributes, then the\nrequest is authorized (but may fail later validation).\n\nTo permit any authenticated user to do something, write a policy with the\ngroup property set to `\"system:authenticated\"`.\n\nTo permit any unauthenticated user to do something, write a policy with the\ngroup property set to `\"system:unauthenticated\"`.\n\nTo permit a user to do anything, write a policy with the apiGroup, namespace,\nresource, and nonResourcePath properties set to `\"*\"`.\n\n## Kubectl\n\nKubectl uses the `/api` and `/apis` endpoints of apiserver to discover\nserved resource types, and validates objects sent to the API by create/update\noperations using schema information located at `/openapi/v2`.\n\nWhen using ABAC authorization, those special resources have to be explicitly\nexposed via the `nonResourcePath` property in a policy (see [examples](#examples) below):\n\n* `/api`, `/api/*`, `/apis`, and `/apis/*` for API version negotiation.\n* `/version` for retrieving the server version via `kubectl version`.\n* `/swaggerapi/*` for create/update operations.\n\nTo inspect th\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/abac/",
      "meta": {
        "weight": 39,
        "rel_path": "reference/access-authn-authz/abac.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/abac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/abac/",
          "line_start": null,
          "line_end": null,
          "quote": "Using ABAC Authorization"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:policy-file-format",
      "type": "concept",
      "title": "Policy File Format",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/abac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/abac/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorization-algorithm",
      "type": "concept",
      "title": "Authorization Algorithm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/abac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/abac/",
          "line_start": 2523,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:a-quick-note-on-service-accounts",
      "type": "concept",
      "title": "A quick note on service accounts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/abac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/abac/",
          "line_start": 5635,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/bootstrap-tokens",
      "type": "page",
      "title": "Authenticating with Bootstrap Tokens",
      "summary": "",
      "body": "\n\n\n\nBootstrap tokens are a simple bearer token that is meant to be used when\ncreating new clusters or joining new nodes to an existing cluster.\nIt was built to support [kubeadm](/docs/reference/setup-tools/kubeadm/), but can be used in other contexts\nfor users that wish to start clusters without `kubeadm`. It is also built to\nwork, via RBAC policy, with the\n[kubelet TLS Bootstrapping](/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/) system.\n\n\n\n## Bootstrap Tokens Overview\n\nBootstrap Tokens are defined with a specific type\n(`bootstrap.kubernetes.io/token`) of secrets that lives in the `kube-system`\nnamespace. These Secrets are then read by the Bootstrap Authenticator in the\nAPI Server. Expired tokens are removed with the TokenCleaner controller in the\nController Manager. The tokens are also used to create a signature for a\nspecific ConfigMap used in a \"discovery\" process through a BootstrapSigner\ncontroller.\n\n## Token Format\n\nBootstrap Tokens take the form of `abcdef.0123456789abcdef`.\nMore formally, they must match the regular expression `[a-z0-9]{6}\\.[a-z0-9]{16}`.\n\nThe first part of the token is the \"Token ID\" and is considered public\ninformation. It is used when referring to a token without leaking the secret\npart used for authentication. The second part is the \"Token Secret\" and should\nonly be shared with trusted parties.\n\n## Enabling Bootstrap Token Authentication\n\nThe Bootstrap Token authenticator can be enabled using the following flag on the\nAPI server:\n\n```\n--enable-bootstrap-token-auth\n```\n\nWhen enabled, bootstrapping tokens can be used as bearer token credentials to\nauthenticate requests against the API server.\n\n```http\nAuthorization: Bearer 07401b.f395accd246ae52d\n```\n\nTokens authenticate as the username `system:bootstrap:<token id>` and are members\nof the group `system:bootstrappers`. \nAdditional groups may be specified in the token's Secret.\n\nExpired tokens can be deleted automatically by enabling the `tokencleaner`\ncontroller on the controller manager.\n\n```\n--controllers=*,tokencleaner\n```\n\n## Bootstrap Token Secret Format\n\nEach valid token is backed by a secret in the `kube-system` namespace. You can\nfind the full design doc\n[here](https://git.k8s.io/design-proposals-archive/cluster-lifecycle/bootstrap-discovery.md).\n\nHere is what the secret looks like.\n\n```yaml\napiVersion: v1\nkind: Secret\nmetadata:\n  # Name MUST be of form \"bootstrap-token-<token id>\"\n  name: bootstrap-token-07401b\n  namespace: kube-system\n\n# Type MUST be 'bootstrap.kubernetes.io/token'\ntype: bootstrap.kubernetes.io/token\nstringData:\n  # Human readable description. Optional.\n  description: \"The default bootstrap token generated by 'kubeadm init'.\"\n\n  # Token ID and secret. Required.\n  token-id: 07401b\n  token-secret: f395accd246ae52d\n\n  # Expiration. Optional.\n  expiration: 2017-03-10T03:22:11Z\n\n  # Allowed usages.\n  usage-bootstrap-authentication: \"true\"\n  usage-bootstrap-signing: \"true\"\n\n  # Extra groups to authenticate the token as. Must start with \"system:bootstrappers:\"\n  auth-extra-groups: system:bootstrappers:worker,system:bootstrappers:ingress\n```\n\nThe type of the secret must be `bootstrap.kubernetes.io/token` and the name must\nbe `bootstrap-token-<token id>`. It must also exist in the `kube-system` namespace.\n\nThe `usage-bootstrap-*` members indicate what this secret is intended to be used for.\nA value must be set to `true` to be enabled.\n\n* `usage-bootstrap-authentication` indicates that the token can be used to\nauthenticate to the API server as a bearer token.\n* `usage-bootstrap-signing` indicates that the token may be used to sign the\n`cluster-info` ConfigMap as described below.\n\nThe `expiration` field controls the expiry of the token. Expired tokens are\nrejected when used for authentication and ignored during ConfigMap signing.\nThe expiry value is encoded as an absolute UTC time using [RFC3339](https://datatracker.ietf.org/doc/html/rfc3339). Enable the\n`tokencleaner` controller to automatically delete expired tokens.\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/access-authn-authz/bootstrap-tokens.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": null,
          "line_end": null,
          "quote": "Authenticating with Bootstrap Tokens"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bootstrap-tokens-overview",
      "type": "concept",
      "title": "Bootstrap Tokens Overview",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 553,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:token-format",
      "type": "concept",
      "title": "Token Format",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 1027,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-bootstrap-token-authentication",
      "type": "concept",
      "title": "Enabling Bootstrap Token Authentication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 1454,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bootstrap-token-secret-format",
      "type": "concept",
      "title": "Bootstrap Token Secret Format",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 2146,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:token-management-with-kubeadm",
      "type": "concept",
      "title": "Token Management with kubeadm",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 4093,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configmap-signing",
      "type": "concept",
      "title": "ConfigMap Signing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 4292,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/user-impersonation",
      "type": "page",
      "title": "User Impersonation",
      "summary": "",
      "body": "\n\nUser _impersonation_ is a method of allowing authenticated users to act as another user,\ngroup, or service account through HTTP headers.\n\n\nA user can act as another user through impersonation headers. These let requests\nmanually override the user info a request authenticates as. For example, an admin\ncould use this feature to debug an authorization policy by temporarily\nimpersonating another user and seeing if a request was denied.\n\nImpersonation requests first authenticate as the requesting user, then switch\nto the impersonated user info.\n\n* A user makes an API call with their credentials _and_ impersonation headers.\n* API server authenticates the user.\n* API server ensures the authenticated users have impersonation privileges.\n* Request user info is replaced with impersonation values.\n* Request is evaluated, authorization acts on impersonated user info.\n\nThe following HTTP headers can be used to performing an impersonation request:\n\n* `Impersonate-User`: The username to act as.\n* `Impersonate-Uid`: A unique identifier that represents the user being impersonated. Optional.\n   Requires \"Impersonate-User\". Kubernetes does not impose any format requirements on this string.\n* `Impersonate-Group`: A group name to act as. Can be provided multiple times to set multiple groups.\n  Optional. Requires \"Impersonate-User\".\n* `Impersonate-Extra-( extra name )`: A dynamic header used to associate extra fields with the user.\n  Optional. Requires \"Impersonate-User\". In order to be preserved consistently, `( extra name )`\n  must be lower-case, and any characters which aren't [legal in HTTP header labels](https://tools.ietf.org/html/rfc7230#section-3.2.6)\n  MUST be utf8 and [percent-encoded](https://tools.ietf.org/html/rfc3986#section-2.1).\n\n\n> **Note:** Prior to 1.11.3 (and 1.10.7, 1.9.11), `( extra name )` could only contain characters which\nwere [legal in HTTP header labels](https://tools.ietf.org/html/rfc7230#section-3.2.6).\n\n\n\n> **Note:** `Impersonate-Uid` is only available in versions 1.22.0 and higher.\n\n\nAn example of the impersonation headers used when impersonating a user with groups:\n\n```http\nImpersonate-User: jane.doe@example.com\nImpersonate-Group: developers\nImpersonate-Group: admins\n```\n\nAn example of the impersonation headers used when impersonating a user with a UID and\nextra fields:\n\n```http\nImpersonate-User: jane.doe@example.com\nImpersonate-Uid: 06f6ce97-e2c5-4ab8-7ba5-7654dd08d52b\nImpersonate-Extra-dn: cn=jane,ou=engineers,dc=example,dc=com\nImpersonate-Extra-acme.com%2Fproject: some-project\nImpersonate-Extra-scopes: view\nImpersonate-Extra-scopes: development\n```\n\nWhen using `kubectl` set the `--as` command line argument to configure the `Impersonate-User`\nheader, you can also set the `--as-group` flag to configure the `Impersonate-Group` header，\nset the `--as-uid` flag (1.23) to configure `Impersonate-Uid` header, and set the\n`--as-user-extra` flag (1.35) to configure `Impersonate-Extra-( extra name )` header.\n\n```bash\nkubectl drain mynode\n```\n\n```none\nError from server (Forbidden): User \"clark\" cannot get nodes at the cluster scope. (get nodes mynode)\n```\n\nSet the `--as` and `--as-group` flag:\n\n```bash\nkubectl drain mynode --as=superman --as-group=system:masters\n```\n\n```none\nnode/mynode cordoned\nnode/mynode drained\n```\n\nTo impersonate a user, user identifier (UID), group or extra fields, the impersonating user must\nhave the ability to perform the **impersonate** verb on the kind of attribute\nbeing impersonated (\"user\", \"uid\", \"group\", etc.). For clusters that enable the RBAC\nauthorization plugin, the following ClusterRole encompasses the rules needed to\nset user and group impersonation headers:\n\n```yaml\napiVersion: rbac.authorization.k8s.io/v1\nkind: ClusterRole\nmetadata:\n  name: impersonator\nrules:\n- apiGroups: [\"\"]\n  resources: [\"users\", \"groups\", \"serviceaccounts\"]\n  verbs: [\"impersonate\"]\n```\n\nFor impersonation, extra fields and impersonated UIDs are both under the \"authentication.k8s.io\" `apiGroup`.\nExtra fields are eva\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/access-authn-authz/user-impersonation.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": null,
          "line_end": null,
          "quote": "User Impersonation"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:constrained-impersonation",
      "type": "concept",
      "title": "Constrained Impersonation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 6025,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-constrained-impersonation",
      "type": "concept",
      "title": "Understanding constrained impersonation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 6779,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:impersonation-modes",
      "type": "concept",
      "title": "Impersonation modes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 7250,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-constrained-impersonation-with-rbac",
      "type": "concept",
      "title": "Configuring constrained impersonation with RBAC",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 9048,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-constrained-impersonation",
      "type": "concept",
      "title": "Using constrained impersonation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 15427,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:working-with-impersonate-verb",
      "type": "concept",
      "title": "Working with `impersonate` verb",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 15835,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/authorization",
      "type": "page",
      "title": "Authorization",
      "summary": "Details of Kubernetes authorization mechanisms and supported authorization modes.",
      "body": "\n\nKubernetes authorization takes place following\n[authentication](/docs/reference/access-authn-authz/authentication/).\nUsually, a client making a request must be authenticated (logged in) before its\nrequest can be allowed; however, Kubernetes also allows anonymous requests in\nsome circumstances.\n\nFor an overview of how authorization fits into the wider context of API access\ncontrol, read\n[Controlling Access to the Kubernetes API](/docs/concepts/security/controlling-access/).\n\n\n\n## Authorization verdicts {#determine-whether-a-request-is-allowed-or-denied}\n\nKubernetes authorization of API requests takes place within the API server.\nThe API server evaluates all of the request attributes against all policies,\npotentially also consulting external services, and then allows or denies the\nrequest.\n\nAll parts of an API request must be allowed by some authorization\nmechanism in order to proceed. In other words: access is denied by default.\n\n\n> **Note:** Access controls and policies that\ndepend on specific fields of specific kinds of objects are handled by\n.\n\nKubernetes admission control happens after authorization has completed (and,\ntherefore, only when the authorization decision was to allow the request).\n\n\nWhen multiple [authorization modules](#authorization-modules) are configured,\neach is checked in sequence.\nIf any authorizer _approves_ or _denies_ a request, that decision is immediately\nreturned and no other authorizer is consulted. If all modules have _no opinion_\non the request, then the request is denied. An overall deny verdict means that\nthe API server rejects the request and responds with an HTTP 403 (Forbidden)\nstatus.\n\n## Request attributes used in authorization\n\nKubernetes reviews only the following API request attributes:\n\n * **user** - The `user` string provided during authentication.\n * **group** - The list of group names to which the authenticated user belongs.\n * **extra** - A map of arbitrary string keys to string values, provided by the authentication layer.\n * **API** - Indicates whether the request is for an API resource.\n * **Request path** - Path to miscellaneous non-resource endpoints like `/api` or `/healthz`.\n * **API request verb** - API verbs like `get`, `list`, `create`, `update`, `patch`, `watch`, `delete`, and `deletecollection` are used for resource requests. To determine the request verb for a resource API endpoint, see [request verbs and authorization](/docs/reference/access-authn-authz/authorization/#determine-the-request-verb).\n * **HTTP request verb** - Lowercased HTTP methods like `get`, `post`, `put`, and `delete` are used for non-resource requests.\n * **Resource** - The ID or name of the resource that is being accessed (for resource requests only) -- For resource requests using `get`, `update`, `patch`, and `delete` verbs, you must provide the resource name.\n * **Subresource** - The subresource that is being accessed (for resource requests only). This can be a standard subresource (for example, `status` or `scale`) or a synthetic subresource used for fine-grained authorization.\n * **Namespace** - The namespace of the object that is being accessed (for namespaced resource requests only).\n * **API group** - The [API Group](#gloss:api-group) being accessed (for resource requests only). An empty string designates the _core_ [API group](/docs/reference/using-api/#api-groups).\n\n### Request verbs and authorization {#determine-the-request-verb}\n\n#### Non-resource requests {#request-verb-non-resource}\n\nRequests to endpoints other than `/api/v1/...` or `/apis/<group>/<version>/...`\nare considered _non-resource requests_, and use the lower-cased HTTP method of the request as the verb.\nFor example, making a `GET` request using HTTP to endpoints such as `/api` or `/healthz` would use **get** as the verb.\n\n#### Resource requests {#request-verb-resource}\n\nTo determine the request verb for a resource API endpoint, Kubernetes maps the HTTP verb\nused and considers whether or not the request acts on an individua\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/access-authn-authz/authorization.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": null,
          "line_end": null,
          "quote": "Authorization"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorization-verdicts-determine-whether-a-request-is-allowed-or-denied",
      "type": "concept",
      "title": "Authorization verdicts {#determine-whether-a-request-is-allowed-or-denied}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 514,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:request-attributes-used-in-authorization",
      "type": "concept",
      "title": "Request attributes used in authorization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 1780,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorization-context",
      "type": "concept",
      "title": "Authorization context",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 6123,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorization-modes-authorization-modules",
      "type": "concept",
      "title": "Authorization modes {#authorization-modules}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 6399,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:privilege-escalation-via-workload-creation-or-edits-privilege-escalation-via-pod-creation",
      "type": "concept",
      "title": "Privilege escalation via workload creation or edits {#privilege-escalation-via-pod-creation}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 19402,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:checking-api-access",
      "type": "concept",
      "title": "Checking API access",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 21459,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:request-verbs-and-authorization-determine-the-request-verb",
      "type": "concept",
      "title": "Request verbs and authorization {#determine-the-request-verb}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 3527,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-system-masters-group",
      "type": "concept",
      "title": "The system:masters group",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 9165,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorization-mode-configuration-choice-of-authz-config",
      "type": "concept",
      "title": "Authorization mode configuration {#choice-of-authz-config}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 9758,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-the-api-server-using-an-authorization-config-file-using-configuration-file-for-authorization",
      "type": "concept",
      "title": "Configuring the API Server using an authorization config file {#using-configuration-file-for-authorization}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 10503,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:command-line-authorization-mode-configuration-using-flags-for-your-authorization-module",
      "type": "concept",
      "title": "Command line authorization mode configuration {#using-flags-for-your-authorization-module}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 18169,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:escalation-paths-escalation-paths",
      "type": "concept",
      "title": "Escalation paths {#escalation-paths}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 20219,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/node",
      "type": "page",
      "title": "Using Node Authorization",
      "summary": "",
      "body": "\nNode authorization is a special-purpose authorization mode that specifically\nauthorizes API requests made by kubelets.\n\n\n\n## Overview\n\nThe Node authorizer allows a kubelet to perform API operations. This includes:\n\nRead operations:\n\n* services\n* endpoints\n* nodes\n* pods\n* secrets, configmaps, persistent volume claims and persistent volumes related\n  to pods bound to the kubelet's node\n\n\n\nKubelets are limited to reading their own Node objects, and only reading pods bound to their node.\n\nWrite operations:\n\n* nodes and node status (enable the `NodeRestriction` admission plugin to limit\n  a kubelet to modify its own node)\n* pods and pod status (enable the `NodeRestriction` admission plugin to limit a\n  kubelet to modify pods bound to itself)\n* events\n\nAuth-related operations:\n\n* read/write access to the\n  [CertificateSigningRequests API](/docs/reference/access-authn-authz/certificate-signing-requests/)\n  for TLS bootstrapping\n* the ability to create TokenReviews and SubjectAccessReviews for delegated\n  authentication/authorization checks\n\nIn future releases, the node authorizer may add or remove permissions to ensure\nkubelets have the minimal set of permissions required to operate correctly.\n\nIn order to be authorized by the Node authorizer, kubelets must use a credential\nthat identifies them as being in the `system:nodes` group, with a username of\n`system:node:<nodeName>`.\nThis group and user name format match the identity created for each kubelet as part of \n[kubelet TLS bootstrapping](/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/).\n\nThe value of `<nodeName>` **must** match precisely the name of the node as\nregistered by the kubelet. By default, this is the host name as provided by\n`hostname`, or overridden via the\n[kubelet option](/docs/reference/command-line-tools-reference/kubelet/)\n`--hostname-override`. However, when using the `--cloud-provider` kubelet\noption, the specific hostname may be determined by the cloud provider, ignoring\nthe local `hostname` and the `--hostname-override` option. \nFor specifics about how the kubelet determines the hostname, see the\n[kubelet options reference](/docs/reference/command-line-tools-reference/kubelet/).\n\nTo enable the Node authorizer, start the [API server](#gloss:kube-apiserver)\nwith the `--authorization-config` flag set to a file that includes the `Node` authorizer; for example:\n\n```yaml\napiVersion: apiserver.config.k8s.io/v1\nkind: AuthorizationConfiguration\nauthorizers:\n  ...\n  - type: Node\n  ...\n```\n\nOr, start the [API server](#gloss:kube-apiserver) with\nthe `--authorization-mode` flag set to a comma-separated list that includes `Node`;\nfor example:\n```shell\nkube-apiserver --authorization-mode=...,Node --other-options --more-options\n```\n\nTo limit the API objects kubelets are able to write, enable the\n[NodeRestriction](/docs/reference/access-authn-authz/admission-controllers#noderestriction)\nadmission plugin by starting the apiserver with\n`--enable-admission-plugins=...,NodeRestriction,...`\n\n## Service account token audience restriction {#service-account-token-audience-restriction}\n\n\n\nWhen the `ServiceAccountNodeAudienceRestriction` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)\nis enabled and the `NodeRestriction` admission plugin is active, the kubelet can only\nrequest service account tokens for audiences that are already referenced by pods running\non that node. This prevents a compromised node from obtaining tokens for arbitrary audiences.\n\nThe allowed audiences are determined from the pod spec:\n\n- The default API server audience (empty or the API server's configured audience).\n- Audiences set in projected service account token volume sources.\n- Audiences configured in CSI driver `spec.tokenRequests` for any CSI driver used by\n  the pod, whether through inline CSI volumes, PersistentVolumeClaim-backed volumes,\n  or ephemeral volumes.\n\nThis is particularly relevant when using [service account tokens for image credential providers](/docs\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
      "meta": {
        "weight": 34,
        "rel_path": "reference/access-authn-authz/node.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": null,
          "line_end": null,
          "quote": "Using Node Authorization"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:service-account-token-audience-restriction-service-account-token-audience-restriction",
      "type": "concept",
      "title": "Service account token audience restriction {#service-account-token-audience-restriction}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 3169,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migration-considerations",
      "type": "concept",
      "title": "Migration considerations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 6890,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:allowing-additional-audiences-with-rbac-allowing-additional-audiences",
      "type": "concept",
      "title": "Allowing additional audiences with RBAC {#allowing-additional-audiences}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 4425,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelets-outside-the-system-nodes-group",
      "type": "concept",
      "title": "Kubelets outside the `system:nodes` group",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 6919,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelets-with-undifferentiated-usernames",
      "type": "concept",
      "title": "Kubelets with undifferentiated usernames",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 7236,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/service-accounts-admin",
      "type": "page",
      "title": "Managing Service Accounts",
      "summary": "",
      "body": "\n\nA _ServiceAccount_ provides an identity for processes that run in a Pod.\n\nA process inside a Pod can use the identity of its associated service account to\nauthenticate to the cluster's API server.\n\nFor an introduction to service accounts, read [configure service accounts](/docs/tasks/configure-pod-container/configure-service-account/).\n\nThis task guide explains some of the concepts behind ServiceAccounts. The\nguide also explains how to obtain or revoke tokens that represent\nServiceAccounts, and how to (optionally) bind a ServiceAccount's validity to\nthe lifetime of an API object.\n\n\n\n## \n\n\n\nTo be able to follow these steps exactly, ensure you have a namespace named\n`examplens`.\nIf you don't, create one by running:\n\n```shell\nkubectl create namespace examplens\n```\n\n## User accounts versus service accounts\n\nKubernetes distinguishes between the concept of a user account and a service account\nfor a number of reasons:\n\n- User accounts are for humans. Service accounts are for application processes,\n  which (for Kubernetes) run in containers that are part of pods.\n- User accounts are intended to be global: names must be unique across all\n  namespaces of a cluster. No matter what namespace you look at, a particular\n  username that represents a user represents the same user.\n  In Kubernetes, service accounts are namespaced: two different namespaces can\n  contain ServiceAccounts that have identical names.\n- Typically, a cluster's user accounts might be synchronised from a corporate\n  database, where new user account creation requires special privileges and is\n  tied to complex business processes. By contrast, service account creation is\n  intended to be more lightweight, allowing cluster users to create service accounts\n  for specific tasks on demand. Separating ServiceAccount creation from the steps to\n  onboard human users makes it easier for workloads to follow the principle of\n  least privilege.\n- Auditing considerations for humans and service accounts may differ; the separation\n  makes that easier to achieve.\n- A configuration bundle for a complex system may include definition of various service\n  accounts for components of that system. Because service accounts can be created\n  without many constraints and have namespaced names, such configuration is\n  usually portable.\n\n## Bound service account tokens\n\nServiceAccount tokens can be bound to API objects that exist in the kube-apiserver.\nThis can be used to tie the validity of a token to the existence of another API object.\nSupported object types are as follows:\n\n* Pod (used for projected volume mounts, see below)\n* Secret (can be used to allow revoking a token by deleting the Secret)\n* Node (can be used to auto-revoke a token when its Node is deleted; creating new node-bound tokens is GA in v1.33+)\n\nWhen a token is bound to an object, the object's `metadata.name` and `metadata.uid` are\nstored as extra 'private claims' in the issued JWT.\n\nWhen a bound token is presented to the kube-apiserver, the service account authenticator\nwill extract and verify these claims.\nIf the referenced object or the ServiceAccount is pending deletion (for example, due to finalizers),\nthen for any instant that is 60 seconds (or more) after the `.metadata.deletionTimestamp` date,\nauthentication with that token would fail.\nIf the referenced object no longer exists (or its `metadata.uid` does not match),\nthe request will not be authenticated.\n\n### Additional metadata in Pod bound tokens\n\n\n\nWhen a service account token is bound to a Pod object, additional metadata is also\nembedded into the token that indicates the value of the bound pod's `spec.nodeName` field,\nand the uid of that Node, if available.\n\nThis node information is **not** verified by the kube-apiserver when the token is used for authentication.\nIt is included so integrators do not have to fetch Pod or Node API objects to check the associated Node name\nand uid when inspecting a JWT.\n\n### Verifying and inspecting private claims\n\nThe TokenReview API c\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/access-authn-authz/service-accounts-admin.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": null,
          "line_end": null,
          "quote": "Managing Service Accounts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:user-accounts-versus-service-accounts",
      "type": "concept",
      "title": "User accounts versus service accounts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 879,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bound-service-account-tokens",
      "type": "concept",
      "title": "Bound service account tokens",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 2411,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bound-service-account-token-volume-mechanism-bound-service-account-token-volume",
      "type": "concept",
      "title": "Bound service account token volume mechanism {#bound-service-account-token-volume}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 8901,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:manual-secret-management-for-serviceaccounts",
      "type": "concept",
      "title": "Manual Secret management for ServiceAccounts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 11490,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:auto-generated-legacy-serviceaccount-token-clean-up-auto-generated-legacy-serviceaccount-token-clean-up",
      "type": "concept",
      "title": "Auto-generated legacy ServiceAccount token clean up {#auto-generated-legacy-serviceaccount-token-clean-up}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 12865,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-details",
      "type": "concept",
      "title": "Control plane details",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 15040,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-additional-api-tokens-create-token",
      "type": "concept",
      "title": "Create additional API tokens {#create-token}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 23024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-invalidate-a-serviceaccount-token-delete-token",
      "type": "concept",
      "title": "Delete/invalidate a ServiceAccount token {#delete-token}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 24877,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:external-serviceaccount-token-signing-and-key-management",
      "type": "concept",
      "title": "External ServiceAccount token signing and key management",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 26622,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:additional-metadata-in-pod-bound-tokens",
      "type": "concept",
      "title": "Additional metadata in Pod bound tokens",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 3528,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:verifying-and-inspecting-private-claims",
      "type": "concept",
      "title": "Verifying and inspecting private claims",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 4110,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccount-controller",
      "type": "concept",
      "title": "ServiceAccount controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 15066,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:token-controller",
      "type": "concept",
      "title": "Token controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 15252,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccount-admission-controller",
      "type": "concept",
      "title": "ServiceAccount admission controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 16596,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:legacy-serviceaccount-token-tracking-controller",
      "type": "concept",
      "title": "Legacy ServiceAccount token tracking controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 18340,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:legacy-serviceaccount-token-cleaner",
      "type": "concept",
      "title": "Legacy ServiceAccount token cleaner",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 18723,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tokenrequest-api",
      "type": "concept",
      "title": "TokenRequest API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 20360,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-invalidate-a-long-lived-legacy-serviceaccount-token-delete-legacy-token",
      "type": "concept",
      "title": "Delete/invalidate a long-lived/legacy ServiceAccount token {#delete-legacy-token}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 24938,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:delete-invalidate-a-short-lived-serviceaccount-token-delete-short-lived",
      "type": "concept",
      "title": "Delete/invalidate a short-lived ServiceAccount token {#delete-short-lived}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 26101,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metadata",
      "type": "concept",
      "title": "Metadata",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 27941,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fetchkeys",
      "type": "concept",
      "title": "FetchKeys",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 29033,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sign",
      "type": "concept",
      "title": "Sign",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 30482,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/validating-admission-policy",
      "type": "page",
      "title": "Validating Admission Policy",
      "summary": "",
      "body": "\n\n\n\nThis page provides an overview of Validating Admission Policy.\n\n\n\n\n## What is Validating Admission Policy?\n\nValidating admission policies offer a declarative, in-process alternative to validating admission webhooks.\n\nValidating admission policies use the Common Expression Language (CEL) to declare the validation\nrules of a policy. \nValidation admission policies are highly configurable, enabling policy authors to define policies\nthat can be parameterized and scoped to resources as needed by cluster administrators.\n\n## What Resources Make a Policy\n\nA policy is generally made up of three resources:\n\n- The `ValidatingAdmissionPolicy` describes the abstract logic of a policy\n  (think: \"this policy makes sure a particular label is set to a particular value\").\n\n- A parameter resource provides information to a ValidatingAdmissionPolicy to make it a concrete\n  statement (think \"the `owner` label must be set to something that ends in `.company.com`\").\n  A native type such as ConfigMap or a CRD defines the schema of a parameter resource.\n  `ValidatingAdmissionPolicy` objects specify what Kind they are expecting for their parameter resource.\n\n- A `ValidatingAdmissionPolicyBinding` links the above resources together and provides scoping.\n  If you only want to require an `owner` label to be set for `Pods`, the binding is where you would\n  specify this restriction.\n\nAt least a `ValidatingAdmissionPolicy` and a corresponding  `ValidatingAdmissionPolicyBinding`\nmust be defined for a policy to have an effect.\n\n\n> **Note:** Names ending in `.static.k8s.io` are reserved for\n[manifest-based admission control](/docs/reference/access-authn-authz/manifest-admission-control/)\nand cannot be used for API-based policies or bindings. This reservation is\nenforced when the `ManifestBasedAdmissionControlConfig`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/#ManifestBasedAdmissionControlConfig) is enabled.\n\n\nIf a `ValidatingAdmissionPolicy` does not need to be configured via parameters, simply leave\n`spec.paramKind` in  `ValidatingAdmissionPolicy` not specified.\n\n## Getting Started with Validating Admission Policy\n\nValidating Admission Policy is part of the cluster control-plane. You should write and deploy them\nwith great caution. The following describes how to quickly experiment with Validating Admission Policy.\n\n### Creating a ValidatingAdmissionPolicy\n\nThe following is an example of a ValidatingAdmissionPolicy.\n\n\n\n`spec.validations` contains CEL expressions which use the [Common Expression Language (CEL)](https://github.com/google/cel-spec)\nto validate the request. If an expression evaluates to false, the validation check is enforced\naccording to the `spec.failurePolicy` field.\n\n\n> **Note:** You can quickly test CEL expressions in [CEL Playground](https://playcel.undistro.io).\n\n\nTo configure a validating admission policy for use in a cluster, a binding is required.\nThe following is an example of a ValidatingAdmissionPolicyBinding.:\n\n\n\nWhen trying to create a deployment with replicas set not satisfying the validation expression, an\nerror will return containing message:\n\n```none\nValidatingAdmissionPolicy 'demo-policy.example.com' with binding 'demo-binding-test.example.com' denied request: failed expression: object.spec.replicas <= 5\n```\n\nThe above provides a simple example of using ValidatingAdmissionPolicy without a parameter configured.\n\n#### Validation actions\n\nEach `ValidatingAdmissionPolicyBinding` must specify one or more\n`validationActions` to declare how `validations` of a policy are enforced.\n\nThe supported `validationActions` are:\n\n- `Deny`: Validation failure results in a denied request.\n- `Warn`: Validation failure is reported to the request client\n  as a [warning](/blog/2020/09/03/warnings/).\n- `Audit`: Validation failure is included in the audit event for the API request.\n\nFor example, to both warn clients about a validation failure and to audit the\nvalidation failures, use:\n\n```yaml\nvalidationActions: [Warn, A\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/access-authn-authz/validating-admission-policy.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Validating Admission Policy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-is-validating-admission-policy",
      "type": "concept",
      "title": "What is Validating Admission Policy?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 162,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-resources-make-a-policy",
      "type": "concept",
      "title": "What Resources Make a Policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 615,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:getting-started-with-validating-admission-policy",
      "type": "concept",
      "title": "Getting Started with Validating Admission Policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 2203,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-kinds-exempt-from-admission-validation",
      "type": "concept",
      "title": "API kinds exempt from admission validation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 29477,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:creating-a-validatingadmissionpolicy",
      "type": "concept",
      "title": "Creating a ValidatingAdmissionPolicy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 2460,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:parameter-resources",
      "type": "concept",
      "title": "Parameter resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 4983,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:failure-policy",
      "type": "concept",
      "title": "Failure Policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 14637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validation-expression",
      "type": "concept",
      "title": "Validation Expression",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 15259,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:matching-requests-matchconditions",
      "type": "concept",
      "title": "Matching requests: `matchConditions`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 21122,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:audit-annotations",
      "type": "concept",
      "title": "Audit annotations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 22288,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:message-expression",
      "type": "concept",
      "title": "Message expression",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 23512,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:type-checking",
      "type": "concept",
      "title": "Type checking",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 25131,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:variable-composition",
      "type": "concept",
      "title": "Variable composition",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 27779,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/mutating-admission-policy",
      "type": "page",
      "title": "Mutating Admission Policy",
      "summary": "",
      "body": "\n\n\n\n\nThis page provides an overview of _MutatingAdmissionPolicies_.\nMutatingAdmissionPolicies allow you to change what happens when someone writes a change to the Kubernetes API.\nIf you want to use declarative policies just to prevent a particular kind of change to resources (for example: protecting platform namespaces from deletion),\n[ValidatingAdmissionPolicy](/docs/reference/access-authn-authz/validating-admission-policy/)\nis\na simpler and more effective alternative.\n\n\n\n\n\n## What are MutatingAdmissionPolicies?\n\nMutating admission policies offer a declarative, in-process alternative to mutating admission webhooks.\n\nMutating admission policies use the Common Expression Language (CEL) to declare mutations to resources.\nMutations can be defined either with an *apply configuration* that is merged using the\n[server side apply merge strategy](/docs/reference/using-api/server-side-apply/#merge-strategy),\nor a [JSON patch](https://jsonpatch.com/).\n\nMutating admission policies are highly configurable, enabling policy authors to define policies\nthat can be parameterized and scoped to resources as needed by cluster administrators.\n\n## What resources make a policy\n\nA policy is generally made up of three resources:\n\n- The MutatingAdmissionPolicy describes the abstract logic of a policy\n  (think: \"this policy sets a particular label to a particular value\").\n\n- A _parameter resource_ provides information to a MutatingAdmissionPolicy to make it a concrete\n  statement (think \"set the `owner` label to something like `company.example.com`\").\n  Parameter resources refer to Kubernetes resources, available in the Kubernetes API. They can be built-in types or extensions,\n  such as a [CustomResourceDefinition](#gloss:CustomResourceDefinition) (CRD). For example, you can use a ConfigMap as a parameter.\n- A MutatingAdmissionPolicyBinding links the above (MutatingAdmissionPolicy and parameter) resources together and provides scoping.\n  If you only want to set an `owner` label for `Pods`, and not other API kinds, the binding is where you\n  specify this mutation.\n\n\n\nAt least a MutatingAdmissionPolicy and a corresponding MutatingAdmissionPolicyBinding\nmust be defined for a policy to have an effect.\n\n\n> **Note:** Names ending in `.static.k8s.io` are reserved for\n[manifest-based admission control](/docs/reference/access-authn-authz/manifest-admission-control/)\nand cannot be used for API-based policies or bindings. This reservation is\nenforced when the `ManifestBasedAdmissionControlConfig`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/#ManifestBasedAdmissionControlConfig) is enabled.\n\n\nIf a MutatingAdmissionPolicy does not need to be configured via parameters, simply leave\n`spec.paramKind` in  MutatingAdmissionPolicy not specified.\n\n## Getting Started with MutatingAdmissionPolicies\n\nMutating admission policy is part of the cluster control-plane. You should write\nand deploy them with great caution. The following describes how to quickly\nexperiment with Mutating admission policy.\n\n### Create a MutatingAdmissionPolicy\n\nThe following is an example of a MutatingAdmissionPolicy. This policy mutates newly created Pods to have a sidecar container if it does not exist.\n\n\n\nThe `.spec.mutations` field consists of a list of expressions that evaluate to resource patches.\nThe emitted patches may be either [apply configurations](#patch-type-apply-configuration) or [JSON Patch](#patch-type-json-patch)\npatches. You cannot specify an empty list of mutations. After evaluating all the\nexpressions, the API server applies those changes to the resource that is\npassing through admission.\n\nTo configure a mutating admission policy for use in a cluster, a binding is\nrequired. The MutatingAdmissionPolicy will only be active if a corresponding\nbinding exists with the referenced `spec.policyName` matching the `spec.name` of\na policy.\n\nOnce the binding and policy are created, any resource request that matches the\n`spec.matchConditions` of a policy will trigger\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
      "meta": {
        "weight": null,
        "rel_path": "reference/access-authn-authz/mutating-admission-policy.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Mutating Admission Policy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-are-mutatingadmissionpolicies",
      "type": "concept",
      "title": "What are MutatingAdmissionPolicies?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:getting-started-with-mutatingadmissionpolicies",
      "type": "concept",
      "title": "Getting Started with MutatingAdmissionPolicies",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": 2996,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-kinds-exempt-from-mutating-admission",
      "type": "concept",
      "title": "API kinds exempt from mutating admission",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": 10685,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:create-a-mutatingadmissionpolicy",
      "type": "concept",
      "title": "Create a MutatingAdmissionPolicy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": 3247,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/webhook",
      "type": "page",
      "title": "Webhook Mode",
      "summary": "",
      "body": "\nA WebHook is an HTTP callback: an HTTP POST that occurs when something happens; a simple event-notification via HTTP POST. A web application implementing WebHooks will POST a message to a URL when certain things happen.\n\n\n\nWhen specified, mode `Webhook` causes Kubernetes to query an outside REST\nservice when determining user privileges.\n\n## Configuration File Format\n\nMode `Webhook` requires a file for HTTP configuration, specify by the\n`--authorization-webhook-config-file=SOME_FILENAME` flag.\n\nThe configuration file uses the [kubeconfig](/docs/tasks/access-application-cluster/configure-access-multiple-clusters/)\nfile format. Within the file \"users\" refers to the API Server webhook and\n\"clusters\" refers to the remote service.\n\nA configuration example which uses HTTPS client auth:\n\n```yaml\n# Kubernetes API version\napiVersion: v1\n# kind of the API object\nkind: Config\n# clusters refers to the remote service.\nclusters:\n  - name: name-of-remote-authz-service\n    cluster:\n      # CA for verifying the remote service.\n      certificate-authority: /path/to/ca.pem\n      # URL of remote service to query. Must use 'https'. May not include parameters.\n      server: https://authz.example.com/authorize\n\n# users refers to the API Server's webhook configuration.\nusers:\n  - name: name-of-api-server\n    user:\n      client-certificate: /path/to/cert.pem # cert for the webhook plugin to use\n      client-key: /path/to/key.pem          # key matching the cert\n\n# kubeconfig files require a context. Provide one for the API Server.\ncurrent-context: webhook\ncontexts:\n- context:\n    cluster: name-of-remote-authz-service\n    user: name-of-api-server\n  name: webhook\n```\n\n## Request Payloads\n\nWhen faced with an authorization decision, the API Server POSTs a JSON-\nserialized `authorization.k8s.io/v1beta1` `SubjectAccessReview` object describing the\naction. This object contains fields describing the user attempting to make the\nrequest, and either details about the resource being accessed or requests\nattributes.\n\nNote that webhook API objects are subject to the same [versioning compatibility rules](/docs/concepts/overview/kubernetes-api/)\nas other Kubernetes API objects. Implementers should be aware of looser\ncompatibility promises for beta objects and check the \"apiVersion\" field of the\nrequest to ensure correct deserialization. Additionally, the API Server must\nenable the `authorization.k8s.io/v1beta1` API extensions group (`--runtime-config=authorization.k8s.io/v1beta1=true`).\n\nAn example request body:\n\n```json\n{\n  \"apiVersion\": \"authorization.k8s.io/v1beta1\",\n  \"kind\": \"SubjectAccessReview\",\n  \"spec\": {\n    \"resourceAttributes\": {\n      \"namespace\": \"kittensandponies\",\n      \"verb\": \"get\",\n      \"group\": \"unicorn.example.org\",\n      \"resource\": \"pods\"\n    },\n    \"user\": \"jane\",\n    \"group\": [\n      \"group1\",\n      \"group2\"\n    ]\n  }\n}\n```\n\nThe remote service is expected to fill the `status` field of\nthe request and respond to either allow or disallow access. The response body's\n`spec` field is ignored and may be omitted. A permissive response would return:\n\n```json\n{\n  \"apiVersion\": \"authorization.k8s.io/v1beta1\",\n  \"kind\": \"SubjectAccessReview\",\n  \"status\": {\n    \"allowed\": true\n  }\n}\n```\n\nFor disallowing access there are two methods.\n\nThe first method is preferred in most cases, and indicates the authorization\nwebhook does not allow, or has \"no opinion\" about the request, but if other \nauthorizers are configured, they are given a chance to allow the request. \nIf there are no other authorizers, or none of them allow the request, the \nrequest is forbidden. The webhook would return:\n\n```json\n{\n  \"apiVersion\": \"authorization.k8s.io/v1beta1\",\n  \"kind\": \"SubjectAccessReview\",\n  \"status\": {\n    \"allowed\": false,\n    \"reason\": \"user does not have read access to the namespace\"\n  }\n}\n```\n\nThe second method denies immediately, short-circuiting evaluation by other \nconfigured authorizers. This should only be used by webhooks that have \ndetailed knowledge of the full\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/webhook/",
      "meta": {
        "weight": 36,
        "rel_path": "reference/access-authn-authz/webhook.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/webhook.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/webhook/",
          "line_start": null,
          "line_end": null,
          "quote": "Webhook Mode"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuration-file-format",
      "type": "concept",
      "title": "Configuration File Format",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/webhook.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/webhook/",
          "line_start": 372,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:request-payloads",
      "type": "concept",
      "title": "Request Payloads",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/webhook.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/webhook/",
          "line_start": 1701,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/kubelet-authn-authz",
      "type": "page",
      "title": "Kubelet authentication/authorization",
      "summary": "",
      "body": "## Overview\n\nA kubelet's HTTPS endpoint exposes APIs which give access to data of varying sensitivity,\nand allow you to perform operations with varying levels of power on the node and within containers.\n\nThis document describes how to authenticate and authorize access to the kubelet's HTTPS endpoint.\n\n## Kubelet authentication\n\nBy default, requests to the kubelet's HTTPS endpoint that are not rejected by other configured\nauthentication methods are treated as anonymous requests, and given a username of `system:anonymous`\nand a group of `system:unauthenticated`.\n\nTo disable anonymous access and send `401 Unauthorized` responses to unauthenticated requests:\n\n* start the kubelet with the `--anonymous-auth=false` flag\n\nTo enable X509 client certificate authentication to the kubelet's HTTPS endpoint:\n\n* start the kubelet with the `--client-ca-file` flag, providing a CA bundle to verify client certificates with\n* start the apiserver with `--kubelet-client-certificate` and `--kubelet-client-key` flags\n* see the [apiserver authentication documentation](/docs/reference/access-authn-authz/authentication/#x509-client-certificates) for more details\n\nTo enable API bearer tokens (including service account tokens) to be used to authenticate to the kubelet's HTTPS endpoint:\n\n* ensure the `authentication.k8s.io/v1` API group is enabled in the API server\n* start the kubelet with the `--authentication-token-webhook` and `--kubeconfig` flags\n* the kubelet calls the `TokenReview` API on the configured API server to determine user information from bearer tokens\n\n## Kubelet authorization\n\nAny request that is successfully authenticated (including an anonymous request) is then authorized. The default authorization mode is `AlwaysAllow`, which allows all requests.\n\nThere are many possible reasons to subdivide access to the kubelet API:\n\n* anonymous auth is enabled, but anonymous users' ability to call the kubelet API should be limited\n* bearer token auth is enabled, but arbitrary API users' (like service accounts) ability to call the kubelet API should be limited\n* client certificate auth is enabled, but only some of the client certificates signed by the configured CA should be allowed to use the kubelet API\n\nTo subdivide access to the kubelet API, delegate authorization to the API server:\n\n* ensure the `authorization.k8s.io/v1` API group is enabled in the API server\n* start the kubelet with the `--authorization-mode=Webhook` and the `--kubeconfig` flags\n* the kubelet calls the `SubjectAccessReview` API on the configured API server to determine whether each request is authorized\n\nThe kubelet authorizes API requests using the same [request attributes](/docs/reference/access-authn-authz/authorization/#review-your-request-attributes) approach as the apiserver.\n\nThe verb is determined from the incoming request's HTTP verb:\n\nHTTP verb | request verb\n----------|---------------\nPOST      | create\nGET, HEAD | get\nPUT       | update\nPATCH     | patch\nDELETE    | delete\n\nThe resource and subresource is determined from the incoming request's path:\n\nKubelet API         | resource | subresource\n--------------------|----------|------------\n/stats/\\*           | nodes    | stats\n/metrics/\\*         | nodes    | metrics\n/logs/\\*            | nodes    | log\n/spec/\\*            | nodes    | spec\n/checkpoint/\\*      | nodes    | checkpoint\n*all others*        | nodes    | proxy\n\n<a name=\"get-nodes-proxy-warning\"></a>\n\n> **Warning:** `nodes/proxy` permission grants access to all other kubelet APIs.\nThis includes APIs that can be used to execute commands in any container running on the node.\n\nSome of these endpoints support Websocket protocols via HTTP `GET` requests, which are authorized with the **get** verb.\nThis means that **get** permission on `nodes/proxy` is not a read-only permission,\nand authorizes executing commands in any container running on the node.\n\n\nThe namespace and API group attributes are always an empty string, and\nthe resource name is always the name of\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-authn-authz/",
      "meta": {
        "weight": 110,
        "rel_path": "reference/access-authn-authz/kubelet-authn-authz.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-authn-authz.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-authn-authz/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubelet authentication/authorization"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-authentication",
      "type": "concept",
      "title": "Kubelet authentication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-authn-authz.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-authn-authz/",
          "line_start": 304,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-authorization",
      "type": "concept",
      "title": "Kubelet authorization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-authn-authz.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-authn-authz/",
          "line_start": 1567,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fine-grained-authorization",
      "type": "concept",
      "title": "Fine-grained authorization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-authn-authz.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-authn-authz/",
          "line_start": 4471,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/manifest-admission-control",
      "type": "page",
      "title": "Manifest-Based Admission Control",
      "summary": "",
      "body": "\n\n\n\nThis page provides an overview of manifest-based admission control configuration.\nManifest-based admission control lets you load\n[admission webhooks](/docs/reference/access-authn-authz/extensible-admission-controllers/)\nand CEL-based admission policies from static files on disk, rather than from the\nKubernetes API. These policies are active from API server startup, operate\nindependently of [etcd](#gloss:etcd), and can\nprotect API-based admission resources from modification.\n\nTo use the feature, enable the `ManifestBasedAdmissionControlConfig`\n[feature gate](/docs/reference/command-line-tools-reference/feature-gates/#ManifestBasedAdmissionControlConfig) and\nconfigure the `staticManifestsDir` field in the\n[AdmissionConfiguration](/docs/reference/config-api/apiserver-config.v1/#apiserver-k8s-io-v1-AdmissionConfiguration)\nfile passed to the kube-apiserver via `--admission-control-config-file`.\n\n\n\n## Why use manifest-based admission control?\n\nAdmission policies and webhooks registered through the Kubernetes API (such as\nValidatingAdmissionPolicy, MutatingAdmissionPolicy,\nValidatingWebhookConfiguration, and MutatingWebhookConfiguration) have several\ninherent limitations:\n\n- **Bootstrap gap**: REST-based policy enforcement requires the API objects to be\n  created and loaded by the dynamic admission controller. Until that happens,\n  policies are not enforced.\n- **Self-protection gap**: Admission configuration resources (such as\n  ValidatingWebhookConfiguration) are not themselves subject to webhook\n  admission, to prevent circular dependencies. A user with sufficient privileges\n  can delete or modify critical admission policies.\n- **etcd dependency**: REST-based admission configurations depend on etcd\n  availability. If etcd is unavailable or corrupted, admission policies may not\n  load correctly.\n\nManifest-based admission control addresses these limitations by loading\nconfigurations from files on disk. These configurations are:\n\n- Active as soon as the API server is ready to serve requests\n- Not visible or changeable through the Kubernetes API\n- Independent of etcd availability\n- Able to intercept operations on API-based admission resources themselves\n\n## Supported resource types\n\nYou can include the following resource types in manifest files. Only the\n`admissionregistration.k8s.io/v1` API version is supported.\n\n\n| Plugin name | Supported resource types |\n|:------------|:------------------------|\n| `ValidatingAdmissionWebhook` | ValidatingWebhookConfiguration |\n| `MutatingAdmissionWebhook` | MutatingWebhookConfiguration |\n| `ValidatingAdmissionPolicy` | ValidatingAdmissionPolicy, ValidatingAdmissionPolicyBinding |\n| `MutatingAdmissionPolicy` | MutatingAdmissionPolicy, MutatingAdmissionPolicyBinding |\n\n\nYou can also use `v1.List` to wrap multiple resources of the same plugin type\nin a single document.\n\nEach admission plugin's `staticManifestsDir` must only contain resource types\nallowed for that plugin. For example, a directory configured for the\n`ValidatingAdmissionPolicy` plugin can only contain ValidatingAdmissionPolicy\nand ValidatingAdmissionPolicyBinding resources.\n\n## Configuring manifest-based admission control {#configuration}\n\nTo enable manifest-based admission control, you need:\n\n1. The `ManifestBasedAdmissionControlConfig` feature gate enabled on the\n   kube-apiserver.\n1. An `AdmissionConfiguration` file with `staticManifestsDir` fields pointing\n   to directories containing your manifest files.\n1. The manifest files themselves on disk, accessible to the kube-apiserver\n   process.\n\n### AdmissionConfiguration\n\nAdd `staticManifestsDir` to the plugin configuration for each admission plugin\nthat should load manifests from disk. Each plugin requires its own directory.\n\n\n\nThe `staticManifestsDir` field accepts an absolute path to a directory. All\ndirect-children files with `.yaml`, `.yml`, or `.json` extensions in the\ndirectory are loaded. Subdirectories and files with other extensions are ignored.\nGlob patterns and relative p\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
      "meta": {
        "weight": null,
        "rel_path": "reference/access-authn-authz/manifest-admission-control.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": null,
          "line_end": null,
          "quote": "Manifest-Based Admission Control"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-use-manifest-based-admission-control",
      "type": "concept",
      "title": "Why use manifest-based admission control?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 1050,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:supported-resource-types",
      "type": "concept",
      "title": "Supported resource types",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 2328,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-manifest-based-admission-control-configuration",
      "type": "concept",
      "title": "Configuring manifest-based admission control {#configuration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 3363,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:writing-manifest-files-manifest-files",
      "type": "concept",
      "title": "Writing manifest files {#manifest-files}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 5090,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:examples-examples",
      "type": "concept",
      "title": "Examples {#examples}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 6698,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:evaluation-order",
      "type": "concept",
      "title": "Evaluation order",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 8668,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:file-watching-and-dynamic-reloading-dynamic-reloading",
      "type": "concept",
      "title": "File watching and dynamic reloading {#dynamic-reloading}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 9254,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:observability-observability",
      "type": "concept",
      "title": "Observability {#observability}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 10775,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:high-availability-considerations-ha-considerations",
      "type": "concept",
      "title": "High availability considerations {#ha-considerations}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 12449,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrade-and-downgrade-upgrade-downgrade",
      "type": "concept",
      "title": "Upgrade and downgrade {#upgrade-downgrade}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 13336,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admissionconfiguration",
      "type": "concept",
      "title": "AdmissionConfiguration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 3792,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuration-types",
      "type": "concept",
      "title": "Configuration types",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 4456,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:naming-convention-naming",
      "type": "concept",
      "title": "Naming convention {#naming}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 5293,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:protecting-api-based-admission-resources-protecting-admission-resources",
      "type": "concept",
      "title": "Protecting API-based admission resources {#protecting-admission-resources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 6723,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enforcing-a-validatingadmissionpolicy-from-disk",
      "type": "concept",
      "title": "Enforcing a ValidatingAdmissionPolicy from disk",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 7556,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configuring-a-validatingwebhookconfiguration-from-disk",
      "type": "concept",
      "title": "Configuring a ValidatingWebhookConfiguration from disk",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 8001,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-the-list-format",
      "type": "concept",
      "title": "Using the List format",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 8458,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/admission-controllers",
      "type": "page",
      "title": "Admission Control in Kubernetes",
      "summary": "",
      "body": "\nThis page provides an overview of _admission controllers_.\n\nAn admission controller is a piece of code that intercepts requests to the\nKubernetes API server prior to persistence of the resource, but after the request\nis authenticated and authorized.\n\nSeveral important features of Kubernetes require an admission controller to be enabled in order\nto properly support the feature.  As a result, a Kubernetes API server that is not properly\nconfigured with the right set of admission controllers is an incomplete server that will not\nsupport all the features you expect.\n\n\n## What are they?\n\nAdmission controllers are code within the Kubernetes\n[API server](#gloss:kube-apiserver) that check the\ndata arriving in a request to modify a resource.\n\nAdmission controllers apply to requests that create, delete, or modify objects.\nAdmission controllers can also block custom verbs, such as a request to connect to a\npod via an API server proxy. Admission controllers do _not_ (and cannot) block requests\nto read (**get**, **watch** or **list**) objects, because reads bypass the admission\ncontrol layer.\n\nAdmission control mechanisms may be _validating_, _mutating_, or both. Mutating\ncontrollers may modify the data for the resource being modified; validating controllers may not.\n\nThe admission controllers in Kubernetes  consist of the\n[list](#what-does-each-admission-controller-do) below, are compiled into the\n`kube-apiserver` binary, and may only be configured by the cluster\nadministrator.\n\n### Admission control extension points\n\nWithin the full [list](#what-does-each-admission-controller-do), there are three\nspecial controllers:\n[MutatingAdmissionWebhook](#mutatingadmissionwebhook),\n[ValidatingAdmissionWebhook](#validatingadmissionwebhook), and\n[ValidatingAdmissionPolicy](#validatingadmissionpolicy).\nThe two webhook controllers execute the mutating and validating (respectively)\n[admission control webhooks](/docs/reference/access-authn-authz/extensible-admission-controllers/#admission-webhooks)\nwhich are configured in the API. ValidatingAdmissionPolicy provides a way to embed\ndeclarative validation code within the API, without relying on any external HTTP\ncallouts.\n\nYou can use these three admission controllers to customize cluster behavior at\nadmission time.\n\n### Admission control phases\n\nThe admission control process proceeds in two phases. In the first phase,\nmutating admission controllers are run. In the second phase, validating\nadmission controllers are run. Note again that some of the controllers are\nboth.\n\nIf any of the controllers in either phase reject the request, the entire\nrequest is rejected immediately and an error is returned to the end-user.\n\nFinally, in addition to sometimes mutating the object in question, admission\ncontrollers may sometimes have side effects, that is, mutate related\nresources as part of request processing. Incrementing quota usage is the\ncanonical example of why this is necessary. Any such side-effect needs a\ncorresponding reclamation or reconciliation process, as a given admission\ncontroller does not know for sure that a given request will pass all of the\nother admission controllers.\n\nThe ordering of these calls can be seen below.\n\n\n![Sequence diagram for kube-apiserver handling requests during the admission phase showing mutation webhooks, followed by validatingadmissionpolicies and finally validating webhooks. It shows that the continue until the first rejection, or being accepted by all of them. It also shows that mutations by mutating webhooks cause all previously called webhooks to be called again.](/docs/reference/access-authn-authz/admission-control-phases.svg)\n\n\n## Why do I need them?\n\nSeveral important features of Kubernetes require an admission controller to be enabled in order\nto properly support the feature. As a result, a Kubernetes API server that is not properly\nconfigured with the right set of admission controllers is an incomplete server and will not\nsupport all the features you expect.\n\n## How d\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/access-authn-authz/admission-controllers.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": null,
          "line_end": null,
          "quote": "Admission Control in Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-are-they",
      "type": "concept",
      "title": "What are they?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 603,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:why-do-i-need-them",
      "type": "concept",
      "title": "Why do I need them?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 6352,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-do-i-turn-on-an-admission-controller",
      "type": "concept",
      "title": "How do I turn on an admission controller?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 6693,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-do-i-turn-off-an-admission-controller",
      "type": "concept",
      "title": "How do I turn off an admission controller?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 7506,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:which-plugins-are-enabled-by-default",
      "type": "concept",
      "title": "Which plugins are enabled by default?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 7835,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-does-each-admission-controller-do",
      "type": "concept",
      "title": "What does each admission controller do?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 8469,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:is-there-a-recommended-set-of-admission-controllers-to-use",
      "type": "concept",
      "title": "Is there a recommended set of admission controllers to use?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 41328,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admission-control-extension-points",
      "type": "concept",
      "title": "Admission control extension points",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 1583,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admission-control-phases",
      "type": "concept",
      "title": "Admission control phases",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 2368,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alwaysadmit-alwaysadmit",
      "type": "concept",
      "title": "AlwaysAdmit {#alwaysadmit}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 8513,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alwaysdeny-alwaysdeny",
      "type": "concept",
      "title": "AlwaysDeny {#alwaysdeny}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 8798,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:alwayspullimages-alwayspullimages",
      "type": "concept",
      "title": "AlwaysPullImages {#alwayspullimages}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 8996,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificateapproval-certificateapproval",
      "type": "concept",
      "title": "CertificateApproval {#certificateapproval}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 9711,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificatesigning-certificatesigning",
      "type": "concept",
      "title": "CertificateSigning {#certificatesigning}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 10299,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificatesubjectrestriction-certificatesubjectrestriction",
      "type": "concept",
      "title": "CertificateSubjectRestriction {#certificatesubjectrestriction}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 10908,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defaultingressclass-defaultingressclass",
      "type": "concept",
      "title": "DefaultIngressClass {#defaultingressclass}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 11254,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defaultstorageclass-defaultstorageclass",
      "type": "concept",
      "title": "DefaultStorageClass {#defaultstorageclass}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 12213,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:defaulttolerationseconds-defaulttolerationseconds",
      "type": "concept",
      "title": "DefaultTolerationSeconds {#defaulttolerationseconds}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 13418,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:denyserviceexternalips",
      "type": "concept",
      "title": "DenyServiceExternalIPs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 14034,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:eventratelimit-eventratelimit",
      "type": "concept",
      "title": "EventRateLimit {#eventratelimit}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 14822,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:extendedresourcetoleration-extendedresourcetoleration",
      "type": "concept",
      "title": "ExtendedResourceToleration {#extendedresourcetoleration}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 16306,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:imagepolicywebhook-imagepolicywebhook",
      "type": "concept",
      "title": "ImagePolicyWebhook {#imagepolicywebhook}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 16950,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitpodhardantiaffinitytopology-limitpodhardantiaffinitytopology",
      "type": "concept",
      "title": "LimitPodHardAntiAffinityTopology {#limitpodhardantiaffinitytopology}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 22452,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:limitranger-limitranger",
      "type": "concept",
      "title": "LimitRanger {#limitranger}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 22775,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutatingadmissionwebhook-mutatingadmissionwebhook",
      "type": "concept",
      "title": "MutatingAdmissionWebhook {#mutatingadmissionwebhook}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 23585,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespaceautoprovision-namespaceautoprovision",
      "type": "concept",
      "title": "NamespaceAutoProvision {#namespaceautoprovision}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 25064,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespaceexists-namespaceexists",
      "type": "concept",
      "title": "NamespaceExists {#namespaceexists}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 25442,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:namespacelifecycle-namespacelifecycle",
      "type": "concept",
      "title": "NamespaceLifecycle {#namespacelifecycle}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 25690,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:nodedeclaredfeaturevalidator-nodedeclaredfeaturevalidator",
      "type": "concept",
      "title": "NodeDeclaredFeatureValidator {#nodedeclaredfeaturevalidator}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 26310,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:noderestriction-noderestriction",
      "type": "concept",
      "title": "NodeRestriction {#noderestriction}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 27162,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:ownerreferencespermissionenforcement-ownerreferencespermissionenforcement",
      "type": "concept",
      "title": "OwnerReferencesPermissionEnforcement {#ownerreferencespermissionenforcement}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 29942,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:persistentvolumeclaimresize-persistentvolumeclaimresize",
      "type": "concept",
      "title": "PersistentVolumeClaimResize {#persistentvolumeclaimresize}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 30452,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podnodeselector-podnodeselector",
      "type": "concept",
      "title": "PodNodeSelector {#podnodeselector}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 31513,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podsecurity-podsecurity",
      "type": "concept",
      "title": "PodSecurity {#podsecurity}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 33803,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podtolerationrestriction-podtolerationrestriction",
      "type": "concept",
      "title": "PodTolerationRestriction {#podtolerationrestriction}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 34424,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podtopologylabels-podtopologylabels",
      "type": "concept",
      "title": "PodTopologyLabels {#podtopologylabels}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 35973,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:priority-priority",
      "type": "concept",
      "title": "Priority {#priority}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 37066,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:storageobjectinuseprotection",
      "type": "concept",
      "title": "StorageObjectInUseProtection",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 39032,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:taintnodesbycondition-taintnodesbycondition",
      "type": "concept",
      "title": "TaintNodesByCondition {#taintnodesbycondition}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 39597,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validatingadmissionwebhook-validatingadmissionwebhook",
      "type": "concept",
      "title": "ValidatingAdmissionWebhook {#validatingadmissionwebhook}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 40416,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/rbac",
      "type": "page",
      "title": "Using RBAC Authorization",
      "summary": "",
      "body": "\nRole-based access control (RBAC) is a method of regulating access to computer or\nnetwork resources based on the roles of individual users within your organization.\n\n\n\nRBAC authorization uses the `rbac.authorization.k8s.io`\n[API group](#gloss:api-group) to drive authorization\ndecisions, allowing you to dynamically configure policies through the Kubernetes API.\n\nTo enable RBAC, start the [API server](#gloss:kube-apiserver)\nwith the `--authorization-config` flag set to a file that includes the `RBAC` authorizer; for example:\n\n```yaml\napiVersion: apiserver.config.k8s.io/v1\nkind: AuthorizationConfiguration\nauthorizers:\n  ...\n  - type: RBAC\n  ...\n```\n\nOr, start the [API server](#gloss:kube-apiserver) with\nthe `--authorization-mode` flag set to a comma-separated list that includes `RBAC`;\nfor example:\n```shell\nkube-apiserver --authorization-mode=...,RBAC --other-options --more-options\n```\n\n## API objects {#api-overview}\n\nThe RBAC API declares four kinds of Kubernetes object: _Role_, _ClusterRole_,\n_RoleBinding_ and _ClusterRoleBinding_. You can describe or amend the RBAC\n[objects](#gloss:object)\nusing tools such as `kubectl`, just like any other Kubernetes object.\n\n\n> **Caution:** These objects, by design, impose access restrictions. If you are making changes\nto a cluster as you learn, see\n[privilege escalation prevention and bootstrapping](#privilege-escalation-prevention-and-bootstrapping)\nto understand how those restrictions can prevent you making some changes.\n\n\n### Role and ClusterRole\n\nAn RBAC _Role_ or _ClusterRole_ contains rules that represent a set of permissions.\nPermissions are purely additive (there are no \"deny\" rules).\n\nA Role always sets permissions within a particular [namespace](#gloss:namespace);\nwhen you create a Role, you have to specify the namespace it belongs in.\n\nClusterRole, by contrast, is a non-namespaced resource. The resources have different names (Role\nand ClusterRole) because a Kubernetes object always has to be either namespaced or not namespaced;\nit can't be both.\n\nClusterRoles have several uses. You can use a ClusterRole to:\n\n1. define permissions on namespaced resources and be granted access within individual namespace(s)\n1. define permissions on namespaced resources and be granted access across all namespaces\n1. define permissions on cluster-scoped resources\n\nIf you want to define a role within a namespace, use a Role; if you want to define\na role cluster-wide, use a ClusterRole.\n\n#### Role example\n\nHere's an example Role in the \"default\" namespace that can be used to grant read access to\n[pods](#gloss:pod):\n\n\n\n#### ClusterRole example\n\nA ClusterRole can be used to grant the same permissions as a Role.\nBecause ClusterRoles are cluster-scoped, you can also use them to grant access to:\n\n* cluster-scoped resources (like [nodes](#gloss:node))\n* non-resource endpoints (like `/healthz`)\n* namespaced resources (like Pods), across all namespaces\n\n  For example: you can use a ClusterRole to allow a particular user to run\n  `kubectl get pods --all-namespaces`\n\nHere is an example of a ClusterRole that can be used to grant read access to\n[secrets](#gloss:secret) in any particular namespace,\nor across all namespaces (depending on how it is [bound](#rolebinding-and-clusterrolebinding)):\n\n\n\nThe name of a Role or a ClusterRole object must be a valid\n[path segment name](/docs/concepts/overview/working-with-objects/names#path-segment-names).\n\n### RoleBinding and ClusterRoleBinding\n\nA role binding grants the permissions defined in a role to a user or set of users.\nIt holds a list of *subjects* (users, groups, or service accounts), and a reference to the\nrole being granted.\nA RoleBinding grants permissions within a specific namespace whereas a ClusterRoleBinding\ngrants that access cluster-wide.\n\nA RoleBinding may reference any Role in the same namespace. Alternatively, a RoleBinding\ncan reference a ClusterRole and bind that ClusterRole to the namespace of the RoleBinding.\nIf you want to bind a ClusterRole to all the\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
      "meta": {
        "weight": 33,
        "rel_path": "reference/access-authn-authz/rbac.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": null,
          "line_end": null,
          "quote": "Using RBAC Authorization"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-objects-api-overview",
      "type": "concept",
      "title": "API objects {#api-overview}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 1024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:default-roles-and-role-bindings",
      "type": "concept",
      "title": "Default roles and role bindings",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 19727,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:privilege-escalation-prevention-and-bootstrapping",
      "type": "concept",
      "title": "Privilege escalation prevention and bootstrapping",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 32187,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:command-line-utilities",
      "type": "concept",
      "title": "Command-line utilities",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 35747,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serviceaccount-permissions-service-account-permissions",
      "type": "concept",
      "title": "ServiceAccount permissions {#service-account-permissions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 40937,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:write-access-for-endpointslices-write-access-for-endpoints",
      "type": "concept",
      "title": "Write access for EndpointSlices {#write-access-for-endpoints}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 44950,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrading-from-abac",
      "type": "concept",
      "title": "Upgrading from ABAC",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 45825,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:role-and-clusterrole",
      "type": "concept",
      "title": "Role and ClusterRole",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 1660,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rolebinding-and-clusterrolebinding",
      "type": "concept",
      "title": "RoleBinding and ClusterRoleBinding",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 3828,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:referring-to-resources",
      "type": "concept",
      "title": "Referring to resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 7080,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:aggregated-clusterroles",
      "type": "concept",
      "title": "Aggregated ClusterRoles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 10725,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:referring-to-subjects",
      "type": "concept",
      "title": "Referring to subjects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 16877,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:auto-reconciliation",
      "type": "concept",
      "title": "Auto-reconciliation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 20293,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-discovery-roles-discovery-roles",
      "type": "concept",
      "title": "API discovery roles {#discovery-roles}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 20998,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:user-facing-roles",
      "type": "concept",
      "title": "User-facing roles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 22796,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:core-component-roles",
      "type": "concept",
      "title": "Core component roles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 25895,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:other-component-roles",
      "type": "concept",
      "title": "Other component roles",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 27834,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:roles-for-built-in-controllers-controller-roles",
      "type": "concept",
      "title": "Roles for built-in controllers {#controller-roles}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 30283,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restrictions-on-role-creation-or-update",
      "type": "concept",
      "title": "Restrictions on role creation or update",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 32431,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:restrictions-on-role-binding-creation-or-update",
      "type": "concept",
      "title": "Restrictions on role binding creation or update",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 33729,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-create-role",
      "type": "concept",
      "title": "`kubectl create role`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 35774,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-create-clusterrole",
      "type": "concept",
      "title": "`kubectl create clusterrole`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 36842,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-create-rolebinding",
      "type": "concept",
      "title": "`kubectl create rolebinding`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 38016,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-create-clusterrolebinding",
      "type": "concept",
      "title": "`kubectl create clusterrolebinding`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 38913,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-auth-reconcile-kubectl-auth-reconcile",
      "type": "concept",
      "title": "`kubectl auth reconcile` {#kubectl-auth-reconcile}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 39782,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:parallel-authorizers",
      "type": "concept",
      "title": "Parallel authorizers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 46436,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:permissive-rbac-permissions",
      "type": "concept",
      "title": "Permissive RBAC permissions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 47552,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/certificate-signing-requests",
      "type": "page",
      "title": "Certificates and Certificate Signing Requests",
      "summary": "",
      "body": "\n\nKubernetes certificate and trust bundle APIs enable automation of\n[X.509](https://www.itu.int/rec/T-REC-X.509) credential provisioning by providing\na programmatic interface for clients of the Kubernetes API to request and obtain\nX.509 [certificates](#gloss:certificate) from a Certificate Authority (CA).\n\nThere is also experimental (alpha) support for distributing [trust bundles](#cluster-trust-bundles).\n\n\n\n## Certificate signing requests\n\n\n\n\nA [CertificateSigningRequest](/docs/reference/kubernetes-api/authentication-resources/certificate-signing-request-v1/)\n(CSR) resource is used to request that a certificate be signed\nby a denoted signer, after which the request may be approved or denied before\nfinally being signed.\n\n\n### Request signing process\n\nThe CertificateSigningRequest resource type allows a client to ask for an X.509 certificate\nbe issued, based on a signing request.\nThe CertificateSigningRequest object includes a PEM-encoded PKCS#10 signing request in\nthe `spec.request` field. The CertificateSigningRequest denotes the signer (the\nrecipient that the request is being made to) using the `spec.signerName` field.\nNote that `spec.signerName` is a required key after API version `certificates.k8s.io/v1`.\nIn Kubernetes v1.22 and later, clients may optionally set the `spec.expirationSeconds`\nfield to request a particular lifetime for the issued certificate. The minimum valid\nvalue for this field is `600`, i.e. ten minutes.\n\nOnce created, a CertificateSigningRequest must be approved before it can be signed.\nDepending on the signer selected, a CertificateSigningRequest may be automatically approved\nby a [controller](#gloss:controller).\nOtherwise, a CertificateSigningRequest must be manually approved either via the REST API (or client-go)\nor by running `kubectl certificate approve`. Likewise, a CertificateSigningRequest may also be denied,\nwhich tells the configured signer that it must not sign the request.\n\nFor certificates that have been approved, the next step is signing. The relevant signing controller\nfirst validates that the signing conditions are met and then creates a certificate.\nThe signing controller then updates the CertificateSigningRequest, storing the new certificate into\nthe `status.certificate` field of the existing CertificateSigningRequest object. The\n`status.certificate` field is either empty or contains a X.509 certificate, encoded in PEM format.\nThe CertificateSigningRequest `status.certificate` field is empty until the signer does this.\n\nOnce the `status.certificate` field has been populated, the request has been completed and clients can now\nfetch the signed certificate PEM data from the CertificateSigningRequest resource.\nThe signers can instead deny certificate signing if the approval conditions are not met.\n\nIn order to reduce the number of old CertificateSigningRequest resources left in a cluster, a garbage collection\ncontroller runs periodically. The garbage collection removes CertificateSigningRequests that have not changed\nstate for some duration:\n\n* Approved requests: automatically deleted after 1 hour\n* Denied requests: automatically deleted after 1 hour\n* Failed requests: automatically deleted after 1 hour\n* Pending requests: automatically deleted after 24 hours\n* All requests: automatically deleted after the issued certificate has expired\n\n### Certificate signing authorization {#authorization}\n\nTo allow creating a CertificateSigningRequest and retrieving any CertificateSigningRequest:\n\n* Verbs: `create`, `get`, `list`, `watch`, group: `certificates.k8s.io`, resource: `certificatesigningrequests`\n\nFor example:\n\n\n\nTo allow approving a CertificateSigningRequest:\n\n* Verbs: `get`, `list`, `watch`, group: `certificates.k8s.io`, resource: `certificatesigningrequests`\n* Verbs: `update`, group: `certificates.k8s.io`, resource: `certificatesigningrequests/approval`\n* Verbs: `approve`, group: `certificates.k8s.io`, resource: `signers`, resourceName: `<signerNameDomain>/<signerNamePath>` or `<signerNameD\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
      "meta": {
        "weight": 60,
        "rel_path": "reference/access-authn-authz/certificate-signing-requests.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": null,
          "line_end": null,
          "quote": "Certificates and Certificate Signing Requests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificate-signing-requests",
      "type": "concept",
      "title": "Certificate signing requests",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 475,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:signers",
      "type": "concept",
      "title": "Signers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 4830,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:signing",
      "type": "concept",
      "title": "Signing",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 15351,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:approval-or-rejection-approval-rejection",
      "type": "concept",
      "title": "Approval or rejection  {#approval-rejection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 16013,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-based-signers-signer-api",
      "type": "concept",
      "title": "API-based signers {#signer-api}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 18644,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podcertificaterequests-pod-certificate-requests",
      "type": "concept",
      "title": "PodCertificateRequests {#pod-certificate-requests}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 21175,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cluster-trust-bundles-cluster-trust-bundles",
      "type": "concept",
      "title": "Cluster trust bundles {#cluster-trust-bundles}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 26954,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:request-signing-process",
      "type": "concept",
      "title": "Request signing process",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 855,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificate-signing-authorization-authorization",
      "type": "concept",
      "title": "Certificate signing authorization {#authorization}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 3490,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-signers",
      "type": "concept",
      "title": "Kubernetes signers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 7732,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:custom-signers",
      "type": "concept",
      "title": "Custom signers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 14925,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-signer-signer-control-plane",
      "type": "concept",
      "title": "Control plane signer {#signer-control-plane}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 15363,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:control-plane-automated-approval-approval-rejection-control-plane",
      "type": "concept",
      "title": "Control plane automated approval {#approval-rejection-control-plane}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 16230,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:approval-or-rejection-using-kubectl-approval-rejection-kubectl",
      "type": "concept",
      "title": "Approval or rejection using `kubectl` {#approval-rejection-kubectl}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 16670,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:approval-or-rejection-using-the-kubernetes-api-approval-rejection-api-client",
      "type": "concept",
      "title": "Approval or rejection using the Kubernetes API {#approval-rejection-api-client}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 17153,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:common-properties-and-validation-ctb-common",
      "type": "concept",
      "title": "Common properties and validation {#ctb-common}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 27751,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:signer-linked-clustertrustbundles-ctb-signer-linked",
      "type": "concept",
      "title": "Signer-linked ClusterTrustBundles {#ctb-signer-linked}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 29162,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:signer-unlinked-clustertrustbundles-ctb-signer-unlinked",
      "type": "concept",
      "title": "Signer-unlinked ClusterTrustBundles {#ctb-signer-unlinked}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 30678,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:accessing-clustertrustbundles-from-pods-ctb-projection",
      "type": "concept",
      "title": "Accessing ClusterTrustBundles from pods {#ctb-projection}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 31566,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "type": "page",
      "title": "Dynamic Admission Control",
      "summary": "",
      "body": "\nIn addition to [compiled-in admission plugins](/docs/reference/access-authn-authz/admission-controllers/),\nadmission plugins can be developed as extensions and run as webhooks configured at runtime.\nThis page describes how to build, configure, use, and monitor admission webhooks.\n\n\n\n## What are admission webhooks?\n\nAdmission webhooks are HTTP callbacks that receive admission requests and do\nsomething with them. You can define two types of admission webhooks,\n[validating admission webhook](/docs/reference/access-authn-authz/admission-controllers/#validatingadmissionwebhook)\nand\n[mutating admission webhook](/docs/reference/access-authn-authz/admission-controllers/#mutatingadmissionwebhook).\nMutating admission webhooks are invoked first, and can modify objects sent to the API server to enforce custom defaults.\nAfter all object modifications are complete, and after the incoming object is validated by the API server,\nvalidating admission webhooks are invoked and can reject requests to enforce custom policies.\n\n\n> **Note:** Admission webhooks that need to guarantee they see the final state of the object in order to enforce policy\nshould use a validating admission webhook, since objects can be modified after being seen by mutating webhooks.\n\n\n## Experimenting with admission webhooks\n\nAdmission webhooks are essentially part of the cluster control-plane. You should\nwrite and deploy them with great caution. Please read the\n[user guides](/docs/reference/access-authn-authz/extensible-admission-controllers/#write-an-admission-webhook-server)\nfor instructions if you intend to write/deploy production-grade admission webhooks.\nIn the following, we describe how to quickly experiment with admission webhooks.\n\n### Prerequisites\n\n* Ensure that MutatingAdmissionWebhook and ValidatingAdmissionWebhook\n  admission controllers are enabled.\n  [Here](/docs/reference/access-authn-authz/admission-controllers/#is-there-a-recommended-set-of-admission-controllers-to-use)\n  is a recommended set of admission controllers to enable in general.\n\n* Ensure that the `admissionregistration.k8s.io/v1` API is enabled.\n\n### Write an admission webhook server\n\nPlease refer to the implementation of the [admission webhook server](https://github.com/kubernetes/kubernetes/blob/release-1.21/test/images/agnhost/webhook/main.go)\nthat is validated in a Kubernetes e2e test. The webhook handles the\n`AdmissionReview` request sent by the API servers, and sends back its decision\nas an `AdmissionReview` object in the same version it received.\n\nSee the [webhook request](#request) section for details on the data sent to webhooks.\n\nSee the [webhook response](#response) section for the data expected from webhooks.\n\nThe example admission webhook server leaves the `ClientAuth` field\n[empty](https://github.com/kubernetes/kubernetes/blob/v1.22.0/test/images/agnhost/webhook/config.go#L38-L39),\nwhich defaults to `NoClientCert`. This means that the webhook server does not\nauthenticate the identity of the clients, supposedly API servers. If you need\nmutual TLS or other ways to authenticate the clients, see\nhow to [authenticate API servers](#authenticate-apiservers).\n\n### Deploy the admission webhook service\n\nThe webhook server in the e2e test is deployed in the Kubernetes cluster, via\nthe [deployment API](/docs/reference/generated/kubernetes-api//#deployment-v1-apps).\nThe test also creates a [service](/docs/reference/generated/kubernetes-api//#service-v1-core)\nas the front-end of the webhook server. See\n[code](https://github.com/kubernetes/kubernetes/blob/v1.22.0/test/e2e/apimachinery/webhook.go#L748).\n\nYou may also deploy your webhooks outside of the cluster. You will need to update\nyour webhook configurations accordingly.\n\n### Configure admission webhooks on the fly\n\nYou can dynamically configure what resources are subject to what admission\nwebhooks via\n[ValidatingWebhookConfiguration](/docs/reference/generated/kubernetes-api//#validatingwebhookconfiguration-v1-admissionregistration-k8s-io)\nor\n\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
      "meta": {
        "weight": 45,
        "rel_path": "reference/access-authn-authz/extensible-admission-controllers.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": null,
          "line_end": null,
          "quote": "Dynamic Admission Control"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-are-admission-webhooks",
      "type": "concept",
      "title": "What are admission webhooks?",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 316,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:experimenting-with-admission-webhooks",
      "type": "concept",
      "title": "Experimenting with admission webhooks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 1301,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:webhook-configuration",
      "type": "concept",
      "title": "Webhook configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 17944,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:monitoring-admission-webhooks",
      "type": "concept",
      "title": "Monitoring admission webhooks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 40764,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:best-practices-and-warnings",
      "type": "concept",
      "title": "Best practices and warnings",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 48046,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:write-an-admission-webhook-server",
      "type": "concept",
      "title": "Write an admission webhook server",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 2159,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deploy-the-admission-webhook-service",
      "type": "concept",
      "title": "Deploy the admission webhook service",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 3199,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:configure-admission-webhooks-on-the-fly",
      "type": "concept",
      "title": "Configure admission webhooks on the fly",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 3814,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authenticate-api-servers-authenticate-apiservers",
      "type": "concept",
      "title": "Authenticate API servers   {#authenticate-apiservers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 6084,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:matching-requests-rules",
      "type": "concept",
      "title": "Matching requests: rules",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 19030,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:matching-requests-objectselector",
      "type": "concept",
      "title": "Matching requests: objectSelector",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 21754,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:matching-requests-namespaceselector",
      "type": "concept",
      "title": "Matching requests: namespaceSelector",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 23018,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:matching-requests-matchpolicy",
      "type": "concept",
      "title": "Matching requests: matchPolicy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 24887,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:side-effects",
      "type": "concept",
      "title": "Side effects",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 34477,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:timeouts",
      "type": "concept",
      "title": "Timeouts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 36196,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:reinvocation-policy",
      "type": "concept",
      "title": "Reinvocation policy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 36958,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:mutating-webhook-auditing-annotations",
      "type": "concept",
      "title": "Mutating webhook auditing annotations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 41163,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:admission-webhook-metrics",
      "type": "concept",
      "title": "Admission webhook metrics",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 45277,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/psp-to-pod-security-standards",
      "type": "page",
      "title": "Mapping PodSecurityPolicies to Pod Security Standards",
      "summary": "",
      "body": "\nThe tables below enumerate the configuration parameters on\n`PodSecurityPolicy` objects, whether the field mutates\nand/or validates pods, and how the configuration values map to the\n[Pod Security Standards](/docs/concepts/security/pod-security-standards/).\n\nFor each applicable parameter, the allowed values for the\n[Baseline](/docs/concepts/security/pod-security-standards/#baseline) and\n[Restricted](/docs/concepts/security/pod-security-standards/#restricted) profiles are listed.\nAnything outside the allowed values for those profiles would fall under the\n[Privileged](/docs/concepts/security/pod-security-standards/#privileged) profile. \"No opinion\"\nmeans all values are allowed under all Pod Security Standards.\n\nFor a step-by-step migration guide, see\n[Migrate from PodSecurityPolicy to the Built-In PodSecurity Admission Controller](/docs/tasks/configure-pod-container/migrate-from-psp/).\n\n\n\n## PodSecurityPolicy Spec\n\nThe fields enumerated in this table are part of the `PodSecurityPolicySpec`, which is specified\nunder the `.spec` field path.\n\n<table class=\"no-word-break\">\n  <caption style=\"display:none\">Mapping PodSecurityPolicySpec fields to Pod Security Standards</caption>\n  <tbody>\n    <tr>\n      <th><code>PodSecurityPolicySpec</code></th>\n      <th>Type</th>\n      <th>Pod Security Standards Equivalent</th>\n    </tr>\n    <tr>\n      <td><code>privileged</code></td>\n      <td>Validating</td>\n      <td><b>Baseline & Restricted</b>: <code>false</code> / undefined / nil</td>\n    </tr>\n    <tr>\n      <td><code>defaultAddCapabilities</code></td>\n      <td>Mutating & Validating</td>\n      <td>Requirements match <code>allowedCapabilities</code> below.</td>\n    </tr>\n    <tr>\n      <td><code>allowedCapabilities</code></td>\n      <td>Validating</td>\n      <td>\n        <p><b>Baseline</b>: subset of</p>\n        <ul>\n          <li><code>AUDIT_WRITE</code></li>\n          <li><code>CHOWN</code></li>\n          <li><code>DAC_OVERRIDE</code></li>\n          <li><code>FOWNER</code></li>\n          <li><code>FSETID</code></li>\n          <li><code>KILL</code></li>\n          <li><code>MKNOD</code></li>\n          <li><code>NET_BIND_SERVICE</code></li>\n          <li><code>SETFCAP</code></li>\n          <li><code>SETGID</code></li>\n          <li><code>SETPCAP</code></li>\n          <li><code>SETUID</code></li>\n          <li><code>SYS_CHROOT</code></li>\n        </ul>\n        <p><b>Restricted</b>: empty / undefined / nil OR a list containing <i>only</i> <code>NET_BIND_SERVICE</code>\n      </td>\n    </tr>\n    <tr>\n      <td><code>requiredDropCapabilities</code></td>\n      <td>Mutating & Validating</td>\n      <td>\n        <p><b>Baseline</b>: no opinion</p>\n        <p><b>Restricted</b>: must include <code>ALL</code></p>\n      </td>\n    </tr>\n    <tr>\n      <td><code>volumes</code></td>\n      <td>Validating</td>\n      <td>\n        <p><b>Baseline</b>: anything except</p>\n        <ul>\n          <li><code>hostPath</code></li>\n          <li><code>*</code></li>\n        </ul>\n        <p><b>Restricted</b>: subset of</p>\n        <ul>\n          <li><code>configMap</code></li>\n          <li><code>csi</code></li>\n          <li><code>downwardAPI</code></li>\n          <li><code>emptyDir</code></li>\n          <li><code>ephemeral</code></li>\n          <li><code>persistentVolumeClaim</code></li>\n          <li><code>projected</code></li>\n          <li><code>secret</code></li>\n        </ul>\n      </td>\n    </tr>\n    <tr>\n      <td><code>hostNetwork</code></td>\n      <td>Validating</td>\n      <td><b>Baseline & Restricted</b>: <code>false</code> / undefined / nil</td>\n    </tr>\n    <tr>\n      <td><code>hostPorts</code></td>\n      <td>Validating</td>\n      <td><b>Baseline & Restricted</b>: undefined / nil / empty</td>\n    </tr>\n    <tr>\n      <td><code>hostPID</code></td>\n      <td>Validating</td>\n      <td><b>Baseline & Restricted</b>: <code>false</code> / undefined / nil</td>\n    </tr>\n    <tr>\n      <td><code>hostIPC</code></td>\n      <td>Validating</td>\n      <td><b>Baseline & Rest\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/psp-to-pod-security-standards/",
      "meta": {
        "weight": 95,
        "rel_path": "reference/access-authn-authz/psp-to-pod-security-standards.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/psp-to-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/psp-to-pod-security-standards/",
          "line_start": null,
          "line_end": null,
          "quote": "Mapping PodSecurityPolicies to Pod Security Standards"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podsecuritypolicy-spec",
      "type": "concept",
      "title": "PodSecurityPolicy Spec",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/psp-to-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/psp-to-pod-security-standards/",
          "line_start": 930,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:podsecuritypolicy-annotations",
      "type": "concept",
      "title": "PodSecurityPolicy annotations",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/psp-to-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/psp-to-pod-security-standards/",
          "line_start": 7353,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/_index",
      "type": "page",
      "title": "API Access Control",
      "summary": "",
      "body": "For an introduction to how Kubernetes implements and controls API access,\nread [Controlling Access to the Kubernetes API](/docs/concepts/security/controlling-access/).\n\nReference documentation:\n\n- [Authenticating](/docs/reference/access-authn-authz/authentication/)\n   - [Authenticating with Bootstrap Tokens](/docs/reference/access-authn-authz/bootstrap-tokens/)\n- [Admission Controllers](/docs/reference/access-authn-authz/admission-controllers/)\n   - [Dynamic Admission Control](/docs/reference/access-authn-authz/extensible-admission-controllers/)\n   - [Manifest-Based Admission Control](/docs/reference/access-authn-authz/manifest-admission-control/)\n- [Authorization](/docs/reference/access-authn-authz/authorization/)\n   - [Role Based Access Control](/docs/reference/access-authn-authz/rbac/)\n   - [Attribute Based Access Control](/docs/reference/access-authn-authz/abac/)\n   - [Node Authorization](/docs/reference/access-authn-authz/node/)\n   - [Webhook Authorization](/docs/reference/access-authn-authz/webhook/)\n- [Certificate Signing Requests](/docs/reference/access-authn-authz/certificate-signing-requests/)\n   - including [CSR approval](/docs/reference/access-authn-authz/certificate-signing-requests/#approval-rejection)\n     and [certificate signing](/docs/reference/access-authn-authz/certificate-signing-requests/#signing)\n- Service accounts\n  - [Developer guide](/docs/tasks/configure-pod-container/configure-service-account/)\n  - [Administration](/docs/reference/access-authn-authz/service-accounts-admin/)\n- [Kubelet Authentication & Authorization](/docs/reference/access-authn-authz/kubelet-authn-authz/)\n  - including kubelet [TLS bootstrapping](/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/)\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/_index/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/access-authn-authz/_index.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/_index.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "API Access Control"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "type": "page",
      "title": "TLS bootstrapping",
      "summary": "",
      "body": "\n\nIn a Kubernetes cluster, the components on the worker nodes - kubelet and kube-proxy - need\nto communicate with Kubernetes control plane components, specifically kube-apiserver.\nIn order to ensure that communication is kept private, not interfered with, and ensure that\neach component of the cluster is talking to another trusted component, we strongly\nrecommend using client TLS certificates on nodes.\n\nThe normal process of bootstrapping these components, especially worker nodes that need certificates\nso they can communicate safely with kube-apiserver, can be a challenging process as it is often outside\nof the scope of Kubernetes and requires significant additional work.\nThis in turn, can make it challenging to initialize or scale a cluster.\n\nIn order to simplify the process, beginning in version 1.4, Kubernetes introduced a certificate request\nand signing API. The proposal can be found [here](https://github.com/kubernetes/kubernetes/pull/20439).\n\nThis document describes the process of node initialization, how to set up TLS client certificate bootstrapping for\nkubelets, and how it works.\n\n\n\n## Initialization process\n\nWhen a worker node starts up, the kubelet does the following:\n\n1. Look for its `kubeconfig` file\n1. Retrieve the URL of the API server and credentials, normally a TLS key and signed certificate from the `kubeconfig` file\n1. Attempt to communicate with the API server using the credentials.\n\nAssuming that the kube-apiserver successfully validates the kubelet's credentials,\nit will treat the kubelet as a valid node, and begin to assign pods to it.\n\nNote that the above process depends upon:\n\n* Existence of a key and certificate on the local host in the `kubeconfig`\n* The certificate having been signed by a Certificate Authority (CA) trusted by the kube-apiserver\n\nAll of the following are responsibilities of whoever sets up and manages the cluster:\n\n1. Creating the CA key and certificate\n1. Distributing the CA certificate to the control plane nodes, where kube-apiserver is running\n1. Creating a key and certificate for each kubelet; strongly recommended to have a unique one, with a unique CN, for each kubelet\n1. Signing the kubelet certificate using the CA key\n1. Distributing the kubelet key and signed certificate to the specific node on which the kubelet is running\n\nThe TLS Bootstrapping described in this document is intended to simplify, and partially or even\ncompletely automate, steps 3 onwards, as these are the most common when initializing or scaling\na cluster.\n\n### Bootstrap initialization\n\nIn the bootstrap initialization process, the following occurs:\n\n1. kubelet begins\n1. kubelet sees that it does _not_ have a `kubeconfig` file\n1. kubelet searches for and finds a `bootstrap-kubeconfig` file\n1. kubelet reads its bootstrap file, retrieving the URL of the API server and a limited usage \"token\"\n1. kubelet connects to the API server, authenticates using the token\n1. kubelet now has limited credentials to create and retrieve a certificate signing request (CSR)\n1. kubelet creates a CSR for itself with the signerName set to `kubernetes.io/kube-apiserver-client-kubelet`\n1. CSR is approved in one of two ways:\n   * If configured, kube-controller-manager automatically approves the CSR\n   * If configured, an outside process, possibly a person, approves the CSR using the Kubernetes API or via `kubectl`\n1. Certificate is created for the kubelet\n1. Certificate is issued to the kubelet\n1. kubelet retrieves the certificate\n1. kubelet creates a proper `kubeconfig` with the key and signed certificate\n1. kubelet begins normal operation\n1. Optional: if configured, kubelet automatically requests renewal of the certificate when it is close to expiry\n1. The renewed certificate is approved and issued, either automatically or manually, depending on configuration.\n\nThe rest of this document describes the necessary steps to configure TLS Bootstrapping, and its limitations.\n\n## Configuration\n\nTo configure for TLS bootstrapping and optional a\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
      "meta": {
        "weight": 120,
        "rel_path": "reference/access-authn-authz/kubelet-tls-bootstrapping.md"
      },
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": null,
          "line_end": null,
          "quote": "TLS bootstrapping"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:initialization-process",
      "type": "concept",
      "title": "Initialization process",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 1139,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificate-authority",
      "type": "concept",
      "title": "Certificate Authority",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 4303,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-apiserver-configuration",
      "type": "concept",
      "title": "kube-apiserver configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 4991,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kube-controller-manager-configuration",
      "type": "concept",
      "title": "kube-controller-manager configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 10307,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubelet-configuration",
      "type": "concept",
      "title": "kubelet configuration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 14906,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:other-authenticating-components",
      "type": "concept",
      "title": "Other authenticating components",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 20945,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubectl-approval",
      "type": "concept",
      "title": "kubectl approval",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 22012,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:bootstrap-initialization",
      "type": "concept",
      "title": "Bootstrap initialization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 2550,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:recognizing-client-certificates",
      "type": "concept",
      "title": "Recognizing client certificates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 5313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:initial-bootstrap-authentication",
      "type": "concept",
      "title": "Initial bootstrap authentication",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 5683,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:authorize-kubelet-to-create-csr",
      "type": "concept",
      "title": "Authorize kubelet to create CSR",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 9422,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:access-to-key-and-certificate",
      "type": "concept",
      "title": "Access to key and certificate",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 11024,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:approval",
      "type": "concept",
      "title": "Approval",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 12223,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:client-and-serving-certificates",
      "type": "concept",
      "title": "Client and serving certificates",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 17951,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:certificate-rotation",
      "type": "concept",
      "title": "Certificate rotation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 18806,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/using-api/api-concepts",
      "type": "page",
      "title": "Kubernetes API Concepts",
      "summary": "",
      "body": "\nThe Kubernetes API is a resource-based (RESTful) programmatic interface\nprovided via HTTP. It supports retrieving, creating, updating, and deleting\nprimary resources via the standard HTTP verbs (POST, PUT, PATCH, DELETE,\nGET).\n\nFor some resources, the API includes additional subresources that allow\nfine-grained authorization (such as separate views for Pod details and\nlog retrievals), and can accept and serve those resources in different\nrepresentations for convenience or efficiency.\n\nKubernetes supports efficient change notifications on resources via\n_watches_:\n[definition:watch]\nKubernetes also provides consistent list operations so that API clients can\neffectively cache, track, and synchronize the state of resources.\n\nYou can view the [API reference](/docs/reference/kubernetes-api/) online,\nor read on to learn about the API in general.\n\n\n## Kubernetes API terminology {#standard-api-terminology}\n\nKubernetes generally leverages common RESTful terminology to describe the\nAPI concepts:\n\n* A *resource type* is the name used in the URL (`pods`, `namespaces`, `services`)\n* All resource types have a concrete representation (their object schema) which is called a *kind*\n* A list of instances of a resource type is known as a *collection*\n* A single instance of a resource type is called a *resource*, and also usually represents an *object*\n* For some resource types, the API includes one or more *sub-resources*, which are represented as URI paths below the resource\n\nMost Kubernetes API resource types are\n[objects](#gloss:object) –\nthey represent a concrete instance of a concept on the cluster, like a\npod or namespace. A smaller number of API resource types are *virtual* in\nthat they often represent operations on objects, rather than objects, such\nas a permission check\n(use a POST with a JSON-encoded body of `SubjectAccessReview` to the\n`subjectaccessreviews` resource), or the `eviction` sub-resource of a Pod\n(used to trigger\n[API-initiated eviction](/docs/concepts/scheduling-eviction/api-eviction/)).\n\n### Object names\n\nAll objects you can create via the API have a unique object\n[name](#gloss:name) to allow idempotent creation and\nretrieval, except that virtual resource types may not have unique names if they are\nnot retrievable, or do not rely on idempotency.\n\nWithin a [namespace](#gloss:namespace), an object's\nunique identity is defined by the tuple of its **API Group**, **Resource**,\n**Namespace**, and **Name**.\n\n* **Cross-Group:** You can have two objects with the same name if they belong to\ndifferent API Groups (for example, `apps` vs. `example.com`).\n* **Cross-Version:** Different API Versions (such as `v1` and `v1beta1`) of the\nsame Group and Resource represent the same underlying data. Creating an object\nwith the same name in a different version of the same group results in a name\nclash, as they share the same identity in storage.\n\nSome objects are not namespaced (for example: Nodes), and so their names must\nbe unique across the whole cluster.\n\n### API verbs\n\nAlmost all object resource types support the standard HTTP verbs - GET, POST, PUT, PATCH,\nand DELETE. Kubernetes also uses its own verbs, which are often written in lowercase to distinguish\nthem from HTTP verbs.\n\nKubernetes uses the term **list** to describe the action of returning a [collection](#collections) of\nresources, to distinguish it from retrieving a single resource which is usually called\na **get**. If you sent an HTTP GET request with the `?watch` query parameter,\nKubernetes calls this a **watch** and not a **get**\n(see [Efficient detection of changes](#efficient-detection-of-changes) for more details).\n\nFor PUT requests, Kubernetes internally classifies these as either **create** or **update**\nbased on the state of the existing object. An **update** is different from a **patch**; the\nHTTP verb for a **patch** is PATCH.\n\n## Resource URIs\n\nAll resource types are either scoped by the cluster (`/apis/GROUP/VERSION/*`) or to a\nnamespace (`/apis/GROUP/VERSION/namespa\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/using-api/api-concepts.md"
      },
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes API Concepts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-api-terminology-standard-api-terminology",
      "type": "concept",
      "title": "Kubernetes API terminology {#standard-api-terminology}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 967,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-uris",
      "type": "concept",
      "title": "Resource URIs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 4066,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:http-media-types-alternate-representations-of-resources",
      "type": "concept",
      "title": "HTTP media types {#alternate-representations-of-resources}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 6282,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:efficient-detection-of-changes",
      "type": "concept",
      "title": "Efficient detection of changes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 15397,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:streaming-lists",
      "type": "concept",
      "title": "Streaming lists",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 19792,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:sharded-list-and-watch-sharded-list-and-watch",
      "type": "concept",
      "title": "Sharded list and watch {#sharded-list-and-watch}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 22547,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:response-compression",
      "type": "concept",
      "title": "Response compression",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 28475,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:retrieving-large-results-sets-in-chunks",
      "type": "concept",
      "title": "Retrieving large results sets in chunks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 29779,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:collections",
      "type": "concept",
      "title": "Collections",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 34405,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:table-fetches",
      "type": "concept",
      "title": "Table fetches",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 36895,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:metadata-only-fetches",
      "type": "concept",
      "title": "Metadata-only fetches",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 40143,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-deletion",
      "type": "concept",
      "title": "Resource deletion",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 43556,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:single-resource-api",
      "type": "concept",
      "title": "Single resource API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 46784,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:field-validation",
      "type": "concept",
      "title": "Field validation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 47400,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dry-run",
      "type": "concept",
      "title": "Dry-run",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 51673,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:updates-to-existing-resources-patch-and-apply",
      "type": "concept",
      "title": "Updates to existing resources {#patch-and-apply}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 55760,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-versions",
      "type": "concept",
      "title": "Resource versions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 63038,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:object-names",
      "type": "concept",
      "title": "Object names",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 2174,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-verbs",
      "type": "concept",
      "title": "API verbs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 3207,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:json-resource-encoding-json-encoding",
      "type": "concept",
      "title": "JSON resource encoding {#json-encoding}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 7795,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:yaml-resource-encoding-yaml-encoding",
      "type": "concept",
      "title": "YAML resource encoding {#yaml-encoding}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 8659,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-protobuf-encoding-protobuf-encoding",
      "type": "concept",
      "title": "Kubernetes Protobuf encoding {#protobuf-encoding}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 9672,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cbor-resource-encoding-cbor-encoding",
      "type": "concept",
      "title": "CBOR resource encoding {#cbor-encoding}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 13340,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:watch-bookmarks-watch-bookmarks",
      "type": "concept",
      "title": "Watch bookmarks {#watch-bookmarks}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 18637,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-example-streaming-lists",
      "type": "concept",
      "title": "Example {#example-streaming-lists}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 21487,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:the-shardselector-field",
      "type": "concept",
      "title": "The shardSelector field",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 23615,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-sharded-list-and-watch-in-controllers-sharded-list-and-watch-controllers",
      "type": "concept",
      "title": "Using sharded list and watch in controllers {#sharded-list-and-watch-controllers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 24964,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:shard-information-in-responses",
      "type": "concept",
      "title": "Shard information in responses",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 26960,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:detecting-server-support",
      "type": "concept",
      "title": "Detecting server support",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 27811,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:validation-for-unrecognized-or-duplicate-fields-setting-the-field-validation-level",
      "type": "concept",
      "title": "Validation for unrecognized or duplicate fields {#setting-the-field-validation-level}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 48525,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:make-a-dry-run-request",
      "type": "concept",
      "title": "Make a dry-run request",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 52232,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:generated-values",
      "type": "concept",
      "title": "Generated values",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 54332,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:dry-run-authorization",
      "type": "concept",
      "title": "Dry-run authorization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 55168,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:choosing-an-update-mechanism-update-mechanism-choose",
      "type": "concept",
      "title": "Choosing an update mechanism {#update-mechanism-choose}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 59792,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceversion-fields-in-metadata-resourceversion-in-metadata",
      "type": "concept",
      "title": "`resourceVersion` fields in metadata {#resourceversion-in-metadata}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 65944,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resourceversion-parameters-in-query-strings-the-resourceversion-parameter",
      "type": "concept",
      "title": "`resourceVersion` parameters in query strings {#the-resourceversion-parameter}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 66671,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:semantics-for-get-and-list",
      "type": "concept",
      "title": "Semantics for **get** and **list**",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 67191,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:semantics-for-watch",
      "type": "concept",
      "title": "Semantics for **watch**",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 75292,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:410-gone-responses",
      "type": "concept",
      "title": "\"410 Gone\" responses",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 77711,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:unavailable-resource-versions",
      "type": "concept",
      "title": "Unavailable resource versions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 78317,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/using-api/deprecation-policy",
      "type": "page",
      "title": "Kubernetes Deprecation Policy",
      "summary": "",
      "body": "\nThis document details the deprecation policy for various facets of the system.\n\n\nKubernetes is a large system with many components and many contributors. As\nwith any such software, the feature set naturally evolves over time, and\nsometimes a feature may need to be removed. This could include an API, a flag,\nor even an entire feature. To avoid breaking existing users, Kubernetes follows\na deprecation policy for aspects of the system that are slated to be removed.\n\n## Deprecating parts of the API\n\nSince Kubernetes is an API-driven system, the API has evolved over time to\nreflect the evolving understanding of the problem space. The Kubernetes API is\nactually a set of APIs, called \"API groups\", and each API group is\nindependently versioned. [API versions](/docs/reference/using-api/#api-versioning) fall\ninto 3 main tracks, each of which has different policies for deprecation:\n\n| Example  | Track                            |\n|----------|----------------------------------|\n| v1       | GA (generally available, stable) |\n| v1beta1  | Beta (pre-release)               |\n| v1alpha1 | Alpha (experimental)             |\n\nA given release of Kubernetes can support any number of API groups and any\nnumber of versions of each.\n\nThe following rules govern the deprecation of elements of the API. This\nincludes:\n\n* REST resources (aka API objects)\n* Fields of REST resources\n* Annotations on REST resources, including \"beta\" annotations but not\n  including \"alpha\" annotations.\n* Enumerated or constant values\n* Component config structures\n\nThese rules are enforced between official releases, not between\narbitrary commits to master or release branches.\n\n**Rule #1: API elements may only be removed by incrementing the version of the\nAPI group.**\n\nOnce an API element has been added to an API group at a particular version, it\ncan not be removed from that version or have its behavior significantly\nchanged, regardless of track.\n\n\n> **Note:** For historical reasons, there are 2 \"monolithic\" API groups - \"core\" (no\ngroup name) and \"extensions\". Resources will incrementally be moved from these\nlegacy API groups into more domain-specific API groups.\n\n\n**Rule #2: API objects must be able to round-trip between API versions in a given\nrelease without information loss, with the exception of whole REST resources\nthat do not exist in some versions.**\n\nFor example, an object can be written as v1 and then read back as v2 and\nconverted to v1, and the resulting v1 resource will be identical to the\noriginal. The representation in v2 might be different from v1, but the system\nknows how to convert between them in both directions. Additionally, any new\nfield added in v2 must be able to round-trip to v1 and back, which means v1\nmight have to add an equivalent field or represent it as an annotation.\n\n**Rule #3: An API version in a given track may not be deprecated in favor of a less stable API version.**\n\n* GA API versions can replace beta and alpha API versions.\n* Beta API versions can replace earlier beta and alpha API versions, but *may not* replace GA API versions.\n* Alpha API versions can replace earlier alpha API versions, but *may not* replace GA or beta API versions.\n\n**Rule #4a: API lifetime is determined by the API stability level**\n\n* GA API versions may be marked as deprecated, but must not be removed within a major version of Kubernetes\n* Beta API versions are deprecated no more than 9 months or 3 minor releases after introduction (whichever is longer),\n  and are no longer served 9 months or 3 minor releases after deprecation (whichever is longer)\n* Alpha API versions may be removed in any release without prior deprecation notice\n\nThis ensures beta API support covers the [maximum supported version skew of 2 releases](/releases/version-skew-policy/),\nand that APIs don't stagnate on unstable beta versions, accumulating production usage that will be\ndisrupted when support for the beta API ends.\n\n\n> **Note:** There are no current plans for a major version revision of K\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
      "meta": {
        "weight": 40,
        "rel_path": "reference/using-api/deprecation-policy.md"
      },
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes Deprecation Policy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deprecating-parts-of-the-api",
      "type": "concept",
      "title": "Deprecating parts of the API",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 500,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deprecating-a-flag-or-cli",
      "type": "concept",
      "title": "Deprecating a flag or CLI",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 11329,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deprecating-a-feature-or-behavior",
      "type": "concept",
      "title": "Deprecating a feature or behavior",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 13052,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deprecating-a-metric",
      "type": "concept",
      "title": "Deprecating a metric",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 17661,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:exceptions",
      "type": "concept",
      "title": "Exceptions",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 19801,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:rest-resources-aka-api-objects",
      "type": "concept",
      "title": "REST resources (aka API objects)",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 8821,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:fields-of-rest-resources",
      "type": "concept",
      "title": "Fields of REST resources",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 10432,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enumerated-or-constant-values",
      "type": "concept",
      "title": "Enumerated or constant values",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 10901,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:component-config-structures",
      "type": "concept",
      "title": "Component config structures",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 11082,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:future-work",
      "type": "concept",
      "title": "Future work",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 11187,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:deprecation",
      "type": "concept",
      "title": "Deprecation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 15983,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/using-api/deprecation-guide",
      "type": "page",
      "title": "Deprecated API Migration Guide",
      "summary": "",
      "body": "\n\nAs the Kubernetes API evolves, APIs are periodically reorganized or upgraded.\nWhen APIs evolve, the old API is deprecated and eventually removed.\nThis page contains information you need to know when migrating from\ndeprecated API versions to newer and more stable API versions.\n\n\n\n## Removed APIs by release\n\n### v1.32\n\nThe **v1.32** release stopped serving the following deprecated API versions:\n\n#### Flow control resources {#flowcontrol-resources-v132}\n\nThe **flowcontrol.apiserver.k8s.io/v1beta3** API version of FlowSchema and PriorityLevelConfiguration is no longer served as of v1.32.\n\n* Migrate manifests and API clients to use the **flowcontrol.apiserver.k8s.io/v1** API version, available since v1.29.\n* All existing persisted objects are accessible via the new API\n* Notable changes in **flowcontrol.apiserver.k8s.io/v1**:\n  * The PriorityLevelConfiguration `spec.limited.nominalConcurrencyShares` field only defaults to 30 when unspecified, and an explicit value of 0 is not changed to 30.\n\n### v1.29\n\nThe **v1.29** release stopped serving the following deprecated API versions:\n\n#### Flow control resources {#flowcontrol-resources-v129}\n\nThe **flowcontrol.apiserver.k8s.io/v1beta2** API version of FlowSchema and PriorityLevelConfiguration is no longer served as of v1.29.\n\n* Migrate manifests and API clients to use the **flowcontrol.apiserver.k8s.io/v1** API version, available since v1.29, or the **flowcontrol.apiserver.k8s.io/v1beta3** API version, available since v1.26.\n* All existing persisted objects are accessible via the new API\n* Notable changes in **flowcontrol.apiserver.k8s.io/v1**:\n  * The PriorityLevelConfiguration `spec.limited.assuredConcurrencyShares` field is renamed to `spec.limited.nominalConcurrencyShares` and only defaults to 30 when unspecified, and an explicit value of 0 is not changed to 30.\n* Notable changes in **flowcontrol.apiserver.k8s.io/v1beta3**:\n  * The PriorityLevelConfiguration `spec.limited.assuredConcurrencyShares` field is renamed to `spec.limited.nominalConcurrencyShares`\n\n### v1.27\n\nThe **v1.27** release stopped serving the following deprecated API versions:\n\n#### CSIStorageCapacity {#csistoragecapacity-v127}\n\nThe **storage.k8s.io/v1beta1** API version of CSIStorageCapacity is no longer served as of v1.27.\n\n* Migrate manifests and API clients to use the **storage.k8s.io/v1** API version, available since v1.24.\n* All existing persisted objects are accessible via the new API\n* No notable changes\n\n### v1.26\n\nThe **v1.26** release stopped serving the following deprecated API versions:\n\n#### Flow control resources {#flowcontrol-resources-v126}\n\nThe **flowcontrol.apiserver.k8s.io/v1beta1** API version of FlowSchema and PriorityLevelConfiguration is no longer served as of v1.26.\n\n* Migrate manifests and API clients to use the **flowcontrol.apiserver.k8s.io/v1beta2** API version.\n* All existing persisted objects are accessible via the new API\n* No notable changes\n\n#### HorizontalPodAutoscaler {#horizontalpodautoscaler-v126}\n\nThe **autoscaling/v2beta2** API version of HorizontalPodAutoscaler is no longer served as of v1.26.\n\n* Migrate manifests and API clients to use the **autoscaling/v2** API version, available since v1.23.\n* All existing persisted objects are accessible via the new API\n* Notable changes:\n  * `targetAverageUtilization` is replaced with `target.averageUtilization` and `target.type: Utilization`. See [Autoscaling on multiple metrics and custom metrics](/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/#autoscaling-on-multiple-metrics-and-custom-metrics).\n### v1.25\n\nThe **v1.25** release stopped serving the following deprecated API versions:\n\n#### CronJob {#cronjob-v125}\n\nThe **batch/v1beta1** API version of CronJob is no longer served as of v1.25.\n\n* Migrate manifests and API clients to use the **batch/v1** API version, available since v1.21.\n* All existing persisted objects are accessible via the new API\n* No notable changes\n\n#### EndpointSlice {#endpointslice-v125}\n\nThe **\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
      "meta": {
        "weight": 45,
        "rel_path": "reference/using-api/deprecation-guide.md"
      },
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": null,
          "line_end": null,
          "quote": "Deprecated API Migration Guide"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:removed-apis-by-release",
      "type": "concept",
      "title": "Removed APIs by release",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 313,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-to-do",
      "type": "concept",
      "title": "What to do",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 19443,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:v1-32",
      "type": "concept",
      "title": "v1.32",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 341,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:v1-29",
      "type": "concept",
      "title": "v1.29",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 1035,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:v1-27",
      "type": "concept",
      "title": "v1.27",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 2069,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:v1-26",
      "type": "concept",
      "title": "v1.26",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 2500,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:v1-25",
      "type": "concept",
      "title": "v1.25",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 3603,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:v1-22",
      "type": "concept",
      "title": "v1.22",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 8349,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:v1-16",
      "type": "concept",
      "title": "v1.16",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 16146,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:test-with-deprecated-apis-disabled",
      "type": "concept",
      "title": "Test with deprecated APIs disabled",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 19458,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:locate-use-of-deprecated-apis",
      "type": "concept",
      "title": "Locate use of deprecated APIs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 19833,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migrate-to-non-deprecated-apis",
      "type": "concept",
      "title": "Migrate to non-deprecated APIs",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 20025,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/using-api/client-libraries",
      "type": "page",
      "title": "Client Libraries",
      "summary": "",
      "body": "\nThis page contains an overview of the client libraries for using the Kubernetes\nAPI from various programming languages.\n\n\n\nTo write applications using the [Kubernetes REST API](/docs/reference/using-api/),\nyou do not need to implement the API calls and request/response types yourself.\nYou can use a client library for the programming language you are using.\n\nClient libraries often handle common tasks such as authentication for you.\nMost client libraries can discover and use the Kubernetes Service Account to\nauthenticate if the API client is running inside the Kubernetes cluster, or can\nunderstand the [kubeconfig file](/docs/tasks/access-application-cluster/configure-access-multiple-clusters/)\nformat to read the credentials and the API Server address.\n\n## Officially-supported Kubernetes client libraries\n\nThe following client libraries are officially maintained by\n[Kubernetes SIG API Machinery](https://github.com/kubernetes/community/tree/main/sig-api-machinery).\n\n\n| Language   | Client Library | Sample Programs |\n|------------|----------------|-----------------|\n| C          | [github.com/kubernetes-client/c](https://github.com/kubernetes-client/c/) | [browse](https://github.com/kubernetes-client/c/tree/master/examples)\n| dotnet     | [github.com/kubernetes-client/csharp](https://github.com/kubernetes-client/csharp) | [browse](https://github.com/kubernetes-client/csharp/tree/master/examples)\n| Go         | [github.com/kubernetes/client-go/](https://github.com/kubernetes/client-go/) | [browse](https://github.com/kubernetes/client-go/tree/master/examples)\n| Haskell    | [github.com/kubernetes-client/haskell](https://github.com/kubernetes-client/haskell) | [browse](https://github.com/kubernetes-client/haskell/tree/master/kubernetes-client/example)\n| Java       | [github.com/kubernetes-client/java](https://github.com/kubernetes-client/java/) | [browse](https://github.com/kubernetes-client/java/tree/master/examples)\n| JavaScript | [github.com/kubernetes-client/javascript](https://github.com/kubernetes-client/javascript) | [browse](https://github.com/kubernetes-client/javascript/tree/master/examples)\n| Perl       | [github.com/kubernetes-client/perl/](https://github.com/kubernetes-client/perl/) | [browse](https://github.com/kubernetes-client/perl/tree/master/examples)\n| Python     | [github.com/kubernetes-client/python/](https://github.com/kubernetes-client/python/) | [browse](https://github.com/kubernetes-client/python/tree/master/examples)\n| Ruby       | [github.com/kubernetes-client/ruby/](https://github.com/kubernetes-client/ruby/) | [browse](https://github.com/kubernetes-client/ruby/tree/master/examples)\n\n## Community-maintained client libraries\n\n\n\nThe following Kubernetes API client libraries are provided and maintained by\ntheir authors, not the Kubernetes team.\n\n| Language             | Client Library                           |\n| -------------------- | ---------------------------------------- |\n| Clojure              | [github.com/yanatan16/clj-kubernetes-api](https://github.com/yanatan16/clj-kubernetes-api) |\n| DotNet               | [github.com/tonnyeremin/kubernetes_gen](https://github.com/tonnyeremin/kubernetes_gen) |\n| DotNet (RestSharp)   | [github.com/masroorhasan/Kubernetes.DotNet](https://github.com/masroorhasan/Kubernetes.DotNet) |\n| Elixir               | [github.com/obmarg/kazan](https://github.com/obmarg/kazan/) |\n| Elixir               | [github.com/coryodaniel/k8s](https://github.com/coryodaniel/k8s) |\n| Java (OSGi)          | [bitbucket.org/amdatulabs/amdatu-kubernetes](https://bitbucket.org/amdatulabs/amdatu-kubernetes) |\n| Java (Fabric8, OSGi) | [github.com/fabric8io/kubernetes-client](https://github.com/fabric8io/kubernetes-client) |\n| Java                 | [github.com/manusa/yakc](https://github.com/manusa/yakc) |\n| Lisp                 | [github.com/brendandburns/cl-k8s](https://github.com/brendandburns/cl-k8s) |\n| Lisp                 | [github.com/xh4/cube](https://github.com/xh4/cube) |\n| Node.js (Typ\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/using-api/client-libraries/",
      "meta": {
        "weight": 30,
        "rel_path": "reference/using-api/client-libraries.md"
      },
      "provenance": [
        {
          "source": "reference/using-api/client-libraries.md",
          "url": "https://kubernetes.io/docs/reference/using-api/client-libraries/",
          "line_start": null,
          "line_end": null,
          "quote": "Client Libraries"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:officially-supported-kubernetes-client-libraries",
      "type": "concept",
      "title": "Officially-supported Kubernetes client libraries",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/client-libraries.md",
          "url": "https://kubernetes.io/docs/reference/using-api/client-libraries/",
          "line_start": 793,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:community-maintained-client-libraries",
      "type": "concept",
      "title": "Community-maintained client libraries",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/client-libraries.md",
          "url": "https://kubernetes.io/docs/reference/using-api/client-libraries/",
          "line_start": 2682,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/using-api/server-side-apply",
      "type": "page",
      "title": "Server-Side Apply",
      "summary": "",
      "body": "\n\n\n\nKubernetes supports multiple appliers collaborating to manage the fields\nof a single [object](/docs/concepts/overview/working-with-objects/).\n\nServer-Side Apply provides an optional mechanism for your cluster's control plane to track\nchanges to an object's fields. At the level of a specific resource, Server-Side\nApply records and tracks information about control over the fields of that object.\n\nServer-Side Apply helps users and [controllers](#gloss:controller)\nmanage their resources through declarative configuration. Clients can create and modify\n[objects](#gloss:object)\ndeclaratively by submitting their _fully specified intent_.\n\nA fully specified intent is a partial object that only includes the fields and\nvalues for which the user has an opinion. That intent either creates a new\nobject (using default values for unspecified fields), or is\n[combined](#merge-strategy), by the API server, with the existing object.\n\n[Comparison with Client-Side Apply](#comparison-with-client-side-apply) explains\nhow Server-Side Apply differs from the original, client-side `kubectl apply`\nimplementation.\n\n\n\n## Field management\n\nThe Kubernetes API server tracks _managed fields_ for all newly created objects.\n\nWhen trying to apply an object, fields that have a different value and are owned by\nanother [manager](#managers) will result in a [conflict](#conflicts). This is done\nin order to signal that the operation might undo another collaborator's changes.\nWrites to objects with managed fields can be forced, in which case the value of any\nconflicted field will be overridden, and the ownership will be transferred.\n\nWhenever a field's value does change, ownership moves from its current manager to the\nmanager making the change.\n\nFor a user to manage a field, in the Server-Side Apply sense, means that the\nuser relies on and expects the value of the field not to change. The user who\nlast made an assertion about the value of a field will be recorded as the\ncurrent field manager. This can be done by changing the field manager\ndetails explicitly using HTTP `POST` (**create**), `PUT` (**update**), or non-apply\n`PATCH` (**patch**). You can also declare and record a field manager\nby including a value for that field in a Server-Side Apply operation.\n\nA Server-Side Apply **patch** request requires the client to provide its identity\nas a [field manager](#managers). When using Server-Side Apply, trying to change a\nfield that is controlled by a different manager results in a rejected\nrequest unless the client forces an override.\nFor details of overrides, see [Conflicts](#conflicts).\n\nWhen two or more appliers set a field to the same value, they share ownership of\nthat field. Any subsequent attempt to change the value of the shared field, by any of\nthe appliers, results in a conflict. Shared field owners may give up ownership\nof a field by making a Server-Side Apply **patch** request that doesn't include\nthat field.\n\nField management details are stored in a `managedFields` field that is part of an\nobject's [`metadata`](/docs/reference/kubernetes-api/common-definitions/object-meta/).\n\nIf you remove a field from a manifest and apply that manifest, Server-Side\nApply checks if there are any other field managers that also own the field.\nIf the field is not owned by any other field managers, it is either deleted\nfrom the live object or reset to its default value, if it has one.\nThe same rule applies to associative list or map items.\n\nCompared to the (legacy)\n[`kubectl.kubernetes.io/last-applied-configuration`](/docs/reference/labels-annotations-taints/#kubectl-kubernetes-io-last-applied-configuration)\nannotation managed by `kubectl`, Server-Side Apply uses a more declarative\napproach, that tracks a user's (or client's) field management, rather than\na user's last applied state. As a side effect of using Server-Side Apply,\ninformation about which field manager manages each field in an object also\nbecomes available.\n\n### Example {#ssa-example-configmap}\n\nA simple example o\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
      "meta": {
        "weight": 25,
        "rel_path": "reference/using-api/server-side-apply.md"
      },
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": null,
          "line_end": null,
          "quote": "Server-Side Apply"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:field-management",
      "type": "concept",
      "title": "Field management",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 1261,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:serialization",
      "type": "concept",
      "title": "Serialization",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 8403,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:operations-in-scope-for-field-management-apply-and-update",
      "type": "concept",
      "title": "Operations in scope for field management {#apply-and-update}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 9383,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:merge-strategy",
      "type": "concept",
      "title": "Merge strategy",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 11338,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:custom-resources-and-server-side-apply",
      "type": "concept",
      "title": "Custom resources and Server-Side Apply",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 16231,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:using-server-side-apply-in-a-controller",
      "type": "concept",
      "title": "Using Server-Side Apply in a controller",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 18702,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:transferring-ownership",
      "type": "concept",
      "title": "Transferring ownership",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 19464,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:comparison-with-client-side-apply",
      "type": "concept",
      "title": "Comparison with Client-Side Apply",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 23215,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:migration-between-client-side-and-server-side-apply",
      "type": "concept",
      "title": "Migration between client-side and server-side apply",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 24736,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-implementation",
      "type": "concept",
      "title": "API implementation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 26677,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:clearing-managedfields",
      "type": "concept",
      "title": "Clearing `managedFields`",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 27765,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:example-ssa-example-configmap",
      "type": "concept",
      "title": "Example {#ssa-example-configmap}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 4096,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:conflicts",
      "type": "concept",
      "title": "Conflicts",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 6077,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:field-managers-managers",
      "type": "concept",
      "title": "Field managers {#managers}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 7762,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:compatibility-across-topology-changes",
      "type": "concept",
      "title": "Compatibility across topology changes",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 16757,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:transferring-ownership-between-managers",
      "type": "concept",
      "title": "Transferring ownership between managers",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 22786,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:upgrading-from-client-side-apply-to-server-side-apply",
      "type": "concept",
      "title": "Upgrading from client-side apply to server-side apply",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 24792,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:downgrading-from-server-side-apply-to-client-side-apply",
      "type": "concept",
      "title": "Downgrading from server-side apply to client-side apply",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 25968,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:access-control-and-permissions-rbac-and-permissions",
      "type": "concept",
      "title": "Access control and permissions {#rbac-and-permissions}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 27397,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/using-api/cel",
      "type": "page",
      "title": "Common Expression Language in Kubernetes",
      "summary": "",
      "body": "\n\nThe [Common Expression Language (CEL)](https://github.com/google/cel-go) is used\nin the Kubernetes API to declare validation rules, policy rules, and other\nconstraints or conditions.\n\nCEL expressions are evaluated directly in the\n[API server](#gloss:kube-apiserver), making CEL a\nconvenient alternative to out-of-process mechanisms, such as webhooks, for many\nextensibility use cases. Your CEL expressions continue to execute so long as the\ncontrol plane's API server component remains available.\n\n\n\n## Language overview\n\nThe [CEL language](https://github.com/google/cel-spec/blob/master/doc/langdef.md)\nhas a straightforward syntax that is similar to the expressions in C, C++, Java,\nJavaScript and Go.\n\nCEL was designed to be embedded into applications. Each CEL \"program\" is a\nsingle expression that evaluates to a single value. CEL expressions are\ntypically short \"one-liners\" that inline well into the string fields of Kubernetes\nAPI resources.\n\nInputs to a CEL program are \"variables\". Each Kubernetes API field that contains\nCEL declares in the API documentation which variables are available to use for\nthat field. For example, in the `x-kubernetes-validations[i].rules` field of\nCustomResourceDefinitions, the `self` and `oldSelf` variables are available and\nrefer to the previous and current state of the custom resource data to be\nvalidated by the CEL expression. Other Kubernetes API fields may declare\ndifferent variables. See the API documentation of the API fields to learn which\nvariables are available for that field.\n\nExample CEL expressions:\n\n<table>\n<caption>Examples of CEL expressions and the purpose of each</caption>\n<thead>\n<tr>\n  <th>Rule</th>\n  <th>Purpose</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n  <td><tt>self.minReplicas &lt;= self.replicas && self.replicas &lt;= self.maxReplicas</tt></td>\n  <td>Validate that the three fields defining replicas are ordered appropriately</td>\n</tr>\n<tr>\n  <td><tt>'Available' in self.stateCounts</tt></td>\n  <td>Validate that an entry with the 'Available' key exists in a map</td>\n</tr>\n<tr>\n  <td><tt>(self.list1.size() == 0) != (self.list2.size() == 0)</tt></td>\n  <td>Validate that one of two lists is non-empty, but not both</td>\n</tr>\n<tr>\n  <td><tt>self.envars.filter(e, e.name = 'MY_ENV').all(e, e.value.matches('^[a-zA-Z]*$'))</tt></td>\n  <td>Validate the 'value' field of a listMap entry where key field 'name' is 'MY_ENV'</td>\n</tr>\n<tr>\n  <td><tt>has(self.expired) && self.created + self.ttl &lt; self.expired</tt></td>\n  <td>Validate that 'expired' date is after a 'create' date plus a 'ttl' duration</td>\n</tr>\n<tr>\n  <td><tt>self.health.startsWith('ok')</tt></td>\n  <td>Validate a 'health' string field has the prefix 'ok'</td>\n</tr>\n<tr>\n  <td><tt>self.widgets.exists(w, w.key == 'x' && w.foo &lt; 10)</tt></td>\n  <td>Validate that the 'foo' property of a listMap item with a key 'x' is less than 10</td>\n</tr>\n<tr>\n  <td><tt>type(self) == string ? self == '99%' : self == 42</tt></td>\n  <td>Validate an int-or-string field for both the int and string cases</td>\n</tr>\n<tr>\n  <td><tt>self.metadata.name == 'singleton'</tt></td>\n  <td>Validate that an object's name matches a specific value (making it a singleton)</td>\n</tr>\n<tr>\n  <td><tt>self.set1.all(e, !(e in self.set2))</tt></td>\n  <td>Validate that two listSets are disjoint</td>\n</tr>\n<tr>\n  <td><tt>self.names.size() == self.details.size() && self.names.all(n, n in self.details)</tt></td>\n  <td>Validate the 'details' map is keyed by the items in the 'names' listSet</td>\n</tr>\n<tr>\n  <td><tt>self.details.all(key, key.matches('^[a-zA-Z]*$'))</tt></td>\n  <td>Validate the keys of the 'details' map</td>\n</tr>\n<tr>\n  <td><tt>self.details.all(key, self.details[key].matches('^[a-zA-Z]*$'))</tt></td>\n  <td>Validate the values of the 'details' map</td>\n</tr>\n</tbody>\n</table>\n\n## CEL options, language features, and libraries\n\nCEL is configured with the following options, libraries and language features,\nintroduced at the specified Kubernetes versions:\n\n<table>\n<the\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/using-api/cel/",
      "meta": {
        "weight": 35,
        "rel_path": "reference/using-api/cel.md"
      },
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": null,
          "line_end": null,
          "quote": "Common Expression Language in Kubernetes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:language-overview",
      "type": "concept",
      "title": "Language overview",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 565,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:cel-options-language-features-and-libraries",
      "type": "concept",
      "title": "CEL options, language features, and libraries",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 3872,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-cel-libraries",
      "type": "concept",
      "title": "Kubernetes CEL libraries",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 9164,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:type-system-integration",
      "type": "concept",
      "title": "Type system integration",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 36510,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:escaping",
      "type": "concept",
      "title": "Escaping",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 39750,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:resource-constraints",
      "type": "concept",
      "title": "Resource constraints",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 41371,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-list-library",
      "type": "concept",
      "title": "Kubernetes list library",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 9331,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-regex-library",
      "type": "concept",
      "title": "Kubernetes regex library",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 10760,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-url-library",
      "type": "concept",
      "title": "Kubernetes URL library",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 11576,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-ip-address-library",
      "type": "concept",
      "title": "Kubernetes IP address library",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 12740,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-cidr-library",
      "type": "concept",
      "title": "Kubernetes CIDR library",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 16305,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-authorizer-library",
      "type": "concept",
      "title": "Kubernetes authorizer library",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 21298,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-format-library",
      "type": "concept",
      "title": "Kubernetes format library",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 24718,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-quantity-library",
      "type": "concept",
      "title": "Kubernetes quantity library",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 28132,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:kubernetes-semver-library",
      "type": "concept",
      "title": "Kubernetes semver library",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 32063,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:runtime-cost-budget",
      "type": "concept",
      "title": "Runtime cost budget",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 42751,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:estimated-cost-limits",
      "type": "concept",
      "title": "Estimated cost limits",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 43686,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/using-api/health-checks",
      "type": "page",
      "title": "Kubernetes API health endpoints",
      "summary": "",
      "body": "\nThe Kubernetes [API server](#gloss:kube-apiserver) provides API endpoints to indicate the current status of the API server.\nThis page describes these API endpoints and explains how you can use them.\n\n\n\n## API endpoints for health\n\nThe Kubernetes API server provides 3 API endpoints (`healthz`, `livez` and `readyz`) to indicate the current status of the API server.\nThe `healthz` endpoint is deprecated (since Kubernetes v1.16), and you should use the more specific `livez` and `readyz` endpoints instead.\nThe `livez` endpoint can be used with the `--livez-grace-period` [flag](/docs/reference/command-line-tools-reference/kube-apiserver) to specify the startup duration.\nFor a graceful shutdown you can specify the `--shutdown-delay-duration` [flag](/docs/reference/command-line-tools-reference/kube-apiserver) with the `/readyz` endpoint.\nMachines that check the `healthz`/`livez`/`readyz` of the API server should rely on the HTTP status code.\nA status code `200` indicates the API server is `healthy`/`live`/`ready`, depending on the called endpoint.\n\nThese endpoints align with how Kubernetes [HTTP probes](/docs/concepts/workloads/pods/probes/#http-probes) function:\n\n* **livez**: Use this to determine if the API server should be restarted. If `/livez` returns a failure status code (such as 500), the API server is likely in a non-recoverable state, such as a deadlock, and requires a restart.\n* **readyz**: Use this to determine if the API server is ready to accept traffic. If `/readyz` returns a failure status code, it indicates the server is still initializing or temporarily unable to serve requests (for example, waiting for etcd to be available), and traffic should be routed away from it.\n\nThe more verbose options shown below are intended to be used by human operators to debug their cluster or understand the state of the API server.\n\nThe following examples will show how you can interact with the health API endpoints.\n\nFor all endpoints, you can use the `verbose` parameter to print out the checks and their status.\nThis can be useful for a human operator to debug the current status of the API server, it is not intended to be consumed by a machine:\n\n```shell\ncurl -k https://localhost:6443/livez?verbose\n```\n\nor from a remote host with authentication:\n\n```shell\nkubectl get --raw='/readyz?verbose'\n```\n\nThe output will look like this:\n\n    [+]ping ok\n    [+]log ok\n    [+]etcd ok\n    [+]poststarthook/start-kube-apiserver-admission-initializer ok\n    [+]poststarthook/generic-apiserver-start-informers ok\n    [+]poststarthook/start-apiextensions-informers ok\n    [+]poststarthook/start-apiextensions-controllers ok\n    [+]poststarthook/crd-informer-synced ok\n    [+]poststarthook/bootstrap-controller ok\n    [+]poststarthook/rbac/bootstrap-roles ok\n    [+]poststarthook/scheduling/bootstrap-system-priority-classes ok\n    [+]poststarthook/start-cluster-authentication-info-controller ok\n    [+]poststarthook/start-kube-aggregator-informers ok\n    [+]poststarthook/apiservice-registration-controller ok\n    [+]poststarthook/apiservice-status-available-controller ok\n    [+]poststarthook/kube-apiserver-autoregistration ok\n    [+]autoregister-completion ok\n    [+]poststarthook/apiservice-openapi-controller ok\n    healthz check passed\n\nThe Kubernetes API server also supports to exclude specific checks.\nThe query parameters can also be combined like in this example:\n\n```shell\ncurl -k 'https://localhost:6443/readyz?verbose&exclude=etcd'\n```\n\nThe output show that the `etcd` check is excluded:\n\n    [+]ping ok\n    [+]log ok\n    [+]etcd excluded: ok\n    [+]poststarthook/start-kube-apiserver-admission-initializer ok\n    [+]poststarthook/generic-apiserver-start-informers ok\n    [+]poststarthook/start-apiextensions-informers ok\n    [+]poststarthook/start-apiextensions-controllers ok\n    [+]poststarthook/crd-informer-synced ok\n    [+]poststarthook/bootstrap-controller ok\n    [+]poststarthook/rbac/bootstrap-roles ok\n    [+]poststarthook/scheduling/bootstrap-system-priority-\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/using-api/health-checks/",
      "meta": {
        "weight": 50,
        "rel_path": "reference/using-api/health-checks.md"
      },
      "provenance": [
        {
          "source": "reference/using-api/health-checks.md",
          "url": "https://kubernetes.io/docs/reference/using-api/health-checks/",
          "line_start": null,
          "line_end": null,
          "quote": "Kubernetes API health endpoints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-endpoints-for-health",
      "type": "concept",
      "title": "API endpoints for health",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/health-checks.md",
          "url": "https://kubernetes.io/docs/reference/using-api/health-checks/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:individual-health-checks",
      "type": "concept",
      "title": "Individual health checks",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/health-checks.md",
          "url": "https://kubernetes.io/docs/reference/using-api/health-checks/",
          "line_start": 4510,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/using-api/_index",
      "type": "page",
      "title": "API Overview",
      "summary": "",
      "body": "\n\nThis section provides reference information for the Kubernetes API.\n\nThe REST API is the fundamental fabric of Kubernetes. All operations and\ncommunications between components, and external user commands are REST API\ncalls that the API Server handles. Consequently, everything in the Kubernetes\nplatform is treated as an API object and has a corresponding entry in the\n[API](/docs/reference/generated/kubernetes-api//).\n\nThe [Kubernetes API reference](/docs/reference/generated/kubernetes-api//)\nlists the API for Kubernetes version .\n\nFor general background information, read\n[The Kubernetes API](/docs/concepts/overview/kubernetes-api/).\n[Controlling Access to the Kubernetes API](/docs/concepts/security/controlling-access/)\ndescribes how clients can authenticate to the Kubernetes API server, and how their\nrequests are authorized.\n\n\n## API versioning\n\nThe JSON and Protobuf serialization schemas follow the same guidelines for\nschema changes. The following descriptions cover both formats.\n\nThe API versioning and software versioning are indirectly related.\nThe [API and release versioning proposal](https://git.k8s.io/sig-release/release-engineering/reference/versioning.md#kubernetes-release-versioning)\ndescribes the relationship between API versioning and software versioning.\n\nDifferent API versions indicate different levels of stability and support. You\ncan find more information about the criteria for each level in the\n[API Changes documentation](https://git.k8s.io/community/contributors/devel/sig-architecture/api_changes.md#alpha-beta-and-stable-versions).\n\nHere's a summary of each level:\n\n- Alpha:\n  - The version names contain `alpha` (for example, `v1alpha1`).\n  - Built-in alpha API versions are disabled by default and must be explicitly enabled in the `kube-apiserver` configuration to be used.\n  - The software may contain bugs. Enabling a feature may expose bugs.\n  - Support for an alpha API may be dropped at any time without notice.\n  - The API may change in incompatible ways in a later software release without notice.\n  - The software is recommended for use only in short-lived testing clusters,\n    due to increased risk of bugs and lack of long-term support.\n\n- Beta:\n  - The version names contain `beta` (for example, `v2beta3`).\n  - Built-in beta API versions are disabled by default and must be explicitly enabled in the `kube-apiserver` configuration to be used\n    (**except** for beta versions of APIs introduced prior to Kubernetes 1.22, which were enabled by default).\n  - Built-in beta API versions have a maximum lifetime of 9 months or 3 minor releases (whichever is longer) from introduction\n    to deprecation, and 9 months or 3 minor releases (whichever is longer) from deprecation to removal.\n  - The software is well tested. Enabling a feature is considered safe.\n  - The support for a feature will not be dropped, though the details may change.\n\n  - The schema and/or semantics of objects may change in incompatible ways in\n    a subsequent beta or stable API version. When this happens, migration\n    instructions are provided. Adapting to a subsequent beta or stable API version\n    may require editing or re-creating API objects, and may not be straightforward.\n    The migration may require downtime for applications that rely on the feature.\n  - The software is not recommended for production uses. Subsequent releases\n    may introduce incompatible changes. Use of beta API versions is\n    required to transition to subsequent beta or stable API versions\n    once the beta API version is deprecated and no longer served.\n\n  \n> **Note:** Please try beta features and provide feedback. After the features exit beta, it\n  may not be practical to make more changes.\n\n\n- Stable:\n  - The version name is `vX` where `X` is an integer.\n  - Stable API versions remain available for all future releases within a Kubernetes major version,\n    and there are no current plans for a major version revision of Kubernetes that removes stable APIs.\n\n## API g\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/using-api/_index/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/using-api/_index.md"
      },
      "provenance": [
        {
          "source": "reference/using-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/using-api/_index/",
          "line_start": null,
          "line_end": null,
          "quote": "API Overview"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-versioning",
      "type": "concept",
      "title": "API versioning",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/using-api/_index/",
          "line_start": 927,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:api-groups",
      "type": "concept",
      "title": "API groups",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/using-api/_index/",
          "line_start": 4096,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:enabling-or-disabling-api-groups-enabling-or-disabling",
      "type": "concept",
      "title": "Enabling or disabling API groups   {#enabling-or-disabling}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/using-api/_index/",
          "line_start": 4897,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:reference/using-api/declarative-validation",
      "type": "page",
      "title": "Declarative API Validation",
      "summary": "",
      "body": "\n\nKubernetes  includes optional _declarative validation_ for APIs. When enabled, the Kubernetes API server can use this mechanism rather than the legacy approach that relies on hand-written Go\ncode (`validation.go` files) to ensure that requests against the API are valid.\nKubernetes developers, and people [extending the Kubernetes API](/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/),\ncan define validation rules directly alongside the API type definitions (`types.go` files). Code authors define\nspecial comment tags (e.g., `+k8s:minimum=0`). A code generator (`validation-gen`) then uses these tags to produce\noptimized Go code for API validation.\n\nWhile primarily a feature impacting Kubernetes contributors and potentially developers of [extension API servers](/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/), cluster administrators should understand its behavior, especially during its rollout phases.\n\nDeclarative validation tags can apply directly to net-new API fields without requiring any lifecycle mechanism (for example, it is possible to use `+k8s:minimum=1`). For migrating existing hand-written validations where the declarative validation is shadowing the existing hand-written validation logic, the rollout is controlled by the validation lifecycle tags (`+k8s:alpha` and `+k8s:beta`) alongside the `DeclarativeValidationBeta` feature gate:\n\n*   `DeclarativeValidation`: (GA in v1.36, Default: `true`, LockToDefault: `true`) The API server runs *both* the new declarative validation and the old hand-written validation for migrated types/fields in \"shadow mode\" (Alpha). The results are compared internally.\n*   `DeclarativeValidationBeta`: (Beta, Default: `true`) Introduced in v1.36. This gate controls the enforcement of beta-stage validation rules. When enabled, rules marked as `+k8s:beta` are authoritative; when disabled, they revert to shadow mode.\n*   `DeclarativeValidationTakeover`: (Deprecated in v1.36). Previously used to determine whether declarative validation results were authoritative. It is no longer honored but can still be set to prevent \"gate not recognized\" errors.\n\n**Default Behavior (Kubernetes ):**\n\n*   With `DeclarativeValidationBeta=true` (the default), both validation systems run for Alpha and shadowed rules. Beta rules are enforced.\n*   **The results of the *hand-written* validation are used for Alpha rules.** The declarative validation runs in a mismatch mode for comparison.\n*   Mismatches between the two validation systems are logged by the API server and increment the `declarative_validation_mismatch_total` metric. This data allows contributors to identify and resolve discrepancies during the shadow phase.\n\nAdministrators can explicitly disable the `DeclarativeValidationBeta` feature gate to force `+k8s:beta` validation rules back into shadow mode if unexpected validation behavior or regressions are observed.\n\n## Disabling DeclarativeValidationBeta {#opt-out}\n\nAs a cluster administrator, you might consider toggling `DeclarativeValidationBeta`=`false` under specific circumstances:\n\n*   **Unexpected Validation Behavior:** If enabling `DeclarativeValidationBeta` leads to unexpected validation errors or allows objects that were previously invalid.\n*   **Performance Regressions:** If monitoring indicates significant latency increases (e.g., in `apiserver_request_duration_seconds`) correlated with the feature's enablement.\n*   **High Mismatch Rate:** If the `declarative_validation_mismatch_total` metric shows frequent mismatches, suggesting potential bugs in the declarative rules affecting the cluster's workloads, even if `DeclarativeValidationBeta` is false.\n\nTo revert `+k8s:beta` validation rules back to shadow mode, disable the `DeclarativeValidationBeta` feature gate, for example via command-line arguments: (`--feature-gates=DeclarativeValidationBeta=false`).\n\n## Considerations for downgrade and rollback\n\nDisabling the `DeclarativeValidationBeta` feature gate acts a\n…(trimmed)",
      "body_trimmed": true,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
      "meta": {
        "weight": 20,
        "rel_path": "reference/using-api/declarative-validation.md"
      },
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": null,
          "line_end": null,
          "quote": "Declarative API Validation"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:disabling-declarativevalidationbeta-opt-out",
      "type": "concept",
      "title": "Disabling DeclarativeValidationBeta {#opt-out}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 3039,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:considerations-for-downgrade-and-rollback",
      "type": "concept",
      "title": "Considerations for downgrade and rollback",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 4006,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:declarative-validation-tag-reference",
      "type": "concept",
      "title": "Declarative validation tag reference",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 4771,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tag-reference",
      "type": "concept",
      "title": "Tag Reference",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 7736,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:tag-catalog-catalog",
      "type": "concept",
      "title": "Tag catalog {#catalog}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 4909,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-alpha-tag-alpha",
      "type": "concept",
      "title": "`+k8s:alpha` {#tag-alpha}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 7754,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-beta-tag-beta",
      "type": "concept",
      "title": "`+k8s:beta` {#tag-beta}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 9270,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-eachkey-tag-eachkey",
      "type": "concept",
      "title": "`+k8s:eachKey` {#tag-eachKey}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 10315,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-eachval-tag-eachval",
      "type": "concept",
      "title": "`+k8s:eachVal` {#tag-eachVal}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 10819,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-enum-tag-enum",
      "type": "concept",
      "title": "`+k8s:enum` {#tag-enum}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 11339,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-forbidden-tag-forbidden",
      "type": "concept",
      "title": "`+k8s:forbidden` {#tag-forbidden}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 11923,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-format-tag-format",
      "type": "concept",
      "title": "`+k8s:format` {#tag-format}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 12271,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-ifdisabled-tag-ifdisabled",
      "type": "concept",
      "title": "`+k8s:ifDisabled` {#tag-ifDisabled}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 13116,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-ifenabled-tag-ifenabled",
      "type": "concept",
      "title": "`+k8s:ifEnabled` {#tag-ifEnabled}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 13696,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-issubresource-tag-issubresource",
      "type": "concept",
      "title": "`+k8s:isSubresource` {#tag-isSubresource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 14270,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-item-tag-item",
      "type": "concept",
      "title": "`+k8s:item` {#tag-item}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 16922,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-listmapkey-tag-listmapkey",
      "type": "concept",
      "title": "`+k8s:listMapKey` {#tag-listMapKey}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 18119,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-listtype-tag-listtype",
      "type": "concept",
      "title": "`+k8s:listType` {#tag-listType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 18968,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-maxitems-tag-maxitems",
      "type": "concept",
      "title": "`+k8s:maxItems` {#tag-maxItems}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 19850,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-maxlength-tag-maxlength",
      "type": "concept",
      "title": "`+k8s:maxLength` {#tag-maxLength}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 20255,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-minimum-tag-minimum",
      "type": "concept",
      "title": "`+k8s:minimum` {#tag-minimum}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 20680,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-neq-tag-neq",
      "type": "concept",
      "title": "`+k8s:neq` {#tag-neq}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 21063,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-opaquetype-tag-opaquetype",
      "type": "concept",
      "title": "`+k8s:opaqueType` {#tag-opaqueType}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 21727,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-optional-tag-optional",
      "type": "concept",
      "title": "`+k8s:optional` {#tag-optional}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 22426,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-required-tag-required",
      "type": "concept",
      "title": "`+k8s:required` {#tag-required}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 22768,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-subfield-tag-subfield",
      "type": "concept",
      "title": "`+k8s:subfield` {#tag-subfield}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 23102,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-supportssubresource-tag-supportssubresource",
      "type": "concept",
      "title": "`+k8s:supportsSubresource` {#tag-supportsSubresource}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 23679,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-uniondiscriminator-tag-uniondiscriminator",
      "type": "concept",
      "title": "`+k8s:unionDiscriminator` {#tag-unionDiscriminator}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 25335,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-unionmember-tag-unionmember",
      "type": "concept",
      "title": "`+k8s:unionMember` {#tag-unionMember}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 26097,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:k8s-zerooroneofmember-tag-zerooroneofmember",
      "type": "concept",
      "title": "`+k8s:zeroOrOneOfMember` {#tag-zeroOrOneOfMember}",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "reference",
      "tags": [
        "reference"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 26766,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "page:doc-contributor-tools/linkchecker/README",
      "type": "page",
      "title": "README",
      "summary": "",
      "body": "# Internal link checking tool\n\nYou can use [htmltest](https://github.com/wjdp/htmltest) to check for broken links in\n[`/content/en/`](https://git.k8s.io/website/content/en/). This is useful when refactoring\nsections of content, moving pages around, or renaming files or page headers.\n\n## How the tool works\n\n`htmltest` scans links in the generated HTML files of the kubernetes website repository.\nIt runs using a `make` command which does the following:\n\n- Builds the site and generates output HTML in the `/public` directory of your\n  local `kubernetes/website` repository\n- Pulls the `wdjp/htmltest` Docker image\n- Mounts your local `kubernetes/website` repository to the Docker image\n- Scans the files generated in the `/public` directory and provides command line\n  output when it encounters broken internal links\n\n## What it does and doesn't check\n\nThe link checker scans generated HTML files, not raw Markdown.\nThe htmltest tool depends on a configuration file,\n[`.htmltest.yml`](https://git.k8s.io/website/.htmltest.yml),\nto determine which content to examine.\n\nThe link checker scans the following:\n\n- All content generated from Markdown in\n  [`/content/en/docs`](https://git.k8s.io/website/content/en/docs/) directory, excluding:\n  - Generated API references, for example\n    https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/\n- All internal links, excluding:\n  - Empty hashes (`<a href=\"#\">` or `[title](#)`) and empty hrefs (`<a href=\"\">` or `[title]()`)\n  - Internal links to images and other media files\n\nThe link checker does not scan the following:\n\n- Links included in the top and side nav bars, footer links, or links in a page's `<head>` section,\n  such as links to CSS stylesheets, scripts, and meta information\n- Top level pages and their children, for example: `/training`, `/community`, `/case-studies/adidas`\n- Blog posts\n- API Reference documentation, for example\n  https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/\n- Localizations\n\n## Prerequisites and installation\n\nYou must install\n\n* [Docker](https://docs.docker.com/get-docker/)\n* [make](https://www.gnu.org/software/make/)\n\n## Running the link checker\n\nTo run the link checker:\n\n1. Navigate to the root directory of your local `kubernetes/website` repository.\n\n2. Run the following command:\n\n   ```shell\n   make container-internal-linkcheck\n   ```\n\n## Understanding the output\n\nIf the link checker finds broken links, the output is similar to the following:\n\n```\ntasks/access-kubernetes-api/custom-resources/index.html\n  hash does not exist --- tasks/access-kubernetes-api/custom-resources/index.html --> #preserving-unknown-fields\n  hash does not exist --- tasks/access-kubernetes-api/custom-resources/index.html --> #preserving-unknown-fields\n```\n\nThis is one set of broken links. The log adds an output for each page with broken links.\n\nIn this output, the file with broken links is `tasks/access-kubernetes-api/custom-resources.md`.\n\nThe tool gives a reason: `hash does not exist`. In most cases, you can ignore this.\n\nThe target URL is `#preserving-unknown-fields`.\n\nOne way to fix this is to:\n\n1. Navigate to the Markdown file with a broken link.\n1. Using a text editor, do a full-text search (usually Ctrl+F or Command+F) for the\n   broken link's URL, `#preserving-unknown-fields`.\n1. Fix the link. For a broken page hash (or _anchor_) link,\n   check whether the topic was renamed or removed.\n\nRun htmltest to verify that broken links are fixed.\n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "doc-contributor-tools",
      "tags": [
        "doc-contributor-tools"
      ],
      "aliases": [],
      "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
      "meta": {
        "weight": null,
        "rel_path": "doc-contributor-tools/linkchecker/README.md"
      },
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": null,
          "line_end": null,
          "quote": "README"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:how-the-tool-works",
      "type": "concept",
      "title": "How the tool works",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "doc-contributor-tools",
      "tags": [
        "doc-contributor-tools"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": 286,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:what-it-does-and-doesn-t-check",
      "type": "concept",
      "title": "What it does and doesn't check",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "doc-contributor-tools",
      "tags": [
        "doc-contributor-tools"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": 820,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:prerequisites-and-installation",
      "type": "concept",
      "title": "Prerequisites and installation",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "doc-contributor-tools",
      "tags": [
        "doc-contributor-tools"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": 1995,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:running-the-link-checker",
      "type": "concept",
      "title": "Running the link checker",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "doc-contributor-tools",
      "tags": [
        "doc-contributor-tools"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": 2142,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "concept:understanding-the-output",
      "type": "concept",
      "title": "Understanding the output",
      "summary": "",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": "doc-contributor-tools",
      "tags": [
        "doc-contributor-tools"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": 2367,
          "line_end": null,
          "quote": null
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ApplyConfiguration",
      "type": "api_object",
      "title": "ApplyConfiguration",
      "summary": "ApplyConfiguration defines the desired configuration values of an object.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "expression"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.admissionregistration.v1.ApplyConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ApplyConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.ApplyConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.ApplyConfiguration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:AuditAnnotation",
      "type": "api_object",
      "title": "AuditAnnotation",
      "summary": "AuditAnnotation describes how to produce an audit annotation for an API request.",
      "body": "An annotation for auditing purposes.\n\n**Why it matters**\nProvides a way to track and audit changes made to resources.\n\n**Key facts**\n- Represents an Audit Annotation resource in Kubernetes.\n- Used to annotate resources with audit-related information.\n\n**Common pitfalls**\n- May not be compatible with all Kubernetes versions.\n- Requires proper configuration to function correctly.\n\n**Related**\nKubernetes API, Audit Annotation resource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "key",
          "valueExpression"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.admissionregistration.v1.AuditAnnotation"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.AuditAnnotation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ExpressionWarning",
      "type": "api_object",
      "title": "ExpressionWarning",
      "summary": "ExpressionWarning is a warning information that targets a specific expression.",
      "body": "A warning for invalid or unsupported expressions.\n\n**Why it matters**\nHelps users identify and correct errors in their configurations.\n\n**Key facts**\n- Represents an Expression Warning resource in Kubernetes.\n- Used to warn about invalid or unsupported expressions in configuration files.\n\n**Common pitfalls**\n- May not be compatible with all Kubernetes versions.\n- Requires proper configuration to function correctly.\n\n**Related**\nKubernetes API, Expression Warning resource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "fieldRef",
          "warning"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.admissionregistration.v1.ExpressionWarning"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ExpressionWarning"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JSONPatch",
      "type": "api_object",
      "title": "JSONPatch",
      "summary": "JSONPatch defines a JSON Patch.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "expression"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.admissionregistration.v1.JSONPatch"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.JSONPatch"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.JSONPatch"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.JSONPatch"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:MatchCondition",
      "type": "api_object",
      "title": "MatchCondition",
      "summary": "MatchCondition represents a condition which must by fulfilled for a request to be sent to a webhook.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "expression",
          "name"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.admissionregistration.v1.MatchCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MatchCondition"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MatchCondition"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MatchCondition"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:MatchResources",
      "type": "api_object",
      "title": "MatchResources",
      "summary": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "excludeResourceRules",
          "matchPolicy",
          "namespaceSelector",
          "objectSelector",
          "resourceRules"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.admissionregistration.v1.MatchResources"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MatchResources"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MatchResources"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MatchResources"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:MutatingAdmissionPolicy",
      "type": "api_object",
      "title": "MutatingAdmissionPolicy",
      "summary": "MutatingAdmissionPolicy describes the definition of an admission mutation policy that mutates the object coming into admission chain.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicy"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicy"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MutatingAdmissionPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:MutatingAdmissionPolicyBinding",
      "type": "api_object",
      "title": "MutatingAdmissionPolicyBinding",
      "summary": "MutatingAdmissionPolicyBinding binds the MutatingAdmissionPolicy with parametrized resources. MutatingAdmissionPolicyBinding and the optional parameter resource together define how cluster administrators configure policies for clusters.\n\nFor a given admission request, each binding will cause its policy to be evaluated N times, where N is 1 for policies/bindings that don't use params, otherwise N is the number of parameters selected by the binding. Each evaluation is constrained by a [runtime cost budget](https://kubernetes.io/docs/reference/using-api/cel/#runtime-cost-budget).\n\nAdding/removing policies, bindings, or params can not affect whether a given (policy, binding, param) combination is within its own CEL budget.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicyBinding"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicyBinding"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicyBinding"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MutatingAdmissionPolicyBinding"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:MutatingAdmissionPolicyBindingList",
      "type": "api_object",
      "title": "MutatingAdmissionPolicyBindingList",
      "summary": "MutatingAdmissionPolicyBindingList is a list of MutatingAdmissionPolicyBinding.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicyBindingList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicyBindingList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicyBindingList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MutatingAdmissionPolicyBindingList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:MutatingAdmissionPolicyBindingSpec",
      "type": "api_object",
      "title": "MutatingAdmissionPolicyBindingSpec",
      "summary": "MutatingAdmissionPolicyBindingSpec defines the specification of the MutatingAdmissionPolicyBinding.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "matchResources",
          "paramRef",
          "policyName"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicyBindingSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicyBindingSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicyBindingSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MutatingAdmissionPolicyBindingSpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:MutatingAdmissionPolicyList",
      "type": "api_object",
      "title": "MutatingAdmissionPolicyList",
      "summary": "MutatingAdmissionPolicyList is a list of MutatingAdmissionPolicy.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicyList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicyList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicyList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MutatingAdmissionPolicyList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:MutatingAdmissionPolicySpec",
      "type": "api_object",
      "title": "MutatingAdmissionPolicySpec",
      "summary": "MutatingAdmissionPolicySpec defines the desired behavior of the admission policy.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "failurePolicy",
          "matchConditions",
          "matchConstraints",
          "mutations",
          "paramKind",
          "reinvocationPolicy",
          "variables"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicySpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicySpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicySpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MutatingAdmissionPolicySpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:MutatingWebhook",
      "type": "api_object",
      "title": "MutatingWebhook",
      "summary": "MutatingWebhook describes an admission webhook and the resources and operations it applies to.",
      "body": "A MutatingWebhook is a webhook that mutates incoming requests.\n\n**Why it matters**\nIt allows for the modification of objects before they are admitted into a cluster.\n\n**Key facts**\n- Defined in io.k8s.api.admissionregistration.v1 package\n- Used to mutate incoming requests\n\n**Common pitfalls**\n- Incorrectly configured webhooks can lead to security vulnerabilities\n\n**Related**\nMutatingAdmissionPolicySpec, Webhook",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "admissionReviewVersions",
          "clientConfig",
          "failurePolicy",
          "matchConditions",
          "matchPolicy",
          "name",
          "namespaceSelector",
          "objectSelector",
          "reinvocationPolicy",
          "rules",
          "sideEffects",
          "timeoutSeconds"
        ],
        "field_count": 12,
        "def_name": "io.k8s.api.admissionregistration.v1.MutatingWebhook"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingWebhook"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:MutatingWebhookConfiguration",
      "type": "api_object",
      "title": "MutatingWebhookConfiguration",
      "summary": "MutatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and may change the object.",
      "body": "A MutatingWebhookConfiguration is an object that specifies how to configure a mutating webhook.\n\n**Why it matters**\nIt allows for the configuration of mutating webhooks in a cluster.\n\n**Key facts**\n- Defined in io.k8s.api.admissionregistration.v1 package\n- Used to configure mutating webhooks\n\n**Common pitfalls**\n- Incorrectly configured configurations can lead to security vulnerabilities\n\n**Related**\nMutatingWebhook, WebhookConfiguration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "webhooks"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.MutatingWebhookConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingWebhookConfiguration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:MutatingWebhookConfigurationList",
      "type": "api_object",
      "title": "MutatingWebhookConfigurationList",
      "summary": "MutatingWebhookConfigurationList is a list of MutatingWebhookConfiguration.",
      "body": "A MutatingWebhookConfigurationList is a list of mutating webhook configurations.\n\n**Why it matters**\nIt allows for the management of multiple mutating webhook configurations in a cluster.\n\n**Key facts**\n- Defined in io.k8s.api.admissionregistration.v1 package\n- Used to manage lists of mutating webhook configurations\n\n**Common pitfalls**\n- Incorrectly managed lists can lead to security vulnerabilities\n\n**Related**\nMutatingWebhookConfiguration, WebhookConfigurationList",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.MutatingWebhookConfigurationList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingWebhookConfigurationList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Mutation",
      "type": "api_object",
      "title": "Mutation",
      "summary": "Mutation specifies the CEL expression which is used to apply the Mutation.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "applyConfiguration",
          "jsonPatch",
          "patchType"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.admissionregistration.v1.Mutation"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.Mutation"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.Mutation"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.Mutation"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:NamedRuleWithOperations",
      "type": "api_object",
      "title": "NamedRuleWithOperations",
      "summary": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiGroups",
          "apiVersions",
          "operations",
          "resourceNames",
          "resources",
          "scope"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.admissionregistration.v1.NamedRuleWithOperations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.NamedRuleWithOperations"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.NamedRuleWithOperations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ParamKind",
      "type": "api_object",
      "title": "ParamKind",
      "summary": "ParamKind is a tuple of Group Kind and Version.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.admissionregistration.v1.ParamKind"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ParamKind"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.ParamKind"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.ParamKind"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ParamRef",
      "type": "api_object",
      "title": "ParamRef",
      "summary": "ParamRef describes how to locate the params to be used as input to expressions of rules applied by a policy binding.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "name",
          "namespace",
          "parameterNotFoundAction",
          "selector"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.ParamRef"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ParamRef"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.ParamRef"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.ParamRef"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:RuleWithOperations",
      "type": "api_object",
      "title": "RuleWithOperations",
      "summary": "RuleWithOperations is a tuple of Operations and Resources. It is recommended to make sure that all the tuple expansions are valid.",
      "body": "A RuleWithOperations is an object used in admission policies to define rules for validating or mutating resources.\n\n**Why it matters**\nIt allows developers to specify the operations (e.g., CREATE, UPDATE) that trigger a rule's execution.\n\n**Key facts**\n- Used in admission policies\n- Defines rules for validating or mutating resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiGroups",
          "apiVersions",
          "operations",
          "resources",
          "scope"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.admissionregistration.v1.RuleWithOperations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.RuleWithOperations"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceReference",
      "type": "api_object",
      "title": "ServiceReference",
      "summary": "ServiceReference holds a reference to Service.legacy.k8s.io",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "name",
          "namespace",
          "path",
          "port"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.ServiceReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ServiceReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ServiceReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.ServiceReference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:TypeChecking",
      "type": "api_object",
      "title": "TypeChecking",
      "summary": "TypeChecking contains results of type checking the expressions in the ValidatingAdmissionPolicy",
      "body": "TypeChecking is an object used in admission policies to specify type checking rules.\n\n**Why it matters**\nIt allows developers to enforce specific types for resources, ensuring consistency and reducing errors.\n\n**Key facts**\n- Used in admission policies\n- Enforces specific types for resources\n\n**Related**\napi:ValidatingAdmissionPolicy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "expressionWarnings"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.admissionregistration.v1.TypeChecking"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.TypeChecking"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidatingAdmissionPolicy",
      "type": "api_object",
      "title": "ValidatingAdmissionPolicy",
      "summary": "ValidatingAdmissionPolicy describes the definition of an admission validation policy that accepts or rejects an object without changing it.",
      "body": "A ValidatingAdmissionPolicy is an object used to define admission policies that validate resources.\n\n**Why it matters**\nIt enables developers to enforce rules and constraints on resources, ensuring they meet specific requirements.\n\n**Key facts**\n- Used to define admission policies\n- Enforces rules and constraints on resources\n\n**Related**\napi:TypeChecking",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidatingAdmissionPolicyBinding",
      "type": "api_object",
      "title": "ValidatingAdmissionPolicyBinding",
      "summary": "ValidatingAdmissionPolicyBinding binds the ValidatingAdmissionPolicy with paramerized resources. ValidatingAdmissionPolicyBinding and parameter CRDs together define how cluster administrators configure policies for clusters.\n\nFor a given admission request, each binding will cause its policy to be evaluated N times, where N is 1 for policies/bindings that don't use params, otherwise N is the number of parameters selected by the binding.\n\nThe CEL expressions of a policy must have a computed CEL cost below the maximum CEL budget. Each evaluation of the policy is given an independent CEL cost budget. Adding/removing policies, bindings, or params can not affect whether a given (policy, binding, param) combination is within its own CEL budget.",
      "body": "A ValidatingAdmissionPolicyBinding is an API resource that represents a binding between a ValidatingAdmissionPolicy and a namespace.\n\n**Why it matters**\nIt allows administrators to enforce validation policies on specific namespaces.\n\n**Key facts**\n- Represents a binding between a ValidatingAdmissionPolicy and a namespace\n- Enforces validation policies on specific namespaces\n\n**Common pitfalls**\n- Incorrectly configured bindings can lead to policy enforcement errors\n\n**Related**\nValidatingAdmissionPolicy, Namespace",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyBinding"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyBinding"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidatingAdmissionPolicyBindingList",
      "type": "api_object",
      "title": "ValidatingAdmissionPolicyBindingList",
      "summary": "ValidatingAdmissionPolicyBindingList is a list of ValidatingAdmissionPolicyBinding.",
      "body": "A ValidatingAdmissionPolicyBindingList is an API resource that represents a list of ValidatingAdmissionPolicyBindings.\n\n**Why it matters**\nIt allows administrators to manage and view multiple bindings at once.\n\n**Key facts**\n- Represents a list of ValidatingAdmissionPolicyBindings\n- Allows management and viewing of multiple bindings\n\n**Common pitfalls**\n- Large lists can be difficult to manage and navigate\n\n**Related**\nValidatingAdmissionPolicyBinding, Namespace",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyBindingList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyBindingList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidatingAdmissionPolicyBindingSpec",
      "type": "api_object",
      "title": "ValidatingAdmissionPolicyBindingSpec",
      "summary": "ValidatingAdmissionPolicyBindingSpec is the specification of the ValidatingAdmissionPolicyBinding.",
      "body": "A ValidatingAdmissionPolicyBindingSpec is an API resource that represents the specification of a ValidatingAdmissionPolicyBinding.\n\n**Why it matters**\nIt defines the configuration and settings for a binding.\n\n**Key facts**\n- Represents the specification of a ValidatingAdmissionPolicyBinding\n- Defines configuration and settings for a binding\n\n**Common pitfalls**\n- Incorrectly configured specifications can lead to policy enforcement errors\n\n**Related**\nValidatingAdmissionPolicyBinding, Namespace",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "matchResources",
          "paramRef",
          "policyName",
          "validationActions"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyBindingSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyBindingSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidatingAdmissionPolicyList",
      "type": "api_object",
      "title": "ValidatingAdmissionPolicyList",
      "summary": "ValidatingAdmissionPolicyList is a list of ValidatingAdmissionPolicy.",
      "body": "A ValidatingAdmissionPolicyList is an API resource that represents a list of ValidatingAdmissionPolicies.\n\n**Why it matters**\nIt allows administrators to manage and view multiple policies at once.\n\n**Key facts**\n- Represents a list of ValidatingAdmissionPolicies\n- Allows management and viewing of multiple policies\n\n**Common pitfalls**\n- Large lists can be difficult to manage and navigate\n\n**Related**\nValidatingAdmissionPolicy, Namespace",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidatingAdmissionPolicySpec",
      "type": "api_object",
      "title": "ValidatingAdmissionPolicySpec",
      "summary": "ValidatingAdmissionPolicySpec is the specification of the desired behavior of the AdmissionPolicy.",
      "body": "A specification for a Validating Admission Policy, used to validate incoming requests.\n\n**Why it matters**\nEnsures that incoming requests meet the specified validation rules.\n\n**Key facts**\n- Defined in io.k8s.api.admissionregistration.v1 package\n- Used to validate incoming requests\n\n**Common pitfalls**\n- Incorrectly configured policies can block valid requests\n\n**Related**\nValidating Admission Policy Status, Validating Webhook Configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "auditAnnotations",
          "failurePolicy",
          "matchConditions",
          "matchConstraints",
          "paramKind",
          "validations",
          "variables"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicySpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicySpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidatingAdmissionPolicyStatus",
      "type": "api_object",
      "title": "ValidatingAdmissionPolicyStatus",
      "summary": "ValidatingAdmissionPolicyStatus represents the status of an admission validation policy.",
      "body": "The status of a Validating Admission Policy, indicating its current state.\n\n**Why it matters**\nProvides information about the policy's status and any errors that may have occurred.\n\n**Key facts**\n- Defined in io.k8s.api.admissionregistration.v1 package\n- Indicates the policy's current state\n\n**Common pitfalls**\n- Misinterpretation of status can lead to incorrect conclusions\n\n**Related**\nValidating Admission Policy Spec, Validating Webhook Configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "conditions",
          "observedGeneration",
          "typeChecking"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidatingWebhook",
      "type": "api_object",
      "title": "ValidatingWebhook",
      "summary": "ValidatingWebhook describes an admission webhook and the resources and operations it applies to.",
      "body": "A webhook that validates incoming requests, ensuring they meet the specified criteria.\n\n**Why it matters**\nEnsures that incoming requests are valid and compliant with the policy's rules.\n\n**Key facts**\n- Defined in io.k8s.api.admissionregistration.v1 package\n- Used to validate incoming requests\n\n**Common pitfalls**\n- Incorrectly configured webhooks can block valid requests\n\n**Related**\nValidating Admission Policy Spec, Validating Webhook Configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "admissionReviewVersions",
          "clientConfig",
          "failurePolicy",
          "matchConditions",
          "matchPolicy",
          "name",
          "namespaceSelector",
          "objectSelector",
          "rules",
          "sideEffects",
          "timeoutSeconds"
        ],
        "field_count": 11,
        "def_name": "io.k8s.api.admissionregistration.v1.ValidatingWebhook"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingWebhook"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidatingWebhookConfiguration",
      "type": "api_object",
      "title": "ValidatingWebhookConfiguration",
      "summary": "ValidatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and object without changing it.",
      "body": "A configuration for a Validating Webhook, specifying its behavior and rules.\n\n**Why it matters**\nDetermines how the webhook validates incoming requests and what actions to take if they fail validation.\n\n**Key facts**\n- Defined in io.k8s.api.admissionregistration.v1 package\n- Specifies the webhook's behavior\n\n**Common pitfalls**\n- Incorrectly configured configurations can lead to security vulnerabilities\n\n**Related**\nValidating Admission Policy Spec, Validating Webhook",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "webhooks"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfiguration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidatingWebhookConfigurationList",
      "type": "api_object",
      "title": "ValidatingWebhookConfigurationList",
      "summary": "ValidatingWebhookConfigurationList is a list of ValidatingWebhookConfiguration.",
      "body": "A list of ValidatingWebhookConfigurations, used to configure validating webhooks.\n\n**Why it matters**\nValidating webhooks are a way to enforce policies and validate resources before they're admitted into the cluster.\n\n**Key facts**\n- Extends ListMeta\n- Contains a list of ValidatingWebhookConfigurations\n\n**Common pitfalls**\n- Misconfigured validating webhooks can lead to resource admission failures\n\n**Related**\nValidatingWebhookConfiguration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfigurationList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfigurationList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Validation",
      "type": "api_object",
      "title": "Validation",
      "summary": "Validation specifies the CEL expression which is used to apply the validation.",
      "body": "A validation object, used to specify a validation rule for a webhook.\n\n**Why it matters**\nValidations are used to enforce policies and validate resources before they're admitted into the cluster.\n\n**Key facts**\n- Contains a name, namespace, and rules\n- Used in ValidatingWebhookConfigurations\n\n**Common pitfalls**\n- Invalid validation rules can lead to resource admission failures\n\n**Related**\nValidatingWebhookConfiguration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "expression",
          "message",
          "messageExpression",
          "reason"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.admissionregistration.v1.Validation"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.Validation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Variable",
      "type": "api_object",
      "title": "Variable",
      "summary": "Variable is the definition of a variable that is used for composition. A variable is defined as a named expression.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "expression",
          "name"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.admissionregistration.v1.Variable"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.Variable"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.Variable"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.Variable"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:WebhookClientConfig",
      "type": "api_object",
      "title": "WebhookClientConfig",
      "summary": "WebhookClientConfig contains the information to make a TLS connection with the webhook",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "admissionregistration",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "admissionregistration",
        "version": "v1",
        "fields": [
          "caBundle",
          "service",
          "url"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.admissionregistration.v1.WebhookClientConfig"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.WebhookClientConfig"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.WebhookClientConfig"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ServerStorageVersion",
      "type": "api_object",
      "title": "ServerStorageVersion",
      "summary": "An API server instance reports the version it can decode and the version it encodes objects to when persisting objects in the backend.",
      "body": "A ServerStorageVersion is an object that represents the storage version of a server in Kubernetes.\n\n**Why it matters**\nIt allows for management and tracking of server storage versions in Kubernetes.\n\n**Key facts**\n- Located in the apiserverinternal.v1alpha1 package (source: swagger.json)\n- Used to represent server storage versions in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiserverinternal"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiserverinternal",
        "version": "v1alpha1",
        "fields": [
          "apiServerID",
          "decodableVersions",
          "encodingVersion",
          "servedVersions"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.apiserverinternal.v1alpha1.ServerStorageVersion"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.ServerStorageVersion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StorageVersion",
      "type": "api_object",
      "title": "StorageVersion",
      "summary": "A StorageVersion is an object that represents the version of a storage system in Kubernetes.",
      "body": "A StorageVersion is an object that represents the version of a storage system in Kubernetes.\n\n**Why it matters**\nIt enables management and tracking of storage versions in Kubernetes.\n\n**Key facts**\n- Located in the apiserverinternal.v1alpha1 package (source: swagger.json)\n- Used to represent storage versions in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiserverinternal"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiserverinternal",
        "version": "v1alpha1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersion"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StorageVersionCondition",
      "type": "api_object",
      "title": "StorageVersionCondition",
      "summary": "Describes the state of the storageVersion at a certain point.",
      "body": "Represents the condition of a storage version.\n\n**Why it matters**\nIndicates whether a storage version is supported or not.\n\n**Key facts**\n- Used in StorageVersionList to track conditions.\n- Has a type and status field.\n\n**Common pitfalls**\n- Misinterpretation of its status can lead to incorrect decisions.\n\n**Related**\nStorageVersionList, StorageVersionSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiserverinternal"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiserverinternal",
        "version": "v1alpha1",
        "fields": [
          "lastTransitionTime",
          "message",
          "observedGeneration",
          "reason",
          "status",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StorageVersionList",
      "type": "api_object",
      "title": "StorageVersionList",
      "summary": "A list of storage versions.",
      "body": "A list of storage versions.\n\n**Why it matters**\nProvides information about supported storage versions.\n\n**Key facts**\n- Contains a list of StorageVersion objects.\n- Used to track conditions and status.\n\n**Common pitfalls**\n- Not checking the condition of each version can lead to compatibility issues.\n\n**Related**\nStorageVersionCondition, StorageVersionSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiserverinternal"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiserverinternal",
        "version": "v1alpha1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StorageVersionSpec",
      "type": "api_object",
      "title": "StorageVersionSpec",
      "summary": "Describes a storage version.",
      "body": "Describes a storage version.\n\n**Why it matters**\nProvides metadata about a storage version.\n\n**Key facts**\n- Has fields for name, description, and supported APIs.\n\n**Common pitfalls**\n- Inaccurate or incomplete specification can cause issues with data consistency.\n\n**Related**\nStorageVersionList, StorageVersionStatus",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiserverinternal"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiserverinternal",
        "version": "v1alpha1",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StorageVersionStatus",
      "type": "api_object",
      "title": "StorageVersionStatus",
      "summary": "API server instances report the versions they can decode and the version they encode objects to when persisting objects in the backend.",
      "body": "Reports the status of a storage version.\n\n**Why it matters**\nIndicates whether a storage version is supported or not.\n\n**Key facts**\n- Has fields for observed generation and conditions.\n\n**Common pitfalls**\n- Not checking the status can lead to incorrect decisions about data compatibility.\n\n**Related**\nStorageVersionList, StorageVersionSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiserverinternal"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiserverinternal",
        "version": "v1alpha1",
        "fields": [
          "commonEncodingVersion",
          "conditions",
          "storageVersions"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ControllerRevision",
      "type": "api_object",
      "title": "ControllerRevision",
      "summary": "ControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.",
      "body": "A ControllerRevision is an immutable snapshot of an application's desired state.\n\n**Why it matters**\nIt provides a way to manage and track changes to an application's configuration.\n\n**Key facts**\n- Immutable\n- Describes the desired state of an application\n\n**Common pitfalls**\n- Changes to a revision are not reflected in previous revisions\n\n**Related**\nControllerRevisionList",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "apiVersion",
          "data",
          "kind",
          "metadata",
          "revision"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.apps.v1.ControllerRevision"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ControllerRevision"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ControllerRevisionList",
      "type": "api_object",
      "title": "ControllerRevisionList",
      "summary": "ControllerRevisionList is a resource containing a list of ControllerRevision objects.",
      "body": "A list of ControllerRevisions.\n\n**Why it matters**\nIt allows for the management and tracking of multiple revisions of an application's configuration.\n\n**Key facts**\n- Collection of ControllerRevisions\n- Used to manage multiple revisions\n\n**Common pitfalls**\n- Complexity can arise when managing large numbers of revisions\n\n**Related**\nControllerRevision",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.apps.v1.ControllerRevisionList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ControllerRevisionList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DaemonSet",
      "type": "api_object",
      "title": "DaemonSet",
      "summary": "DaemonSet represents the configuration of a daemon set.",
      "body": "A DaemonSet is a workload API object that manages the deployment and scaling of application containers.\n\n**Why it matters**\nIt ensures that a specified number of replicas of an application are running at all times.\n\n**Key facts**\n- Ensures a specified number of replicas\n- Manages application containers\n\n**Common pitfalls**\n- Can be resource-intensive if not properly configured",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.apps.v1.DaemonSet"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DaemonSetCondition",
      "type": "api_object",
      "title": "DaemonSetCondition",
      "summary": "DaemonSetCondition describes the state of a DaemonSet at a certain point.",
      "body": "A condition that indicates the status of a DaemonSet.\n\n**Why it matters**\nIt provides insight into the health and status of a DaemonSet.\n\n**Key facts**\n- Indicates the status of a DaemonSet\n- Provides insight into health\n\n**Common pitfalls**\n- Can be complex to interpret if not properly understood\n\n**Related**\nDaemonSet",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.apps.v1.DaemonSetCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSetCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DaemonSetList",
      "type": "api_object",
      "title": "DaemonSetList",
      "summary": "DaemonSetList is a collection of daemon sets.",
      "body": "A list of DaemonSets, which are used to manage and maintain daemon pods in a cluster.\n\n**Why it matters**\nProvides a way to manage multiple DaemonSets at once.\n\n**Key facts**\n- Represents a collection of DaemonSets.\n- Used for listing and managing DaemonSets.\n\n**Related**\nDaemonSet, Pod",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.apps.v1.DaemonSetList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSetList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DaemonSetSpec",
      "type": "api_object",
      "title": "DaemonSetSpec",
      "summary": "DaemonSetSpec is the specification of a daemon set.",
      "body": "The specification of a DaemonSet, which defines the desired state of the daemon pods.\n\n**Why it matters**\nDetermines how the daemon pods are created and managed.\n\n**Key facts**\n- Represents the desired state of a DaemonSet.\n- Used to specify the configuration of daemon pods.\n\n**Related**\nDaemonSet, Pod",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "minReadySeconds",
          "revisionHistoryLimit",
          "selector",
          "template",
          "updateStrategy"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.apps.v1.DaemonSetSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSetSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DaemonSetStatus",
      "type": "api_object",
      "title": "DaemonSetStatus",
      "summary": "DaemonSetStatus represents the current status of a daemon set.",
      "body": "The status of a DaemonSet, which reflects the current state of the daemon pods.\n\n**Why it matters**\nProvides information about the current state of the daemon pods.\n\n**Key facts**\n- Represents the current state of a DaemonSet.\n- Used to report the status of daemon pods.\n\n**Related**\nDaemonSet, Pod",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "collisionCount",
          "conditions",
          "currentNumberScheduled",
          "desiredNumberScheduled",
          "numberAvailable",
          "numberMisscheduled",
          "numberReady",
          "numberUnavailable",
          "observedGeneration",
          "updatedNumberScheduled"
        ],
        "field_count": 10,
        "def_name": "io.k8s.api.apps.v1.DaemonSetStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSetStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DaemonSetUpdateStrategy",
      "type": "api_object",
      "title": "DaemonSetUpdateStrategy",
      "summary": "DaemonSetUpdateStrategy is a struct used to control the update strategy for a DaemonSet.",
      "body": "The strategy used to update the daemon pods in a DaemonSet.\n\n**Why it matters**\nDetermines how the daemon pods are updated and replaced.\n\n**Key facts**\n- Represents the strategy for updating daemon pods.\n- Used to specify the update behavior of daemon pods.\n\n**Related**\nDaemonSet, Pod",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "rollingUpdate",
          "type"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.apps.v1.DaemonSetUpdateStrategy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSetUpdateStrategy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Deployment",
      "type": "api_object",
      "title": "Deployment",
      "summary": "Deployment enables declarative updates for Pods and ReplicaSets.",
      "body": "A Deployment is an immutable, serializable, and controllable configuration of one or more ReplicaSets.\n\n**Why it matters**\nDeployments provide a way to manage the rollout of new versions of an application with zero downtime.\n\n**Key facts**\n- Represents a set of rolling updates for a deployment\n- Immutable and serializable\n\n**Related**\napi:DeploymentList, api:DeploymentCondition",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.apps.v1.Deployment"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.Deployment"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DeploymentCondition",
      "type": "api_object",
      "title": "DeploymentCondition",
      "summary": "DeploymentCondition describes the state of a deployment at a certain point.",
      "body": "A DeploymentCondition represents the state of a deployment at a certain point in time.\n\n**Why it matters**\nDeploymentConditions provide insight into the status and health of a deployment.\n\n**Key facts**\n- Represents the state of a deployment\n- Can be one of several types (e.g. Available, Progressing)\n\n**Related**\napi:Deployment",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "lastUpdateTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.apps.v1.DeploymentCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DeploymentCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DeploymentList",
      "type": "api_object",
      "title": "DeploymentList",
      "summary": "DeploymentList is a list of Deployments.",
      "body": "A list of Deployments.\n\n**Why it matters**\nThe DeploymentList provides a way to retrieve multiple deployments at once.\n\n**Key facts**\n- A list of Deployments\n- Can be used to retrieve multiple deployments\n\n**Related**\napi:Deployment",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.apps.v1.DeploymentList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DeploymentList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DeploymentSpec",
      "type": "api_object",
      "title": "DeploymentSpec",
      "summary": "DeploymentSpec is the specification of the desired behavior of the Deployment.",
      "body": "The specification of a deployment.\n\n**Why it matters**\nThe DeploymentSpec provides the configuration for a deployment.\n\n**Key facts**\n- Represents the configuration for a deployment\n- Includes fields such as replicas and selector\n\n**Related**\napi:Deployment",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "minReadySeconds",
          "paused",
          "progressDeadlineSeconds",
          "replicas",
          "revisionHistoryLimit",
          "selector",
          "strategy",
          "template"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.apps.v1.DeploymentSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DeploymentSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DeploymentStatus",
      "type": "api_object",
      "title": "DeploymentStatus",
      "summary": "DeploymentStatus is the most recently observed status of the Deployment.",
      "body": "Represents the current status of a Deployment.\n\n**Why it matters**\nProvides information about the deployment's progress and any issues encountered.\n\n**Key facts**\n- Includes fields such as availableReplicas, unavailableReplicas, and updatedReplicas.\n\n**Common pitfalls**\n- Not being aware of the current status can lead to delayed troubleshooting or incorrect decision-making.\n\n**Related**\nDeployment, Rollout",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "availableReplicas",
          "collisionCount",
          "conditions",
          "observedGeneration",
          "readyReplicas",
          "replicas",
          "terminatingReplicas",
          "unavailableReplicas",
          "updatedReplicas"
        ],
        "field_count": 9,
        "def_name": "io.k8s.api.apps.v1.DeploymentStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DeploymentStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DeploymentStrategy",
      "type": "api_object",
      "title": "DeploymentStrategy",
      "summary": "DeploymentStrategy describes how to replace existing pods with new ones.",
      "body": "Describes how a Deployment should be updated.\n\n**Why it matters**\nDetermines the strategy for rolling out updates to replicas.\n\n**Key facts**\n- Can be either RollingUpdate or Recreate.\n\n**Common pitfalls**\n- Choosing an inappropriate strategy can lead to downtime or inconsistent application behavior.\n\n**Related**\nDeployment, RollingUpdate",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "rollingUpdate",
          "type"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.apps.v1.DeploymentStrategy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DeploymentStrategy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ReplicaSet",
      "type": "api_object",
      "title": "ReplicaSet",
      "summary": "ReplicaSet ensures that a specified number of pod replicas are running at any given time.",
      "body": "Ensures that a specified number of replicas are running at any given time.\n\n**Why it matters**\nGuarantees the desired state of an application by managing pod replicas.\n\n**Key facts**\n- Maintains a specified number of identical pods.\n\n**Common pitfalls**\n- Not being aware of the replica set's status can lead to inconsistent application behavior or downtime.\n\n**Related**\nDeployment, Pod",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.apps.v1.ReplicaSet"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ReplicaSet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ReplicaSetCondition",
      "type": "api_object",
      "title": "ReplicaSetCondition",
      "summary": "ReplicaSetCondition describes the state of a replica set at a certain point.",
      "body": "Describes the current state of a ReplicaSet.\n\n**Why it matters**\nProvides information about the replica set's status and any issues encountered.\n\n**Key facts**\n- Includes fields such as type, status, and lastTransitionTime.\n\n**Common pitfalls**\n- Not being aware of the condition can lead to delayed troubleshooting or incorrect decision-making.\n\n**Related**\nReplicaSet, Deployment",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.apps.v1.ReplicaSetCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ReplicaSetCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ReplicaSetList",
      "type": "api_object",
      "title": "ReplicaSetList",
      "summary": "ReplicaSetList is a collection of ReplicaSets.",
      "body": "ReplicaSetList is an API object that represents a list of ReplicaSets.\n\n**Why it matters**\nIt allows you to manage multiple ReplicaSets as a single entity.\n\n**Key facts**\n- Extends the List interface\n- Contains a list of ReplicaSets\n\n**Related**\nReplicaSet",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.apps.v1.ReplicaSetList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ReplicaSetList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ReplicaSetSpec",
      "type": "api_object",
      "title": "ReplicaSetSpec",
      "summary": "ReplicaSetSpec is the specification of a ReplicaSet.",
      "body": "ReplicaSetSpec is an API object that represents the specification of a ReplicaSet.\n\n**Why it matters**\nIt defines the desired state of a ReplicaSet, including its replicas and selector.\n\n**Key facts**\n- Contains a selector to identify the pods to manage\n- Defines the number of replicas to maintain\n\n**Related**\nReplicaSet",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "minReadySeconds",
          "replicas",
          "selector",
          "template"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.apps.v1.ReplicaSetSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ReplicaSetSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ReplicaSetStatus",
      "type": "api_object",
      "title": "ReplicaSetStatus",
      "summary": "ReplicaSetStatus represents the current status of a ReplicaSet.",
      "body": "ReplicaSetStatus is an API object that represents the status of a ReplicaSet.\n\n**Why it matters**\nIt provides information about the current state of a ReplicaSet, including its replicas and available resources.\n\n**Key facts**\n- Contains information about the current replica count\n- Reports any errors or conditions\n\n**Related**\nReplicaSet",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "availableReplicas",
          "conditions",
          "fullyLabeledReplicas",
          "observedGeneration",
          "readyReplicas",
          "replicas",
          "terminatingReplicas"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.apps.v1.ReplicaSetStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ReplicaSetStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RollingUpdateDaemonSet",
      "type": "api_object",
      "title": "RollingUpdateDaemonSet",
      "summary": "Spec to control the desired behavior of daemon set rolling update.",
      "body": "RollingUpdateDaemonSet is an API object that represents a rolling update strategy for a DaemonSet.\n\n**Why it matters**\nIt allows you to update a DaemonSet by replacing one instance at a time, minimizing downtime.\n\n**Key facts**\n- Defines the maximum number of pods to be updated simultaneously\n- Specifies the number of replicas to maintain during the update\n\n**Related**\nDaemonSet",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "maxSurge",
          "maxUnavailable"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.apps.v1.RollingUpdateDaemonSet"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.RollingUpdateDaemonSet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RollingUpdateDeployment",
      "type": "api_object",
      "title": "RollingUpdateDeployment",
      "summary": "Spec to control the desired behavior of rolling update.",
      "body": "A configuration for rolling updates of Deployments.\n\n**Why it matters**\nAllows for zero-downtime updates to Deployments.\n\n**Key facts**\n- Configures the roll-out strategy for a Deployment.\n- Can be used with Deployments to manage updates.\n\n**Common pitfalls**\n- Incorrectly configured can lead to failed roll-outs.\n\n**Related**\nDeployments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "maxSurge",
          "maxUnavailable"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.apps.v1.RollingUpdateDeployment"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.RollingUpdateDeployment"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RollingUpdateStatefulSetStrategy",
      "type": "api_object",
      "title": "RollingUpdateStatefulSetStrategy",
      "summary": "RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType.",
      "body": "A configuration for rolling updates of StatefulSets.\n\n**Why it matters**\nAllows for zero-downtime updates to StatefulSets.\n\n**Key facts**\n- Configures the roll-out strategy for a StatefulSet.\n- Can be used with StatefulSets to manage updates.\n\n**Common pitfalls**\n- Incorrectly configured can lead to failed roll-outs.\n\n**Related**\nStatefulSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "maxUnavailable",
          "partition"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.apps.v1.RollingUpdateStatefulSetStrategy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.RollingUpdateStatefulSetStrategy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StatefulSet",
      "type": "api_object",
      "title": "StatefulSet",
      "summary": "StatefulSet represents a set of pods with consistent identities. Identities are defined as:\n  - Network: A single stable DNS and hostname.\n  - Storage: As many VolumeClaims as requested.\n\nThe StatefulSet guarantees that a given network identity will always map to the same storage identity.",
      "body": "A workload API object that manages stateful applications.\n\n**Why it matters**\nEnsures consistent and ordered deployment of stateful applications.\n\n**Key facts**\n- Manages stateful applications.\n- Provides ordered deployment and scaling.\n\n**Common pitfalls**\n- Requires careful configuration to avoid data loss or inconsistencies.\n\n**Related**\nStatefulSetCondition",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.apps.v1.StatefulSet"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSet"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StatefulSetCondition",
      "type": "api_object",
      "title": "StatefulSetCondition",
      "summary": "StatefulSetCondition describes the state of a statefulset at a certain point.",
      "body": "A condition that can be true, false or unknown for a StatefulSet.\n\n**Why it matters**\nProvides insight into the health and status of a StatefulSet.\n\n**Key facts**\n- Can be used to monitor the health of a StatefulSet.\n- Has three possible states: true, false, or unknown.\n\n**Common pitfalls**\n- May not always reflect the current state of the StatefulSet.\n\n**Related**\nStatefulSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.apps.v1.StatefulSetCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StatefulSetList",
      "type": "api_object",
      "title": "StatefulSetList",
      "summary": "StatefulSetList is a collection of StatefulSets.",
      "body": "A list of StatefulSets.\n\n**Why it matters**\nThis API represents a collection of StatefulSets, which can be used to manage multiple stateful applications in a cluster.\n\n**Key facts**\n- Represents a collection of StatefulSets\n- Used for managing multiple stateful applications",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.apps.v1.StatefulSetList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StatefulSetOrdinals",
      "type": "api_object",
      "title": "StatefulSetOrdinals",
      "summary": "StatefulSetOrdinals describes the policy used for replica ordinal assignment in this StatefulSet.",
      "body": "The ordinals of the StatefulSet.\n\n**Why it matters**\nThis API represents the ordinals of a StatefulSet, which can be used to manage the replicas and their corresponding pod names.\n\n**Key facts**\n- Represents the ordinals of a StatefulSet\n- Used for managing replicas and their corresponding pod names",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "start"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.apps.v1.StatefulSetOrdinals"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetOrdinals"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StatefulSetPersistentVolumeClaimRetentionPolicy",
      "type": "api_object",
      "title": "StatefulSetPersistentVolumeClaimRetentionPolicy",
      "summary": "StatefulSetPersistentVolumeClaimRetentionPolicy describes the policy used for PVCs created from the StatefulSet VolumeClaimTemplates.",
      "body": "The policy for deleting Persistent Volume Claims.\n\n**Why it matters**\nThis API represents the policy for deleting Persistent Volume Claims, which can be used to manage the retention of PVCs in a StatefulSet.\n\n**Key facts**\n- Represents the policy for deleting PVCs\n- Used for managing PVC retention",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "whenDeleted",
          "whenScaled"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.apps.v1.StatefulSetPersistentVolumeClaimRetentionPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetPersistentVolumeClaimRetentionPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StatefulSetSpec",
      "type": "api_object",
      "title": "StatefulSetSpec",
      "summary": "A StatefulSetSpec is the specification of a StatefulSet.",
      "body": "The specification of a StatefulSet.\n\n**Why it matters**\nThis API represents the specification of a StatefulSet, which can be used to define the desired state of a stateful application in a cluster.\n\n**Key facts**\n- Represents the specification of a StatefulSet\n- Used for defining the desired state of a stateful application",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "minReadySeconds",
          "ordinals",
          "persistentVolumeClaimRetentionPolicy",
          "podManagementPolicy",
          "replicas",
          "revisionHistoryLimit",
          "selector",
          "serviceName",
          "template",
          "updateStrategy",
          "volumeClaimTemplates"
        ],
        "field_count": 11,
        "def_name": "io.k8s.api.apps.v1.StatefulSetSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StatefulSetStatus",
      "type": "api_object",
      "title": "StatefulSetStatus",
      "summary": "StatefulSetStatus represents the current state of a StatefulSet.",
      "body": "Represents the current state of a StatefulSet.\n\n**Why it matters**\nProvides information about the status of a StatefulSet, such as its replicas and conditions.\n\n**Key facts**\n- Contains a list of replica statuses\n- Includes conditions that describe the overall state of the StatefulSet\n\n**Related**\nStatefulSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "availableReplicas",
          "collisionCount",
          "conditions",
          "currentReplicas",
          "currentRevision",
          "observedGeneration",
          "readyReplicas",
          "replicas",
          "updateRevision",
          "updatedReplicas"
        ],
        "field_count": 10,
        "def_name": "io.k8s.api.apps.v1.StatefulSetStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StatefulSetUpdateStrategy",
      "type": "api_object",
      "title": "StatefulSetUpdateStrategy",
      "summary": "StatefulSetUpdateStrategy indicates the strategy that the StatefulSet controller will use to perform updates. It includes any additional parameters necessary to perform the update for the indicated strategy.",
      "body": "Describes how to update a StatefulSet.\n\n**Why it matters**\nDetermines how the StatefulSet is updated, such as whether it should be rolled out or replaced.\n\n**Key facts**\n- Can be either RollingUpdate or OnDelete\n- Specifies what happens when a new revision is created\n\n**Related**\nStatefulSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apps"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apps",
        "version": "v1",
        "fields": [
          "rollingUpdate",
          "type"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.apps.v1.StatefulSetUpdateStrategy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetUpdateStrategy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:BoundObjectReference",
      "type": "api_object",
      "title": "BoundObjectReference",
      "summary": "BoundObjectReference is a reference to an object that a token is bound to.",
      "body": "Represents a reference to an object that has been bound.\n\n**Why it matters**\nUsed in authentication and authorization to refer to objects such as pods or services.\n\n**Key facts**\n- Includes the name of the object being referenced\n- References the API group and version of the object\n\n**Related**\nAuthentication, Authorization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authentication",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authentication",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "name",
          "uid"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.authentication.v1.BoundObjectReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.BoundObjectReference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SelfSubjectReview",
      "type": "api_object",
      "title": "SelfSubjectReview",
      "summary": "SelfSubjectReview contains the user information that the kube-apiserver has about the user making this request. When using impersonation, users will receive the user info of the user being impersonated.  If impersonation or request header authentication is used, any extra keys will have their case ignored and returned as lowercase.",
      "body": "Represents a review of the current user's permissions.\n\n**Why it matters**\nUsed in authentication and authorization to determine whether the current user has permission to access an object.\n\n**Key facts**\n- Includes the user's identity and the permissions being reviewed\n\n**Related**\nAuthentication, Authorization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authentication",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authentication",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "status"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.authentication.v1.SelfSubjectReview"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.SelfSubjectReview"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SelfSubjectReviewStatus",
      "type": "api_object",
      "title": "SelfSubjectReviewStatus",
      "summary": "SelfSubjectReviewStatus is filled by the kube-apiserver and sent back to a user.",
      "body": "SelfSubjectReviewStatus is an object that represents the status of a self subject review.\n\n**Why it matters**\nThis concept is used to determine if a user has the necessary permissions for a particular action.\n\n**Key facts**\n- It is part of the io.k8s.api.authentication.v1 package\n- Represents the status of a self subject review",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authentication",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authentication",
        "version": "v1",
        "fields": [
          "userInfo"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.authentication.v1.SelfSubjectReviewStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.SelfSubjectReviewStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TokenRequest",
      "type": "api_object",
      "title": "TokenRequest",
      "summary": "TokenRequest requests a token for a given service account.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authentication",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authentication",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.authentication.v1.TokenRequest"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.TokenRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.TokenRequest"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:TokenRequestSpec",
      "type": "api_object",
      "title": "TokenRequestSpec",
      "summary": "TokenRequestSpec contains client provided parameters of a token request.",
      "body": "TokenRequestSpec is an object that represents the specification of a token request.\n\n**Why it matters**\nThis concept is used to specify the details of a token request.\n\n**Key facts**\n- It is part of the io.k8s.api.authentication.v1 package\n- Represents the specification of a token request",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authentication",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authentication",
        "version": "v1",
        "fields": [
          "audiences",
          "boundObjectRef",
          "expirationSeconds"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.authentication.v1.TokenRequestSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.TokenRequestSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TokenRequestStatus",
      "type": "api_object",
      "title": "TokenRequestStatus",
      "summary": "TokenRequestStatus is the result of a token request.",
      "body": "TokenRequestStatus is an object that represents the status of a token request.\n\n**Why it matters**\nThis concept is used to determine the outcome of a token request.\n\n**Key facts**\n- It is part of the io.k8s.api.authentication.v1 package\n- Represents the status of a token request",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authentication",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authentication",
        "version": "v1",
        "fields": [
          "expirationTimestamp",
          "token"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.authentication.v1.TokenRequestStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.TokenRequestStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TokenReview",
      "type": "api_object",
      "title": "TokenReview",
      "summary": "TokenReview attempts to authenticate a token to a known user. Note: TokenReview requests may be cached by the webhook token authenticator plugin in the kube-apiserver.",
      "body": "TokenReview is an API object used to review a token's validity and authenticity.\n\n**Why it matters**\nIt provides a way for the Kubernetes API server to authenticate incoming requests.\n\n**Key facts**\n- The TokenReview API object contains a spec field that holds the token to be reviewed\n- The status field of the TokenReview object contains the result of the review\n\n**Common pitfalls**\n- If the token is invalid or expired, the review will fail and an error will be returned\n\n**Related**\nA, u, t, h, e, n, t, i, c, a, t, i, o, n, ,,  , A, u, t, h, o, r, i, z, a, t, i, o, n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authentication",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authentication",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.authentication.v1.TokenReview"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.TokenReview"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TokenReviewSpec",
      "type": "api_object",
      "title": "TokenReviewSpec",
      "summary": "TokenReviewSpec is a description of the token authentication request.",
      "body": "The spec field of a TokenReview object contains the token to be reviewed.\n\n**Why it matters**\nIt specifies the token that needs to be authenticated and authorized.\n\n**Key facts**\n- The token is represented as a string in the spec field\n\n**Common pitfalls**\n- If the token is empty or null, the review will fail\n\n**Related**\nT, o, k, e, n, R, e, v, i, e, w, ,,  , A, u, t, h, e, n, t, i, c, a, t, i, o, n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authentication",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authentication",
        "version": "v1",
        "fields": [
          "audiences",
          "token"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.authentication.v1.TokenReviewSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.TokenReviewSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TokenReviewStatus",
      "type": "api_object",
      "title": "TokenReviewStatus",
      "summary": "TokenReviewStatus is the result of the token authentication request.",
      "body": "The status field of a TokenReview object contains the result of the review.\n\n**Why it matters**\nIt indicates whether the token is valid or not and provides additional information about the review process.\n\n**Key facts**\n- The status field contains a condition that indicates the outcome of the review\n\n**Common pitfalls**\n- If the review fails, the status will contain an error message\n\n**Related**\nT, o, k, e, n, R, e, v, i, e, w, ,,  , A, u, t, h, e, n, t, i, c, a, t, i, o, n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authentication",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authentication",
        "version": "v1",
        "fields": [
          "audiences",
          "authenticated",
          "error",
          "user"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.authentication.v1.TokenReviewStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.TokenReviewStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:UserInfo",
      "type": "api_object",
      "title": "UserInfo",
      "summary": "UserInfo holds the information about the user needed to implement the user.Info interface.",
      "body": "The UserInfo object contains information about a user's identity.\n\n**Why it matters**\nIt provides details about the authenticated user, such as their username and groups.\n\n**Key facts**\n- The UserInfo object contains fields for username, uid, and groups\n\n**Common pitfalls**\n- If the user is not authenticated or authorized, the UserInfo will be empty\n\n**Related**\nA, u, t, h, e, n, t, i, c, a, t, i, o, n, ,,  , A, u, t, h, o, r, i, z, a, t, i, o, n",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authentication",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authentication",
        "version": "v1",
        "fields": [
          "extra",
          "groups",
          "uid",
          "username"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.authentication.v1.UserInfo"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.UserInfo"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FieldSelectorAttributes",
      "type": "api_object",
      "title": "FieldSelectorAttributes",
      "summary": "FieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.",
      "body": "Represents field selector attributes used for authorization.\n\n**Why it matters**\nUsed to specify fields that a subject is allowed to access.\n\n**Key facts**\n- Part of the io.k8s.api.authorization.v1 package\n- Used in conjunction with FieldSelector",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "rawSelector",
          "requirements"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.authorization.v1.FieldSelectorAttributes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.FieldSelectorAttributes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LabelSelectorAttributes",
      "type": "api_object",
      "title": "LabelSelectorAttributes",
      "summary": "LabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.",
      "body": "Represents label selector attributes used for authorization.\n\n**Why it matters**\nUsed to specify labels that a subject is allowed to access.\n\n**Key facts**\n- Part of the io.k8s.api.authorization.v1 package\n- Used in conjunction with LabelSelector",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "rawSelector",
          "requirements"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.authorization.v1.LabelSelectorAttributes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.LabelSelectorAttributes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LocalSubjectAccessReview",
      "type": "api_object",
      "title": "LocalSubjectAccessReview",
      "summary": "LocalSubjectAccessReview checks whether or not a user or group can perform an action in a given namespace. Having a namespace scoped resource makes it much easier to grant namespace scoped policy that includes permissions checking.",
      "body": "Checks whether a subject can access a resource locally.\n\n**Why it matters**\nDetermines if a subject has the necessary permissions to access a resource within the cluster.\n\n**Key facts**\n- Part of the io.k8s.api.authorization.v1 package\n- Used for local authorization checks",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.authorization.v1.LocalSubjectAccessReview"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.LocalSubjectAccessReview"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NonResourceAttributes",
      "type": "api_object",
      "title": "NonResourceAttributes",
      "summary": "NonResourceAttributes includes the authorization attributes available for non-resource requests to the Authorizer interface",
      "body": "Represents non-resource attributes used for authorization.\n\n**Why it matters**\nUsed to specify non-resource attributes that a subject is allowed to access.\n\n**Key facts**\n- Part of the io.k8s.api.authorization.v1 package\n- Used in conjunction with NonResourceName",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "path",
          "verb"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.authorization.v1.NonResourceAttributes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.NonResourceAttributes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NonResourceRule",
      "type": "api_object",
      "title": "NonResourceRule",
      "summary": "NonResourceRule holds information that describes a rule for the non-resource",
      "body": "A NonResourceRule is a type of authorization rule that specifies access to non-resource endpoints.\n\n**Why it matters**\nNonResourceRules are used to control access to API groups and verbs, such as /apis/*/*\n\n**Key facts**\n- Used for controlling access to non-resource endpoints\n- Specified by io.k8s.api.authorization.v1.NonResourceRule",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "nonResourceURLs",
          "verbs"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.authorization.v1.NonResourceRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.NonResourceRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceAttributes",
      "type": "api_object",
      "title": "ResourceAttributes",
      "summary": "ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface",
      "body": "ResourceAttributes is a type of authorization attribute that specifies the resource and verb for which access is being requested.\n\n**Why it matters**\nResourceAttributes are used to specify the exact resource and verb being accessed, such as /pods/* or /services/*\n\n**Key facts**\n- Used for specifying the resource and verb being accessed\n- Specified by io.k8s.api.authorization.v1.ResourceAttributes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "fieldSelector",
          "group",
          "labelSelector",
          "name",
          "namespace",
          "resource",
          "subresource",
          "verb",
          "version"
        ],
        "field_count": 9,
        "def_name": "io.k8s.api.authorization.v1.ResourceAttributes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.ResourceAttributes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceRule",
      "type": "api_object",
      "title": "ResourceRule",
      "summary": "ResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.",
      "body": "A ResourceRule is a type of authorization rule that specifies access to resources, such as pods or services.\n\n**Why it matters**\nResourceRules are used to control access to specific resources and verbs, such as /pods/*/* or /services/*/*\n\n**Key facts**\n- Used for controlling access to resources\n- Specified by io.k8s.api.authorization.v1.ResourceRule",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "apiGroups",
          "resourceNames",
          "resources",
          "verbs"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.authorization.v1.ResourceRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.ResourceRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SelfSubjectAccessReview",
      "type": "api_object",
      "title": "SelfSubjectAccessReview",
      "summary": "SelfSubjectAccessReview checks whether or the current user can perform an action.  Not filling in a spec.namespace means \"in all namespaces\".  Self is a special case, because users should always be able to check whether they can perform an action",
      "body": "A SelfSubjectAccessReview is a type of authorization review that checks the access of the current subject to a resource.\n\n**Why it matters**\nSelfSubjectAccessReviews are used to check if the current subject has access to a specific resource and verb, such as /pods/* or /services/*\n\n**Key facts**\n- Used for checking the access of the current subject\n- Specified by io.k8s.api.authorization.v1.SelfSubjectAccessReview",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.authorization.v1.SelfSubjectAccessReview"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SelfSubjectAccessReview"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SelfSubjectAccessReviewSpec",
      "type": "api_object",
      "title": "SelfSubjectAccessReviewSpec",
      "summary": "SelfSubjectAccessReviewSpec is a description of the access request.  Exactly one of resourceAttributes and nonResourceAttributes must be set",
      "body": "A specification for self subject access review, used to check if a user has a certain permission.\n\n**Why it matters**\nThis allows users to check their own permissions without having to query the API server directly.\n\n**Key facts**\n- Used in self subject access reviews\n- Checks user's own permissions\n\n**Related**\nSelfSubjectAccessReview",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "nonResourceAttributes",
          "resourceAttributes"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.authorization.v1.SelfSubjectAccessReviewSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SelfSubjectAccessReviewSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SelfSubjectRulesReview",
      "type": "api_object",
      "title": "SelfSubjectRulesReview",
      "summary": "SelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace. The returned list of actions may be incomplete depending on the server's authorization mode, and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions, or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns. SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.",
      "body": "A review of the rules that apply to a subject, used to check if a user has access to a resource.\n\n**Why it matters**\nThis allows users to check their own permissions and understand what rules are applied to them.\n\n**Key facts**\n- Used in self subject rules reviews\n- Checks rules that apply to a subject\n\n**Related**\nSelfSubjectRulesReviewSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.authorization.v1.SelfSubjectRulesReview"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SelfSubjectRulesReview"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SelfSubjectRulesReviewSpec",
      "type": "api_object",
      "title": "SelfSubjectRulesReviewSpec",
      "summary": "SelfSubjectRulesReviewSpec defines the specification for SelfSubjectRulesReview.",
      "body": "A specification for self subject rules review, used to check the rules that apply to a subject.\n\n**Why it matters**\nThis allows users to understand what rules are applied to them and make informed decisions.\n\n**Key facts**\n- Used in self subject rules reviews\n- Checks rules that apply to a subject\n\n**Related**\nSelfSubjectRulesReview",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "namespace"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.authorization.v1.SelfSubjectRulesReviewSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SelfSubjectRulesReviewSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SubjectAccessReview",
      "type": "api_object",
      "title": "SubjectAccessReview",
      "summary": "SubjectAccessReview checks whether or not a user or group can perform an action.",
      "body": "A review of the access rights for a subject, used to check if a user has permission to access a resource.\n\n**Why it matters**\nThis allows users to check their own permissions and understand what resources they have access to.\n\n**Key facts**\n- Used in subject access reviews\n- Checks access rights for a subject",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.authorization.v1.SubjectAccessReview"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SubjectAccessReview"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SubjectAccessReviewSpec",
      "type": "api_object",
      "title": "SubjectAccessReviewSpec",
      "summary": "SubjectAccessReviewSpec is a description of the access request.  Exactly one of resourceAttributes and nonResourceAttributes must be set",
      "body": "Represents a request to review an identity's ability to access a resource.\n\n**Why it matters**\nAllows administrators to programmatically check the authorization of a subject on a resource without actually accessing it.\n\n**Key facts**\n- Contains a spec field with details about the subject and the resource being accessed\n- Used in SubjectAccessReview API objects\n\n**Common pitfalls**\n- Misconfigured or incomplete spec fields can lead to incorrect authorization decisions\n\n**Related**\nSubjectAccessReview API object, Authorization in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "extra",
          "groups",
          "nonResourceAttributes",
          "resourceAttributes",
          "uid",
          "user"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.authorization.v1.SubjectAccessReviewSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SubjectAccessReviewSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SubjectAccessReviewStatus",
      "type": "api_object",
      "title": "SubjectAccessReviewStatus",
      "summary": "Represents the result of a SubjectAccessReview request.",
      "body": "Represents the result of a SubjectAccessReview request.\n\n**Why it matters**\nProvides information about whether the subject has access to the resource, along with any additional details.\n\n**Key facts**\n- Contains a status field with the outcome of the review and any relevant details\n- Used in SubjectAccessReview API objects\n\n**Common pitfalls**\n- Incorrect or incomplete status information can lead to incorrect authorization decisions\n\n**Related**\nSubjectAccessReview API object, Authorization in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "allowed",
          "denied",
          "evaluationError",
          "reason"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.authorization.v1.SubjectAccessReviewStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SubjectAccessReviewStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SubjectRulesReviewStatus",
      "type": "api_object",
      "title": "SubjectRulesReviewStatus",
      "summary": "SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on the set of authorizers the server is configured with and any errors experienced during evaluation. Because authorization rules are additive, if a rule appears in a list it's safe to assume the subject has that permission, even if that list is incomplete.",
      "body": "Represents the result of a SubjectRulesReview request.\n\n**Why it matters**\nProvides information about whether the subject has access to any resources, along with any additional details.\n\n**Key facts**\n- Contains a status field with the outcome of the review and any relevant details\n- Used in SubjectRulesReview API objects\n\n**Common pitfalls**\n- Incorrect or incomplete status information can lead to incorrect authorization decisions\n\n**Related**\nSubjectRulesReview API object, Authorization in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "authorization",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "authorization",
        "version": "v1",
        "fields": [
          "evaluationError",
          "incomplete",
          "nonResourceRules",
          "resourceRules"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.authorization.v1.SubjectRulesReviewStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SubjectRulesReviewStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CrossVersionObjectReference",
      "type": "api_object",
      "title": "CrossVersionObjectReference",
      "summary": "CrossVersionObjectReference contains enough information to let you identify the referred resource.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "name"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.autoscaling.v1.CrossVersionObjectReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.CrossVersionObjectReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.CrossVersionObjectReference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:HorizontalPodAutoscaler",
      "type": "api_object",
      "title": "HorizontalPodAutoscaler",
      "summary": "configuration of a horizontal pod autoscaler.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscaler"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscaler"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscaler"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:HorizontalPodAutoscalerList",
      "type": "api_object",
      "title": "HorizontalPodAutoscalerList",
      "summary": "list of horizontal pod autoscaler objects.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:HorizontalPodAutoscalerSpec",
      "type": "api_object",
      "title": "HorizontalPodAutoscalerSpec",
      "summary": "specification of a horizontal pod autoscaler.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v1",
        "fields": [
          "maxReplicas",
          "minReplicas",
          "scaleTargetRef",
          "targetCPUUtilizationPercentage"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerSpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:HorizontalPodAutoscalerStatus",
      "type": "api_object",
      "title": "HorizontalPodAutoscalerStatus",
      "summary": "current status of a horizontal pod autoscaler",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v1",
        "fields": [
          "currentCPUUtilizationPercentage",
          "currentReplicas",
          "desiredReplicas",
          "lastScaleTime",
          "observedGeneration"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerStatus"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:Scale",
      "type": "api_object",
      "title": "Scale",
      "summary": "Scale represents a scaling request for a resource.",
      "body": "Represents a scale operation, used to update the replicas of a Deployment.\n\n**Why it matters**\nScales Deployments based on resource utilization or custom metrics.\n\n**Key facts**\n- Represents a scale operation\n- Used to update replicas of a Deployment",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.autoscaling.v1.Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.Scale"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ScaleSpec",
      "type": "api_object",
      "title": "ScaleSpec",
      "summary": "ScaleSpec describes the attributes of a scale subresource.",
      "body": "Describes the desired state of a Scale object, including the number of replicas.\n\n**Why it matters**\nSpecifies the target number of replicas for a Deployment.\n\n**Key facts**\n- Describes the desired state of a Scale object\n- Includes the number of replicas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v1",
        "fields": [
          "replicas"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.autoscaling.v1.ScaleSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.ScaleSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ScaleStatus",
      "type": "api_object",
      "title": "ScaleStatus",
      "summary": "ScaleStatus represents the current status of a scale subresource.",
      "body": "Represents the current state of a Scale object, including the observed number of replicas.\n\n**Why it matters**\nDisplays the actual number of replicas for a Deployment.\n\n**Key facts**\n- Represents the current state of a Scale object\n- Includes the observed number of replicas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v1",
        "fields": [
          "replicas",
          "selector"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.autoscaling.v1.ScaleStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.ScaleStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerResourceMetricSource",
      "type": "api_object",
      "title": "ContainerResourceMetricSource",
      "summary": "ContainerResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory).  The values will be averaged together before being compared to the target.  Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.  Only one \"target\" type should be set.",
      "body": "Describes a metric source based on container resource utilization.\n\n**Why it matters**\nMonitors container resource usage for scaling decisions.\n\n**Key facts**\n- Describes a metric source\n- Based on container resource utilization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "container",
          "name",
          "target"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.autoscaling.v2.ContainerResourceMetricSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ContainerResourceMetricSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerResourceMetricStatus",
      "type": "api_object",
      "title": "ContainerResourceMetricStatus",
      "summary": "ContainerResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing a single container in each pod in the current scale target (e.g. CPU or memory).  Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.",
      "body": "Represents metrics about resource usage of containers.\n\n**Why it matters**\nUsed to monitor and manage container resources in Kubernetes environments.\n\n**Key facts**\n- Contains fields for CPU, memory, and other resource metrics.\n- Provides information on the average and current values of these metrics.\n\n**Common pitfalls**\n- Requires proper configuration to collect accurate data.\n- May not account for transient or intermittent issues.\n\n**Related**\nContainer resources, Kubernetes monitoring",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "container",
          "current",
          "name"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.autoscaling.v2.ContainerResourceMetricStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ContainerResourceMetricStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ExternalMetricSource",
      "type": "api_object",
      "title": "ExternalMetricSource",
      "summary": "ExternalMetricSource indicates how to scale on a metric not associated with any Kubernetes object (for example length of queue in cloud messaging service, or QPS from loadbalancer running outside of cluster).",
      "body": "Represents an external metric source, such as a third-party service.\n\n**Why it matters**\nUsed to integrate external metrics into Kubernetes environments.\n\n**Key facts**\n- Contains fields for metadata and configuration.\n- Provides information on the external metric's type and value.\n\n**Common pitfalls**\n- Requires proper authentication and authorization with the external service.\n- May not account for differences in metric types or formats.\n\n**Related**\nExternal metrics, Kubernetes integrations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "metric",
          "target"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.autoscaling.v2.ExternalMetricSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ExternalMetricSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ExternalMetricStatus",
      "type": "api_object",
      "title": "ExternalMetricStatus",
      "summary": "ExternalMetricStatus indicates the current value of a global metric not associated with any Kubernetes object.",
      "body": "Represents the status of an external metric source.\n\n**Why it matters**\nUsed to monitor and manage external metric sources in Kubernetes environments.\n\n**Key facts**\n- Contains fields for metadata, configuration, and status information.\n- Provides information on the external metric's current value and any errors.\n\n**Common pitfalls**\n- Requires proper monitoring and alerting to detect issues with external metrics.\n- May not account for transient or intermittent issues with external services.\n\n**Related**\nExternal metrics, Kubernetes monitoring",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "current",
          "metric"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.autoscaling.v2.ExternalMetricStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ExternalMetricStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HPAScalingPolicy",
      "type": "api_object",
      "title": "HPAScalingPolicy",
      "summary": "HPAScalingPolicy is a single policy which must hold true for a specified past interval.",
      "body": "HPAScalingPolicy is an API object that defines a policy for scaling a HorizontalPodAutoscaler.\n\n**Why it matters**\nIt allows you to define custom scaling policies for your HPA.\n\n**Key facts**\n- Defined in io.k8s.api.autoscaling.v2.HPAScalingPolicy\n- Used to scale a HorizontalPodAutoscaler\n\n**Related**\nHorizontalPodAutoscaler",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "periodSeconds",
          "type",
          "value"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.autoscaling.v2.HPAScalingPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HPAScalingPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HPAScalingRules",
      "type": "api_object",
      "title": "HPAScalingRules",
      "summary": "HPAScalingRules configures the scaling behavior for one direction via scaling Policy Rules and a configurable metric tolerance.\n\nScaling Policy Rules are applied after calculating DesiredReplicas from metrics for the HPA. They can limit the scaling velocity by specifying scaling policies. They can prevent flapping by specifying the stabilization window, so that the number of replicas is not set instantly, instead, the safest value from the stabilization window is chosen.\n\nThe tolerance is applied to the metric values and prevents scaling too eagerly for small metric variations.",
      "body": "HPAScalingRules is an API object that defines rules for scaling a HorizontalPodAutoscaler.\n\n**Why it matters**\nIt allows you to define custom scaling rules for your HPA.\n\n**Key facts**\n- Defined in io.k8s.api.autoscaling.v2.HPAScalingRules\n- Used to scale a HorizontalPodAutoscaler\n\n**Related**\nHorizontalPodAutoscaler",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "policies",
          "selectPolicy",
          "stabilizationWindowSeconds",
          "tolerance"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.autoscaling.v2.HPAScalingRules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HPAScalingRules"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HorizontalPodAutoscalerBehavior",
      "type": "api_object",
      "title": "HorizontalPodAutoscalerBehavior",
      "summary": "HorizontalPodAutoscalerBehavior configures the scaling behavior of the target in both Up and Down directions (scaleUp and scaleDown fields respectively).",
      "body": "HorizontalPodAutoscalerBehavior is an API object that defines the behavior of a HorizontalPodAutoscaler.\n\n**Why it matters**\nIt allows you to define custom behavior for your HPA.\n\n**Key facts**\n- Defined in io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerBehavior\n- Used to define custom behavior for an HPA\n\n**Related**\nHorizontalPodAutoscaler",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "scaleDown",
          "scaleUp"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerBehavior"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerBehavior"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HorizontalPodAutoscalerCondition",
      "type": "api_object",
      "title": "HorizontalPodAutoscalerCondition",
      "summary": "HorizontalPodAutoscalerCondition describes the state of a HorizontalPodAutoscaler at a certain point.",
      "body": "Represents the condition of a Horizontal Pod Autoscaler.\n\n**Why it matters**\nThis object provides information about the current state of the HPA, such as whether it is active or not.\n\n**Key facts**\n- Defined in io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerCondition\n- Represents a specific condition of an HPA",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "lastTransitionTime",
          "message",
          "observedGeneration",
          "reason",
          "status",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:MetricIdentifier",
      "type": "api_object",
      "title": "MetricIdentifier",
      "summary": "MetricIdentifier defines the name and optionally selector for a metric",
      "body": "A MetricIdentifier is an object that identifies a metric.\n\n**Why it matters**\nIt allows you to specify which metric to use for autoscaling.\n\n**Key facts**\n- Identifies a metric\n- Used in autoscaling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "name",
          "selector"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.autoscaling.v2.MetricIdentifier"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricIdentifier"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:MetricSpec",
      "type": "api_object",
      "title": "MetricSpec",
      "summary": "MetricSpec specifies how to scale based on a single metric (only `type` and one other matching field should be set at once).",
      "body": "A MetricSpec is an object that specifies the metric and its target value.\n\n**Why it matters**\nIt allows you to specify the metric and its target value for autoscaling.\n\n**Key facts**\n- Specifies a metric\n- Specifies a target value",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "containerResource",
          "external",
          "object",
          "pods",
          "resource",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.autoscaling.v2.MetricSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:MetricStatus",
      "type": "api_object",
      "title": "MetricStatus",
      "summary": "MetricStatus describes the last-read state of a single metric.",
      "body": "A MetricStatus is an object that represents the current status of a metric.\n\n**Why it matters**\nIt allows you to get the current status of a metric.\n\n**Key facts**\n- Represents the current status of a metric",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "containerResource",
          "external",
          "object",
          "pods",
          "resource",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.autoscaling.v2.MetricStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:MetricTarget",
      "type": "api_object",
      "title": "MetricTarget",
      "summary": "MetricTarget defines the target value, average value, or average utilization of a specific metric",
      "body": "A MetricTarget is an object that specifies the target value for a metric.\n\n**Why it matters**\nIt allows you to specify the target value for a metric in autoscaling.\n\n**Key facts**\n- Specifies a target value\n- Used in autoscaling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "averageUtilization",
          "averageValue",
          "type",
          "value"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.autoscaling.v2.MetricTarget"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricTarget"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:MetricValueStatus",
      "type": "api_object",
      "title": "MetricValueStatus",
      "summary": "MetricValueStatus holds the current value for a metric",
      "body": "Represents a metric value status, which is used to report the current value of a metric.\n\n**Why it matters**\nThis object allows you to report the current value of a metric, enabling autoscaling decisions based on actual values.\n\n**Key facts**\n- Defined in io.k8s.api.autoscaling.v2.MetricValueStatus (source: swagger.json)\n- Reports the current value of a metric",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "averageUtilization",
          "averageValue",
          "value"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.autoscaling.v2.MetricValueStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricValueStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ObjectMetricSource",
      "type": "api_object",
      "title": "ObjectMetricSource",
      "summary": "ObjectMetricSource indicates how to scale on a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).",
      "body": "Represents an object metric source, which is used to report metrics from objects in the cluster.\n\n**Why it matters**\nThis object enables you to report metrics from objects in the cluster, such as pods or deployments.\n\n**Key facts**\n- Defined in io.k8s.api.autoscaling.v2.ObjectMetricSource (source: swagger.json)\n- Reports metrics from objects in the cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "describedObject",
          "metric",
          "target"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.autoscaling.v2.ObjectMetricSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ObjectMetricSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ObjectMetricStatus",
      "type": "api_object",
      "title": "ObjectMetricStatus",
      "summary": "ObjectMetricStatus indicates the current value of a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).",
      "body": "Represents an object metric status, which is used to report the current value of a metric from an object.\n\n**Why it matters**\nThis object allows you to report the current value of a metric from an object, enabling autoscaling decisions based on actual values.\n\n**Key facts**\n- Defined in io.k8s.api.autoscaling.v2.ObjectMetricStatus (source: swagger.json)\n- Reports the current value of a metric from an object",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "current",
          "describedObject",
          "metric"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.autoscaling.v2.ObjectMetricStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ObjectMetricStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodsMetricSource",
      "type": "api_object",
      "title": "PodsMetricSource",
      "summary": "PodsMetricSource indicates how to scale on a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.",
      "body": "Represents a pods metric source, which is used to report metrics from pods in the cluster.\n\n**Why it matters**\nThis object enables you to report metrics from pods in the cluster, such as CPU or memory usage.\n\n**Key facts**\n- Defined in io.k8s.api.autoscaling.v2.PodsMetricSource (source: swagger.json)\n- Reports metrics from pods in the cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "metric",
          "target"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.autoscaling.v2.PodsMetricSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.PodsMetricSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodsMetricStatus",
      "type": "api_object",
      "title": "PodsMetricStatus",
      "summary": "PodsMetricStatus indicates the current value of a metric describing each pod in the current scale target (for example, transactions-processed-per-second).",
      "body": "Represents metrics about pods, such as CPU or memory usage.\n\n**Why it matters**\nThis object is used in autoscaling to determine the current resource utilization of a pod.\n\n**Key facts**\n- Metrics are collected from the pod's containers\n- Used for autoscaling decisions\n\n**Common pitfalls**\n- Incorrect metric selection can lead to poor scaling decisions\n\n**Related**\napi:ResourceMetricSource, api:ResourceMetricStatus",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "current",
          "metric"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.autoscaling.v2.PodsMetricStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.PodsMetricStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceMetricSource",
      "type": "api_object",
      "title": "ResourceMetricSource",
      "summary": "ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory).  The values will be averaged together before being compared to the target.  Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.  Only one \"target\" type should be set.",
      "body": "Represents a resource metric source, such as CPU or memory usage.\n\n**Why it matters**\nThis object is used to specify the metrics that should be collected for autoscaling decisions.\n\n**Key facts**\n- Can be based on pod or container metrics\n- Used in combination with api:ResourceMetricStatus\n\n**Common pitfalls**\n- Incorrect metric selection can lead to poor scaling decisions\n\n**Related**\napi:PodsMetricStatus, api:ResourceMetricStatus",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "name",
          "target"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.autoscaling.v2.ResourceMetricSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ResourceMetricSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceMetricStatus",
      "type": "api_object",
      "title": "ResourceMetricStatus",
      "summary": "ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory).  Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.",
      "body": "Represents the current resource utilization of a pod or container.\n\n**Why it matters**\nThis object is used in combination with api:ResourceMetricSource to determine the current resource utilization of a pod or container.\n\n**Key facts**\n- Metrics are collected from the pod's containers\n- Used for autoscaling decisions\n\n**Common pitfalls**\n- Incorrect metric selection can lead to poor scaling decisions\n\n**Related**\napi:PodsMetricStatus, api:ResourceMetricSource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "autoscaling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "autoscaling",
        "version": "v2",
        "fields": [
          "current",
          "name"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.autoscaling.v2.ResourceMetricStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ResourceMetricStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CronJob",
      "type": "api_object",
      "title": "CronJob",
      "summary": "CronJob represents the configuration of a single cron job.",
      "body": "Represents a job that runs at a specified schedule.\n\n**Why it matters**\nThis object is used to run jobs on a recurring schedule, such as daily or weekly.\n\n**Key facts**\n- Jobs are executed based on a cron-like schedule\n- Can be used for batch processing\n\n**Common pitfalls**\n- Incorrect scheduling can lead to missed deadlines",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.batch.v1.CronJob"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.CronJob"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CronJobList",
      "type": "api_object",
      "title": "CronJobList",
      "summary": "CronJobList is a collection of cron jobs.",
      "body": "A list of CronJobs in the Kubernetes API.\n\n**Why it matters**\nCronJobList is used to manage and retrieve multiple CronJobs at once, providing a convenient way to handle batch jobs.\n\n**Key facts**\n- Represents a collection of CronJobs\n- Used for listing and retrieving multiple CronJobs\n\n**Related**\nCronJob",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.batch.v1.CronJobList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.CronJobList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CronJobSpec",
      "type": "api_object",
      "title": "CronJobSpec",
      "summary": "CronJobSpec describes how the job execution will look like and when it will actually run.",
      "body": "A specification of the desired CronJob in the Kubernetes API.\n\n**Why it matters**\nCronJobSpec defines the configuration and behavior of a CronJob, allowing users to customize its execution.\n\n**Key facts**\n- Represents the desired state of a CronJob\n- Defines the schedule, job template, and other settings\n\n**Related**\nCronJob",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "concurrencyPolicy",
          "failedJobsHistoryLimit",
          "jobTemplate",
          "schedule",
          "startingDeadlineSeconds",
          "successfulJobsHistoryLimit",
          "suspend",
          "timeZone"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.batch.v1.CronJobSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.CronJobSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CronJobStatus",
      "type": "api_object",
      "title": "CronJobStatus",
      "summary": "CronJobStatus represents the current state of a cron job.",
      "body": "The current status of a CronJob in the Kubernetes API.\n\n**Why it matters**\nCronJobStatus provides information about the execution and completion of a CronJob, helping users monitor its progress.\n\n**Key facts**\n- Represents the actual state of a CronJob\n- Includes details on job executions and completions\n\n**Related**\nCronJob",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "active",
          "lastScheduleTime",
          "lastSuccessfulTime"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.batch.v1.CronJobStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.CronJobStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Job",
      "type": "api_object",
      "title": "Job",
      "summary": "Job represents the configuration of a single job.",
      "body": "A Job in the Kubernetes API, representing a one-off task.\n\n**Why it matters**\nJob is used to execute a single task or batch of tasks, providing a flexible way to handle short-lived computations.\n\n**Key facts**\n- Represents a one-off task or batch of tasks\n- Used for executing short-lived computations\n\n**Related**\nCronJob",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.batch.v1.Job"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.Job"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JobCondition",
      "type": "api_object",
      "title": "JobCondition",
      "summary": "JobCondition describes current state of a job.",
      "body": "Represents the current condition of a Job.\n\n**Why it matters**\nProvides information about the status and progress of a Job.\n\n**Key facts**\n- Defined in io.k8s.api.batch.v1.JobCondition (source: swagger.json)\n- Used to report on the status and progress of a Job",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "lastProbeTime",
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.batch.v1.JobCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.JobCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JobList",
      "type": "api_object",
      "title": "JobList",
      "summary": "A list of Jobs.",
      "body": "A list of Jobs.\n\n**Why it matters**\nAllows for batch operations on multiple Jobs at once.\n\n**Key facts**\n- Defined in io.k8s.api.batch.v1.JobList (source: swagger.json)\n- Used to manage a collection of Jobs\n\n**Related**\napi:JobCondition, api:JobSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.batch.v1.JobList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.JobList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JobSpec",
      "type": "api_object",
      "title": "JobSpec",
      "summary": "JobSpec describes how the job execution will look like.",
      "body": "Describes the desired state of a Job.\n\n**Why it matters**\nProvides configuration for a Job, such as its template and selector.\n\n**Key facts**\n- Defined in io.k8s.api.batch.v1.JobSpec (source: swagger.json)\n- Used to configure a Job's behavior\n\n**Related**\napi:JobList, api:JobStatus",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "activeDeadlineSeconds",
          "backoffLimit",
          "backoffLimitPerIndex",
          "completionMode",
          "completions",
          "managedBy",
          "manualSelector",
          "maxFailedIndexes",
          "parallelism",
          "podFailurePolicy",
          "podReplacementPolicy",
          "selector",
          "successPolicy",
          "suspend",
          "template",
          "ttlSecondsAfterFinished"
        ],
        "field_count": 16,
        "def_name": "io.k8s.api.batch.v1.JobSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.JobSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JobStatus",
      "type": "api_object",
      "title": "JobStatus",
      "summary": "JobStatus represents the current state of a Job.",
      "body": "Represents the current state of a Job.\n\n**Why it matters**\nProvides information about the status and progress of a Job.\n\n**Key facts**\n- Defined in io.k8s.api.batch.v1.JobStatus (source: swagger.json)\n- Used to report on the status and progress of a Job\n\n**Related**\napi:JobCondition, api:JobSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "active",
          "completedIndexes",
          "completionTime",
          "conditions",
          "failed",
          "failedIndexes",
          "ready",
          "startTime",
          "succeeded",
          "terminating",
          "uncountedTerminatedPods"
        ],
        "field_count": 11,
        "def_name": "io.k8s.api.batch.v1.JobStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.JobStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JobTemplateSpec",
      "type": "api_object",
      "title": "JobTemplateSpec",
      "summary": "JobTemplateSpec describes the data a Job should have when created from a template",
      "body": "Represents a template for creating jobs in Kubernetes.\n\n**Why it matters**\nAllows users to define job templates, making it easier to create and manage jobs in their clusters.\n\n**Key facts**\n- Extends the JobSpec type\n- Used to create jobs with specific settings\n\n**Common pitfalls**\n- Misconfigured template can lead to incorrect job creation\n\n**Related**\nJobSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "metadata",
          "spec"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.batch.v1.JobTemplateSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.JobTemplateSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodFailurePolicy",
      "type": "api_object",
      "title": "PodFailurePolicy",
      "summary": "PodFailurePolicy describes how failed pods influence the backoffLimit.",
      "body": "Determines how pods are handled when they fail in a batch job.\n\n**Why it matters**\nEnsures that failed pods are properly managed, allowing for more reliable batch processing.\n\n**Key facts**\n- Extends the PodPolicy type\n- Used to define policies for handling pod failures\n\n**Common pitfalls**\n- Incorrect policy configuration can lead to data loss or corruption\n\n**Related**\nPodPolicy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "rules"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.batch.v1.PodFailurePolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.PodFailurePolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodFailurePolicyOnExitCodesRequirement",
      "type": "api_object",
      "title": "PodFailurePolicyOnExitCodesRequirement",
      "summary": "PodFailurePolicyOnExitCodesRequirement describes the requirement for handling a failed pod based on its container exit codes. In particular, it lookups the .state.terminated.exitCode for each app container and init container status, represented by the .status.containerStatuses and .status.initContainerStatuses fields in the Pod status, respectively. Containers completed with success (exit code 0) are excluded from the requirement check.",
      "body": "Specifies the exit codes that trigger a failure in a batch job.\n\n**Why it matters**\nAllows users to define specific exit codes that indicate a pod has failed, enabling more precise control over batch processing.\n\n**Key facts**\n- Extends the PodFailurePolicy type\n- Used to specify exit codes for pod failure\n\n**Common pitfalls**\n- Incorrectly configured exit codes can lead to misclassification of pod failures\n\n**Related**\nPodFailurePolicy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "containerName",
          "operator",
          "values"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.batch.v1.PodFailurePolicyOnExitCodesRequirement"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.PodFailurePolicyOnExitCodesRequirement"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodFailurePolicyOnPodConditionsPattern",
      "type": "api_object",
      "title": "PodFailurePolicyOnPodConditionsPattern",
      "summary": "PodFailurePolicyOnPodConditionsPattern describes a pattern for matching an actual pod condition type.",
      "body": "Specifies the conditions under which a pod is considered failed in a batch job.\n\n**Why it matters**\nEnables users to define custom conditions for determining pod failure, allowing for more flexible and robust batch processing.\n\n**Key facts**\n- Extends the PodFailurePolicy type\n- Used to specify conditions for pod failure\n\n**Common pitfalls**\n- Misconfigured conditions can lead to incorrect classification of pod failures\n\n**Related**\nPodFailurePolicy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "status",
          "type"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.batch.v1.PodFailurePolicyOnPodConditionsPattern"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.PodFailurePolicyOnPodConditionsPattern"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodFailurePolicyRule",
      "type": "api_object",
      "title": "PodFailurePolicyRule",
      "summary": "PodFailurePolicyRule describes how a pod failure is handled when the requirements are met. One of onExitCodes and onPodConditions, but not both, can be used in each rule.",
      "body": "A Pod Failure Policy Rule is used to specify the failure policy for a pod in a batch job.\n\n**Why it matters**\nIt allows you to define how your application should behave when a pod fails, such as whether it should be retried or terminated.\n\n**Key facts**\n- Defined in io.k8s.api.batch.v1.PodFailurePolicyRule\n- Used to specify failure policy for pods in batch jobs\n\n**Common pitfalls**\n- Incorrectly configured policies can lead to job failures or unexpected behavior",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "action",
          "onExitCodes",
          "onPodConditions"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.batch.v1.PodFailurePolicyRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.PodFailurePolicyRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SuccessPolicy",
      "type": "api_object",
      "title": "SuccessPolicy",
      "summary": "SuccessPolicy describes when a Job can be declared as succeeded based on the success of some indexes.",
      "body": "A Success Policy is used to specify the success conditions for a pod in a batch job.\n\n**Why it matters**\nIt allows you to define when your application should be considered successful, such as after a certain number of retries or when all pods are running.\n\n**Key facts**\n- Defined in io.k8s.api.batch.v1.SuccessPolicy\n- Used to specify success conditions for pods in batch jobs\n\n**Common pitfalls**\n- Incorrectly configured policies can lead to job failures or unexpected behavior",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "rules"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.batch.v1.SuccessPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.SuccessPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SuccessPolicyRule",
      "type": "api_object",
      "title": "SuccessPolicyRule",
      "summary": "SuccessPolicyRule describes rule for declaring a Job as succeeded. Each rule must have at least one of the \"succeededIndexes\" or \"succeededCount\" specified.",
      "body": "A Success Policy Rule is used to specify the success policy for a pod in a batch job.\n\n**Why it matters**\nIt allows you to define how your application should be considered successful, such as after a certain number of retries or when all pods are running.\n\n**Key facts**\n- Defined in io.k8s.api.batch.v1.SuccessPolicyRule\n- Used to specify success policy for pods in batch jobs\n\n**Common pitfalls**\n- Incorrectly configured policies can lead to job failures or unexpected behavior",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "succeededCount",
          "succeededIndexes"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.batch.v1.SuccessPolicyRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.SuccessPolicyRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:UncountedTerminatedPods",
      "type": "api_object",
      "title": "UncountedTerminatedPods",
      "summary": "UncountedTerminatedPods holds UIDs of Pods that have terminated but haven't been accounted in Job status counters.",
      "body": "A count of terminated pods that are not counted towards the total number of failed pods.\n\n**Why it matters**\nIt allows you to account for pods that have been terminated but should not be considered as part of the failure count.\n\n**Key facts**\n- Defined in io.k8s.api.batch.v1.UncountedTerminatedPods\n- Used to exclude terminated pods from failure count",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "batch"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "batch",
        "version": "v1",
        "fields": [
          "failed",
          "succeeded"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.batch.v1.UncountedTerminatedPods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.UncountedTerminatedPods"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CertificateSigningRequest",
      "type": "api_object",
      "title": "CertificateSigningRequest",
      "summary": "CertificateSigningRequest objects provide a mechanism to obtain x509 certificates by submitting a certificate signing request, and having it asynchronously approved and issued.\n\nKubelets use this API to obtain:\n 1. client certificates to authenticate to kube-apiserver (with the \"kubernetes.io/kube-apiserver-client-kubelet\" signerName).\n 2. serving certificates for TLS endpoints kube-apiserver can connect to securely (with the \"kubernetes.io/kubelet-serving\" signerName).\n\nThis API can be used to request client certificates to authenticate to kube-apiserver (with the \"kubernetes.io/kube-apiserver-client\" signerName), or to obtain certificates from custom non-Kubernetes signers.",
      "body": "A CertificateSigningRequest is an object that represents a request for a certificate to be signed.\n\n**Why it matters**\nIt allows users to request certificates from the Kubernetes cluster.\n\n**Key facts**\n- Represents a request for a certificate\n- Can be used to request certificates from the cluster\n\n**Related**\nCertificateSigningRequestCondition, CertificateSigningRequestList",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.certificates.v1.CertificateSigningRequest"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.CertificateSigningRequest"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CertificateSigningRequestCondition",
      "type": "api_object",
      "title": "CertificateSigningRequestCondition",
      "summary": "CertificateSigningRequestCondition describes a condition of a CertificateSigningRequest object",
      "body": "A CertificateSigningRequestCondition is a condition that can be true or false for a CertificateSigningRequest.\n\n**Why it matters**\nIt provides status information about the certificate signing request.\n\n**Key facts**\n- Represents a condition for a CertificateSigningRequest\n- Can have a true or false value\n\n**Related**\nCertificateSigningRequest, CertificateSigningRequestList",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "lastUpdateTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.certificates.v1.CertificateSigningRequestCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.CertificateSigningRequestCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CertificateSigningRequestList",
      "type": "api_object",
      "title": "CertificateSigningRequestList",
      "summary": "CertificateSigningRequestList is a collection of CertificateSigningRequest objects",
      "body": "A CertificateSigningRequestList is a list of CertificateSigningRequests.\n\n**Why it matters**\nIt allows users to retrieve multiple certificate signing requests at once.\n\n**Key facts**\n- Represents a list of CertificateSigningRequests\n- Can be used to retrieve multiple requests\n\n**Related**\nCertificateSigningRequest, CertificateSigningRequestCondition",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.certificates.v1.CertificateSigningRequestList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.CertificateSigningRequestList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CertificateSigningRequestSpec",
      "type": "api_object",
      "title": "CertificateSigningRequestSpec",
      "summary": "CertificateSigningRequestSpec contains the certificate request.",
      "body": "A CertificateSigningRequestSpec is the specification for a CertificateSigningRequest.\n\n**Why it matters**\nIt defines the parameters for the certificate signing request.\n\n**Key facts**\n- Represents the specification for a CertificateSigningRequest\n- Defines the parameters for the request\n\n**Related**\nCertificateSigningRequest, CertificateSigningRequestCondition",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1",
        "fields": [
          "expirationSeconds",
          "extra",
          "groups",
          "request",
          "signerName",
          "uid",
          "usages",
          "username"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.certificates.v1.CertificateSigningRequestSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.CertificateSigningRequestSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CertificateSigningRequestStatus",
      "type": "api_object",
      "title": "CertificateSigningRequestStatus",
      "summary": "CertificateSigningRequestStatus contains conditions used to indicate approved/denied/failed status of the request, and the issued certificate.",
      "body": "Represents the status of a Certificate Signing Request (CSR)\n\n**Why it matters**\nProvides information about the CSR's current state, such as its approval status and any errors encountered.\n\n**Key facts**\n- Contains fields like 'conditions' to track the CSR's progress\n- Has an 'approved' field indicating whether the CSR has been approved\n\n**Common pitfalls**\n- If not properly managed, CSRs can accumulate and cause performance issues\n\n**Related**\nCertificateSigningRequest: The object that this status belongs to, CertificateSigningRequestList: A list of Certificate Signing Requests in the cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1",
        "fields": [
          "certificate",
          "conditions"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.certificates.v1.CertificateSigningRequestStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.CertificateSigningRequestStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ClusterTrustBundle",
      "type": "api_object",
      "title": "ClusterTrustBundle",
      "summary": "ClusterTrustBundle is a cluster-scoped container for X.509 trust anchors (root certificates).\n\nClusterTrustBundle objects are considered to be readable by any authenticated user in the cluster, because they can be mounted by pods using the `clusterTrustBundle` projection.  All service accounts have read access to ClusterTrustBundles by default.  Users who only have namespace-level access to a cluster can read ClusterTrustBundles by impersonating a serviceaccount that they have access to.\n\nIt can be optionally associated with a particular signer, in which case it contains one valid set of trust anchors for that signer. Signers may have multiple associated ClusterTrustBundles; each is an independent set of trust anchors for that signer. Admission control is used to enforce that only users with permissions on the signer can create or modify the corresponding bundle.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.certificates.v1.ClusterTrustBundle"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.ClusterTrustBundle"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.ClusterTrustBundle"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ClusterTrustBundleList",
      "type": "api_object",
      "title": "ClusterTrustBundleList",
      "summary": "ClusterTrustBundleList is a collection of ClusterTrustBundle objects",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.certificates.v1.ClusterTrustBundleList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.ClusterTrustBundleList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.ClusterTrustBundleList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ClusterTrustBundleSpec",
      "type": "api_object",
      "title": "ClusterTrustBundleSpec",
      "summary": "ClusterTrustBundleSpec contains the signer and trust anchors.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1",
        "fields": [
          "signerName",
          "trustBundle"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.certificates.v1.ClusterTrustBundleSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.ClusterTrustBundleSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.ClusterTrustBundleSpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:PodCertificateRequest",
      "type": "api_object",
      "title": "PodCertificateRequest",
      "summary": "PodCertificateRequest encodes a pod requesting a certificate from a given signer.\n\nKubelets use this API to implement podCertificate projected volumes",
      "body": "A PodCertificateRequest is a Kubernetes API object that represents a request for a certificate from a pod.\n\n**Why it matters**\nIt allows pods to obtain certificates for secure communication with other services.\n\n**Key facts**\n- Represents a request for a certificate from a pod\n- Used for obtaining certificates by pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1beta1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.certificates.v1beta1.PodCertificateRequest"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.PodCertificateRequest"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodCertificateRequestList",
      "type": "api_object",
      "title": "PodCertificateRequestList",
      "summary": "PodCertificateRequestList is a collection of PodCertificateRequest objects",
      "body": "A list of PodCertificateRequest objects.\n\n**Why it matters**\nThis API resource allows you to manage and retrieve pod certificate requests in a Kubernetes cluster.\n\n**Key facts**\n- Represents a collection of PodCertificateRequest objects.\n- Used for listing and retrieving pod certificate requests.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1beta1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.certificates.v1beta1.PodCertificateRequestList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.PodCertificateRequestList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodCertificateRequestSpec",
      "type": "api_object",
      "title": "PodCertificateRequestSpec",
      "summary": "PodCertificateRequestSpec describes the certificate request.  All fields are immutable after creation.",
      "body": "The specification of the request to issue a certificate.\n\n**Why it matters**\nThis API resource allows you to specify the requirements for issuing a certificate in a Kubernetes cluster.\n\n**Key facts**\n- Represents the specification of a pod certificate request.\n- Used for specifying the requirements for issuing a certificate.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1beta1",
        "fields": [
          "maxExpirationSeconds",
          "nodeName",
          "nodeUID",
          "pkixPublicKey",
          "podName",
          "podUID",
          "proofOfPossession",
          "serviceAccountName",
          "serviceAccountUID",
          "signerName",
          "stubPKCS10Request",
          "unverifiedUserAnnotations"
        ],
        "field_count": 12,
        "def_name": "io.k8s.api.certificates.v1beta1.PodCertificateRequestSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.PodCertificateRequestSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodCertificateRequestStatus",
      "type": "api_object",
      "title": "PodCertificateRequestStatus",
      "summary": "PodCertificateRequestStatus describes the status of the request, and holds the certificate data if the request is issued.",
      "body": "The current status of the request to issue a certificate.\n\n**Why it matters**\nThis API resource allows you to track the status of pod certificate requests in a Kubernetes cluster.\n\n**Key facts**\n- Represents the current status of a pod certificate request.\n- Used for tracking the status of issuing a certificate.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "certificates",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "certificates",
        "version": "v1beta1",
        "fields": [
          "beginRefreshAt",
          "certificateChain",
          "conditions",
          "notAfter",
          "notBefore"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.certificates.v1beta1.PodCertificateRequestStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.PodCertificateRequestStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Lease",
      "type": "api_object",
      "title": "Lease",
      "summary": "A Lease object represents a lock on a key in etcd.",
      "body": "A Lease object represents a lock on a key in etcd.\n\n**Why it matters**\nThis API resource allows you to manage locks on keys in etcd, which is used for coordination and locking in Kubernetes.\n\n**Key facts**\n- Represents a lock on a key in etcd.\n- Used for managing locks on keys in etcd.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "coordination"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "coordination",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.coordination.v1.Lease"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1.Lease"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LeaseList",
      "type": "api_object",
      "title": "LeaseList",
      "summary": "A LeaseList is a list of Lease objects in Kubernetes.",
      "body": "A LeaseList is a list of Lease objects in Kubernetes.\n\n**Why it matters**\nIt allows for management and retrieval of leases across the cluster.\n\n**Key facts**\n- Represents a collection of Lease resources.\n- Used to manage leases in Kubernetes.\n\n**Related**\nLease, Kubernetes API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "coordination"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "coordination",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.coordination.v1.LeaseList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1.LeaseList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LeaseSpec",
      "type": "api_object",
      "title": "LeaseSpec",
      "summary": "LeaseSpec is a specification of a Lease.",
      "body": "A LeaseSpec is the specification for a Lease object in Kubernetes.\n\n**Why it matters**\nIt defines the properties of a lease, including its holder and acquisition time.\n\n**Key facts**\n- Represents the desired state of a Lease resource.\n- Used to create or update a Lease object.\n\n**Related**\nLease, Kubernetes API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "coordination"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "coordination",
        "version": "v1",
        "fields": [
          "acquireTime",
          "holderIdentity",
          "leaseDurationSeconds",
          "leaseTransitions",
          "preferredHolder",
          "renewTime",
          "strategy"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.coordination.v1.LeaseSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1.LeaseSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LeaseCandidate",
      "type": "api_object",
      "title": "LeaseCandidate",
      "summary": "LeaseCandidate defines a candidate for a Lease object. Candidates are created such that coordinated leader election will pick the best leader from the list of candidates.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "coordination"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "coordination",
        "version": "v1alpha2",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.coordination.v1alpha2.LeaseCandidate"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1alpha2.LeaseCandidate"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1beta1.LeaseCandidate"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:LeaseCandidateList",
      "type": "api_object",
      "title": "LeaseCandidateList",
      "summary": "LeaseCandidateList is a list of Lease objects.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "coordination"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "coordination",
        "version": "v1alpha2",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.coordination.v1alpha2.LeaseCandidateList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1alpha2.LeaseCandidateList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1beta1.LeaseCandidateList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:LeaseCandidateSpec",
      "type": "api_object",
      "title": "LeaseCandidateSpec",
      "summary": "LeaseCandidateSpec is a specification of a Lease.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "coordination"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "coordination",
        "version": "v1alpha2",
        "fields": [
          "binaryVersion",
          "emulationVersion",
          "leaseName",
          "pingTime",
          "renewTime",
          "strategy"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.coordination.v1alpha2.LeaseCandidateSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1alpha2.LeaseCandidateSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1beta1.LeaseCandidateSpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:AWSElasticBlockStoreVolumeSource",
      "type": "api_object",
      "title": "AWSElasticBlockStoreVolumeSource",
      "summary": "Represents a Persistent Disk resource in AWS.\n\nAn AWS EBS disk must exist before mounting to a container. The disk must also be in the same AWS zone as the kubelet. An AWS EBS disk can only be mounted as read/write once. AWS EBS volumes support ownership management and SELinux relabeling.",
      "body": "Represents an AWS Elastic Block Store (EBS) volume source.\n\n**Why it matters**\nAllows Kubernetes to use EBS volumes as persistent storage.\n\n**Key facts**\n- Based on io.k8s.api.core.v1.AWSElasticBlockStoreVolumeSource\n- Used for persistent storage",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "partition",
          "readOnly",
          "volumeID"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.AWSElasticBlockStoreVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AWSElasticBlockStoreVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Affinity",
      "type": "api_object",
      "title": "Affinity",
      "summary": "Affinity is a group of affinity scheduling rules.",
      "body": "Describes the affinity of a pod to nodes or other pods.\n\n**Why it matters**\nEnsures that pods are scheduled on suitable nodes based on their resource requirements and constraints.\n\n**Key facts**\n- Based on io.k8s.api.core.v1.Affinity\n- Used for node selection",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "nodeAffinity",
          "podAffinity",
          "podAntiAffinity"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.Affinity"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Affinity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:AppArmorProfile",
      "type": "api_object",
      "title": "AppArmorProfile",
      "summary": "AppArmorProfile defines a pod or container's AppArmor settings.",
      "body": "Represents an AppArmor profile.\n\n**Why it matters**\nEnables the use of AppArmor profiles to restrict pod's access to system resources and files.\n\n**Key facts**\n- Based on io.k8s.api.core.v1.AppArmorProfile\n- Used for security",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "localhostProfile",
          "type"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.AppArmorProfile"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AppArmorProfile"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:AttachedVolume",
      "type": "api_object",
      "title": "AttachedVolume",
      "summary": "AttachedVolume describes a volume attached to a node",
      "body": "Represents an attached volume in a pod.\n\n**Why it matters**\nAllows pods to use volumes that are already attached to the node.\n\n**Key facts**\n- Based on io.k8s.api.core.v1.AttachedVolume\n- Used for existing volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "devicePath",
          "name"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.AttachedVolume"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AttachedVolume"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:AzureDiskVolumeSource",
      "type": "api_object",
      "title": "AzureDiskVolumeSource",
      "summary": "AzureDisk represents an Azure Data Disk mount on the host and bind mount to the pod.",
      "body": "Represents an Azure Disk Volume Source.\n\n**Why it matters**\nUsed to provision persistent storage for Kubernetes pods on Azure.\n\n**Key facts**\n- io.k8s.api.core.v1.AzureDiskVolumeSource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "cachingMode",
          "diskName",
          "diskURI",
          "fsType",
          "kind",
          "readOnly"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.AzureDiskVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AzureDiskVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:AzureFilePersistentVolumeSource",
      "type": "api_object",
      "title": "AzureFilePersistentVolumeSource",
      "summary": "AzureFile represents an Azure File Service mount on the host and bind mount to the pod.",
      "body": "Represents an Azure File Persistent Volume Source.\n\n**Why it matters**\nUsed to provision persistent storage for Kubernetes pods on Azure.\n\n**Key facts**\n- io.k8s.api.core.v1.AzureFilePersistentVolumeSource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "readOnly",
          "secretName",
          "secretNamespace",
          "shareName"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.AzureFilePersistentVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AzureFilePersistentVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:AzureFileVolumeSource",
      "type": "api_object",
      "title": "AzureFileVolumeSource",
      "summary": "AzureFile represents an Azure File Service mount on the host and bind mount to the pod.",
      "body": "Represents an Azure File Volume Source.\n\n**Why it matters**\nUsed to provision persistent storage for Kubernetes pods on Azure.\n\n**Key facts**\n- io.k8s.api.core.v1.AzureFileVolumeSource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "readOnly",
          "secretName",
          "shareName"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.AzureFileVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AzureFileVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Binding",
      "type": "api_object",
      "title": "Binding",
      "summary": "Binding ties one object to another; for example, a pod is bound to a node by a scheduler.",
      "body": "Represents a Binding resource in Kubernetes.\n\n**Why it matters**\nUsed to bind a pod or service account with a cluster role or role binding.\n\n**Key facts**\n- io.k8s.api.core.v1.Binding",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "target"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.Binding"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Binding"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSIPersistentVolumeSource",
      "type": "api_object",
      "title": "CSIPersistentVolumeSource",
      "summary": "Represents storage that is managed by an external CSI volume driver",
      "body": "CSIPersistentVolumeSource is a Kubernetes API object that represents a persistent volume source for a CSI driver.\n\n**Why it matters**\nIt allows users to provision and manage storage resources using CSI drivers, providing a more flexible and scalable storage solution.\n\n**Key facts**\n- Represents a CSI driver's persistent volume source\n- Used to provision and manage storage resources\n\n**Common pitfalls**\n- Requires a CSI driver to be installed and configured in the cluster\n\n**Related**\nCSI drivers, Persistent volumes, Storage classes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "controllerExpandSecretRef",
          "controllerPublishSecretRef",
          "driver",
          "fsType",
          "nodeExpandSecretRef",
          "nodePublishSecretRef",
          "nodeStageSecretRef",
          "readOnly",
          "volumeAttributes",
          "volumeHandle"
        ],
        "field_count": 10,
        "def_name": "io.k8s.api.core.v1.CSIPersistentVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CSIPersistentVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSIVolumeSource",
      "type": "api_object",
      "title": "CSIVolumeSource",
      "summary": "Represents a source location of a volume to mount, managed by an external CSI driver",
      "body": "CSIVolumeSource is a Kubernetes API object that represents a CSI volume source for a CSI driver.\n\n**Why it matters**\nIt allows users to provision and manage storage resources using CSI drivers, providing a more flexible and scalable storage solution.\n\n**Key facts**\n- Represents a CSI driver's volume source\n- Used to provision and manage storage resources\n\n**Common pitfalls**\n- Requires a CSI driver to be installed and configured in the cluster\n\n**Related**\nCSI drivers, Persistent volumes, Storage classes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "driver",
          "fsType",
          "nodePublishSecretRef",
          "readOnly",
          "volumeAttributes"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.CSIVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CSIVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Capabilities",
      "type": "api_object",
      "title": "Capabilities",
      "summary": "Adds and removes POSIX capabilities from running containers.",
      "body": "Capabilities is a Kubernetes API object that represents a list of capabilities for a container.\n\n**Why it matters**\nIt allows users to specify the capabilities required by a container, ensuring it can run with the necessary privileges.\n\n**Key facts**\n- Represents a list of capabilities for a container\n- Used to specify the capabilities required by a container\n\n**Common pitfalls**\n- Incorrectly specified capabilities may lead to security issues or container crashes\n\n**Related**\nContainers, Capabilities (kernel feature), SecurityContext",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "add",
          "drop"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.Capabilities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Capabilities"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CephFSPersistentVolumeSource",
      "type": "api_object",
      "title": "CephFSPersistentVolumeSource",
      "summary": "Represents a Ceph Filesystem mount that lasts the lifetime of a pod Cephfs volumes do not support ownership management or SELinux relabeling.",
      "body": "CephFSPersistentVolumeSource is a Kubernetes API object that represents a CephFS persistent volume source.\n\n**Why it matters**\nIt allows users to provision and manage storage resources using CephFS, providing a scalable and highly available storage solution.\n\n**Key facts**\n- Represents a CephFS persistent volume source\n- Used to provision and manage storage resources\n\n**Common pitfalls**\n- Requires a Ceph cluster to be installed and configured in the cluster\n\n**Related**\nCeph clusters, Persistent volumes, Storage classes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "monitors",
          "path",
          "readOnly",
          "secretFile",
          "secretRef",
          "user"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.CephFSPersistentVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CephFSPersistentVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CephFSVolumeSource",
      "type": "api_object",
      "title": "CephFSVolumeSource",
      "summary": "Represents a Ceph Filesystem mount that lasts the lifetime of a pod Cephfs volumes do not support ownership management or SELinux relabeling.",
      "body": "CephFSVolumeSource is a Persistent Volume Source that uses Ceph File System.\n\n**Why it matters**\nIt allows users to provision persistent storage for their applications using Ceph File System.\n\n**Key facts**\n- Uses Ceph File System as the underlying storage system\n- Can be used to provision persistent volumes\n\n**Common pitfalls**\n- Requires a Ceph cluster to be set up and configured\n- May have performance implications due to network latency\n\n**Related**\nPersistent Volumes, Ceph File System",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "monitors",
          "path",
          "readOnly",
          "secretFile",
          "secretRef",
          "user"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.CephFSVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CephFSVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CinderPersistentVolumeSource",
      "type": "api_object",
      "title": "CinderPersistentVolumeSource",
      "summary": "Represents a cinder volume resource in Openstack. A Cinder volume must exist before mounting to a container. The volume must also be in the same region as the kubelet. Cinder volumes support ownership management and SELinux relabeling.",
      "body": "CinderPersistentVolumeSource is a Persistent Volume Source that uses Cinder as the underlying storage system.\n\n**Why it matters**\nIt allows users to provision persistent storage for their applications using Cinder.\n\n**Key facts**\n- Uses Cinder as the underlying storage system\n- Can be used to provision persistent volumes\n\n**Common pitfalls**\n- Requires a Cinder setup and configuration\n- May have performance implications due to network latency\n\n**Related**\nPersistent Volumes, Cinder",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "readOnly",
          "secretRef",
          "volumeID"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.CinderPersistentVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CinderPersistentVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CinderVolumeSource",
      "type": "api_object",
      "title": "CinderVolumeSource",
      "summary": "Represents a cinder volume resource in Openstack. A Cinder volume must exist before mounting to a container. The volume must also be in the same region as the kubelet. Cinder volumes support ownership management and SELinux relabeling.",
      "body": "CinderVolumeSource is a Persistent Volume Source that uses Cinder as the underlying storage system.\n\n**Why it matters**\nIt allows users to provision persistent storage for their applications using Cinder.\n\n**Key facts**\n- Uses Cinder as the underlying storage system\n- Can be used to provision persistent volumes\n\n**Common pitfalls**\n- Requires a Cinder setup and configuration\n- May have performance implications due to network latency\n\n**Related**\nPersistent Volumes, Cinder",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "readOnly",
          "secretRef",
          "volumeID"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.CinderVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CinderVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ClientIPConfig",
      "type": "api_object",
      "title": "ClientIPConfig",
      "summary": "ClientIPConfig represents the configurations of Client IP based session affinity.",
      "body": "ClientIPConfig is a LoadBalancer Ingress configuration that uses client IP addresses.\n\n**Why it matters**\nIt allows users to configure load balancing using client IP addresses.\n\n**Key facts**\n- Uses client IP addresses for load balancing\n- Can be used with LoadBalancers\n\n**Common pitfalls**\n- May require additional configuration for some load balancer implementations\n- Can have implications on scalability and performance\n\n**Related**\nLoadBalancer Ingress, Client IP addresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "timeoutSeconds"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.ClientIPConfig"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ClientIPConfig"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ClusterTrustBundleProjection",
      "type": "api_object",
      "title": "ClusterTrustBundleProjection",
      "summary": "ClusterTrustBundleProjection describes how to select a set of ClusterTrustBundle objects and project their contents into the pod filesystem.",
      "body": "Represents a trust bundle for a cluster.\n\n**Why it matters**\nEnables secure communication between cluster components.\n\n**Key facts**\n- Used to establish trust between cluster components.\n- Contains a list of certificates and keys.\n\n**Common pitfalls**\n- Incorrectly configured trust bundles can lead to security issues.\n\n**Related**\nCertificates, Keys",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "labelSelector",
          "name",
          "optional",
          "path",
          "signerName"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.ClusterTrustBundleProjection"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ClusterTrustBundleProjection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ComponentCondition",
      "type": "api_object",
      "title": "ComponentCondition",
      "summary": "Information about the condition of a component.",
      "body": "Describes the health of a cluster component.\n\n**Why it matters**\nProvides insights into the status of cluster components.\n\n**Key facts**\n- Represents the health state of a component.\n- Can have multiple conditions for a single component.\n\n**Common pitfalls**\n- Misconfigured condition types can lead to incorrect conclusions about component health.\n\n**Related**\nComponents, Conditions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "error",
          "message",
          "status",
          "type"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.ComponentCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ComponentCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ComponentStatus",
      "type": "api_object",
      "title": "ComponentStatus",
      "summary": "ComponentStatus (and ComponentStatusList) holds the cluster validation info. Deprecated: This API is deprecated in v1.19+",
      "body": "Represents the status of a cluster component.\n\n**Why it matters**\nProvides a snapshot of a component's current state.\n\n**Key facts**\n- Contains information about a component's current status.\n- Can be used to track changes in component status.\n\n**Common pitfalls**\n- Outdated or incorrect status information can lead to poor decision-making.\n\n**Related**\nComponents, Status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "conditions",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.ComponentStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ComponentStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ComponentStatusList",
      "type": "api_object",
      "title": "ComponentStatusList",
      "summary": "Status of all the conditions for the component as a list of ComponentStatus objects. Deprecated: This API is deprecated in v1.19+",
      "body": "A list of cluster component statuses.\n\n**Why it matters**\nEnables tracking and management of multiple components' statuses.\n\n**Key facts**\n- Contains a collection of ComponentStatus objects.\n- Used to retrieve the status of multiple components at once.\n\n**Common pitfalls**\n- Large lists can be difficult to manage and analyze.\n\n**Related**\nComponents, Status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.ComponentStatusList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ComponentStatusList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ConfigMap",
      "type": "api_object",
      "title": "ConfigMap",
      "summary": "ConfigMap holds configuration data for pods to consume.",
      "body": "A ConfigMap is an API object that stores configuration data as key-value pairs.\n\n**Why it matters**\nConfigMaps provide a way to decouple application configuration from the deployment process, making it easier to manage and update configurations across multiple environments.\n\n**Key facts**\n- ConfigMaps are immutable by default\n- They can be used to store sensitive data, such as database credentials or API keys\n\n**Common pitfalls**\n- Misconfigured ConfigMaps can lead to inconsistent application behavior\n\n**Related**\nSecrets, Environment variables",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "binaryData",
          "data",
          "immutable",
          "kind",
          "metadata"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.ConfigMap"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMap"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ConfigMapEnvSource",
      "type": "api_object",
      "title": "ConfigMapEnvSource",
      "summary": "ConfigMapEnvSource selects a ConfigMap to populate the environment variables with.\n\nThe contents of the target ConfigMap's Data field will represent the key-value pairs as environment variables. Keys in the BinaryData field are not currently propagated to container env vars.",
      "body": "A ConfigMapEnvSource is a source that populates environment variables from a ConfigMap.\n\n**Why it matters**\nConfigMapEnvSources allow applications to access configuration data stored in ConfigMaps as environment variables, making it easier to manage and update configurations.\n\n**Key facts**\n- ConfigMapEnvSources can be used to populate environment variables with values from a ConfigMap\n- They support multiple ConfigMap references\n\n**Common pitfalls**\n- Incorrectly configured ConfigMapEnvSources can lead to missing or incorrect environment variables\n\n**Related**\nEnvironment variables, ConfigMaps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "optional"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ConfigMapEnvSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapEnvSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ConfigMapKeySelector",
      "type": "api_object",
      "title": "ConfigMapKeySelector",
      "summary": "A ConfigMapKeySelector is a selector that identifies a key in a ConfigMap.",
      "body": "A ConfigMapKeySelector is a selector that identifies a key in a ConfigMap.\n\n**Why it matters**\nConfigMapKeySelectors allow applications to selectively access specific configuration data stored in ConfigMaps, making it easier to manage and update configurations.\n\n**Key facts**\n- ConfigMapKeySelectors can be used to identify keys in a ConfigMap\n- They support multiple ConfigMap references\n\n**Common pitfalls**\n- Incorrectly configured ConfigMapKeySelectors can lead to missing or incorrect configuration data\n\n**Related**\nConfigMaps, Selectors",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "key",
          "name",
          "optional"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.ConfigMapKeySelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapKeySelector"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ConfigMapList",
      "type": "api_object",
      "title": "ConfigMapList",
      "summary": "ConfigMapList is a resource containing a list of ConfigMap objects.",
      "body": "A ConfigMapList is a list of ConfigMap objects.\n\n**Why it matters**\nConfigMapLists provide a way to manage and view multiple ConfigMaps in a single API object, making it easier to manage and update configurations across multiple environments.\n\n**Key facts**\n- ConfigMapLists can be used to store multiple ConfigMaps\n- They support pagination\n\n**Common pitfalls**\n- Misconfigured ConfigMapLists can lead to inconsistent application behavior\n\n**Related**\nConfigMaps, Lists",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.ConfigMapList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ConfigMapNodeConfigSource",
      "type": "api_object",
      "title": "ConfigMapNodeConfigSource",
      "summary": "ConfigMapNodeConfigSource contains the information to reference a ConfigMap as a config source for the Node. This API is deprecated since 1.22: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration",
      "body": "A ConfigMapNodeConfigSource is used to inject configuration data into a node's kubelet configuration.\n\n**Why it matters**\nIt allows for dynamic configuration of the node without requiring a restart.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ConfigMapNodeConfigSource\n- Injects ConfigMaps as files into the node's /etc/kubernetes/manifests directory\n\n**Common pitfalls**\n- Requires proper configuration of the node and its kubelet\n\n**Related**\nConfigMaps, Kubelet",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "kubeletConfigKey",
          "name",
          "namespace",
          "resourceVersion",
          "uid"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.ConfigMapNodeConfigSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapNodeConfigSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ConfigMapProjection",
      "type": "api_object",
      "title": "ConfigMapProjection",
      "summary": "Adapts a ConfigMap into a projected volume.\n\nThe contents of the target ConfigMap's Data field will be presented in a projected volume as files using the keys in the Data field as the file names, unless the items element is populated with specific mappings of keys to paths. Note that this is identical to a configmap volume source without the default mode.",
      "body": "A ConfigMapProjection is used to project a ConfigMap into a pod.\n\n**Why it matters**\nIt allows for sharing of configuration data between pods and the node.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ConfigMapProjection\n- Projects ConfigMaps as files or environment variables into the pod\n\n**Common pitfalls**\n- Requires proper configuration of the pod and its containers\n\n**Related**\nConfigMaps, Pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "items",
          "name",
          "optional"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.ConfigMapProjection"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapProjection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ConfigMapVolumeSource",
      "type": "api_object",
      "title": "ConfigMapVolumeSource",
      "summary": "Adapts a ConfigMap into a volume.\n\nThe contents of the target ConfigMap's Data field will be presented in a volume as files using the keys in the Data field as the file names, unless the items element is populated with specific mappings of keys to paths. ConfigMap volumes support ownership management and SELinux relabeling.",
      "body": "A ConfigMapVolumeSource is used to mount a ConfigMap as a volume into a container.\n\n**Why it matters**\nIt allows for sharing of configuration data between containers and the node.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ConfigMapVolumeSource\n- Mounts ConfigMaps as files or environment variables into the container\n\n**Common pitfalls**\n- Requires proper configuration of the container and its volumes\n\n**Related**\nConfigMaps, Volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "defaultMode",
          "items",
          "name",
          "optional"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.ConfigMapVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Container",
      "type": "api_object",
      "title": "Container",
      "summary": "A single application container that you want to run within a pod.",
      "body": "A Container is a lightweight and standalone executable package for software components.\n\n**Why it matters**\nIt allows for decoupling of application code from the underlying infrastructure.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.Container\n- Represents a single running process within a pod\n\n**Common pitfalls**\n- Requires proper configuration and resource allocation\n\n**Related**\nPods, Volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "args",
          "command",
          "env",
          "envFrom",
          "image",
          "imagePullPolicy",
          "lifecycle",
          "livenessProbe",
          "name",
          "ports",
          "readinessProbe",
          "resizePolicy",
          "resources",
          "restartPolicy",
          "restartPolicyRules",
          "securityContext",
          "startupProbe",
          "stdin",
          "stdinOnce",
          "terminationMessagePath",
          "terminationMessagePolicy",
          "tty",
          "volumeDevices",
          "volumeMounts",
          "workingDir"
        ],
        "field_count": 25,
        "def_name": "io.k8s.api.core.v1.Container"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Container"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerExtendedResourceRequest",
      "type": "api_object",
      "title": "ContainerExtendedResourceRequest",
      "summary": "ContainerExtendedResourceRequest has the mapping of container name, extended resource name to the device request name.",
      "body": "Represents a request for extended resources such as GPUs or large pages.\n\n**Why it matters**\nThis object allows users to specify custom resource requests for their containers, enabling more efficient use of cluster resources.\n\n**Key facts**\n- Extends the standard ContainerResourceRequest\n- Supports custom resource types like GPUs and large pages\n\n**Common pitfalls**\n- Incorrectly specified resource requests can lead to underutilization or overcommitting of resources\n\n**Related**\nContainerResourceRequest, PodSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "containerName",
          "requestName",
          "resourceName"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.ContainerExtendedResourceRequest"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerExtendedResourceRequest"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerImage",
      "type": "api_object",
      "title": "ContainerImage",
      "summary": "Represents the image used by a container.",
      "body": "Represents the image used by a container.\n\n**Why it matters**\nThis object provides information about the container's image, including its name and digest.\n\n**Key facts**\n- Identifies the container's image using a name or digest\n\n**Common pitfalls**\n- Using an outdated or incorrect image can lead to security vulnerabilities or unexpected behavior\n\n**Related**\nContainer, ImagePullPolicy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "names",
          "sizeBytes"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ContainerImage"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerImage"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerPort",
      "type": "api_object",
      "title": "ContainerPort",
      "summary": "ContainerPort represents a network port in a single container.",
      "body": "Represents a port exposed by a container.\n\n**Why it matters**\nThis object allows users to specify the ports that should be exposed from their containers, enabling network access and communication.\n\n**Key facts**\n- Specifies the container's exposed port number and protocol\n\n**Common pitfalls**\n- Incorrectly specified port mappings can lead to connectivity issues or security vulnerabilities\n\n**Related**\nContainer, Service",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "containerPort",
          "hostIP",
          "hostPort",
          "name",
          "protocol"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.ContainerPort"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerPort"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerResizePolicy",
      "type": "api_object",
      "title": "ContainerResizePolicy",
      "summary": "ContainerResizePolicy represents resource resize policy for the container.",
      "body": "Represents the policy for resizing a container.\n\n**Why it matters**\nThis object allows users to specify how their containers should be resized in response to changes in resource availability or demand.\n\n**Key facts**\n- Determines how the container is resized when resources are added or removed\n\n**Common pitfalls**\n- Incorrectly specified resize policies can lead to underutilization or overcommitting of resources\n\n**Related**\nContainer, PodSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "resourceName",
          "restartPolicy"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ContainerResizePolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerResizePolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerRestartRule",
      "type": "api_object",
      "title": "ContainerRestartRule",
      "summary": "ContainerRestartRule describes how a container exit is handled.",
      "body": "A ContainerRestartRule is used to specify when a container should be restarted.\n\n**Why it matters**\nThis rule helps ensure that containers are always running and available.\n\n**Key facts**\n- Can be used in PodSpec\n- Used for restarting containers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "action",
          "exitCodes"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ContainerRestartRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerRestartRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerRestartRuleOnExitCodes",
      "type": "api_object",
      "title": "ContainerRestartRuleOnExitCodes",
      "summary": "ContainerRestartRuleOnExitCodes describes the condition for handling an exited container based on its exit codes.",
      "body": "A ContainerRestartRuleOnExitCodes is a specific type of restart rule that restarts a container based on exit codes.\n\n**Why it matters**\nThis rule helps ensure that containers are restarted when they fail due to non-zero exit codes.\n\n**Key facts**\n- Can be used in PodSpec\n- Used for restarting containers with non-zero exit codes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "operator",
          "values"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ContainerRestartRuleOnExitCodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerRestartRuleOnExitCodes"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerState",
      "type": "api_object",
      "title": "ContainerState",
      "summary": "ContainerState holds a possible state of container. Only one of its members may be specified. If none of them is specified, the default one is ContainerStateWaiting.",
      "body": "A ContainerState represents the current state of a container.\n\n**Why it matters**\nThis state helps track the lifecycle of a container.\n\n**Key facts**\n- Can be one of Running, Terminated, or Waiting\n- Used to represent the current state of a container",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "running",
          "terminated",
          "waiting"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.ContainerState"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerState"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerStateRunning",
      "type": "api_object",
      "title": "ContainerStateRunning",
      "summary": "ContainerStateRunning is a running state of a container.",
      "body": "A ContainerStateRunning represents the running state of a container.\n\n**Why it matters**\nThis state indicates that the container is currently running.\n\n**Key facts**\n- Can be used to represent the current state of a running container\n- Used in conjunction with other states",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "startedAt"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.ContainerStateRunning"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerStateRunning"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerStateTerminated",
      "type": "api_object",
      "title": "ContainerStateTerminated",
      "summary": "ContainerStateTerminated is a terminated state of a container.",
      "body": "Represents the state of a container after it has terminated.\n\n**Why it matters**\nThis field is used to indicate that a container has finished its lifecycle and will not restart.\n\n**Key facts**\n- The container has finished its lifecycle.\n- It will not restart.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "containerID",
          "exitCode",
          "finishedAt",
          "message",
          "reason",
          "signal",
          "startedAt"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.core.v1.ContainerStateTerminated"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerStateTerminated"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerStateWaiting",
      "type": "api_object",
      "title": "ContainerStateWaiting",
      "summary": "ContainerStateWaiting is a waiting state of a container.",
      "body": "Represents the state of a container while it is waiting for something.\n\n**Why it matters**\nThis field is used to indicate that a container is paused or waiting for a resource.\n\n**Key facts**\n- The container is paused.\n- It is waiting for a resource.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "message",
          "reason"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ContainerStateWaiting"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerStateWaiting"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerStatus",
      "type": "api_object",
      "title": "ContainerStatus",
      "summary": "ContainerStatus contains details for the current status of this container.",
      "body": "Represents the current status of a container.\n\n**Why it matters**\nThis field provides information about the current state of a container, such as its restart count and last termination message.\n\n**Key facts**\n- Provides information about the current state of a container.\n- Includes restart count and last termination message.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "allocatedResources",
          "allocatedResourcesStatus",
          "containerID",
          "image",
          "imageID",
          "lastState",
          "name",
          "ready",
          "resources",
          "restartCount",
          "started",
          "state",
          "stopSignal",
          "user",
          "volumeMounts"
        ],
        "field_count": 15,
        "def_name": "io.k8s.api.core.v1.ContainerStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ContainerUser",
      "type": "api_object",
      "title": "ContainerUser",
      "summary": "ContainerUser represents user identity information",
      "body": "Represents the user who owns the container.\n\n**Why it matters**\nThis field is used to identify the user who created or owns a container.\n\n**Key facts**\n- Identifies the user who created or owns a container.\n- Includes username and group information.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "linux"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.ContainerUser"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerUser"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DaemonEndpoint",
      "type": "api_object",
      "title": "DaemonEndpoint",
      "summary": "DaemonEndpoint contains information about a single Daemon endpoint.",
      "body": "A DaemonEndpoint represents a daemon endpoint in a Kubernetes cluster.\n\n**Why it matters**\nIt allows you to manage and interact with daemons running on nodes in your cluster.\n\n**Key facts**\n- Represents a daemon endpoint\n- Used for managing daemons",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "Port"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.DaemonEndpoint"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.DaemonEndpoint"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DownwardAPIProjection",
      "type": "api_object",
      "title": "DownwardAPIProjection",
      "summary": "Represents downward API info for projecting into a projected volume. Note that this is identical to a downwardAPI volume source without the default mode.",
      "body": "A DownwardAPIProjection is used to project information from the pod's API into environment variables or files.\n\n**Why it matters**\nIt enables you to inject information about the pod and its environment into containers running within it.\n\n**Key facts**\n- Projects information into environment variables or files\n- Used for injecting pod and environment information",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "items"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.DownwardAPIProjection"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.DownwardAPIProjection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DownwardAPIVolumeFile",
      "type": "api_object",
      "title": "DownwardAPIVolumeFile",
      "summary": "DownwardAPIVolumeFile represents information to create the file containing the pod field",
      "body": "A DownwardAPIVolumeFile is a file that contains data projected from the pod's API.\n\n**Why it matters**\nIt allows you to store and use information about the pod in files within your containers.\n\n**Key facts**\n- Contains data projected from the pod's API\n- Used for storing pod information",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fieldRef",
          "mode",
          "path",
          "resourceFieldRef"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.DownwardAPIVolumeFile"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.DownwardAPIVolumeFile"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DownwardAPIVolumeSource",
      "type": "api_object",
      "title": "DownwardAPIVolumeSource",
      "summary": "DownwardAPIVolumeSource represents a volume containing downward API info. Downward API volumes support ownership management and SELinux relabeling.",
      "body": "A DownwardAPIVolumeSource is a source of downward API data.\n\n**Why it matters**\nIt provides the data used by DownwardAPIVolumeFile objects to populate files within containers.\n\n**Key facts**\n- Provides data for DownwardAPIVolumeFile\n- Used as a source of downward API data",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "defaultMode",
          "items"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.DownwardAPIVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.DownwardAPIVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EmptyDirVolumeSource",
      "type": "api_object",
      "title": "EmptyDirVolumeSource",
      "summary": "Represents an empty directory for a pod. Empty directory volumes support ownership management and SELinux relabeling.",
      "body": "A volume that stores data in memory only, and is deleted when the pod is terminated.\n\n**Why it matters**\nUseful for ephemeral storage needs, such as storing temporary data or caching frequently accessed files.\n\n**Key facts**\n- Data stored in an EmptyDirVolumeSource is not persisted across restarts\n- EmptyDirVolumeSource is deleted when the pod is terminated\n\n**Common pitfalls**\n- Not suitable for persistent storage needs, as data is lost on pod termination\n\n**Related**\nPersistentVolumeClaim (PVC), StatefulSet",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "medium",
          "sizeLimit"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.EmptyDirVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EmptyDirVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EndpointAddress",
      "type": "api_object",
      "title": "EndpointAddress",
      "summary": "EndpointAddress is a tuple that describes single IP address. Deprecated: This API is deprecated in v1.33+.",
      "body": "Represents an IP address and port number that can be used to access a service.\n\n**Why it matters**\nUsed to expose services to external traffic, such as load balancers or ingress controllers.\n\n**Key facts**\n- EndpointAddress is a field of the Endpoint object\n- Can have multiple addresses associated with it\n\n**Common pitfalls**\n- Requires careful configuration to ensure correct routing and balancing\n\n**Related**\nService, Ingress Controller",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "hostname",
          "ip",
          "nodeName",
          "targetRef"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.EndpointAddress"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EndpointAddress"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EndpointPort",
      "type": "api_object",
      "title": "EndpointPort",
      "summary": "EndpointPort is a tuple that describes a single port. Deprecated: This API is deprecated in v1.33+.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "appProtocol",
          "name",
          "port",
          "protocol"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.EndpointPort"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EndpointPort"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.EndpointPort"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:EndpointSubset",
      "type": "api_object",
      "title": "EndpointSubset",
      "summary": "EndpointSubset is a group of addresses with a common set of ports. The expanded set of endpoints is the Cartesian product of Addresses x Ports. For example, given:\n\n\t{\n\t  Addresses: [{\"ip\": \"10.10.1.1\"}, {\"ip\": \"10.10.2.2\"}],\n\t  Ports:     [{\"name\": \"a\", \"port\": 8675}, {\"name\": \"b\", \"port\": 309}]\n\t}\n\nThe resulting set of endpoints can be viewed as:\n\n\ta: [ 10.10.1.1:8675, 10.10.2.2:8675 ],\n\tb: [ 10.10.1.1:309, 10.10.2.2:309 ]\n\nDeprecated: This API is deprecated in v1.33+.",
      "body": "Represents a subset of endpoints that can be used to access a service.\n\n**Why it matters**\nUsed to expose services to external traffic, such as load balancers or ingress controllers.\n\n**Key facts**\n- EndpointSubset is a field of the Endpoint object\n- Can have multiple subsets associated with it\n\n**Common pitfalls**\n- Requires careful configuration to ensure correct routing and balancing\n\n**Related**\nService, Ingress Controller",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "addresses",
          "notReadyAddresses",
          "ports"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.EndpointSubset"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EndpointSubset"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Endpoints",
      "type": "api_object",
      "title": "Endpoints",
      "summary": "Endpoints is a collection of endpoints that implement the actual service. Example:\n\n\t Name: \"mysvc\",\n\t Subsets: [\n\t   {\n\t     Addresses: [{\"ip\": \"10.10.1.1\"}, {\"ip\": \"10.10.2.2\"}],\n\t     Ports: [{\"name\": \"a\", \"port\": 8675}, {\"name\": \"b\", \"port\": 309}]\n\t   },\n\t   {\n\t     Addresses: [{\"ip\": \"10.10.3.3\"}],\n\t     Ports: [{\"name\": \"a\", \"port\": 93}, {\"name\": \"b\", \"port\": 76}]\n\t   },\n\t]\n\nEndpoints is a legacy API and does not contain information about all Service features. Use discoveryv1.EndpointSlice for complete information about Service endpoints.\n\nDeprecated: This API is deprecated in v1.33+. Use discoveryv1.EndpointSlice.",
      "body": "An Endpoints object represents a collection of endpoint objects, which expose target ports used by your application.\n\n**Why it matters**\nEndpoints are essential for load balancing and service discovery in Kubernetes.\n\n**Key facts**\n- Endpoints are used to expose target ports used by an application.\n- They are a collection of endpoint objects.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "subsets"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Endpoints"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EndpointsList",
      "type": "api_object",
      "title": "EndpointsList",
      "summary": "EndpointsList is a list of endpoints. Deprecated: This API is deprecated in v1.33+.",
      "body": "An EndpointsList object is a list of Endpoints objects, which represent collections of endpoint objects.\n\n**Why it matters**\nEndpointsList provides a way to manage multiple Endpoints objects in a single resource.\n\n**Key facts**\n- EndpointsList is a list of Endpoints objects.\n- It's used for managing multiple Endpoints resources.\n\n**Related**\napi:Endpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.EndpointsList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EndpointsList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EnvFromSource",
      "type": "api_object",
      "title": "EnvFromSource",
      "summary": "EnvFromSource represents the source of a set of ConfigMaps or Secrets",
      "body": "An EnvFromSource object represents a source that supplies configuration data to a container.\n\n**Why it matters**\nEnvFromSource enables the injection of environment variables into containers from various sources.\n\n**Key facts**\n- It supplies configuration data to a container.\n- It's used for injecting environment variables.\n\n**Related**\napi:EnvVar",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "configMapRef",
          "prefix",
          "secretRef"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.EnvFromSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EnvFromSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EnvVar",
      "type": "api_object",
      "title": "EnvVar",
      "summary": "EnvVar represents an environment variable present in a Container.",
      "body": "An EnvVar object represents an environment variable that can be set in a container.\n\n**Why it matters**\nEnvVar allows you to configure environment variables for containers.\n\n**Key facts**\n- It's used to set environment variables in containers.\n- Each EnvVar has a name and value.\n\n**Related**\napi:EnvFromSource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "value",
          "valueFrom"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.EnvVar"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EnvVar"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EnvVarSource",
      "type": "api_object",
      "title": "EnvVarSource",
      "summary": "EnvVarSource represents a source for the value of an EnvVar.",
      "body": "Represents an environment variable source in Kubernetes.\n\n**Why it matters**\nAllows you to reference environment variables from other sources, such as config maps or secrets.\n\n**Key facts**\n- Defined in the io.k8s.api.core.v1 package (source: swagger.json)\n- Used to reference environment variables from other sources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "configMapKeyRef",
          "fieldRef",
          "fileKeyRef",
          "resourceFieldRef",
          "secretKeyRef"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.EnvVarSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EnvVarSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EphemeralContainer",
      "type": "api_object",
      "title": "EphemeralContainer",
      "summary": "An EphemeralContainer is a temporary container that you may add to an existing Pod for user-initiated activities such as debugging. Ephemeral containers have no resource or scheduling guarantees, and they will not be restarted when they exit or when a Pod is removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the Pod to exceed its resource allocation.\n\nTo add an ephemeral container, use the ephemeralcontainers subresource of an existing Pod. Ephemeral containers may not be removed or restarted.",
      "body": "Represents an ephemeral container in Kubernetes.\n\n**Why it matters**\nAllows you to run a temporary, disposable container alongside your application containers.\n\n**Key facts**\n- Defined in the io.k8s.api.core.v1 package (source: swagger.json)\n- Used for running temporary or disposable containers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "args",
          "command",
          "env",
          "envFrom",
          "image",
          "imagePullPolicy",
          "lifecycle",
          "livenessProbe",
          "name",
          "ports",
          "readinessProbe",
          "resizePolicy",
          "resources",
          "restartPolicy",
          "restartPolicyRules",
          "securityContext",
          "startupProbe",
          "stdin",
          "stdinOnce",
          "targetContainerName",
          "terminationMessagePath",
          "terminationMessagePolicy",
          "tty",
          "volumeDevices",
          "volumeMounts",
          "workingDir"
        ],
        "field_count": 26,
        "def_name": "io.k8s.api.core.v1.EphemeralContainer"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EphemeralContainer"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EphemeralVolumeSource",
      "type": "api_object",
      "title": "EphemeralVolumeSource",
      "summary": "Represents an ephemeral volume that is handled by a normal storage driver.",
      "body": "Represents an ephemeral volume source in Kubernetes.\n\n**Why it matters**\nAllows you to create a temporary, disposable volume for your containers.\n\n**Key facts**\n- Defined in the io.k8s.api.core.v1 package (source: swagger.json)\n- Used for creating temporary or disposable volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "volumeClaimTemplate"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.EphemeralVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EphemeralVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Event",
      "type": "api_object",
      "title": "Event",
      "summary": "Event is a report of an event somewhere in the cluster.  Events have a limited retention time and triggers and messages may evolve with time.  Event consumers should not rely on the timing of an event with a given Reason reflecting a consistent underlying trigger, or the continued existence of events with that Reason.  Events should be treated as informative, best-effort, supplemental data.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "action",
          "apiVersion",
          "count",
          "eventTime",
          "firstTimestamp",
          "involvedObject",
          "kind",
          "lastTimestamp",
          "message",
          "metadata",
          "reason",
          "related",
          "reportingComponent",
          "reportingInstance",
          "series",
          "source",
          "type"
        ],
        "field_count": 17,
        "def_name": "io.k8s.api.core.v1.Event"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Event"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.events.v1.Event"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:EventList",
      "type": "api_object",
      "title": "EventList",
      "summary": "EventList is a list of events.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.EventList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EventList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.events.v1.EventList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:EventSeries",
      "type": "api_object",
      "title": "EventSeries",
      "summary": "EventSeries contain information on series of events, i.e. thing that was/is happening continuously for some time.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "count",
          "lastObservedTime"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.EventSeries"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EventSeries"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.events.v1.EventSeries"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:EventSource",
      "type": "api_object",
      "title": "EventSource",
      "summary": "EventSource contains information for an event.",
      "body": "EventSource is a Kubernetes API resource that represents the source of an event.\n\n**Why it matters**\nEventSource provides information about where an event originated from, which can be useful for debugging and troubleshooting purposes.\n\n**Key facts**\n- Represents the source of an event\n- Used to provide information about event origin\n\n**Related**\napi:Event, api:Events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "component",
          "host"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.EventSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EventSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ExecAction",
      "type": "api_object",
      "title": "ExecAction",
      "summary": "ExecAction describes a \"run in container\" action.",
      "body": "ExecAction is a Kubernetes API resource that represents an exec action in a pod.\n\n**Why it matters**\nExecAction allows users to execute commands within a running container, which can be useful for debugging and troubleshooting purposes.\n\n**Key facts**\n- Represents an exec action in a pod\n- Used to execute commands within a running container\n\n**Related**\napi:Pod, api:Container",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "command"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.ExecAction"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ExecAction"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FCVolumeSource",
      "type": "api_object",
      "title": "FCVolumeSource",
      "summary": "Represents a Fibre Channel volume. Fibre Channel volumes can only be mounted as read/write once. Fibre Channel volumes support ownership management and SELinux relabeling.",
      "body": "FCVolumeSource is an API object that represents a Fibre Channel volume.\n\n**Why it matters**\nIt allows users to provision and manage Fibre Channel volumes in Kubernetes clusters.\n\n**Key facts**\n- Represents a Fibre Channel volume\n- Used for provisioning and managing Fibre Channel volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "lun",
          "readOnly",
          "targetWWNs",
          "wwids"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.FCVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FCVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FileKeySelector",
      "type": "api_object",
      "title": "FileKeySelector",
      "summary": "FileKeySelector selects a key of the env file.",
      "body": "FileKeySelector is an API object that selects files based on their key.\n\n**Why it matters**\nIt enables users to select specific files for use in Kubernetes applications.\n\n**Key facts**\n- Selects files based on their key\n- Used for selecting specific files",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "key",
          "optional",
          "path",
          "volumeName"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.FileKeySelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FileKeySelector"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FlexPersistentVolumeSource",
      "type": "api_object",
      "title": "FlexPersistentVolumeSource",
      "summary": "FlexPersistentVolumeSource represents a generic persistent volume resource that is provisioned/attached using an exec based plugin.",
      "body": "FlexPersistentVolumeSource is an API object that represents a flexible persistent volume source.\n\n**Why it matters**\nIt allows users to provision and manage flexible persistent volumes in Kubernetes clusters.\n\n**Key facts**\n- Represents a flexible persistent volume source\n- Used for provisioning and managing flexible persistent volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "driver",
          "fsType",
          "options",
          "readOnly",
          "secretRef"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.FlexPersistentVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FlexPersistentVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FlexVolumeSource",
      "type": "api_object",
      "title": "FlexVolumeSource",
      "summary": "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin.",
      "body": "FlexVolumeSource is an API object that represents a flexible volume source.\n\n**Why it matters**\nIt enables users to provision and manage flexible volumes in Kubernetes clusters.\n\n**Key facts**\n- Represents a flexible volume source\n- Used for provisioning and managing flexible volumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "driver",
          "fsType",
          "options",
          "readOnly",
          "secretRef"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.FlexVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FlexVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FlockerVolumeSource",
      "type": "api_object",
      "title": "FlockerVolumeSource",
      "summary": "Represents a Flocker volume mounted by the Flocker agent. One and only one of datasetName and datasetUUID should be set. Flocker volumes do not support ownership management or SELinux relabeling.",
      "body": "FlockerVolumeSource is a Kubernetes API resource that represents a Flocker volume.\n\n**Why it matters**\nIt allows users to mount Flocker volumes in their pods, enabling persistent storage across cluster restarts.\n\n**Key facts**\n- Represents a Flocker volume\n- Used for mounting Flocker volumes in pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "datasetName",
          "datasetUUID"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.FlockerVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FlockerVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:GCEPersistentDiskVolumeSource",
      "type": "api_object",
      "title": "GCEPersistentDiskVolumeSource",
      "summary": "Represents a Persistent Disk resource in Google Compute Engine.\n\nA GCE PD must exist before mounting to a container. The disk must also be in the same GCE project and zone as the kubelet. A GCE PD can only be mounted as read/write once or read-only many times. GCE PDs support ownership management and SELinux relabeling.",
      "body": "GCEPersistentDiskVolumeSource is a Kubernetes API resource that represents a persistent disk from Google Compute Engine.\n\n**Why it matters**\nIt enables users to mount persistent disks from GCE in their pods, providing durable storage for applications.\n\n**Key facts**\n- Represents a persistent disk from GCE\n- Used for mounting persistent disks in pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "partition",
          "pdName",
          "readOnly"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.GCEPersistentDiskVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GCEPersistentDiskVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:GRPCAction",
      "type": "api_object",
      "title": "GRPCAction",
      "summary": "GRPCAction specifies an action involving a GRPC service.",
      "body": "GRPCAction is a Kubernetes API resource that represents a gRPC action.\n\n**Why it matters**\nIt allows users to perform gRPC actions on objects in the cluster, enabling more flexible and efficient interactions with the API server.\n\n**Key facts**\n- Represents a gRPC action\n- Used for performing gRPC actions on objects",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "port",
          "service"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.GRPCAction"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GRPCAction"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:GitRepoVolumeSource",
      "type": "api_object",
      "title": "GitRepoVolumeSource",
      "summary": "Represents a volume that is populated with the contents of a git repository. Git repo volumes do not support ownership management. Git repo volumes support SELinux relabeling.\n\nDEPRECATED: GitRepo is deprecated. To provision a container with a git repo, mount an EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir into the Pod's container.",
      "body": "GitRepoVolumeSource is a Kubernetes API resource that represents a Git repository.\n\n**Why it matters**\nIt enables users to mount Git repositories in their pods, providing version-controlled storage for applications.\n\n**Key facts**\n- Represents a Git repository\n- Used for mounting Git repositories in pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "directory",
          "repository",
          "revision"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.GitRepoVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GitRepoVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:GlusterfsPersistentVolumeSource",
      "type": "api_object",
      "title": "GlusterfsPersistentVolumeSource",
      "summary": "Represents a Glusterfs mount that lasts the lifetime of a pod. Glusterfs volumes do not support ownership management or SELinux relabeling.",
      "body": "A GlusterfsPersistentVolumeSource represents a persistent volume that uses GlusterFS.\n\n**Why it matters**\nThis source allows you to use GlusterFS as a storage solution for your Kubernetes cluster.\n\n**Key facts**\n- It is used in PersistentVolume objects\n- It provides access to GlusterFS volumes\n\n**Related**\nPersistentVolumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "endpoints",
          "endpointsNamespace",
          "path",
          "readOnly"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.GlusterfsPersistentVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GlusterfsPersistentVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:GlusterfsVolumeSource",
      "type": "api_object",
      "title": "GlusterfsVolumeSource",
      "summary": "Represents a Glusterfs mount that lasts the lifetime of a pod. Glusterfs volumes do not support ownership management or SELinux relabeling.",
      "body": "A GlusterfsVolumeSource represents a volume that uses GlusterFS.\n\n**Why it matters**\nThis source allows you to use GlusterFS as a storage solution for your Kubernetes pods.\n\n**Key facts**\n- It is used in PersistentVolumeClaim objects\n- It provides access to GlusterFS volumes\n\n**Related**\nPersistentVolumeClaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "endpoints",
          "path",
          "readOnly"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.GlusterfsVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GlusterfsVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HTTPGetAction",
      "type": "api_object",
      "title": "HTTPGetAction",
      "summary": "HTTPGetAction describes an action based on HTTP Get requests.",
      "body": "An HTTPGetAction represents an action that performs an HTTP GET request.\n\n**Why it matters**\nThis action allows you to perform health checks on your pods using HTTP requests.\n\n**Key facts**\n- It is used in Probe objects\n- It performs an HTTP GET request\n\n**Related**\nProbes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "host",
          "httpHeaders",
          "path",
          "port",
          "scheme"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.HTTPGetAction"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HTTPGetAction"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HTTPHeader",
      "type": "api_object",
      "title": "HTTPHeader",
      "summary": "HTTPHeader describes a custom header to be used in HTTP probes",
      "body": "An HTTPHeader represents a header that can be added to an HTTP request.\n\n**Why it matters**\nThis header allows you to add custom headers to your HTTP requests.\n\n**Key facts**\n- It is used in HTTPGetAction objects\n- It adds a custom header to the HTTP request\n\n**Related**\nHTTPGetActions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "value"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.HTTPHeader"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HTTPHeader"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HostAlias",
      "type": "api_object",
      "title": "HostAlias",
      "summary": "HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the pod's hosts file.",
      "body": "A HostAlias is an object that maps a hostname to a pod's IP address.\n\n**Why it matters**\nHostAliases allow for multiple hostnames to be mapped to the same pod, enabling more flexibility in network configuration.\n\n**Key facts**\n- Can map one or more hostnames to a pod's IP address\n- Used for network configuration and flexibility\n\n**Common pitfalls**\n- Requires careful management to avoid conflicts between hostnames",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "hostnames",
          "ip"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.HostAlias"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HostAlias"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HostIP",
      "type": "api_object",
      "title": "HostIP",
      "summary": "HostIP represents a single IP address allocated to the host.",
      "body": "A HostIP is an object that represents a pod's IP address.\n\n**Why it matters**\nHostIPs provide a way to uniquely identify pods in the cluster, enabling more efficient network communication.\n\n**Key facts**\n- Represents a pod's IP address\n- Used for unique identification of pods\n\n**Common pitfalls**\n- May not be directly accessible from outside the cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "ip"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.HostIP"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HostIP"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HostPathVolumeSource",
      "type": "api_object",
      "title": "HostPathVolumeSource",
      "summary": "Represents a host path mapped into a pod. Host path volumes do not support ownership management or SELinux relabeling.",
      "body": "A HostPathVolumeSource is an object that mounts a host's file system into a pod.\n\n**Why it matters**\nHostPathVolumeSources enable pods to access and manipulate the host's file system, facilitating more flexible storage configurations.\n\n**Key facts**\n- Mounts a host's file system into a pod\n- Enables pods to access and manipulate host files\n\n**Common pitfalls**\n- May introduce security risks if not properly configured",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "path",
          "type"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.HostPathVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HostPathVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ISCSIPersistentVolumeSource",
      "type": "api_object",
      "title": "ISCSIPersistentVolumeSource",
      "summary": "ISCSIPersistentVolumeSource represents an ISCSI disk. ISCSI volumes can only be mounted as read/write once. ISCSI volumes support ownership management and SELinux relabeling.",
      "body": "An ISCSIPersistentVolumeSource is an object that represents a persistent volume for iSCSI storage.\n\n**Why it matters**\nISCSIPersistentVolumeSources enable pods to access and utilize iSCSI storage, providing more flexible storage options.\n\n**Key facts**\n- Represents a persistent volume for iSCSI storage\n- Enables pods to access and utilize iSCSI storage\n\n**Common pitfalls**\n- Requires proper configuration of the iSCSI target",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "chapAuthDiscovery",
          "chapAuthSession",
          "fsType",
          "initiatorName",
          "iqn",
          "iscsiInterface",
          "lun",
          "portals",
          "readOnly",
          "secretRef",
          "targetPortal"
        ],
        "field_count": 11,
        "def_name": "io.k8s.api.core.v1.ISCSIPersistentVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ISCSIPersistentVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ISCSIVolumeSource",
      "type": "api_object",
      "title": "ISCSIVolumeSource",
      "summary": "Represents an ISCSI disk. ISCSI volumes can only be mounted as read/write once. ISCSI volumes support ownership management and SELinux relabeling.",
      "body": "Represents an iSCSI volume source.\n\n**Why it matters**\nAllows users to mount iSCSI volumes in their Kubernetes pods.\n\n**Key facts**\n- io.k8s.api.core.v1.ISCSIVolumeSource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "chapAuthDiscovery",
          "chapAuthSession",
          "fsType",
          "initiatorName",
          "iqn",
          "iscsiInterface",
          "lun",
          "portals",
          "readOnly",
          "secretRef",
          "targetPortal"
        ],
        "field_count": 11,
        "def_name": "io.k8s.api.core.v1.ISCSIVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ISCSIVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ImageVolumeSource",
      "type": "api_object",
      "title": "ImageVolumeSource",
      "summary": "ImageVolumeSource represents a image volume resource.",
      "body": "Represents an image volume source.\n\n**Why it matters**\nAllows users to mount images as volumes in their Kubernetes pods.\n\n**Key facts**\n- io.k8s.api.core.v1.ImageVolumeSource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "pullPolicy",
          "reference"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ImageVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ImageVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ImageVolumeStatus",
      "type": "api_object",
      "title": "ImageVolumeStatus",
      "summary": "ImageVolumeStatus represents the image-based volume status.",
      "body": "Represents the status of an image volume.\n\n**Why it matters**\nProvides information about the state of an image volume in a Kubernetes pod.\n\n**Key facts**\n- io.k8s.api.core.v1.ImageVolumeStatus",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "imageRef"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.ImageVolumeStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ImageVolumeStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:KeyToPath",
      "type": "api_object",
      "title": "KeyToPath",
      "summary": "Maps a string key to a path within a volume.",
      "body": "Represents a key to path mapping.\n\n**Why it matters**\nMaps keys to paths in a Kubernetes secret or config map.\n\n**Key facts**\n- io.k8s.api.core.v1.KeyToPath",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "key",
          "mode",
          "path"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.KeyToPath"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.KeyToPath"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Lifecycle",
      "type": "api_object",
      "title": "Lifecycle",
      "summary": "Lifecycle describes actions that the management system should take in response to container lifecycle events. For the PostStart and PreStop lifecycle handlers, management of the container blocks until the action is complete, unless the container process fails, in which case the handler is aborted.",
      "body": "A Lifecycle is an API object that defines hooks for pod and container lifecycle events.\n\n**Why it matters**\nLifecycle allows you to run custom code at specific points in a pod's or container's life cycle, enabling tasks like initialization, termination, and debugging.\n\n**Key facts**\n- Lifecycle is defined in io.k8s.api.core.v1.Lifecycle\n- Hooks are executed on pod and container creation, deletion, and updates\n\n**Common pitfalls**\n- Incorrectly implemented Lifecycle hooks can cause pods to fail or become unresponsive\n\n**Related**\nPod, Container",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "postStart",
          "preStop",
          "stopSignal"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.Lifecycle"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Lifecycle"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LifecycleHandler",
      "type": "api_object",
      "title": "LifecycleHandler",
      "summary": "LifecycleHandler defines a specific action that should be taken in a lifecycle hook. One and only one of the fields, except TCPSocket must be specified.",
      "body": "A LifecycleHandler is a type of hook that runs during pod and container lifecycle events.\n\n**Why it matters**\nLifecycleHandlers allow you to execute custom code at specific points in a pod's or container's life cycle, enabling tasks like initialization, termination, and debugging.\n\n**Key facts**\n- LifecycleHandler is defined in io.k8s.api.core.v1.LifecycleHandler\n- LifecycleHandlers are executed on pod and container creation, deletion, and updates\n\n**Common pitfalls**\n- Incorrectly implemented LifecycleHandlers can cause pods to fail or become unresponsive\n\n**Related**\nPod, Container, Lifecycle",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "exec",
          "httpGet",
          "sleep",
          "tcpSocket"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.LifecycleHandler"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LifecycleHandler"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LimitRange",
      "type": "api_object",
      "title": "LimitRange",
      "summary": "LimitRange sets resource usage limits for each kind of resource in a Namespace.",
      "body": "A LimitRange is an API object that defines resource limits for pods and containers.\n\n**Why it matters**\nLimitRange ensures that pods and containers do not exceed specified resource limits, preventing potential issues like out-of-memory errors or excessive CPU usage.\n\n**Key facts**\n- LimitRange is defined in io.k8s.api.core.v1.LimitRange\n- Resource limits include CPU, memory, and storage\n\n**Common pitfalls**\n- Incorrectly configured LimitRange can lead to resource under-allocation or over-allocation issues\n\n**Related**\nPod, Container",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.LimitRange"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LimitRange"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LimitRangeItem",
      "type": "api_object",
      "title": "LimitRangeItem",
      "summary": "LimitRangeItem defines a min/max usage limit for any resource that matches on kind.",
      "body": "A LimitRangeItem is a component of the LimitRange API object that defines specific resource limits.\n\n**Why it matters**\nLimitRangeItems allow you to specify detailed resource limits for pods and containers, enabling fine-grained control over resource allocation.\n\n**Key facts**\n- LimitRangeItem is defined in io.k8s.api.core.v1.LimitRangeItem\n- Resource limits specified in LimitRangeItems include CPU, memory, and storage\n\n**Common pitfalls**\n- Incorrectly configured LimitRangeItems can lead to resource under-allocation or over-allocation issues\n\n**Related**\nLimitRange, Pod, Container",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "default",
          "defaultRequest",
          "max",
          "maxLimitRequestRatio",
          "min",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.LimitRangeItem"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LimitRangeItem"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LimitRangeList",
      "type": "api_object",
      "title": "LimitRangeList",
      "summary": "LimitRangeList is a list of LimitRange items.",
      "body": "A LimitRangeList is an object that contains a list of LimitRange objects.\n\n**Why it matters**\nIt defines the limits for resource usage in a namespace, ensuring pods and containers do not exceed specified limits.\n\n**Key facts**\n- Contains a list of LimitRange objects\n- Used to define limits for resource usage in a namespace\n\n**Common pitfalls**\n- If not properly configured, it can lead to resource starvation or over-allocation\n\n**Related**\nLimitRange, Namespace",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.LimitRangeList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LimitRangeList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LimitRangeSpec",
      "type": "api_object",
      "title": "LimitRangeSpec",
      "summary": "LimitRangeSpec defines a min/max usage limit for resources that match on kind.",
      "body": "A LimitRangeSpec is an object that defines the limits for a particular resource in a namespace.\n\n**Why it matters**\nIt specifies the maximum and minimum usage limits for resources such as CPU, memory, and storage.\n\n**Key facts**\n- Defines limits for a specific resource\n- Can specify maximum and minimum usage limits\n\n**Common pitfalls**\n- Incorrectly configured limits can lead to performance issues or resource exhaustion\n\n**Related**\nLimitRangeList, Resource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "limits"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.LimitRangeSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LimitRangeSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LinuxContainerUser",
      "type": "api_object",
      "title": "LinuxContainerUser",
      "summary": "LinuxContainerUser represents user identity information in Linux containers",
      "body": "A LinuxContainerUser is an object that defines the user and group IDs for a container.\n\n**Why it matters**\nIt allows administrators to specify the user and group IDs for containers, ensuring proper permissions and access control.\n\n**Key facts**\n- Defines user and group IDs for a container\n- Ensures proper permissions and access control\n\n**Common pitfalls**\n- Incorrectly configured user or group IDs can lead to security vulnerabilities\n\n**Related**\nContainer, Permissions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "gid",
          "supplementalGroups",
          "uid"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.LinuxContainerUser"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LinuxContainerUser"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LoadBalancerIngress",
      "type": "api_object",
      "title": "LoadBalancerIngress",
      "summary": "LoadBalancerIngress represents the status of a load-balancer ingress point: traffic intended for the service should be sent to an ingress point.",
      "body": "A LoadBalancerIngress is an object that represents the ingress points for a load balancer.\n\n**Why it matters**\nIt provides information about the IP addresses and ports used by a load balancer to route traffic to pods.\n\n**Key facts**\n- Represents ingress points for a load balancer\n- Provides information about IP addresses and ports\n\n**Common pitfalls**\n- Incorrectly configured load balancer settings can lead to poor performance or security issues\n\n**Related**\nLoadBalancer, Pod",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "hostname",
          "ip",
          "ipMode",
          "ports"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.LoadBalancerIngress"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LoadBalancerIngress"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LoadBalancerStatus",
      "type": "api_object",
      "title": "LoadBalancerStatus",
      "summary": "LoadBalancerStatus represents the status of a load-balancer.",
      "body": "Represents the status of a LoadBalancer.\n\n**Why it matters**\nProvides information about the LoadBalancer's current state, such as its IP address and hostname.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.LoadBalancerStatus (source: swagger.json)\n- Contains fields for loadBalancerIP and ingress\n- Used to manage LoadBalancer resources\n\n**Common pitfalls**\n- Misconfiguration of LoadBalancer settings can lead to connectivity issues\n- Inadequate monitoring of LoadBalancer status may result in delayed troubleshooting\n\n**Related**\nLoadBalancer, Service",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "ingress"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.LoadBalancerStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LoadBalancerStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LocalObjectReference",
      "type": "api_object",
      "title": "LocalObjectReference",
      "summary": "LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.",
      "body": "Represents a reference to an object within the same namespace.\n\n**Why it matters**\nEnables referencing objects locally, reducing the need for external dependencies.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.LocalObjectReference (source: swagger.json)\n- Contains fields for name and apiVersion\n- Used to reference local objects\n\n**Common pitfalls**\n- Incorrect object references can lead to errors or inconsistencies\n- Inadequate namespace management may cause referencing issues\n\n**Related**\nObjectReference, Namespace",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.LocalObjectReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LocalVolumeSource",
      "type": "api_object",
      "title": "LocalVolumeSource",
      "summary": "Local represents directly-attached storage with node affinity",
      "body": "Represents a volume source for local storage.\n\n**Why it matters**\nProvides a way to use local storage within the cluster, improving performance and reducing costs.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.LocalVolumeSource (source: swagger.json)\n- Contains fields for path and fsType\n- Used to mount local volumes\n\n**Common pitfalls**\n- Incorrect configuration of local storage can lead to data loss or corruption\n- Inadequate monitoring of local volume usage may result in performance issues\n\n**Related**\nPersistentVolume, StorageClass",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "path"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.LocalVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ModifyVolumeStatus",
      "type": "api_object",
      "title": "ModifyVolumeStatus",
      "summary": "ModifyVolumeStatus represents the status object of ControllerModifyVolume operation",
      "body": "Represents the status of a ModifyVolume operation.\n\n**Why it matters**\nProvides information about the progress and outcome of volume modification operations.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ModifyVolumeStatus (source: swagger.json)\n- Contains fields for modifiedTime and status\n- Used to manage ModifyVolume resources\n\n**Common pitfalls**\n- Misconfiguration of volume modification settings can lead to data loss or corruption\n- Inadequate monitoring of ModifyVolume status may result in delayed troubleshooting\n\n**Related**\nPersistentVolume, StorageClass",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "status",
          "targetVolumeAttributesClassName"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ModifyVolumeStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ModifyVolumeStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NFSVolumeSource",
      "type": "api_object",
      "title": "NFSVolumeSource",
      "summary": "Represents an NFS mount that lasts the lifetime of a pod. NFS volumes do not support ownership management or SELinux relabeling.",
      "body": "NFSVolumeSource is a Kubernetes API resource that represents an NFS volume source.\n\n**Why it matters**\nIt allows users to mount NFS shares as persistent volumes in their pods.\n\n**Key facts**\n- Represents an NFS share\n- Used for mounting NFS shares",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "path",
          "readOnly",
          "server"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.NFSVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NFSVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Namespace",
      "type": "api_object",
      "title": "Namespace",
      "summary": "Namespace provides a scope for Names. Use of multiple namespaces is optional.",
      "body": "Namespace is a Kubernetes API resource that represents a logical grouping of resources within a cluster.\n\n**Why it matters**\nIt provides isolation and organization of resources, allowing for multiple users to share the same cluster without conflicts.\n\n**Key facts**\n- Represents a logical grouping of resources\n- Provides isolation and organization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.Namespace"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Namespace"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NamespaceCondition",
      "type": "api_object",
      "title": "NamespaceCondition",
      "summary": "NamespaceCondition contains details about state of namespace.",
      "body": "NamespaceCondition is a Kubernetes API resource that represents the condition of a namespace.\n\n**Why it matters**\nIt provides information about the status of a namespace, such as its readiness or availability.\n\n**Key facts**\n- Represents the condition of a namespace\n- Provides information about namespace status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.NamespaceCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NamespaceCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NamespaceList",
      "type": "api_object",
      "title": "NamespaceList",
      "summary": "NamespaceList is a Kubernetes API resource that represents a list of namespaces.",
      "body": "NamespaceList is a Kubernetes API resource that represents a list of namespaces.\n\n**Why it matters**\nIt allows users to retrieve and manage multiple namespaces at once.\n\n**Key facts**\n- Represents a list of namespaces\n- Used for retrieving and managing multiple namespaces",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.NamespaceList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NamespaceList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NamespaceSpec",
      "type": "api_object",
      "title": "NamespaceSpec",
      "summary": "NamespaceSpec describes the attributes on a Namespace.",
      "body": "A specification for creating or updating a namespace.\n\n**Why it matters**\nNamespaces are used to organize resources in a cluster, and NamespaceSpec is essential for defining the desired state of a namespace.\n\n**Key facts**\n- NamespaceSpec contains fields like metadata, labels, and annotations.\n- It's used to create or update a namespace.\n\n**Related**\napi:NamespaceStatus",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "finalizers"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.NamespaceSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NamespaceSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NamespaceStatus",
      "type": "api_object",
      "title": "NamespaceStatus",
      "summary": "NamespaceStatus is information about the current status of a Namespace.",
      "body": "The current state of a namespace.\n\n**Why it matters**\nNamespaceStatus provides information about the actual state of a namespace, which can be used for monitoring and debugging.\n\n**Key facts**\n- NamespaceStatus contains fields like phase, conditions, and observedGeneration.\n- It reflects the current state of a namespace.\n\n**Related**\napi:NamespaceSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "conditions",
          "phase"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.NamespaceStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NamespaceStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Node",
      "type": "api_object",
      "title": "Node",
      "summary": "Node is a worker node in Kubernetes. Each node will have a unique identifier in the cache (i.e. in etcd).",
      "body": "A node in a Kubernetes cluster that can run pods.\n\n**Why it matters**\nNodes are essential for running workloads in a cluster, and Node is the API object that represents a node.\n\n**Key facts**\n- Node contains fields like metadata, status, and conditions.\n- It's used to manage nodes in a cluster.\n\n**Related**\napi:NodeAddress",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.Node"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Node"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeAddress",
      "type": "api_object",
      "title": "NodeAddress",
      "summary": "NodeAddress contains information for the node's address.",
      "body": "An address associated with a node, such as an IP address or hostname.\n\n**Why it matters**\nNodeAddress is used to identify and communicate with nodes in a cluster.\n\n**Key facts**\n- NodeAddress contains fields like type and address.\n- It's used to manage node addresses.\n\n**Related**\napi:Node",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "address",
          "type"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.NodeAddress"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeAddress"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeAffinity",
      "type": "api_object",
      "title": "NodeAffinity",
      "summary": "Node affinity is a group of node affinity scheduling rules.",
      "body": "NodeAffinity is a field in a PodSpec that specifies how a pod should be scheduled on a node.\n\n**Why it matters**\nIt allows for more control over where pods are placed, enabling features like affinity and anti-affinity rules.\n\n**Key facts**\n- NodeAffinity can be used to specify the node labels or taints that a pod requires\n- It can also be used to specify the node topology requirements\n\n**Common pitfalls**\n- Incorrectly specifying NodeAffinity can lead to pods being stuck in pending state\n\n**Related**\nPodSpec, Node",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "preferredDuringSchedulingIgnoredDuringExecution",
          "requiredDuringSchedulingIgnoredDuringExecution"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.NodeAffinity"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeAffinity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeAllocatableResourceClaimStatus",
      "type": "api_object",
      "title": "NodeAllocatableResourceClaimStatus",
      "summary": "NodeAllocatableResourceClaimStatus describes the status of node allocatable resources allocated via DRA.",
      "body": "NodeAllocatableResourceClaimStatus is a field in a Node that represents the resources allocated by claims on the node.\n\n**Why it matters**\nIt provides visibility into resource allocation on nodes, enabling better cluster management and optimization.\n\n**Key facts**\n- NodeAllocatableResourceClaimStatus shows the resources allocated by claims on the node\n\n**Related**\nNode, Claims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "containers",
          "resourceClaimName",
          "resources"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.NodeAllocatableResourceClaimStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeAllocatableResourceClaimStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeCondition",
      "type": "api_object",
      "title": "NodeCondition",
      "summary": "NodeCondition contains condition information for a node.",
      "body": "NodeCondition is a field in a Node that represents the health and status of the node.\n\n**Why it matters**\nIt provides real-time visibility into node health, enabling better cluster management and troubleshooting.\n\n**Key facts**\n- NodeCondition can be used to represent various conditions such as Ready, OutOfDisk, or MemoryPressure\n\n**Related**\nNode",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "lastHeartbeatTime",
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.NodeCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeConfigSource",
      "type": "api_object",
      "title": "NodeConfigSource",
      "summary": "NodeConfigSource specifies a source of node configuration. Exactly one subfield (excluding metadata) must be non-nil. This API is deprecated since 1.22",
      "body": "NodeConfigSource is a field in a Node that represents the source of the node's configuration.\n\n**Why it matters**\nIt allows for more control over node configuration, enabling features like dynamic configuration updates.\n\n**Key facts**\n- NodeConfigSource can be used to specify the source of the node's configuration\n\n**Related**\nNode",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "configMap"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.NodeConfigSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeConfigSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeConfigStatus",
      "type": "api_object",
      "title": "NodeConfigStatus",
      "summary": "NodeConfigStatus describes the status of the config assigned by Node.Spec.ConfigSource.",
      "body": "Represents the configuration of a node in a Kubernetes cluster.\n\n**Why it matters**\nProvides information about the node's configuration, which is essential for the cluster's overall health and functionality.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.NodeConfigStatus\n- Contains information about the node's configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "active",
          "assigned",
          "error",
          "lastKnownGood"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.NodeConfigStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeConfigStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeDaemonEndpoints",
      "type": "api_object",
      "title": "NodeDaemonEndpoints",
      "summary": "NodeDaemonEndpoints lists ports opened by daemons running on the Node.",
      "body": "Represents the endpoints for daemon processes running on a node in a Kubernetes cluster.\n\n**Why it matters**\nProvides information about the daemon processes running on the node, which is crucial for managing and monitoring the cluster.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.NodeDaemonEndpoints\n- Contains endpoints for daemon processes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "kubeletEndpoint"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.NodeDaemonEndpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeDaemonEndpoints"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeFeatures",
      "type": "api_object",
      "title": "NodeFeatures",
      "summary": "NodeFeatures describes the set of features implemented by the CRI implementation. The features contained in the NodeFeatures should depend only on the cri implementation independent of runtime handlers.",
      "body": "Represents the features of a node in a Kubernetes cluster.\n\n**Why it matters**\nProvides information about the node's features, which is essential for determining its capabilities and limitations within the cluster.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.NodeFeatures\n- Contains information about the node's features",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "supplementalGroupsPolicy"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.NodeFeatures"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeFeatures"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeList",
      "type": "api_object",
      "title": "NodeList",
      "summary": "NodeList is the whole list of all Nodes which have been registered with master.",
      "body": "A list of nodes in a Kubernetes cluster.\n\n**Why it matters**\nProvides a way to retrieve and manage a collection of nodes within the cluster, which is essential for scaling and maintaining the cluster's overall health.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.NodeList\n- Contains a list of nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.NodeList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeRuntimeHandler",
      "type": "api_object",
      "title": "NodeRuntimeHandler",
      "summary": "NodeRuntimeHandler is a set of runtime handler information.",
      "body": "Represents a handler for node runtime configuration.\n\n**Why it matters**\nAllows customization of node runtime behavior.\n\n**Key facts**\n- Configures node runtime settings\n- Used to customize node behavior",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "features",
          "name"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.NodeRuntimeHandler"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeRuntimeHandler"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeRuntimeHandlerFeatures",
      "type": "api_object",
      "title": "NodeRuntimeHandlerFeatures",
      "summary": "NodeRuntimeHandlerFeatures is a set of features implemented by the runtime handler.",
      "body": "Represents features supported by a NodeRuntimeHandler.\n\n**Why it matters**\nEnables identification of supported features for a handler.\n\n**Key facts**\n- Lists features supported by the handler\n- Used to identify supported features",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "recursiveReadOnlyMounts",
          "userNamespaces"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.NodeRuntimeHandlerFeatures"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeRuntimeHandlerFeatures"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeSelector",
      "type": "api_object",
      "title": "NodeSelector",
      "summary": "A node selector represents the union of the results of one or more label queries over a set of nodes; that is, it represents the OR of the selectors represented by the node selector terms.",
      "body": "Represents a selector for nodes.\n\n**Why it matters**\nEnables selection of specific nodes based on labels.\n\n**Key facts**\n- Selects nodes based on label matching\n- Used to select specific nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "nodeSelectorTerms"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.NodeSelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeSelectorRequirement",
      "type": "api_object",
      "title": "NodeSelectorRequirement",
      "summary": "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.",
      "body": "Represents a requirement for node selection.\n\n**Why it matters**\nEnables specification of requirements for node selection.\n\n**Key facts**\n- Specifies requirements for node selection\n- Used to specify requirements",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "key",
          "operator",
          "values"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.NodeSelectorRequirement"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelectorRequirement"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeSelectorTerm",
      "type": "api_object",
      "title": "NodeSelectorTerm",
      "summary": "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.",
      "body": "A NodeSelectorTerm represents a node selector term, which is used to select nodes for pod scheduling.\n\n**Why it matters**\nIt allows users to specify the conditions under which a pod can be scheduled on a node.\n\n**Key facts**\n- Represents a node selector term\n- Used for pod scheduling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "matchExpressions",
          "matchFields"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.NodeSelectorTerm"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelectorTerm"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeSpec",
      "type": "api_object",
      "title": "NodeSpec",
      "summary": "NodeSpec describes the attributes that a node is created with.",
      "body": "A NodeSpec represents the specification of a node, including its metadata and configuration.\n\n**Why it matters**\nIt provides information about the node's capabilities and resources.\n\n**Key facts**\n- Represents the specification of a node\n- Includes metadata and configuration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "configSource",
          "externalID",
          "podCIDR",
          "podCIDRs",
          "providerID",
          "taints",
          "unschedulable"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.core.v1.NodeSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeStatus",
      "type": "api_object",
      "title": "NodeStatus",
      "summary": "NodeStatus is information about the current status of a node.",
      "body": "A NodeStatus represents the status of a node, including its conditions and addresses.\n\n**Why it matters**\nIt provides real-time information about the node's health and availability.\n\n**Key facts**\n- Represents the status of a node\n- Includes conditions and addresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "addresses",
          "allocatable",
          "capacity",
          "conditions",
          "config",
          "daemonEndpoints",
          "declaredFeatures",
          "features",
          "images",
          "nodeInfo",
          "phase",
          "runtimeHandlers",
          "volumesAttached",
          "volumesInUse"
        ],
        "field_count": 14,
        "def_name": "io.k8s.api.core.v1.NodeStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeSwapStatus",
      "type": "api_object",
      "title": "NodeSwapStatus",
      "summary": "NodeSwapStatus represents swap memory information.",
      "body": "A NodeSwapStatus represents the swap status of a node, including its available and total memory.\n\n**Why it matters**\nIt provides information about the node's memory usage and availability.\n\n**Key facts**\n- Represents the swap status of a node\n- Includes available and total memory",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "capacity"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.NodeSwapStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSwapStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NodeSystemInfo",
      "type": "api_object",
      "title": "NodeSystemInfo",
      "summary": "NodeSystemInfo is a set of ids/uuids to uniquely identify the node.",
      "body": "Represents system information for a node in a Kubernetes cluster.\n\n**Why it matters**\nProvides detailed information about the node, such as its operating system and kernel version.\n\n**Key facts**\n- Used to display system information.\n- Part of the io.k8s.api.core.v1 package.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "architecture",
          "bootID",
          "containerRuntimeVersion",
          "kernelVersion",
          "kubeProxyVersion",
          "kubeletVersion",
          "machineID",
          "operatingSystem",
          "osImage",
          "swap",
          "systemUUID"
        ],
        "field_count": 11,
        "def_name": "io.k8s.api.core.v1.NodeSystemInfo"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSystemInfo"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ObjectFieldSelector",
      "type": "api_object",
      "title": "ObjectFieldSelector",
      "summary": "ObjectFieldSelector selects an APIVersioned field of an object.",
      "body": "A selector that matches on a field of an object.\n\n**Why it matters**\nEnables selecting objects based on specific fields, such as labels or annotations.\n\n**Key facts**\n- Used to select objects by field.\n- Part of the io.k8s.api.core.v1 package.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "fieldPath"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ObjectFieldSelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectFieldSelector"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ObjectReference",
      "type": "api_object",
      "title": "ObjectReference",
      "summary": "ObjectReference contains enough information to let you inspect or modify the referred object.",
      "body": "A reference to an object in a Kubernetes cluster.\n\n**Why it matters**\nProvides a way to refer to objects, such as pods or services, by their name and namespace.\n\n**Key facts**\n- Used to reference objects.\n- Part of the io.k8s.api.core.v1 package.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "fieldPath",
          "kind",
          "name",
          "namespace",
          "resourceVersion",
          "uid"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.core.v1.ObjectReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectReference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolume",
      "type": "api_object",
      "title": "PersistentVolume",
      "summary": "PersistentVolume (PV) is a storage resource provisioned by an administrator. It is analogous to a node. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes",
      "body": "A provisioned storage resource in a Kubernetes cluster.\n\n**Why it matters**\nProvides persistent storage for pods, enabling them to store and retrieve data across restarts.\n\n**Key facts**\n- Used to provide persistent storage.\n- Part of the io.k8s.api.core.v1 package.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.PersistentVolume"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolume"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolumeClaim",
      "type": "api_object",
      "title": "PersistentVolumeClaim",
      "summary": "PersistentVolumeClaim is a user's request for and claim to a persistent volume",
      "body": "A PersistentVolumeClaim is an object that requests storage resources from a cluster.\n\n**Why it matters**\nIt allows users to request storage without knowing the details of the underlying infrastructure.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.PersistentVolumeClaim\n- Requests storage resources from a cluster",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.PersistentVolumeClaim"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaim"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolumeClaimCondition",
      "type": "api_object",
      "title": "PersistentVolumeClaimCondition",
      "summary": "PersistentVolumeClaimCondition contains details about state of pvc",
      "body": "A PersistentVolumeClaimCondition represents the condition of a PersistentVolumeClaim.\n\n**Why it matters**\nIt provides information about the status of the claim, such as whether it has been bound or not.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.PersistentVolumeClaimCondition\n- Represents the condition of a PersistentVolumeClaim",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "lastProbeTime",
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.PersistentVolumeClaimCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolumeClaimList",
      "type": "api_object",
      "title": "PersistentVolumeClaimList",
      "summary": "PersistentVolumeClaimList is a list of PersistentVolumeClaim items.",
      "body": "A list of PersistentVolumeClaims.\n\n**Why it matters**\nIt allows users to manage multiple claims at once.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.PersistentVolumeClaimList\n- A list of PersistentVolumeClaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.PersistentVolumeClaimList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolumeClaimSpec",
      "type": "api_object",
      "title": "PersistentVolumeClaimSpec",
      "summary": "PersistentVolumeClaimSpec describes the common attributes of storage devices and allows a Source for provider-specific attributes",
      "body": "The specification of a PersistentVolumeClaim.\n\n**Why it matters**\nIt defines the resources requested by the claim, such as storage size and access modes.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.PersistentVolumeClaimSpec\n- Defines the resources requested by the claim",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "accessModes",
          "dataSource",
          "dataSourceRef",
          "resources",
          "selector",
          "storageClassName",
          "volumeAttributesClassName",
          "volumeMode",
          "volumeName"
        ],
        "field_count": 9,
        "def_name": "io.k8s.api.core.v1.PersistentVolumeClaimSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolumeClaimStatus",
      "type": "api_object",
      "title": "PersistentVolumeClaimStatus",
      "summary": "PersistentVolumeClaimStatus is the current status of a persistent volume claim.",
      "body": "Represents the current status of a Persistent Volume Claim.\n\n**Why it matters**\nThis object is used to track the status of a Persistent Volume Claim, such as whether it has been bound to a Persistent Volume or not.\n\n**Key facts**\n- It contains information about the claim's binding and phase\n- It is part of the PersistentVolumeClaim API\n\n**Common pitfalls**\n- If not properly managed, it can lead to inconsistent state between claims and volumes\n\n**Related**\nPersistent Volume Claims (PVCs), Persistent Volumes (PVs)",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "accessModes",
          "allocatedResourceStatuses",
          "allocatedResources",
          "capacity",
          "conditions",
          "currentVolumeAttributesClassName",
          "modifyVolumeStatus",
          "phase"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.core.v1.PersistentVolumeClaimStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolumeClaimTemplate",
      "type": "api_object",
      "title": "PersistentVolumeClaimTemplate",
      "summary": "PersistentVolumeClaimTemplate is used to produce PersistentVolumeClaim objects as part of an EphemeralVolumeSource.",
      "body": "A template for creating Persistent Volume Claims.\n\n**Why it matters**\nThis object is used to define the characteristics of a Persistent Volume Claim, such as its name and storage capacity.\n\n**Key facts**\n- It defines the parameters for a PVC\n- It can be used in StatefulSets and other resources\n\n**Common pitfalls**\n- If not properly configured, it can lead to incorrect PVC creation\n\n**Related**\nPersistent Volume Claims (PVCs), StatefulSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "metadata",
          "spec"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.PersistentVolumeClaimTemplate"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimTemplate"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolumeClaimVolumeSource",
      "type": "api_object",
      "title": "PersistentVolumeClaimVolumeSource",
      "summary": "PersistentVolumeClaimVolumeSource references the user's PVC in the same namespace. This volume finds the bound PV and mounts that volume for the pod. A PersistentVolumeClaimVolumeSource is, essentially, a wrapper around another type of volume that is owned by someone else (the system).",
      "body": "A source for a Persistent Volume Claim.\n\n**Why it matters**\nThis object is used to specify the storage requirements of a Persistent Volume Claim, such as its name and storage class.\n\n**Key facts**\n- It defines the storage parameters for a PVC\n- It can be used in StatefulSets and other resources\n\n**Common pitfalls**\n- If not properly configured, it can lead to incorrect PVC creation\n\n**Related**\nPersistent Volume Claims (PVCs), StatefulSets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "claimName",
          "readOnly"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.PersistentVolumeClaimVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolumeList",
      "type": "api_object",
      "title": "PersistentVolumeList",
      "summary": "PersistentVolumeList is a list of PersistentVolume items.",
      "body": "A list of Persistent Volumes.\n\n**Why it matters**\nThis object is used to manage a collection of Persistent Volumes, such as listing or deleting them.\n\n**Key facts**\n- It contains a list of Persistent Volume objects\n- It can be used in various Kubernetes resources\n\n**Common pitfalls**\n- If not properly managed, it can lead to inconsistent state between volumes and claims\n\n**Related**\nPersistent Volumes (PVs), Persistent Volume Claims (PVCs)",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.PersistentVolumeList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolumeSpec",
      "type": "api_object",
      "title": "PersistentVolumeSpec",
      "summary": "PersistentVolumeSpec is the specification of a persistent volume.",
      "body": "A PersistentVolumeSpec is an object that describes a persistent volume.\n\n**Why it matters**\nIt allows users to define the characteristics of a persistent volume, such as its storage capacity and access modes.\n\n**Key facts**\n- Describes a persistent volume's storage capacity\n- Defines access modes for the persistent volume\n\n**Common pitfalls**\n- Incorrectly specified storage capacity can lead to data loss or corruption\n\n**Related**\nPersistentVolumeStatus, PersistentVolumeClaim",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "accessModes",
          "awsElasticBlockStore",
          "azureDisk",
          "azureFile",
          "capacity",
          "cephfs",
          "cinder",
          "claimRef",
          "csi",
          "fc",
          "flexVolume",
          "flocker",
          "gcePersistentDisk",
          "glusterfs",
          "hostPath",
          "iscsi",
          "local",
          "mountOptions",
          "nfs",
          "nodeAffinity",
          "persistentVolumeReclaimPolicy",
          "photonPersistentDisk",
          "portworxVolume",
          "quobyte",
          "rbd",
          "scaleIO",
          "storageClassName",
          "storageos",
          "volumeAttributesClassName",
          "volumeMode",
          "vsphereVolume"
        ],
        "field_count": 31,
        "def_name": "io.k8s.api.core.v1.PersistentVolumeSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PersistentVolumeStatus",
      "type": "api_object",
      "title": "PersistentVolumeStatus",
      "summary": "PersistentVolumeStatus is the current status of a persistent volume.",
      "body": "A PersistentVolumeStatus is an object that describes the current status of a persistent volume.\n\n**Why it matters**\nIt provides information about the persistent volume's availability and any errors that may have occurred.\n\n**Key facts**\n- Describes the current status of a persistent volume\n- Provides information on any errors or issues\n\n**Common pitfalls**\n- Misinterpreting the status can lead to incorrect decisions\n\n**Related**\nPersistentVolumeSpec, PersistentVolumeClaim",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "lastPhaseTransitionTime",
          "message",
          "phase",
          "reason"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.PersistentVolumeStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PhotonPersistentDiskVolumeSource",
      "type": "api_object",
      "title": "PhotonPersistentDiskVolumeSource",
      "summary": "Represents a Photon Controller persistent disk resource.",
      "body": "A PhotonPersistentDiskVolumeSource is an object that describes a persistent disk volume source for Photon OS.\n\n**Why it matters**\nIt allows users to specify the characteristics of a persistent disk volume, such as its size and type.\n\n**Key facts**\n- Describes a persistent disk volume source\n- Specifies the size and type of the persistent disk\n\n**Common pitfalls**\n- Incorrectly specified size or type can lead to data loss or corruption\n\n**Related**\nPersistentVolumeSpec, PersistentDisk",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "pdID"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.PhotonPersistentDiskVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PhotonPersistentDiskVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Pod",
      "type": "api_object",
      "title": "Pod",
      "summary": "Pod is a collection of containers that can run on a host. This resource is created by clients and scheduled onto hosts.",
      "body": "A Pod is an object that represents a logical host in the cluster.\n\n**Why it matters**\nIt provides a way to group one or more containers that can share resources and dependencies.\n\n**Key facts**\n- Represents a logical host in the cluster\n- Groups one or more containers with shared resources\n\n**Common pitfalls**\n- Incorrectly configured Pod can lead to resource contention or data loss\n\n**Related**\nContainer, PersistentVolumeClaim",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.Pod"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Pod"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodAffinity",
      "type": "api_object",
      "title": "PodAffinity",
      "summary": "Pod affinity is a group of inter pod affinity scheduling rules.",
      "body": "A Pod Affinity is a rule that specifies how pods should be placed in a cluster.\n\n**Why it matters**\nIt allows for more efficient use of resources by placing related pods together.\n\n**Key facts**\n- Pods with the same affinity term are scheduled on the same node\n- Affinity terms can be specified as required or preferred\n\n**Common pitfalls**\n- Insufficient resources on a node to meet the affinity requirements\n\n**Related**\napi:PodAffinityTerm",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "preferredDuringSchedulingIgnoredDuringExecution",
          "requiredDuringSchedulingIgnoredDuringExecution"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.PodAffinity"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodAffinity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodAffinityTerm",
      "type": "api_object",
      "title": "PodAffinityTerm",
      "summary": "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key <topologyKey> matches that of any node on which a pod of the set of pods is running",
      "body": "A Pod Affinity Term is a specific rule within a Pod Affinity that specifies how pods should be placed in a cluster.\n\n**Why it matters**\nIt allows for more fine-grained control over pod placement.\n\n**Key facts**\n- Each term has a label selector and a topology key\n- Terms can be specified as required or preferred\n\n**Common pitfalls**\n- Incorrectly specifying the topology key\n\n**Related**\napi:PodAffinity",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "labelSelector",
          "matchLabelKeys",
          "mismatchLabelKeys",
          "namespaceSelector",
          "namespaces",
          "topologyKey"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.PodAffinityTerm"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodAffinityTerm"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodAntiAffinity",
      "type": "api_object",
      "title": "PodAntiAffinity",
      "summary": "Pod anti affinity is a group of inter pod anti affinity scheduling rules.",
      "body": "A Pod Anti-Affinity is a rule that specifies how pods should not be placed in a cluster.\n\n**Why it matters**\nIt allows for more efficient use of resources by spreading related pods across nodes.\n\n**Key facts**\n- Pods with the same anti-affinity term are scheduled on different nodes\n- Anti-affinity terms can be specified as required or preferred\n\n**Common pitfalls**\n- Insufficient resources on a node to meet the anti-affinity requirements",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "preferredDuringSchedulingIgnoredDuringExecution",
          "requiredDuringSchedulingIgnoredDuringExecution"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.PodAntiAffinity"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodAntiAffinity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodCertificateProjection",
      "type": "api_object",
      "title": "PodCertificateProjection",
      "summary": "PodCertificateProjection provides a private key and X.509 certificate in the pod filesystem.",
      "body": "A Pod Certificate Projection is used to project certificates from a secret into pods.\n\n**Why it matters**\nIt allows for secure communication between services and pods.\n\n**Key facts**\n- Certificates are projected into pods as environment variables or files\n\n**Common pitfalls**\n- Incorrectly specifying the certificate selector",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "certificateChainPath",
          "credentialBundlePath",
          "keyPath",
          "keyType",
          "maxExpirationSeconds",
          "signerName",
          "userAnnotations"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.core.v1.PodCertificateProjection"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodCertificateProjection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodCondition",
      "type": "api_object",
      "title": "PodCondition",
      "summary": "PodCondition contains details for the current condition of this pod.",
      "body": "A PodCondition represents information about a pod's condition, such as its readiness or liveness.\n\n**Why it matters**\nPodConditions are used to provide insights into the health and status of pods in a Kubernetes cluster.\n\n**Key facts**\n- Represents information about a pod's condition\n- Used for providing insights into the health and status of pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "lastProbeTime",
          "lastTransitionTime",
          "message",
          "observedGeneration",
          "reason",
          "status",
          "type"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.core.v1.PodCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodDNSConfig",
      "type": "api_object",
      "title": "PodDNSConfig",
      "summary": "PodDNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy.",
      "body": "A PodDNSConfig represents the DNS configuration for a pod.\n\n**Why it matters**\nPodDNSConfigs are used to configure DNS settings for pods in a Kubernetes cluster.\n\n**Key facts**\n- Represents the DNS configuration for a pod\n- Used for configuring DNS settings for pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "nameservers",
          "options",
          "searches"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.PodDNSConfig"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodDNSConfig"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodDNSConfigOption",
      "type": "api_object",
      "title": "PodDNSConfigOption",
      "summary": "PodDNSConfigOption defines DNS resolver options of a pod.",
      "body": "A PodDNSConfigOption represents an option for a pod's DNS configuration.\n\n**Why it matters**\nPodDNSConfigOptions are used to customize the DNS settings for pods in a Kubernetes cluster.\n\n**Key facts**\n- Represents an option for a pod's DNS configuration\n- Used for customizing the DNS settings for pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "value"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.PodDNSConfigOption"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodDNSConfigOption"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodExtendedResourceClaimStatus",
      "type": "api_object",
      "title": "PodExtendedResourceClaimStatus",
      "summary": "PodExtendedResourceClaimStatus is stored in the PodStatus for the extended resource requests backed by DRA. It stores the generated name for the corresponding special ResourceClaim created by the scheduler.",
      "body": "A PodExtendedResourceClaimStatus represents the status of an extended resource claim for a pod.\n\n**Why it matters**\nPodExtendedResourceClaimStatuses are used to provide information about the status of extended resource claims for pods in a Kubernetes cluster.\n\n**Key facts**\n- Represents the status of an extended resource claim for a pod\n- Used for providing information about the status of extended resource claims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "requestMappings",
          "resourceClaimName"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.PodExtendedResourceClaimStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodExtendedResourceClaimStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodIP",
      "type": "api_object",
      "title": "PodIP",
      "summary": "PodIP represents a single IP address allocated to the pod.",
      "body": "A unique IP address assigned to a Pod within a Kubernetes cluster.\n\n**Why it matters**\nPod IPs provide a stable and consistent way for Pods to communicate with each other.\n\n**Key facts**\n- Unique per-Pod IP\n- Assigned by the Kubernetes control plane\n\n**Common pitfalls**\n- Requires proper network configuration\n\n**Related**\nPods, Services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "ip"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.PodIP"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodIP"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodList",
      "type": "api_object",
      "title": "PodList",
      "summary": "A list of Pods within a Kubernetes cluster.",
      "body": "A list of Pods within a Kubernetes cluster.\n\n**Why it matters**\nPod lists provide a way to manage and monitor multiple Pods at once.\n\n**Key facts**\n- Collection of Pod objects\n- Used for listing and managing Pods\n\n**Common pitfalls**\n- Can be large and unwieldy if not properly paginated\n\n**Related**\nPods, API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.PodList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodOS",
      "type": "api_object",
      "title": "PodOS",
      "summary": "PodOS defines the OS parameters of a pod.",
      "body": "The operating system running within a Pod in a Kubernetes cluster.\n\n**Why it matters**\nPod OS determines the environment and dependencies available to a Pod's containers.\n\n**Key facts**\n- Determines container runtime environment\n- Can be Windows or Linux\n\n**Common pitfalls**\n- Requires proper configuration for each OS type\n\n**Related**\nContainers, Pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.PodOS"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodOS"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodReadinessGate",
      "type": "api_object",
      "title": "PodReadinessGate",
      "summary": "PodReadinessGate contains the reference to a pod condition",
      "body": "A condition that determines a Pod's readiness to accept traffic.\n\n**Why it matters**\nPod readiness gates ensure that Pods are healthy and ready for use before they receive traffic.\n\n**Key facts**\n- Used to determine Pod readiness\n- Can be based on custom conditions or metrics\n\n**Common pitfalls**\n- Requires proper configuration and monitoring\n\n**Related**\nPods, Readiness Probes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "conditionType"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.PodReadinessGate"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodReadinessGate"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodResourceClaim",
      "type": "api_object",
      "title": "PodResourceClaim",
      "summary": "PodResourceClaim references exactly one ResourceClaim, either directly or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim for the pod.\n\nIt adds a name to it that uniquely identifies the ResourceClaim inside the Pod. Containers that need access to the ResourceClaim reference it with this name.\n\nWhen the DRAWorkloadResourceClaims feature gate is enabled and this Pod belongs to a PodGroup, a PodResourceClaim is matched to a PodGroupResourceClaim if all of their fields are equal (Name, ResourceClaimName, and ResourceClaimTemplateName). A matched claim references a single ResourceClaim shared across all Pods in the PodGroup, reserved for the PodGroup in ResourceClaimStatus.ReservedFor rather than for individual Pods.",
      "body": "A PodResourceClaim is an object that represents a request for resources, such as CPU and memory.\n\n**Why it matters**\nIt allows users to specify the resource requirements of their pods without having to know the exact amount of resources available in the cluster.\n\n**Key facts**\n- Represents a request for resources\n- Does not guarantee allocation of specific resources\n\n**Common pitfalls**\n- May result in over-allocation of resources if not managed properly\n\n**Related**\nPods, Resource requests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "resourceClaimName",
          "resourceClaimTemplateName"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.PodResourceClaim"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodResourceClaim"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodResourceClaimStatus",
      "type": "api_object",
      "title": "PodResourceClaimStatus",
      "summary": "PodResourceClaimStatus is stored in the PodStatus for each PodResourceClaim which references a ResourceClaimTemplate. It stores the generated name for the corresponding ResourceClaim.",
      "body": "A PodResourceClaimStatus is an object that represents the status of a PodResourceClaim.\n\n**Why it matters**\nIt provides information about the allocation of resources to the pod, such as the actual amount of CPU and memory allocated.\n\n**Key facts**\n- Represents the status of a PodResourceClaim\n- Provides information about resource allocation\n\n**Related**\nPodResourceClaims, Resource allocation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "resourceClaimName"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.PodResourceClaimStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodResourceClaimStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodSchedulingGate",
      "type": "api_object",
      "title": "PodSchedulingGate",
      "summary": "PodSchedulingGate is associated to a Pod to guard its scheduling.",
      "body": "A PodSchedulingGate is an object that represents a gate for pod scheduling.\n\n**Why it matters**\nIt allows users to control the scheduling of pods based on certain conditions, such as resource availability or node affinity.\n\n**Key facts**\n- Represents a gate for pod scheduling\n- Can be used to control scheduling based on conditions\n\n**Related**\nPods, Scheduling policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.PodSchedulingGate"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodSchedulingGate"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodSchedulingGroup",
      "type": "api_object",
      "title": "PodSchedulingGroup",
      "summary": "PodSchedulingGroup identifies the runtime scheduling group instance that a Pod belongs to. The scheduler uses this information to apply workload-aware scheduling semantics. Exactly one field must be specified.",
      "body": "A PodSchedulingGroup is an object that represents a group of pods for scheduling.\n\n**Why it matters**\nIt allows users to schedule multiple pods together based on certain conditions, such as resource availability or node affinity.\n\n**Key facts**\n- Represents a group of pods for scheduling\n- Can be used to schedule multiple pods together\n\n**Related**\nPods, Scheduling policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "podGroupName"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.PodSchedulingGroup"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodSchedulingGroup"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodSecurityContext",
      "type": "api_object",
      "title": "PodSecurityContext",
      "summary": "PodSecurityContext holds pod-level security attributes and common container settings. Some fields are also present in container.securityContext.  Field values of container.securityContext take precedence over field values of PodSecurityContext.",
      "body": "A PodSecurityContext is used to configure the security settings for a pod.\n\n**Why it matters**\nIt allows administrators to enforce security policies on pods, such as running with specific user IDs or groups.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.PodSecurityContext (source: swagger.json)\n- Configures security settings for a pod\n\n**Common pitfalls**\n- Incorrectly configured PodSecurityContext can lead to security vulnerabilities",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "appArmorProfile",
          "fsGroup",
          "fsGroupChangePolicy",
          "runAsGroup",
          "runAsNonRoot",
          "runAsUser",
          "seLinuxChangePolicy",
          "seLinuxOptions",
          "seccompProfile",
          "supplementalGroups",
          "supplementalGroupsPolicy",
          "sysctls",
          "windowsOptions"
        ],
        "field_count": 13,
        "def_name": "io.k8s.api.core.v1.PodSecurityContext"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodSecurityContext"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodSpec",
      "type": "api_object",
      "title": "PodSpec",
      "summary": "A PodSpec is used to define the desired state of a pod.",
      "body": "A PodSpec is used to define the desired state of a pod.\n\n**Why it matters**\nIt allows users to specify the configuration and behavior of a pod, such as its containers, volumes, and networks.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.PodSpec (source: swagger.json)\n- Defines desired state of a pod\n\n**Common pitfalls**\n- Inadequate PodSpec can lead to pod failure or incorrect behavior\n\n**Related**\nPodSecurityContext",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "activeDeadlineSeconds",
          "affinity",
          "automountServiceAccountToken",
          "containers",
          "dnsConfig",
          "dnsPolicy",
          "enableServiceLinks",
          "ephemeralContainers",
          "hostAliases",
          "hostIPC",
          "hostNetwork",
          "hostPID",
          "hostUsers",
          "hostname",
          "hostnameOverride",
          "imagePullSecrets",
          "initContainers",
          "nodeName",
          "nodeSelector",
          "os",
          "overhead",
          "preemptionPolicy",
          "priority",
          "priorityClassName",
          "readinessGates",
          "resourceClaims",
          "resources",
          "restartPolicy",
          "runtimeClassName",
          "schedulerName",
          "schedulingGates",
          "schedulingGroup",
          "securityContext",
          "serviceAccount",
          "serviceAccountName",
          "setHostnameAsFQDN",
          "shareProcessNamespace",
          "subdomain",
          "terminationGracePeriodSeconds",
          "tolerations",
          "topologySpreadConstraints",
          "volumes"
        ],
        "field_count": 42,
        "def_name": "io.k8s.api.core.v1.PodSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodStatus",
      "type": "api_object",
      "title": "PodStatus",
      "summary": "PodStatus represents information about the status of a pod. Status may trail the actual state of a system, especially if the node that hosts the pod cannot contact the control plane.",
      "body": "A PodStatus is used to report the current state of a pod.\n\n**Why it matters**\nIt allows users to monitor and understand the status of their pods, including any issues or errors that may have occurred.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.PodStatus (source: swagger.json)\n- Reports current state of a pod\n\n**Common pitfalls**\n- Misinterpretation of PodStatus can lead to incorrect troubleshooting or decision-making\n\n**Related**\nPodSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "allocatedResources",
          "conditions",
          "containerStatuses",
          "ephemeralContainerStatuses",
          "extendedResourceClaimStatus",
          "hostIP",
          "hostIPs",
          "initContainerStatuses",
          "message",
          "nodeAllocatableResourceClaimStatuses",
          "nominatedNodeName",
          "observedGeneration",
          "phase",
          "podIP",
          "podIPs",
          "qosClass",
          "reason",
          "resize",
          "resourceClaimStatuses",
          "resources",
          "startTime"
        ],
        "field_count": 21,
        "def_name": "io.k8s.api.core.v1.PodStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodTemplate",
      "type": "api_object",
      "title": "PodTemplate",
      "summary": "PodTemplate describes a template for creating copies of a predefined pod.",
      "body": "A PodTemplate is used to define a template for creating pods.\n\n**Why it matters**\nIt allows administrators to create multiple pods with the same configuration and settings, reducing administrative overhead.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.PodTemplate (source: swagger.json)\n- Defines template for creating pods\n\n**Common pitfalls**\n- Incorrectly configured PodTemplate can lead to inconsistent or incorrect pod behavior\n\n**Related**\nPodSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "template"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.PodTemplate"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplate"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodTemplateList",
      "type": "api_object",
      "title": "PodTemplateList",
      "summary": "PodTemplateList is a list of PodTemplates.",
      "body": "A list of PodTemplate objects.\n\n**Why it matters**\nIt allows you to manage and manipulate pod templates in a Kubernetes cluster.\n\n**Key facts**\n- Represents a collection of PodTemplate objects.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.PodTemplateList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplateList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodTemplateSpec",
      "type": "api_object",
      "title": "PodTemplateSpec",
      "summary": "PodTemplateSpec describes the data a pod should have when created from a template",
      "body": "A specification for creating a new Pod.\n\n**Why it matters**\nIt enables you to define the configuration and settings for a pod, including its containers, volumes, and other properties.\n\n**Key facts**\n- Describes the desired state of a Pod.\n\n**Related**\nPodTemplateList",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "metadata",
          "spec"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.PodTemplateSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplateSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PortStatus",
      "type": "api_object",
      "title": "PortStatus",
      "summary": "PortStatus represents the error condition of a service port",
      "body": "Represents the status of a port in a container.\n\n**Why it matters**\nIt provides information about the current state and configuration of a port, such as its protocol and host IP.\n\n**Key facts**\n- Describes the current state of a Port.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "error",
          "port",
          "protocol"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.PortStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PortStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PortworxVolumeSource",
      "type": "api_object",
      "title": "PortworxVolumeSource",
      "summary": "PortworxVolumeSource represents a Portworx volume resource.",
      "body": "Represents a volume source for a container, specifically for Portworx volumes.\n\n**Why it matters**\nIt allows you to mount Portworx volumes in containers and manage their storage resources.\n\n**Key facts**\n- Describes the configuration of a Portworx volume.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "readOnly",
          "volumeID"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.PortworxVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PortworxVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PreferredSchedulingTerm",
      "type": "api_object",
      "title": "PreferredSchedulingTerm",
      "summary": "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).",
      "body": "A PreferredSchedulingTerm is an object that specifies a node or a pod affinity/anti-affinity term.\n\n**Why it matters**\nIt allows for more flexible and fine-grained control over pod placement in the cluster.\n\n**Key facts**\n- The term can be either a node selector or a pod selector\n- It can have multiple terms, which are combined using logical operators\n\n**Common pitfalls**\n- Incorrectly configured terms may lead to pods not being scheduled as intended\n\n**Related**\nNode selectors, Pod selectors",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "preference",
          "weight"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.PreferredSchedulingTerm"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PreferredSchedulingTerm"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Probe",
      "type": "api_object",
      "title": "Probe",
      "summary": "Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.",
      "body": "A Probe is a liveness or readiness check that a container performs on itself.\n\n**Why it matters**\nIt ensures the health and availability of containers in a pod.\n\n**Key facts**\n- There are two types of probes: liveness and readiness\n\n**Common pitfalls**\n- Incorrectly configured probes may lead to unnecessary restarts or delays in container startup\n\n**Related**\nLiveness checks, Readiness checks",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "exec",
          "failureThreshold",
          "grpc",
          "httpGet",
          "initialDelaySeconds",
          "periodSeconds",
          "successThreshold",
          "tcpSocket",
          "terminationGracePeriodSeconds",
          "timeoutSeconds"
        ],
        "field_count": 10,
        "def_name": "io.k8s.api.core.v1.Probe"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Probe"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ProjectedVolumeSource",
      "type": "api_object",
      "title": "ProjectedVolumeSource",
      "summary": "A ProjectedVolumeSource is a volume source that projects a volume from one namespace to another.",
      "body": "A ProjectedVolumeSource is a volume source that projects a volume from one namespace to another.\n\n**Why it matters**\nIt allows for more flexible and fine-grained control over volume access in the cluster.\n\n**Key facts**\n- The projected volume can be either a secret or a config map\n\n**Common pitfalls**\n- Incorrectly configured projected volumes may lead to unauthorized access to sensitive data\n\n**Related**\nSecrets, Config maps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "defaultMode",
          "sources"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ProjectedVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ProjectedVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:QuobyteVolumeSource",
      "type": "api_object",
      "title": "QuobyteVolumeSource",
      "summary": "Represents a Quobyte mount that lasts the lifetime of a pod. Quobyte volumes do not support ownership management or SELinux relabeling.",
      "body": "A QuobyteVolumeSource is a volume source that mounts a Quobyte storage system.\n\n**Why it matters**\nIt allows for the use of Quobyte storage in Kubernetes clusters.\n\n**Key facts**\n- The Quobyte volume can be mounted as either a read-only or read-write volume\n\n**Common pitfalls**\n- Incorrectly configured Quobyte volumes may lead to data corruption or loss\n\n**Related**\nStorage systems, Volume mounting",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "group",
          "readOnly",
          "registry",
          "tenant",
          "user",
          "volume"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.QuobyteVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.QuobyteVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RBDPersistentVolumeSource",
      "type": "api_object",
      "title": "RBDPersistentVolumeSource",
      "summary": "Represents a Rados Block Device mount that lasts the lifetime of a pod. RBD volumes support ownership management and SELinux relabeling.",
      "body": "Represents an RBD Persistent Volume Source.\n\n**Why it matters**\nAllows users to provision persistent storage from Ceph RADOS Block Device (RBD) clusters.\n\n**Key facts**\n- Uses the io.k8s.api.core.v1.RBDPersistentVolumeSource type",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "image",
          "keyring",
          "monitors",
          "pool",
          "readOnly",
          "secretRef",
          "user"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.core.v1.RBDPersistentVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.RBDPersistentVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RBDVolumeSource",
      "type": "api_object",
      "title": "RBDVolumeSource",
      "summary": "Represents a Rados Block Device mount that lasts the lifetime of a pod. RBD volumes support ownership management and SELinux relabeling.",
      "body": "Represents an RBD Volume Source.\n\n**Why it matters**\nAllows users to mount Ceph RADOS Block Device (RBD) volumes in a pod.\n\n**Key facts**\n- Uses the io.k8s.api.core.v1.RBDVolumeSource type",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "image",
          "keyring",
          "monitors",
          "pool",
          "readOnly",
          "secretRef",
          "user"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.core.v1.RBDVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.RBDVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ReplicationController",
      "type": "api_object",
      "title": "ReplicationController",
      "summary": "ReplicationController represents the configuration of a replication controller.",
      "body": "Manages replication of stateless applications.\n\n**Why it matters**\nEnsures that a specified number of replicas are running at any given time, providing high availability and scalability.\n\n**Key facts**\n- Uses the io.k8s.api.core.v1.ReplicationController type",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.ReplicationController"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ReplicationController"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ReplicationControllerCondition",
      "type": "api_object",
      "title": "ReplicationControllerCondition",
      "summary": "ReplicationControllerCondition describes the state of a replication controller at a certain point.",
      "body": "Describes the condition of a Replication Controller.\n\n**Why it matters**\nProvides insight into the status and health of the replication controller, helping with debugging and monitoring.\n\n**Key facts**\n- Uses the io.k8s.api.core.v1.ReplicationControllerCondition type",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.ReplicationControllerCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ReplicationControllerCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ReplicationControllerList",
      "type": "api_object",
      "title": "ReplicationControllerList",
      "summary": "ReplicationControllerList is a collection of replication controllers.",
      "body": "A list of ReplicationController objects.\n\n**Why it matters**\nReplicationControllerList is used to manage multiple replication controllers in a cluster.\n\n**Key facts**\n- ReplicationControllerList is an API resource that represents a collection of replication controllers.\n- It provides methods for creating, updating, and deleting replication controllers.\n\n**Related**\nReplicationController",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.ReplicationControllerList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ReplicationControllerList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ReplicationControllerSpec",
      "type": "api_object",
      "title": "ReplicationControllerSpec",
      "summary": "ReplicationControllerSpec is the specification of a replication controller.",
      "body": "A specification of the desired state of a ReplicationController.\n\n**Why it matters**\nReplicationControllerSpec defines the configuration for a replication controller, including its replicas and selector.\n\n**Key facts**\n- ReplicationControllerSpec is an object that contains the desired state of a replication controller.\n- It includes fields such as replicas, selector, and template.\n\n**Related**\nReplicationController",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "minReadySeconds",
          "replicas",
          "selector",
          "template"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.ReplicationControllerSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ReplicationControllerSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ReplicationControllerStatus",
      "type": "api_object",
      "title": "ReplicationControllerStatus",
      "summary": "ReplicationControllerStatus represents the current status of a replication controller.",
      "body": "The current status of a ReplicationController.\n\n**Why it matters**\nReplicationControllerStatus provides information about the current state of a replication controller, including its replicas and conditions.\n\n**Key facts**\n- ReplicationControllerStatus is an object that represents the current state of a replication controller.\n- It includes fields such as replicas, conditions, and observedGeneration.\n\n**Related**\nReplicationController",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "availableReplicas",
          "conditions",
          "fullyLabeledReplicas",
          "observedGeneration",
          "readyReplicas",
          "replicas"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.ReplicationControllerStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ReplicationControllerStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceClaim",
      "type": "api_object",
      "title": "ResourceClaim",
      "summary": "ResourceClaim references one entry in PodSpec.ResourceClaims.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "request"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ResourceClaim"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceClaim"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaim"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaim"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaim"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceFieldSelector",
      "type": "api_object",
      "title": "ResourceFieldSelector",
      "summary": "ResourceFieldSelector represents container resources (cpu, memory) and their output format",
      "body": "A ResourceFieldSelector is used to select resources in Kubernetes.\n\n**Why it matters**\nIt allows for flexible and dynamic resource selection.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ResourceFieldSelector (swagger.json)\n- Used for selecting resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "containerName",
          "divisor",
          "resource"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.ResourceFieldSelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceFieldSelector"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceHealth",
      "type": "api_object",
      "title": "ResourceHealth",
      "summary": "ResourceHealth represents the health of a resource. It has the latest device health information. This is a part of KEP https://kep.k8s.io/4680.",
      "body": "ResourceHealth represents the health of a resource in Kubernetes.\n\n**Why it matters**\nIt provides insight into the status and well-being of resources.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ResourceHealth (swagger.json)\n- Represents the health of a resource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "health",
          "message",
          "resourceID"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.ResourceHealth"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceHealth"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceQuota",
      "type": "api_object",
      "title": "ResourceQuota",
      "summary": "ResourceQuota sets aggregate quota restrictions enforced per namespace",
      "body": "A ResourceQuota is used to limit resource consumption in Kubernetes.\n\n**Why it matters**\nIt helps prevent resource overconsumption and ensures fair usage.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ResourceQuota (swagger.json)\n- Limits resource consumption",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.ResourceQuota"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceQuota"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceQuotaList",
      "type": "api_object",
      "title": "ResourceQuotaList",
      "summary": "ResourceQuotaList is a list of ResourceQuota items.",
      "body": "A ResourceQuotaList is a collection of ResourceQuotas in Kubernetes.\n\n**Why it matters**\nIt provides a way to manage and view multiple resource quotas.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ResourceQuotaList (swagger.json)\n- Collection of ResourceQuotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.ResourceQuotaList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceQuotaList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceQuotaSpec",
      "type": "api_object",
      "title": "ResourceQuotaSpec",
      "summary": "ResourceQuotaSpec defines the desired hard limits to enforce for Quota.",
      "body": "ResourceQuotaSpec is a specification for ResourceQuota.\n\n**Why it matters**\nIt defines the resource quotas for a namespace.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ResourceQuotaSpec (swagger.json)\n- Specifies resource quotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "hard",
          "scopeSelector",
          "scopes"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.ResourceQuotaSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceQuotaSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceQuotaStatus",
      "type": "api_object",
      "title": "ResourceQuotaStatus",
      "summary": "ResourceQuotaStatus defines the enforced hard limits and observed use.",
      "body": "ResourceQuotaStatus is the status for ResourceQuota.\n\n**Why it matters**\nIt provides information about the current state of resource quotas.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ResourceQuotaStatus (swagger.json)\n- Provides information about resource quota status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "hard",
          "used"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ResourceQuotaStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceQuotaStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceRequirements",
      "type": "api_object",
      "title": "ResourceRequirements",
      "summary": "ResourceRequirements describes the compute resource requirements.",
      "body": "ResourceRequirements specifies the resources required by a container.\n\n**Why it matters**\nIt ensures that containers have sufficient resources to run.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ResourceRequirements (swagger.json)\n- Specifies resource requirements for a container",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "claims",
          "limits",
          "requests"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.ResourceRequirements"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceRequirements"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourceStatus",
      "type": "api_object",
      "title": "ResourceStatus",
      "summary": "ResourceStatus represents the status of a single resource allocated to a Pod.",
      "body": "ResourceStatus is the status for Resource.\n\n**Why it matters**\nIt provides information about the current state of resources.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ResourceStatus (swagger.json)\n- Provides information about resource status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "resources"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ResourceStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SELinuxOptions",
      "type": "api_object",
      "title": "SELinuxOptions",
      "summary": "SELinuxOptions are the labels to be applied to the container",
      "body": "SELinuxOptions is an API object that allows you to set SELinux options for a pod.\n\n**Why it matters**\nIt enables fine-grained control over SELinux behavior in Kubernetes environments.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.SELinuxOptions\n- Used to set SELinux options for a pod\n\n**Common pitfalls**\n- Incorrectly configured SELinux options can lead to security issues",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "level",
          "role",
          "type",
          "user"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.SELinuxOptions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SELinuxOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ScaleIOPersistentVolumeSource",
      "type": "api_object",
      "title": "ScaleIOPersistentVolumeSource",
      "summary": "ScaleIOPersistentVolumeSource represents a persistent ScaleIO volume",
      "body": "ScaleIOPersistentVolumeSource is an API object that allows you to use ScaleIO storage in your Kubernetes cluster.\n\n**Why it matters**\nIt provides a way to integrate ScaleIO storage with Kubernetes persistent volumes.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ScaleIOPersistentVolumeSource\n- Used to create a persistent volume from a ScaleIO storage system\n\n**Common pitfalls**\n- Incorrectly configured ScaleIO credentials can lead to authentication issues\n\n**Related**\nScaleIOVolumeSource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "gateway",
          "protectionDomain",
          "readOnly",
          "secretRef",
          "sslEnabled",
          "storageMode",
          "storagePool",
          "system",
          "volumeName"
        ],
        "field_count": 10,
        "def_name": "io.k8s.api.core.v1.ScaleIOPersistentVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ScaleIOPersistentVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ScaleIOVolumeSource",
      "type": "api_object",
      "title": "ScaleIOVolumeSource",
      "summary": "ScaleIOVolumeSource represents a persistent ScaleIO volume",
      "body": "ScaleIOVolumeSource is an API object that allows you to use ScaleIO storage in your Kubernetes cluster.\n\n**Why it matters**\nIt provides a way to integrate ScaleIO storage with Kubernetes persistent volumes.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ScaleIOVolumeSource\n- Used to create a persistent volume from a ScaleIO storage system\n\n**Common pitfalls**\n- Incorrectly configured ScaleIO credentials can lead to authentication issues\n\n**Related**\nScaleIOPersistentVolumeSource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "gateway",
          "protectionDomain",
          "readOnly",
          "secretRef",
          "sslEnabled",
          "storageMode",
          "storagePool",
          "system",
          "volumeName"
        ],
        "field_count": 10,
        "def_name": "io.k8s.api.core.v1.ScaleIOVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ScaleIOVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ScopeSelector",
      "type": "api_object",
      "title": "ScopeSelector",
      "summary": "A scope selector represents the AND of the selectors represented by the scoped-resource selector requirements.",
      "body": "ScopeSelector is an API object that allows you to select pods based on their scope.\n\n**Why it matters**\nIt enables flexible and fine-grained control over pod selection in Kubernetes environments.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ScopeSelector\n- Used to select pods based on their scope\n\n**Common pitfalls**\n- Incorrectly configured scope selectors can lead to incorrect pod selection",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "matchExpressions"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.ScopeSelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ScopeSelector"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ScopedResourceSelectorRequirement",
      "type": "api_object",
      "title": "ScopedResourceSelectorRequirement",
      "summary": "A scoped-resource selector requirement is a selector that contains values, a scope name, and an operator that relates the scope name and values.",
      "body": "A requirement for scoped resource selection in Kubernetes.\n\n**Why it matters**\nScopedResourceSelectorRequirement is used to specify a requirement for selecting resources within a scope, such as a namespace or cluster.\n\n**Key facts**\n- Part of the io.k8s.api.core.v1 package\n- Used for scoped resource selection",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "operator",
          "scopeName",
          "values"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.ScopedResourceSelectorRequirement"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ScopedResourceSelectorRequirement"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SeccompProfile",
      "type": "api_object",
      "title": "SeccompProfile",
      "summary": "SeccompProfile defines a pod/container's seccomp profile settings. Only one profile source may be set.",
      "body": "A security profile for Seccomp in Kubernetes.\n\n**Why it matters**\nSeccompProfile is used to specify a security profile for Seccomp, which helps prevent privilege escalation attacks.\n\n**Key facts**\n- Part of the io.k8s.api.core.v1 package\n- Used for specifying a security profile for Seccomp",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "localhostProfile",
          "type"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.SeccompProfile"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SeccompProfile"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Secret",
      "type": "api_object",
      "title": "Secret",
      "summary": "Secret holds secret data of a certain type. The total bytes of the values in the Data field must be less than MaxSecretSize bytes.",
      "body": "A secret in Kubernetes.\n\n**Why it matters**\nSecret is used to store sensitive information, such as passwords or OAuth tokens, securely within a pod.\n\n**Key facts**\n- Part of the io.k8s.api.core.v1 package\n- Used for storing sensitive information",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "data",
          "immutable",
          "kind",
          "metadata",
          "stringData",
          "type"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.core.v1.Secret"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Secret"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SecretEnvSource",
      "type": "api_object",
      "title": "SecretEnvSource",
      "summary": "SecretEnvSource selects a Secret to populate the environment variables with.\n\nThe contents of the target Secret's Data field will represent the key-value pairs as environment variables.",
      "body": "A source for environment variables from a secret in Kubernetes.\n\n**Why it matters**\nSecretEnvSource is used to specify the source of environment variables from a secret, allowing sensitive information to be injected into a pod securely.\n\n**Key facts**\n- Part of the io.k8s.api.core.v1 package\n- Used for specifying the source of environment variables from a secret",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "optional"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.SecretEnvSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretEnvSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SecretKeySelector",
      "type": "api_object",
      "title": "SecretKeySelector",
      "summary": "SecretKeySelector selects a key of a Secret.",
      "body": "A SecretKeySelector is used to select a key from a secret.\n\n**Why it matters**\nIt allows you to reference a specific key from a secret in your Kubernetes resources.\n\n**Key facts**\n- Selects a key from a secret\n- Used in various Kubernetes resources\n\n**Related**\nSecrets, ConfigMaps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "key",
          "name",
          "optional"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.SecretKeySelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretKeySelector"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SecretList",
      "type": "api_object",
      "title": "SecretList",
      "summary": "A list of secrets.",
      "body": "A list of secrets.\n\n**Why it matters**\nIt allows you to manage and view a collection of secrets in your Kubernetes cluster.\n\n**Key facts**\n- Contains a list of Secret objects\n- Used for secret management\n\n**Related**\nSecrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.SecretList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SecretProjection",
      "type": "api_object",
      "title": "SecretProjection",
      "summary": "Adapts a secret into a projected volume.\n\nThe contents of the target Secret's Data field will be presented in a projected volume as files using the keys in the Data field as the file names. Note that this is identical to a secret volume source without the default mode.",
      "body": "A projection that adds or updates existing container's volumes with created Secret, ConfigMap, and downward API objects.\n\n**Why it matters**\nIt enables you to inject secrets into your containers as environment variables or files.\n\n**Key facts**\n- Adds or updates container volumes\n- Supports Secret, ConfigMap, and downward API objects\n\n**Related**\nSecrets, ConfigMaps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "items",
          "name",
          "optional"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.SecretProjection"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretProjection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SecretReference",
      "type": "api_object",
      "title": "SecretReference",
      "summary": "SecretReference represents a Secret Reference. It has enough information to retrieve secret in any namespace",
      "body": "A reference to a secret.\n\n**Why it matters**\nIt allows you to reference a secret in your Kubernetes resources, enabling secure storage and retrieval of sensitive data.\n\n**Key facts**\n- References a Secret object\n- Used in various Kubernetes resources\n\n**Related**\nSecrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "namespace"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.SecretReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretReference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SecretVolumeSource",
      "type": "api_object",
      "title": "SecretVolumeSource",
      "summary": "Adapts a Secret into a volume.\n\nThe contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling.",
      "body": "A SecretVolumeSource is a type of volume that mounts a Kubernetes Secret as a file system.\n\n**Why it matters**\nIt allows pods to access sensitive information stored in Secrets without exposing them directly.\n\n**Key facts**\n- Defined in the io.k8s.api.core.v1 package\n- Used for mounting Secrets as file systems\n\n**Common pitfalls**\n- Incorrect configuration can lead to unauthorized access to sensitive data",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "defaultMode",
          "items",
          "optional",
          "secretName"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.SecretVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SecurityContext",
      "type": "api_object",
      "title": "SecurityContext",
      "summary": "SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext.  When both are set, the values in SecurityContext take precedence.",
      "body": "A SecurityContext defines the security settings for a pod or container.\n\n**Why it matters**\nIt enables fine-grained control over user and group IDs, capabilities, and other security-related settings.\n\n**Key facts**\n- Defined in the io.k8s.api.core.v1 package\n- Used for setting security settings such as user ID, group ID, and capabilities\n\n**Common pitfalls**\n- Incorrect configuration can lead to security vulnerabilities\n\n**Related**\nSecretVolumeSource, ServiceAccount",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "allowPrivilegeEscalation",
          "appArmorProfile",
          "capabilities",
          "privileged",
          "procMount",
          "readOnlyRootFilesystem",
          "runAsGroup",
          "runAsNonRoot",
          "runAsUser",
          "seLinuxOptions",
          "seccompProfile",
          "windowsOptions"
        ],
        "field_count": 12,
        "def_name": "io.k8s.api.core.v1.SecurityContext"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecurityContext"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Service",
      "type": "api_object",
      "title": "Service",
      "summary": "Service is a named abstraction of software service (for example, mysql) consisting of local port (for example 3306) that the proxy listens on, and the selector that determines which pods will answer requests sent through the proxy.",
      "body": "A Service is an abstraction that exposes a network service to access it by name and/or IP address.\n\n**Why it matters**\nIt provides load balancing, self-healing, and other features for accessing services in a Kubernetes cluster.\n\n**Key facts**\n- Defined in the io.k8s.api.core.v1 package\n- Used for exposing network services\n\n**Common pitfalls**\n- Incorrect configuration can lead to service unavailability or performance issues\n\n**Related**\nSecretVolumeSource, SecurityContext",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.Service"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Service"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceAccount",
      "type": "api_object",
      "title": "ServiceAccount",
      "summary": "ServiceAccount binds together: * a name, understood by users, and perhaps by peripheral systems, for an identity * a principal that can be authenticated and authorized * a set of secrets",
      "body": "A ServiceAccount is an identity for a pod that allows it to authenticate with the Kubernetes API server.\n\n**Why it matters**\nIt enables authentication and authorization of pods in a Kubernetes cluster.\n\n**Key facts**\n- Defined in the io.k8s.api.core.v1 package\n- Used for authenticating pods with the Kubernetes API server\n\n**Common pitfalls**\n- Incorrect configuration can lead to authentication failures or security vulnerabilities\n\n**Related**\nSecretVolumeSource, SecurityContext",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "automountServiceAccountToken",
          "imagePullSecrets",
          "kind",
          "metadata",
          "secrets"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.ServiceAccount"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServiceAccount"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceAccountList",
      "type": "api_object",
      "title": "ServiceAccountList",
      "summary": "ServiceAccountList is a list of ServiceAccount objects",
      "body": "A list of ServiceAccounts in a cluster.\n\n**Why it matters**\nServiceAccountLists are used to manage and access service accounts in a Kubernetes cluster.\n\n**Key facts**\n- Represents a list of ServiceAccounts.\n- Used for managing service accounts.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.ServiceAccountList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServiceAccountList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceAccountTokenProjection",
      "type": "api_object",
      "title": "ServiceAccountTokenProjection",
      "summary": "ServiceAccountTokenProjection represents a projected service account token volume. This projection can be used to insert a service account token into the pods runtime filesystem for use against APIs (Kubernetes API Server or otherwise).",
      "body": "A projection that allows a user to impersonate a service account.\n\n**Why it matters**\nServiceAccountTokenProjections enable users to access resources as a service account without having to manage tokens directly.\n\n**Key facts**\n- Allows a user to impersonate a service account.\n- Used for accessing resources as a service account.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "storage",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "audience",
          "expirationSeconds",
          "path"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.ServiceAccountTokenProjection"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServiceAccountTokenProjection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceList",
      "type": "api_object",
      "title": "ServiceList",
      "summary": "A list of Services in a cluster.",
      "body": "A list of Services in a cluster.\n\n**Why it matters**\nServiceLists are used to manage and access services in a Kubernetes cluster.\n\n**Key facts**\n- Represents a list of Services.\n- Used for managing services.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.ServiceList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServiceList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServicePort",
      "type": "api_object",
      "title": "ServicePort",
      "summary": "ServicePort contains information on service's port.",
      "body": "A port definition for a Service.\n\n**Why it matters**\nServicePorts define the ports that a service exposes to the outside world.\n\n**Key facts**\n- Represents a single port.\n- Used for defining exposed ports.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "appProtocol",
          "name",
          "nodePort",
          "port",
          "protocol",
          "targetPort"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.ServicePort"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServicePort"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceSpec",
      "type": "api_object",
      "title": "ServiceSpec",
      "summary": "ServiceSpec describes the attributes that a user creates on a service.",
      "body": "The ServiceSpec API object defines the specification for a Kubernetes Service.\n\n**Why it matters**\nIt provides configuration options for Services, such as selectors and ports.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ServiceSpec (source: swagger.json)\n- Configures Service behavior",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "allocateLoadBalancerNodePorts",
          "clusterIP",
          "clusterIPs",
          "externalIPs",
          "externalName",
          "externalTrafficPolicy",
          "healthCheckNodePort",
          "internalTrafficPolicy",
          "ipFamilies",
          "ipFamilyPolicy",
          "loadBalancerClass",
          "loadBalancerIP",
          "loadBalancerSourceRanges",
          "ports",
          "publishNotReadyAddresses",
          "selector",
          "sessionAffinity",
          "sessionAffinityConfig",
          "trafficDistribution",
          "type"
        ],
        "field_count": 20,
        "def_name": "io.k8s.api.core.v1.ServiceSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServiceSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceStatus",
      "type": "api_object",
      "title": "ServiceStatus",
      "summary": "ServiceStatus represents the current status of a service.",
      "body": "The ServiceStatus API object represents the current status of a Kubernetes Service.\n\n**Why it matters**\nIt provides information about the Service's current state, such as its load balancer and endpoint addresses.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.ServiceStatus (source: swagger.json)\n- Reports Service status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "conditions",
          "loadBalancer"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.ServiceStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServiceStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SessionAffinityConfig",
      "type": "api_object",
      "title": "SessionAffinityConfig",
      "summary": "SessionAffinityConfig represents the configurations of session affinity.",
      "body": "The SessionAffinityConfig API object defines the configuration for session affinity in a Kubernetes Service.\n\n**Why it matters**\nIt enables or disables session persistence and specifies the cookie name used to track sessions.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.SessionAffinityConfig (source: swagger.json)\n- Configures session affinity",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "clientIP"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.SessionAffinityConfig"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SessionAffinityConfig"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SleepAction",
      "type": "api_object",
      "title": "SleepAction",
      "summary": "The SleepAction API object represents a sleep action that can be executed by a Kubernetes Job.",
      "body": "The SleepAction API object represents a sleep action that can be executed by a Kubernetes Job.\n\n**Why it matters**\nIt allows Jobs to pause execution for a specified duration, enabling tasks like waiting for resources or network connectivity.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.SleepAction (source: swagger.json)\n- Executes sleep action",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "seconds"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.SleepAction"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SleepAction"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StorageOSPersistentVolumeSource",
      "type": "api_object",
      "title": "StorageOSPersistentVolumeSource",
      "summary": "Represents a StorageOS persistent volume resource.",
      "body": "A StorageOS Persistent Volume Source is used to provision persistent storage from a StorageOS cluster.\n\n**Why it matters**\nThis allows users to dynamically request and manage persistent storage for their applications.\n\n**Key facts**\n- Based on the io.k8s.api.core.v1.StorageOSPersistentVolumeSource API\n- Used to provision persistent storage",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "readOnly",
          "secretRef",
          "volumeName",
          "volumeNamespace"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.StorageOSPersistentVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.StorageOSPersistentVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StorageOSVolumeSource",
      "type": "api_object",
      "title": "StorageOSVolumeSource",
      "summary": "Represents a StorageOS persistent volume resource.",
      "body": "A StorageOS Volume Source is used to mount a volume from a StorageOS cluster.\n\n**Why it matters**\nThis allows users to dynamically request and manage volumes for their applications.\n\n**Key facts**\n- Based on the io.k8s.api.core.v1.StorageOSVolumeSource API\n- Used to mount a volume",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "readOnly",
          "secretRef",
          "volumeName",
          "volumeNamespace"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.StorageOSVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.StorageOSVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Sysctl",
      "type": "api_object",
      "title": "Sysctl",
      "summary": "Sysctl defines a kernel parameter to be set",
      "body": "A Sysctl is used to configure kernel parameters for a container.\n\n**Why it matters**\nThis allows users to customize the behavior of their containers by configuring kernel settings.\n\n**Key facts**\n- Based on the io.k8s.api.core.v1.Sysctl API\n- Used to configure kernel parameters",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "name",
          "value"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.Sysctl"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Sysctl"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TCPSocketAction",
      "type": "api_object",
      "title": "TCPSocketAction",
      "summary": "TCPSocketAction describes an action based on opening a socket",
      "body": "A TCPSocketAction is used to perform a TCP socket action on a container.\n\n**Why it matters**\nThis allows users to interact with their containers using TCP socket actions.\n\n**Key facts**\n- Based on the io.k8s.api.core.v1.TCPSocketAction API\n- Used to perform a TCP socket action",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "host",
          "port"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.TCPSocketAction"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TCPSocketAction"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Taint",
      "type": "api_object",
      "title": "Taint",
      "summary": "The node this Taint is attached to has the \"effect\" on any pod that does not tolerate the Taint.",
      "body": "A Taint is a key-value pair that can be applied to nodes in a Kubernetes cluster.\n\n**Why it matters**\nTaints allow for the management of node affinity and anti-affinity rules, enabling more flexible scheduling of pods.\n\n**Key facts**\n- Taints are key-value pairs\n- Can be applied to nodes in a cluster\n\n**Common pitfalls**\n- Misconfigured taints can lead to pod placement issues\n\n**Related**\napi:Toleration",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "effect",
          "key",
          "timeAdded",
          "value"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.Taint"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Taint"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Toleration",
      "type": "api_object",
      "title": "Toleration",
      "summary": "The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.",
      "body": "A Toleration is a key-value pair that allows a pod to be scheduled on a node with a matching Taint.\n\n**Why it matters**\nTolerations enable pods to run on nodes with specific taints, increasing flexibility in cluster resource allocation.\n\n**Key facts**\n- Key-value pairs\n- Allow pods to schedule on tainted nodes\n\n**Common pitfalls**\n- Incorrect toleration configuration can lead to pod placement issues\n\n**Related**\napi:Taint",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "effect",
          "key",
          "operator",
          "tolerationSeconds",
          "value"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.Toleration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Toleration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TopologySelectorLabelRequirement",
      "type": "api_object",
      "title": "TopologySelectorLabelRequirement",
      "summary": "A topology selector requirement is a selector that matches given label. This is an alpha feature and may change in the future.",
      "body": "A TopologySelectorLabelRequirement is a label requirement used in topology-aware scheduling.\n\n**Why it matters**\nThis concept enables more sophisticated node selection based on cluster topology, improving resource utilization and efficiency.\n\n**Key facts**\n- Used in topology-aware scheduling\n- Enables more efficient resource allocation\n\n**Common pitfalls**\n- Misconfigured label requirements can lead to incorrect node selection\n\n**Related**\napi:TopologySelectorTerm",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "key",
          "values"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.TopologySelectorLabelRequirement"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TopologySelectorLabelRequirement"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TopologySelectorTerm",
      "type": "api_object",
      "title": "TopologySelectorTerm",
      "summary": "A topology selector term represents the result of label queries. A null or empty topology selector term matches no objects. The requirements of them are ANDed. It provides a subset of functionality as NodeSelectorTerm. This is an alpha feature and may change in the future.",
      "body": "A TopologySelectorTerm is a term used in topology-aware scheduling, specifying the topology labels that must match.\n\n**Why it matters**\nThis concept allows for more precise control over node selection based on cluster topology, improving resource utilization and efficiency.\n\n**Key facts**\n- Used in topology-aware scheduling\n- Specifies topology labels that must match\n\n**Common pitfalls**\n- Incorrect term configuration can lead to incorrect node selection\n\n**Related**\napi:TopologySelectorLabelRequirement",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "matchLabelExpressions"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.TopologySelectorTerm"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TopologySelectorTerm"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TopologySpreadConstraint",
      "type": "api_object",
      "title": "TopologySpreadConstraint",
      "summary": "TopologySpreadConstraint specifies how to spread matching pods among the given topology.",
      "body": "A TopologySpreadConstraint is used to constrain pod placement based on topology.\n\n**Why it matters**\nIt helps ensure that pods are spread across different zones or nodes for high availability and fault tolerance.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.TopologySpreadConstraint\n- Used to constrain pod placement based on topology",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "labelSelector",
          "matchLabelKeys",
          "maxSkew",
          "minDomains",
          "nodeAffinityPolicy",
          "nodeTaintsPolicy",
          "topologyKey",
          "whenUnsatisfiable"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.core.v1.TopologySpreadConstraint"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TopologySpreadConstraint"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TypedLocalObjectReference",
      "type": "api_object",
      "title": "TypedLocalObjectReference",
      "summary": "TypedLocalObjectReference contains enough information to let you locate the typed referenced object inside the same namespace.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiGroup",
          "kind",
          "name"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.core.v1.TypedLocalObjectReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TypedLocalObjectReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.TypedLocalObjectReference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:TypedObjectReference",
      "type": "api_object",
      "title": "TypedObjectReference",
      "summary": "TypedObjectReference contains enough information to let you locate the typed referenced object",
      "body": "A TypedObjectReference is a reference to an object with type information.\n\n**Why it matters**\nIt provides additional context about the referenced object, such as its type.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.TypedObjectReference\n- References an object with type information",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "apiGroup",
          "kind",
          "name",
          "namespace"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.TypedObjectReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TypedObjectReference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Volume",
      "type": "api_object",
      "title": "Volume",
      "summary": "Volume represents a named volume in a pod that may be accessed by any container in the pod.",
      "body": "A Volume represents a storage resource that can be mounted by pods.\n\n**Why it matters**\nIt allows for decoupling storage from pod deployment, making it easier to manage and scale storage resources.\n\n**Key facts**\n- Defined in io.k8s.api.core.v1.Volume\n- Represents a storage resource that can be mounted by pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "awsElasticBlockStore",
          "azureDisk",
          "azureFile",
          "cephfs",
          "cinder",
          "configMap",
          "csi",
          "downwardAPI",
          "emptyDir",
          "ephemeral",
          "fc",
          "flexVolume",
          "flocker",
          "gcePersistentDisk",
          "gitRepo",
          "glusterfs",
          "hostPath",
          "image",
          "iscsi",
          "name",
          "nfs",
          "persistentVolumeClaim",
          "photonPersistentDisk",
          "portworxVolume",
          "projected",
          "quobyte",
          "rbd",
          "scaleIO",
          "secret",
          "storageos",
          "vsphereVolume"
        ],
        "field_count": 31,
        "def_name": "io.k8s.api.core.v1.Volume"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Volume"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeDevice",
      "type": "api_object",
      "title": "VolumeDevice",
      "summary": "volumeDevice describes a mapping of a raw block device within a container.",
      "body": "Represents a device in a volume.\n\n**Why it matters**\nAllows you to specify a device in a volume, enabling the use of specific storage devices within a pod.\n\n**Key facts**\n- io.k8s.api.core.v1.VolumeDevice is used to specify a device in a volume.\n- This allows for more fine-grained control over storage resources.\n\n**Common pitfalls**\n- Incorrect usage can lead to issues with storage allocation and utilization.\n\n**Related**\nVolumes, Pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "devicePath",
          "name"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.VolumeDevice"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeDevice"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeMount",
      "type": "api_object",
      "title": "VolumeMount",
      "summary": "VolumeMount describes a mounting of a Volume within a container.",
      "body": "Represents a mount point for a volume.\n\n**Why it matters**\nEnables you to specify where in the filesystem a volume should be mounted, allowing for more flexibility in container storage configurations.\n\n**Key facts**\n- io.k8s.api.core.v1.VolumeMount is used to specify a mount point for a volume.\n- This allows containers to access volumes at specific locations within their filesystem.\n\n**Common pitfalls**\n- Incorrect usage can lead to issues with container storage and file system organization.\n\n**Related**\nVolumes, Containers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "mountPath",
          "mountPropagation",
          "name",
          "readOnly",
          "recursiveReadOnly",
          "subPath",
          "subPathExpr"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.core.v1.VolumeMount"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeMount"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeMountStatus",
      "type": "api_object",
      "title": "VolumeMountStatus",
      "summary": "VolumeMountStatus shows status of volume mounts.",
      "body": "Represents the status of a volume mount.\n\n**Why it matters**\nProvides information about the current state of a volume mount, enabling monitoring and troubleshooting of storage-related issues.\n\n**Key facts**\n- io.k8s.api.core.v1.VolumeMountStatus is used to report the status of a volume mount.\n- This allows for better understanding and management of storage resources.\n\n**Common pitfalls**\n- Misinterpretation of status information can lead to incorrect conclusions about storage utilization and allocation.\n\n**Related**\nVolumes, Pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "mountPath",
          "name",
          "readOnly",
          "recursiveReadOnly",
          "volumeStatus"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.core.v1.VolumeMountStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeMountStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeNodeAffinity",
      "type": "api_object",
      "title": "VolumeNodeAffinity",
      "summary": "VolumeNodeAffinity defines constraints that limit what nodes this volume can be accessed from.",
      "body": "Represents the affinity for a volume on a node.\n\n**Why it matters**\nEnables you to specify preferences or requirements for where a volume should be placed, allowing for more efficient storage resource allocation and utilization.\n\n**Key facts**\n- io.k8s.api.core.v1.VolumeNodeAffinity is used to specify affinity for a volume on a node.\n- This allows for better control over storage placement and resource allocation.\n\n**Common pitfalls**\n- Incorrect usage can lead to issues with storage resource allocation and utilization.\n\n**Related**\nVolumes, Nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "required"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.VolumeNodeAffinity"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeNodeAffinity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeProjection",
      "type": "api_object",
      "title": "VolumeProjection",
      "summary": "Projection that may be projected along with other supported volume types. Exactly one of these fields must be set.",
      "body": "A VolumeProjection is used to project resources from a pod into its volume.\n\n**Why it matters**\nIt allows you to mount volumes from various sources, such as config maps or secrets, into your pod.\n\n**Key facts**\n- Can be used to mount config maps, secrets, or service accounts\n- Provides a way to project resources into a pod's volume\n\n**Common pitfalls**\n- Incorrect usage can lead to resource projection errors\n\n**Related**\nConfigMap, Secrets, ServiceAccount",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "clusterTrustBundle",
          "configMap",
          "downwardAPI",
          "podCertificate",
          "secret",
          "serviceAccountToken"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.core.v1.VolumeProjection"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeProjection"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeResourceRequirements",
      "type": "api_object",
      "title": "VolumeResourceRequirements",
      "summary": "VolumeResourceRequirements describes the storage resource requirements for a volume.",
      "body": "Represents the resource requirements for a volume.\n\n**Why it matters**\nIt defines the resources required by a volume, such as storage and I/O limits.\n\n**Key facts**\n- Defines storage and I/O limits for a volume\n\n**Common pitfalls**\n- Incorrectly specified resource requirements can lead to performance issues\n\n**Related**\nPersistentVolume, PersistentVolumeClaim",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "limits",
          "requests"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.VolumeResourceRequirements"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeResourceRequirements"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeStatus",
      "type": "api_object",
      "title": "VolumeStatus",
      "summary": "VolumeStatus represents the status of a mounted volume. At most one of its members must be specified.",
      "body": "Represents the status of a volume.\n\n**Why it matters**\nIt provides information about the current state of a volume, such as its availability and capacity.\n\n**Key facts**\n- Provides information on volume availability and capacity\n\n**Common pitfalls**\n- Misinterpretation of status can lead to incorrect conclusions\n\n**Related**\nPersistentVolume, PersistentVolumeClaim",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "image"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.core.v1.VolumeStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VsphereVirtualDiskVolumeSource",
      "type": "api_object",
      "title": "VsphereVirtualDiskVolumeSource",
      "summary": "Represents a virtual disk volume source for vSphere.",
      "body": "Represents a virtual disk volume source for vSphere.\n\n**Why it matters**\nIt provides a way to mount virtual disks from vSphere into your pod.\n\n**Key facts**\n- Used to mount virtual disks from vSphere\n\n**Common pitfalls**\n- Incorrect configuration can lead to connectivity issues\n\n**Related**\nvSphere, PersistentVolume",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "fsType",
          "storagePolicyID",
          "storagePolicyName",
          "volumePath"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.VsphereVirtualDiskVolumeSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VsphereVirtualDiskVolumeSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:WeightedPodAffinityTerm",
      "type": "api_object",
      "title": "WeightedPodAffinityTerm",
      "summary": "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)",
      "body": "A WeightedPodAffinityTerm represents a term in a weighted pod affinity.\n\n**Why it matters**\nThis concept allows for weighted pod affinity, enabling more complex scheduling rules.\n\n**Key facts**\n- Represents a term in a weighted pod affinity\n- Enables weighted pod affinity",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "podAffinityTerm",
          "weight"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.core.v1.WeightedPodAffinityTerm"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.WeightedPodAffinityTerm"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:WindowsSecurityContextOptions",
      "type": "api_object",
      "title": "WindowsSecurityContextOptions",
      "summary": "WindowsSecurityContextOptions contain Windows-specific options and credentials.",
      "body": "WindowsSecurityContextOptions is used to configure Windows-specific security context options.\n\n**Why it matters**\nThis concept allows for configuration of Windows-specific security context options, enabling more secure deployment on Windows nodes.\n\n**Key facts**\n- Used to configure Windows-specific security context options\n- Enables secure deployment on Windows nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "core",
        "version": "v1",
        "fields": [
          "gmsaCredentialSpec",
          "gmsaCredentialSpecName",
          "hostProcess",
          "runAsUserName"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.core.v1.WindowsSecurityContextOptions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.WindowsSecurityContextOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Endpoint",
      "type": "api_object",
      "title": "Endpoint",
      "summary": "Endpoint represents a single logical \"backend\" implementing a service.",
      "body": "An Endpoint represents a logical endpoint that serves network traffic.\n\n**Why it matters**\nThis concept allows for the creation and management of logical endpoints, enabling more flexible networking configurations.\n\n**Key facts**\n- Represents a logical endpoint that serves network traffic\n- Enables creation and management of logical endpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "discovery",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "discovery",
        "version": "v1",
        "fields": [
          "addresses",
          "conditions",
          "deprecatedTopology",
          "hints",
          "hostname",
          "nodeName",
          "targetRef",
          "zone"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.discovery.v1.Endpoint"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.Endpoint"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EndpointConditions",
      "type": "api_object",
      "title": "EndpointConditions",
      "summary": "EndpointConditions represents the current condition of an endpoint.",
      "body": "EndpointConditions represent the observed state of an Endpoint.\n\n**Why it matters**\nThis concept allows for the observation and monitoring of endpoint conditions, enabling more informed decision-making about endpoint health.\n\n**Key facts**\n- Represents the observed state of an Endpoint\n- Enables observation and monitoring of endpoint conditions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "discovery",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "discovery",
        "version": "v1",
        "fields": [
          "ready",
          "serving",
          "terminating"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.discovery.v1.EndpointConditions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.EndpointConditions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EndpointHints",
      "type": "api_object",
      "title": "EndpointHints",
      "summary": "EndpointHints provides hints describing how an endpoint should be consumed.",
      "body": "EndpointHints is an API resource that provides hints about endpoints.\n\n**Why it matters**\nIt helps with endpoint discovery and management in a Kubernetes cluster.\n\n**Key facts**\n- Provides hints about endpoints\n- Used for endpoint discovery\n\n**Related**\nEndpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "discovery",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "discovery",
        "version": "v1",
        "fields": [
          "forNodes",
          "forZones"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.discovery.v1.EndpointHints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.EndpointHints"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EndpointSlice",
      "type": "api_object",
      "title": "EndpointSlice",
      "summary": "EndpointSlice represents a set of service endpoints. Most EndpointSlices are created by the EndpointSlice controller to represent the Pods selected by Service objects. For a given service there may be multiple EndpointSlice objects which must be joined to produce the full set of endpoints; you can find all of the slices for a given service by listing EndpointSlices in the service's namespace whose `kubernetes.io/service-name` label contains the service's name.",
      "body": "EndpointSlice is an API resource that represents a slice of endpoints.\n\n**Why it matters**\nIt helps with the management and discovery of endpoints in a Kubernetes cluster.\n\n**Key facts**\n- Represents a slice of endpoints\n- Used for endpoint management\n\n**Related**\nEndpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "discovery",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "discovery",
        "version": "v1",
        "fields": [
          "addressType",
          "apiVersion",
          "endpoints",
          "kind",
          "metadata",
          "ports"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.discovery.v1.EndpointSlice"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.EndpointSlice"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:EndpointSliceList",
      "type": "api_object",
      "title": "EndpointSliceList",
      "summary": "EndpointSliceList represents a list of endpoint slices",
      "body": "EndpointSliceList is an API resource that represents a list of EndpointSlices.\n\n**Why it matters**\nIt allows for the retrieval and management of EndpointSlices in a Kubernetes cluster.\n\n**Key facts**\n- Represents a list of EndpointSlices\n- Used for retrieving EndpointSlices\n\n**Related**\nEndpointSlices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "discovery",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "discovery",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.discovery.v1.EndpointSliceList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.EndpointSliceList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ForNode",
      "type": "api_object",
      "title": "ForNode",
      "summary": "ForNode provides information about which nodes should consume this endpoint.",
      "body": "Represents information about a node in the cluster.\n\n**Why it matters**\nUsed by the Kubernetes API to provide information about nodes in the cluster.\n\n**Key facts**\n- Part of the io.k8s.api.discovery.v1 package\n- Used for node discovery",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "discovery",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "discovery",
        "version": "v1",
        "fields": [
          "name"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.discovery.v1.ForNode"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.ForNode"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ForZone",
      "type": "api_object",
      "title": "ForZone",
      "summary": "ForZone provides information about which zones should consume this endpoint.",
      "body": "Represents information about a zone in the cluster.\n\n**Why it matters**\nUsed by the Kubernetes API to provide information about zones in the cluster.\n\n**Key facts**\n- Part of the io.k8s.api.discovery.v1 package\n- Used for zone discovery",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "discovery",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "discovery",
        "version": "v1",
        "fields": [
          "name"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.discovery.v1.ForZone"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.ForZone"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ExemptPriorityLevelConfiguration",
      "type": "api_object",
      "title": "ExemptPriorityLevelConfiguration",
      "summary": "ExemptPriorityLevelConfiguration describes the configurable aspects of the handling of exempt requests. In the mandatory exempt configuration object the values in the fields here can be modified by authorized users, unlike the rest of the `spec`.",
      "body": "ExemptPriorityLevelConfiguration is an object in Kubernetes that configures priority levels for exempt pods.\n\n**Why it matters**\nThis configuration allows administrators to set priority levels for specific pods, ensuring they receive the necessary resources.\n\n**Key facts**\n- It specifies a list of exempt pods and their corresponding priority levels\n- The configuration is used by the FlowControl admission controller\n\n**Related**\nFlowControl, Priority Levels",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "lendablePercent",
          "nominalConcurrencyShares"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.flowcontrol.v1.ExemptPriorityLevelConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.ExemptPriorityLevelConfiguration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FlowDistinguisherMethod",
      "type": "api_object",
      "title": "FlowDistinguisherMethod",
      "summary": "FlowDistinguisherMethod specifies the method of a flow distinguisher.",
      "body": "FlowDistinguisherMethod is an enum in Kubernetes that specifies how to distinguish between flows.\n\n**Why it matters**\nThis method determines how the FlowControl admission controller identifies and manages traffic flows.\n\n**Key facts**\n- It has three possible values: \"IP\", \"Port\", or \"None\"\n- The choice of method affects how flows are distinguished and managed\n\n**Related**\nFlowControl, Traffic Flows",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "type"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.flowcontrol.v1.FlowDistinguisherMethod"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowDistinguisherMethod"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FlowSchema",
      "type": "api_object",
      "title": "FlowSchema",
      "summary": "FlowSchema defines the schema of a group of flows. Note that a flow is made up of a set of inbound API requests with similar attributes and is identified by a pair of strings: the name of the FlowSchema and a \"flow distinguisher\".",
      "body": "FlowSchema is an object in Kubernetes that defines the structure of a flow.\n\n**Why it matters**\nThis schema provides a way to describe and manage complex traffic flows within the cluster.\n\n**Key facts**\n- It contains fields for specifying the flow's source, destination, and protocol\n- The schema is used by the FlowControl admission controller\n\n**Related**\nFlowControl, Traffic Flows",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.flowcontrol.v1.FlowSchema"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowSchema"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FlowSchemaCondition",
      "type": "api_object",
      "title": "FlowSchemaCondition",
      "summary": "FlowSchemaCondition describes conditions for a FlowSchema.",
      "body": "Represents the condition of a FlowSchema.\n\n**Why it matters**\nUsed to determine the status of a FlowSchema in a flow control policy.\n\n**Key facts**\n- Part of the io.k8s.api.flowcontrol.v1 package.\n- Defined in swagger.json.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.flowcontrol.v1.FlowSchemaCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowSchemaCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FlowSchemaList",
      "type": "api_object",
      "title": "FlowSchemaList",
      "summary": "FlowSchemaList is a list of FlowSchema objects.",
      "body": "A list of FlowSchemas.\n\n**Why it matters**\nUsed to manage multiple FlowSchemas in a flow control policy.\n\n**Key facts**\n- Part of the io.k8s.api.flowcontrol.v1 package.\n- Defined in swagger.json.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.flowcontrol.v1.FlowSchemaList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowSchemaList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FlowSchemaSpec",
      "type": "api_object",
      "title": "FlowSchemaSpec",
      "summary": "FlowSchemaSpec describes how the FlowSchema's specification looks like.",
      "body": "The specification for a FlowSchema.\n\n**Why it matters**\nUsed to define the structure and behavior of a FlowSchema.\n\n**Key facts**\n- Part of the io.k8s.api.flowcontrol.v1 package.\n- Defined in swagger.json.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "distinguisherMethod",
          "matchingPrecedence",
          "priorityLevelConfiguration",
          "rules"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.flowcontrol.v1.FlowSchemaSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowSchemaSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FlowSchemaStatus",
      "type": "api_object",
      "title": "FlowSchemaStatus",
      "summary": "FlowSchemaStatus represents the current state of a FlowSchema.",
      "body": "The status of a FlowSchema.\n\n**Why it matters**\nUsed to track the current state of a FlowSchema in a flow control policy.\n\n**Key facts**\n- Part of the io.k8s.api.flowcontrol.v1 package.\n- Defined in swagger.json.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "conditions"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.flowcontrol.v1.FlowSchemaStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowSchemaStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:GroupSubject",
      "type": "api_object",
      "title": "GroupSubject",
      "summary": "GroupSubject holds detailed information for group-kind subject.",
      "body": "Represents a group subject in Kubernetes FlowControl API.\n\n**Why it matters**\nUsed to specify access control for groups of users or service accounts.\n\n**Key facts**\n- Identified by its name\n- Can be used as a subject in policy rules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "name"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.flowcontrol.v1.GroupSubject"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.GroupSubject"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LimitResponse",
      "type": "api_object",
      "title": "LimitResponse",
      "summary": "LimitResponse defines how to handle requests that can not be executed right now.",
      "body": "Represents the response to a limit request in Kubernetes FlowControl API.\n\n**Why it matters**\nUsed to indicate whether a limit has been exceeded or not.\n\n**Key facts**\n- Contains information about the limit\n- Can be used to determine if a limit has been exceeded",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "queuing",
          "type"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.flowcontrol.v1.LimitResponse"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.LimitResponse"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LimitedPriorityLevelConfiguration",
      "type": "api_object",
      "title": "LimitedPriorityLevelConfiguration",
      "summary": "LimitedPriorityLevelConfiguration specifies how to handle requests that are subject to limits. It addresses two issues:\n  - How are requests for this priority level limited?\n  - What should be done with requests that exceed the limit?",
      "body": "Represents a limited priority level configuration in Kubernetes FlowControl API.\n\n**Why it matters**\nUsed to configure priority levels for pods or containers.\n\n**Key facts**\n- Specifies the maximum priority level\n- Can be used to limit resource allocation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "borrowingLimitPercent",
          "lendablePercent",
          "limitResponse",
          "nominalConcurrencyShares"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.flowcontrol.v1.LimitedPriorityLevelConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.LimitedPriorityLevelConfiguration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NonResourcePolicyRule",
      "type": "api_object",
      "title": "NonResourcePolicyRule",
      "summary": "NonResourcePolicyRule is a predicate that matches non-resource requests according to their verb and the target non-resource URL. A NonResourcePolicyRule matches a request if and only if both (a) at least one member of verbs matches the request and (b) at least one member of nonResourceURLs matches the request.",
      "body": "Represents a non-resource policy rule in Kubernetes FlowControl API.\n\n**Why it matters**\nUsed to specify access control for non-resource requests (e.g. impersonation).\n\n**Key facts**\n- Specifies the verbs and resources affected\n- Can be used to limit access to certain actions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "nonResourceURLs",
          "verbs"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.flowcontrol.v1.NonResourcePolicyRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.NonResourcePolicyRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PolicyRulesWithSubjects",
      "type": "api_object",
      "title": "PolicyRulesWithSubjects",
      "summary": "PolicyRulesWithSubjects prescribes a test that applies to a request to an apiserver. The test considers the subject making the request, the verb being requested, and the resource to be acted upon. This PolicyRulesWithSubjects matches a request if and only if both (a) at least one member of subjects matches the request and (b) at least one member of resourceRules or nonResourceRules matches the request.",
      "body": "A PolicyRuleWithSubjects is used to define a policy rule that targets specific subjects.\n\n**Why it matters**\nThis concept allows for fine-grained control over which subjects can perform certain actions in the cluster.\n\n**Key facts**\n- Represents a policy rule with subjects\n- Used to target specific subjects\n\n**Common pitfalls**\n- Incorrectly specifying subjects can lead to unintended access\n\n**Related**\nPolicyRules, Subjects",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "nonResourceRules",
          "resourceRules",
          "subjects"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.flowcontrol.v1.PolicyRulesWithSubjects"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PolicyRulesWithSubjects"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PriorityLevelConfiguration",
      "type": "api_object",
      "title": "PriorityLevelConfiguration",
      "summary": "PriorityLevelConfiguration represents the configuration of a priority level.",
      "body": "A PriorityLevelConfiguration is used to configure the priority levels for a cluster.\n\n**Why it matters**\nThis concept allows administrators to control the priority levels and ensure that critical workloads receive sufficient resources.\n\n**Key facts**\n- Represents a configuration of priority levels\n- Used to manage priority levels in a cluster\n\n**Common pitfalls**\n- Incorrectly configuring priority levels can lead to resource starvation\n\n**Related**\nPriorityLevels, ClusterResourceQuotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.flowcontrol.v1.PriorityLevelConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfiguration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PriorityLevelConfigurationCondition",
      "type": "api_object",
      "title": "PriorityLevelConfigurationCondition",
      "summary": "PriorityLevelConfigurationCondition defines the condition of priority level.",
      "body": "A PriorityLevelConfigurationCondition is used to evaluate the status of a priority level configuration.\n\n**Why it matters**\nThis concept allows administrators to monitor and troubleshoot issues related to priority levels in their cluster.\n\n**Key facts**\n- Represents a condition for a priority level configuration\n- Used to evaluate the status of a priority level\n\n**Common pitfalls**\n- Incorrectly interpreting conditions can lead to delayed issue resolution\n\n**Related**\nPriorityLevelConfigurations, ClusterResourceQuotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PriorityLevelConfigurationList",
      "type": "api_object",
      "title": "PriorityLevelConfigurationList",
      "summary": "PriorityLevelConfigurationList is a list of PriorityLevelConfiguration objects.",
      "body": "A PriorityLevelConfigurationList is used to manage a collection of priority level configurations.\n\n**Why it matters**\nThis concept allows administrators to easily view and manage multiple priority level configurations in their cluster.\n\n**Key facts**\n- Represents a list of priority level configurations\n- Used to manage multiple priority level configurations\n\n**Common pitfalls**\n- Incorrectly managing multiple configurations can lead to configuration drift\n\n**Related**\nPriorityLevelConfigurations, ClusterResourceQuotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PriorityLevelConfigurationReference",
      "type": "api_object",
      "title": "PriorityLevelConfigurationReference",
      "summary": "PriorityLevelConfigurationReference contains information that points to the \"request-priority\" being used.",
      "body": "A reference to a PriorityLevelConfiguration.\n\n**Why it matters**\nThis allows you to specify a configuration for priority levels in your FlowControl policy.\n\n**Key facts**\n- It's a type of object reference.\n- Used in FlowControl policies.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "name"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationReference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PriorityLevelConfigurationSpec",
      "type": "api_object",
      "title": "PriorityLevelConfigurationSpec",
      "summary": "PriorityLevelConfigurationSpec specifies the configuration of a priority level.",
      "body": "The specification for a PriorityLevelConfiguration.\n\n**Why it matters**\nThis defines the configuration for priority levels, including the maximum burst and the minimum allowed request rate.\n\n**Key facts**\n- Defines maximum burst and minimum allowed request rate.\n- Used to configure priority levels.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "exempt",
          "limited",
          "type"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PriorityLevelConfigurationStatus",
      "type": "api_object",
      "title": "PriorityLevelConfigurationStatus",
      "summary": "PriorityLevelConfigurationStatus represents the current state of a \"request-priority\".",
      "body": "The status of a PriorityLevelConfiguration.\n\n**Why it matters**\nThis provides information about the current state of the configuration, such as whether it's being applied or not.\n\n**Key facts**\n- Provides information on configuration application.\n- Includes details on configuration status.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "conditions"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:QueuingConfiguration",
      "type": "api_object",
      "title": "QueuingConfiguration",
      "summary": "QueuingConfiguration holds the configuration parameters for queuing",
      "body": "The configuration for queuing in FlowControl policies.\n\n**Why it matters**\nThis allows you to configure the behavior of queues, including the maximum burst and the minimum allowed request rate.\n\n**Key facts**\n- Defines queue configuration.\n- Used to control queue behavior.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "handSize",
          "queueLengthLimit",
          "queues"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.flowcontrol.v1.QueuingConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.QueuingConfiguration"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourcePolicyRule",
      "type": "api_object",
      "title": "ResourcePolicyRule",
      "summary": "ResourcePolicyRule is a predicate that matches some resource requests, testing the request's verb and the target resource. A ResourcePolicyRule matches a resource request if and only if: (a) at least one member of verbs matches the request, (b) at least one member of apiGroups matches the request, (c) at least one member of resources matches the request, and (d) either (d1) the request does not specify a namespace (i.e., `Namespace==\"\"`) and clusterScope is true or (d2) the request specifies a namespace and least one member of namespaces matches the request's namespace.",
      "body": "A ResourcePolicyRule is an object that defines a rule for controlling access to resources in a Kubernetes cluster.\n\n**Why it matters**\nResourcePolicyRules are used to enforce policies on resource usage, ensuring that pods and services within the cluster adhere to defined limits and quotas.\n\n**Key facts**\n- Defined in io.k8s.api.flowcontrol.v1.ResourcePolicyRule\n- Used for controlling access to resources\n\n**Common pitfalls**\n- Incorrectly configured rules can lead to resource exhaustion or denial of service\n\n**Related**\nResource Policies, Flow Control",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "apiGroups",
          "clusterScope",
          "namespaces",
          "resources",
          "verbs"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.flowcontrol.v1.ResourcePolicyRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.ResourcePolicyRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceAccountSubject",
      "type": "api_object",
      "title": "ServiceAccountSubject",
      "summary": "ServiceAccountSubject holds detailed information for service-account-kind subject.",
      "body": "A ServiceAccountSubject is a type of subject that represents a service account in a Kubernetes cluster.\n\n**Why it matters**\nServiceAccountSubjects are used to authenticate and authorize access to resources on behalf of service accounts, enabling secure communication between pods and services.\n\n**Key facts**\n- Defined in io.k8s.api.flowcontrol.v1.ServiceAccountSubject\n- Represents a service account\n\n**Common pitfalls**\n- Misconfigured service accounts can lead to unauthorized access\n\n**Related**\nService Accounts, Authentication and Authorization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "name",
          "namespace"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.flowcontrol.v1.ServiceAccountSubject"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.ServiceAccountSubject"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Subject",
      "type": "api_object",
      "title": "Subject",
      "summary": "Subject matches the originator of a request, as identified by the request authentication system. There are three ways of matching an originator; by user, group, or service account.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "group",
          "kind",
          "serviceAccount",
          "user"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.flowcontrol.v1.Subject"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.Subject"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.Subject"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:UserSubject",
      "type": "api_object",
      "title": "UserSubject",
      "summary": "UserSubject holds detailed information for user-kind subject.",
      "body": "A UserSubject is a type of subject that represents a user in a Kubernetes cluster.\n\n**Why it matters**\nUserSubjects are used to authenticate and authorize access to resources on behalf of users, enabling secure communication between pods and services.\n\n**Key facts**\n- Defined in io.k8s.api.flowcontrol.v1.UserSubject\n- Represents a user\n\n**Common pitfalls**\n- Misconfigured user accounts can lead to unauthorized access\n\n**Related**\nUsers, Authentication and Authorization",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "flowcontrol"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "flowcontrol",
        "version": "v1",
        "fields": [
          "name"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.flowcontrol.v1.UserSubject"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.UserSubject"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HTTPIngressPath",
      "type": "api_object",
      "title": "HTTPIngressPath",
      "summary": "HTTPIngressPath associates a path with a backend. Incoming urls matching the path are forwarded to the backend.",
      "body": "Represents a path in an Ingress resource that can be used to map incoming requests to a backend service.\n\n**Why it matters**\nAllows for routing of HTTP requests based on URL paths to specific services within the cluster.\n\n**Key facts**\n- Defined by io.k8s.api.networking.v1.HTTPIngressPath in the Kubernetes API\n- Maps incoming requests to a backend service",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "backend",
          "path",
          "pathType"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.networking.v1.HTTPIngressPath"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.HTTPIngressPath"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:HTTPIngressRuleValue",
      "type": "api_object",
      "title": "HTTPIngressRuleValue",
      "summary": "HTTPIngressRuleValue is a list of http selectors pointing to backends. In the example: http://<host>/<path>?<searchpart> -> backend where where parts of the url correspond to RFC 3986, this resource will be used to match against everything after the last '/' and before the first '?' or '#'.",
      "body": "Represents a rule for matching HTTP requests against a backend service.\n\n**Why it matters**\nEnables the specification of conditions under which an Ingress resource should be applied to incoming requests.\n\n**Key facts**\n- Defined by io.k8s.api.networking.v1.HTTPIngressRuleValue in the Kubernetes API\n- Specifies conditions for applying an Ingress resource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "paths"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.networking.v1.HTTPIngressRuleValue"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.HTTPIngressRuleValue"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IPAddress",
      "type": "api_object",
      "title": "IPAddress",
      "summary": "IPAddress represents a single IP of a single IP Family. The object is designed to be used by APIs that operate on IP addresses. The object is used by the Service core API for allocation of IP addresses. An IP address can be represented in different formats, to guarantee the uniqueness of the IP, the name of the object is the IP address in canonical format, four decimal digits separated by dots suppressing leading zeros for IPv4 and the representation defined by RFC 5952 for IPv6. Valid: 192.168.1.5 or 2001:db8::1 or 2001:db8:aaaa:bbbb:cccc:dddd:eeee:1 Invalid: 10.01.2.3 or 2001:db8:0:0:0::1",
      "body": "Represents a single IP address.\n\n**Why it matters**\nUsed to specify IP addresses in networking resources, such as Ingress and Services.\n\n**Key facts**\n- Defined by io.k8s.api.networking.v1.IPAddress in the Kubernetes API\n- Represents a single IP address",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.IPAddress"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IPAddress"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IPAddressList",
      "type": "api_object",
      "title": "IPAddressList",
      "summary": "IPAddressList contains a list of IPAddress.",
      "body": "A list of IP addresses.\n\n**Why it matters**\nUsed to specify multiple IP addresses in networking resources, such as Ingress and Services.\n\n**Key facts**\n- Defined by io.k8s.api.networking.v1.IPAddressList in the Kubernetes API\n- Represents a list of IP addresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.IPAddressList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IPAddressList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IPAddressSpec",
      "type": "api_object",
      "title": "IPAddressSpec",
      "summary": "IPAddressSpec describe the attributes in an IP Address.",
      "body": "A specification for an IP address in Kubernetes.\n\n**Why it matters**\nIPAddressSpec is used to specify an IP address for a pod or service.\n\n**Key facts**\n- Used in pod and service specifications.\n- Represents an IP address.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "parentRef"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.networking.v1.IPAddressSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IPAddressSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IPBlock",
      "type": "api_object",
      "title": "IPBlock",
      "summary": "IPBlock describes a particular CIDR (Ex. \"192.168.1.0/24\",\"2001:db8::/64\") that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The except entry describes CIDRs that should not be included within this rule.",
      "body": "A specification for an IP block in Kubernetes.\n\n**Why it matters**\nIPBlock is used to specify a range of IP addresses that should not be assigned to pods or services.\n\n**Key facts**\n- Used in pod and service specifications.\n- Represents a range of IP addresses.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "cidr",
          "except"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.networking.v1.IPBlock"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IPBlock"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Ingress",
      "type": "api_object",
      "title": "Ingress",
      "summary": "Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc.",
      "body": "A specification for an Ingress resource in Kubernetes.\n\n**Why it matters**\nIngress is used to manage incoming HTTP requests and map them to services within a cluster.\n\n**Key facts**\n- Used to define rules for incoming HTTP requests.\n- Maps requests to services within the cluster.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.networking.v1.Ingress"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.Ingress"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressBackend",
      "type": "api_object",
      "title": "IngressBackend",
      "summary": "IngressBackend describes all endpoints for a given service and port.",
      "body": "A specification for an Ingress Backend resource in Kubernetes.\n\n**Why it matters**\nIngressBackend is used to specify a service that should handle incoming requests for an Ingress rule.\n\n**Key facts**\n- Used in Ingress rules.\n- Specifies the service that handles incoming requests.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "resource",
          "service"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.networking.v1.IngressBackend"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressBackend"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressClass",
      "type": "api_object",
      "title": "IngressClass",
      "summary": "IngressClass represents the class of the Ingress, referenced by the Ingress Spec. The `ingressclass.kubernetes.io/is-default-class` annotation can be used to indicate that an IngressClass should be considered default. When a single IngressClass resource has this annotation set to true, new Ingress resources without a class specified will be assigned this default class.",
      "body": "A resource representing an Ingress class.\n\n**Why it matters**\nAn Ingress class is a way to group Ingress resources together for easier management and scaling.\n\n**Key facts**\n- Represents an Ingress class.\n- Used for grouping Ingress resources.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.IngressClass"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressClass"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressClassList",
      "type": "api_object",
      "title": "IngressClassList",
      "summary": "IngressClassList is a collection of IngressClasses.",
      "body": "A list of Ingress classes.\n\n**Why it matters**\nAn IngressClassList is used to manage multiple Ingress classes in a cluster.\n\n**Key facts**\n- Represents a list of Ingress classes.\n- Used for managing multiple Ingress classes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.IngressClassList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressClassList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressClassParametersReference",
      "type": "api_object",
      "title": "IngressClassParametersReference",
      "summary": "IngressClassParametersReference identifies an API object. This can be used to specify a cluster or namespace-scoped resource.",
      "body": "A reference to the parameters for an Ingress class.\n\n**Why it matters**\nAn IngressClassParametersReference is used to specify the parameters for an Ingress class.\n\n**Key facts**\n- Represents a reference to Ingress class parameters.\n- Used for specifying Ingress class parameters.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiGroup",
          "kind",
          "name",
          "namespace",
          "scope"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.networking.v1.IngressClassParametersReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressClassParametersReference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressClassSpec",
      "type": "api_object",
      "title": "IngressClassSpec",
      "summary": "IngressClassSpec provides information about the class of an Ingress.",
      "body": "The specification of an Ingress class.\n\n**Why it matters**\nAn IngressClassSpec is used to define the configuration for an Ingress class.\n\n**Key facts**\n- Represents the specification of an Ingress class.\n- Used for defining Ingress class configuration.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "controller",
          "parameters"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.networking.v1.IngressClassSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressClassSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressList",
      "type": "api_object",
      "title": "IngressList",
      "summary": "A list of Ingress resources.",
      "body": "A list of Ingress resources.\n\n**Why it matters**\nIngressList provides a way to manage multiple Ingress resources in a single API object.\n\n**Key facts**\n- IngressList is an API resource type.\n- It contains a list of Ingress objects.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.IngressList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressLoadBalancerIngress",
      "type": "api_object",
      "title": "IngressLoadBalancerIngress",
      "summary": "IngressLoadBalancerIngress represents the status of a load-balancer ingress point.",
      "body": "Represents the load balancer ingress for an Ingress resource.\n\n**Why it matters**\nIngressLoadBalancerIngress provides information about the load balancer's ingress for an Ingress resource.\n\n**Key facts**\n- IngressLoadBalancerIngress is a field within an Ingress object.\n- It contains IP and hostname information.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "hostname",
          "ip",
          "ports"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.networking.v1.IngressLoadBalancerIngress"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressLoadBalancerIngress"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressLoadBalancerStatus",
      "type": "api_object",
      "title": "IngressLoadBalancerStatus",
      "summary": "IngressLoadBalancerStatus represents the status of a load-balancer.",
      "body": "Represents the load balancer status for an Ingress resource.\n\n**Why it matters**\nIngressLoadBalancerStatus provides information about the load balancer's status for an Ingress resource.\n\n**Key facts**\n- IngressLoadBalancerStatus is a field within an Ingress object.\n- It contains load balancer status information.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "ingress"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.networking.v1.IngressLoadBalancerStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressLoadBalancerStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressPortStatus",
      "type": "api_object",
      "title": "IngressPortStatus",
      "summary": "IngressPortStatus represents the error condition of a service port",
      "body": "Represents the port status for an Ingress resource.\n\n**Why it matters**\nIngressPortStatus provides information about the port status for an Ingress resource.\n\n**Key facts**\n- IngressPortStatus is a field within an Ingress object.\n- It contains port status information.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "error",
          "port",
          "protocol"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.networking.v1.IngressPortStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressPortStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressRule",
      "type": "api_object",
      "title": "IngressRule",
      "summary": "IngressRule represents the rules mapping the paths under a specified host to the related backend services. Incoming requests are first evaluated for a host match, then routed to the backend associated with the matching IngressRuleValue.",
      "body": "An IngressRule is used to match HTTP requests to a set of backend services.\n\n**Why it matters**\nIngressRules enable traffic routing and load balancing in Kubernetes.\n\n**Key facts**\n- Matches HTTP requests using HTTP methods, paths, and headers\n- References a set of backend services\n\n**Common pitfalls**\n- Incorrectly configured IngressRules can lead to misdirected traffic\n\n**Related**\nIngressServiceBackend, IngressSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "host",
          "http"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.networking.v1.IngressRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressServiceBackend",
      "type": "api_object",
      "title": "IngressServiceBackend",
      "summary": "IngressServiceBackend references a Kubernetes Service as a Backend.",
      "body": "An IngressServiceBackend represents a service that handles incoming HTTP requests.\n\n**Why it matters**\nIngressServiceBackends enable the routing of traffic to backend services in Kubernetes.\n\n**Key facts**\n- References a service that handles incoming HTTP requests\n\n**Common pitfalls**\n- Incorrectly configured IngressServiceBackends can lead to misdirected traffic\n\n**Related**\nIngressRule, IngressSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "name",
          "port"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.networking.v1.IngressServiceBackend"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressServiceBackend"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressSpec",
      "type": "api_object",
      "title": "IngressSpec",
      "summary": "IngressSpec describes the Ingress the user wishes to exist.",
      "body": "An IngressSpec is used to define the desired state of an Ingress resource.\n\n**Why it matters**\nIngressSpecs enable the configuration of network policies and traffic routing in Kubernetes.\n\n**Key facts**\n- Defines the desired state of an Ingress resource\n\n**Common pitfalls**\n- Incorrectly configured IngressSpecs can lead to misconfigured network policies\n\n**Related**\nIngressRule, IngressServiceBackend",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "defaultBackend",
          "ingressClassName",
          "rules",
          "tls"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.IngressSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressStatus",
      "type": "api_object",
      "title": "IngressStatus",
      "summary": "IngressStatus describe the current state of the Ingress.",
      "body": "An IngressStatus represents the current state of an Ingress resource.\n\n**Why it matters**\nIngressStatuses enable the monitoring and troubleshooting of network policies in Kubernetes.\n\n**Key facts**\n- Represents the current state of an Ingress resource\n\n**Common pitfalls**\n- Incorrectly interpreted IngressStatuses can lead to misdiagnosed issues\n\n**Related**\nIngressSpec, IngressRule",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "loadBalancer"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.networking.v1.IngressStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IngressTLS",
      "type": "api_object",
      "title": "IngressTLS",
      "summary": "IngressTLS describes the transport layer security associated with an ingress.",
      "body": "IngressTLS is an object in Kubernetes that specifies TLS configuration for an Ingress resource.\n\n**Why it matters**\nIt allows you to configure HTTPS on your Ingress resources, enabling secure communication between clients and servers.\n\n**Key facts**\n- Defined in io.k8s.api.networking.v1.IngressTLS\n- Specifies TLS configuration for an Ingress resource\n\n**Common pitfalls**\n- Incorrectly configured TLS settings can lead to security vulnerabilities\n\n**Related**\nIngress resources, HTTPS communication",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "hosts",
          "secretName"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.networking.v1.IngressTLS"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressTLS"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NetworkPolicy",
      "type": "api_object",
      "title": "NetworkPolicy",
      "summary": "NetworkPolicy describes what network traffic is allowed for a set of Pods",
      "body": "A NetworkPolicy is a Kubernetes object that defines network traffic flow rules for pods within the same cluster.\n\n**Why it matters**\nIt enables you to control and isolate network traffic between pods, improving security and reducing complexity.\n\n**Key facts**\n- Defined in io.k8s.api.networking.v1.NetworkPolicy\n- Specifies network traffic flow rules for pods\n\n**Common pitfalls**\n- Incorrectly configured NetworkPolicies can lead to connectivity issues between pods\n\n**Related**\nPods, Network traffic isolation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.NetworkPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NetworkPolicyEgressRule",
      "type": "api_object",
      "title": "NetworkPolicyEgressRule",
      "summary": "NetworkPolicyEgressRule describes a particular set of traffic that is allowed out of pods matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and to. This type is beta-level in 1.8",
      "body": "A NetworkPolicyEgressRule is a Kubernetes object that defines an egress rule for a NetworkPolicy.\n\n**Why it matters**\nIt allows you to specify which pods can send traffic to other networks or services outside the cluster.\n\n**Key facts**\n- Defined in io.k8s.api.networking.v1.NetworkPolicyEgressRule\n- Specifies an egress rule for a NetworkPolicy\n\n**Common pitfalls**\n- Incorrectly configured egress rules can lead to security vulnerabilities\n\n**Related**\nNetworkPolicies, Egress traffic",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "ports",
          "to"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.networking.v1.NetworkPolicyEgressRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyEgressRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NetworkPolicyIngressRule",
      "type": "api_object",
      "title": "NetworkPolicyIngressRule",
      "summary": "NetworkPolicyIngressRule describes a particular set of traffic that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and from.",
      "body": "A NetworkPolicyIngressRule is a Kubernetes object that defines an ingress rule for a NetworkPolicy.\n\n**Why it matters**\nIt enables you to specify which pods can receive traffic from other networks or services within the cluster.\n\n**Key facts**\n- Defined in io.k8s.api.networking.v1.NetworkPolicyIngressRule\n- Specifies an ingress rule for a NetworkPolicy\n\n**Common pitfalls**\n- Incorrectly configured ingress rules can lead to security vulnerabilities\n\n**Related**\nNetworkPolicies, Ingress traffic",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "from",
          "ports"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.networking.v1.NetworkPolicyIngressRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyIngressRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NetworkPolicyList",
      "type": "api_object",
      "title": "NetworkPolicyList",
      "summary": "NetworkPolicyList is a list of NetworkPolicy objects.",
      "body": "A list of NetworkPolicy objects in the API.\n\n**Why it matters**\nThis object is used to manage network policies for a cluster.\n\n**Key facts**\n- Represents a list of NetworkPolicy objects.\n- Used to manage network policies for a cluster.\n\n**Common pitfalls**\n- Incorrectly configured network policies can lead to security issues.\n\n**Related**\nNetworkPolicy, API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.NetworkPolicyList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NetworkPolicyPeer",
      "type": "api_object",
      "title": "NetworkPolicyPeer",
      "summary": "NetworkPolicyPeer describes a peer to allow traffic to/from. Only certain combinations of fields are allowed",
      "body": "A peer in the context of a NetworkPolicy.\n\n**Why it matters**\nThis object is used to specify which pods or services can communicate with each other.\n\n**Key facts**\n- Represents a peer in the context of a NetworkPolicy.\n- Used to specify which pods or services can communicate with each other.\n\n**Common pitfalls**\n- Incorrectly configured peers can lead to security issues.\n\n**Related**\nNetworkPolicy, Pods, Services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "ipBlock",
          "namespaceSelector",
          "podSelector"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.networking.v1.NetworkPolicyPeer"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyPeer"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NetworkPolicyPort",
      "type": "api_object",
      "title": "NetworkPolicyPort",
      "summary": "NetworkPolicyPort describes a port to allow traffic on",
      "body": "A port in the context of a NetworkPolicy.\n\n**Why it matters**\nThis object is used to specify which ports are allowed or denied for a network policy.\n\n**Key facts**\n- Represents a port in the context of a NetworkPolicy.\n- Used to specify which ports are allowed or denied for a network policy.\n\n**Common pitfalls**\n- Incorrectly configured ports can lead to security issues.\n\n**Related**\nNetworkPolicy, Ports",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "endPort",
          "port",
          "protocol"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.networking.v1.NetworkPolicyPort"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyPort"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:NetworkPolicySpec",
      "type": "api_object",
      "title": "NetworkPolicySpec",
      "summary": "NetworkPolicySpec provides the specification of a NetworkPolicy",
      "body": "The specification of a NetworkPolicy.\n\n**Why it matters**\nThis object is used to define the rules for a network policy.\n\n**Key facts**\n- Represents the specification of a NetworkPolicy.\n- Used to define the rules for a network policy.\n\n**Common pitfalls**\n- Incorrectly configured specifications can lead to security issues.\n\n**Related**\nNetworkPolicy, API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "egress",
          "ingress",
          "podSelector",
          "policyTypes"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.NetworkPolicySpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicySpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ParentReference",
      "type": "api_object",
      "title": "ParentReference",
      "summary": "ParentReference describes a reference to a parent object.",
      "body": "A reference to a parent resource in Kubernetes.\n\n**Why it matters**\nUsed to specify the parent of a child resource, enabling hierarchical relationships between resources.\n\n**Key facts**\n- Located in the API group io.k8s.api.networking.v1 (source: swagger.json)\n- Represents a reference to a parent resource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "group",
          "name",
          "namespace",
          "resource"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.ParentReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ParentReference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceBackendPort",
      "type": "api_object",
      "title": "ServiceBackendPort",
      "summary": "ServiceBackendPort is the service port being referenced.",
      "body": "A port on the service that exposes the backend.\n\n**Why it matters**\nUsed to specify the port exposed by a service, enabling communication with the service's backend.\n\n**Key facts**\n- Located in the API group io.k8s.api.networking.v1 (source: swagger.json)\n- Represents a port on the service that exposes the backend",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "name",
          "number"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.networking.v1.ServiceBackendPort"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ServiceBackendPort"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceCIDR",
      "type": "api_object",
      "title": "ServiceCIDR",
      "summary": "ServiceCIDR defines a range of IP addresses using CIDR format (e.g. 192.168.0.0/24 or 2001:db2::/64). This range is used to allocate ClusterIPs to Service objects.",
      "body": "A CIDR block for services.\n\n**Why it matters**\nUsed to specify the IP address range used by services, enabling network segmentation and isolation.\n\n**Key facts**\n- Located in the API group io.k8s.api.networking.v1 (source: swagger.json)\n- Represents a CIDR block for services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.networking.v1.ServiceCIDR"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ServiceCIDR"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceCIDRList",
      "type": "api_object",
      "title": "ServiceCIDRList",
      "summary": "ServiceCIDRList contains a list of ServiceCIDR objects.",
      "body": "A list of service CIDRs.\n\n**Why it matters**\nUsed to manage multiple service CIDRs, enabling network configuration and management at scale.\n\n**Key facts**\n- Located in the API group io.k8s.api.networking.v1 (source: swagger.json)\n- Represents a list of service CIDRs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.networking.v1.ServiceCIDRList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ServiceCIDRList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceCIDRSpec",
      "type": "api_object",
      "title": "ServiceCIDRSpec",
      "summary": "ServiceCIDRSpec define the CIDRs the user wants to use for allocating ClusterIPs for Services.",
      "body": "Represents a CIDR block for a Service in Kubernetes.\n\n**Why it matters**\nDefines the IP address range for a Service, allowing multiple pods to be accessed by a single IP and port.\n\n**Key facts**\n- Defined in io.k8s.api.networking.v1.ServiceCIDRSpec\n- Represents a CIDR block (e.g., 192.168.1.0/24)\n- Used to assign an IP address range for a Service\n\n**Common pitfalls**\n- Incorrectly configured CIDR blocks can lead to IP conflicts and network issues\n\n**Related**\nService, Pod, Networking in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "cidrs"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.networking.v1.ServiceCIDRSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ServiceCIDRSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServiceCIDRStatus",
      "type": "api_object",
      "title": "ServiceCIDRStatus",
      "summary": "ServiceCIDRStatus describes the current state of the ServiceCIDR.",
      "body": "Represents the status of a Service's CIDR block in Kubernetes.\n\n**Why it matters**\nProvides information about the current state of a Service's IP address range, such as whether it is allocated or released.\n\n**Key facts**\n- Defined in io.k8s.api.networking.v1.ServiceCIDRStatus\n- Represents the status of a CIDR block (e.g., Allocated or Released)\n- Used to track changes to a Service's IP address range\n\n**Common pitfalls**\n- Misunderstanding the status of a CIDR block can lead to incorrect configuration and network issues\n\n**Related**\nService, Pod, Networking in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "networking",
        "version": "v1",
        "fields": [
          "conditions"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.networking.v1.ServiceCIDRStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ServiceCIDRStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Overhead",
      "type": "api_object",
      "title": "Overhead",
      "summary": "Overhead structure represents the resource overhead associated with running a pod.",
      "body": "Represents the overhead costs associated with running a pod on a node in Kubernetes.\n\n**Why it matters**\nHelps to optimize resource allocation by taking into account the additional resources required for a pod's execution.\n\n**Key facts**\n- Defined in io.k8s.api.node.v1.Overhead\n- Represents the overhead costs (e.g., CPU, memory) associated with running a pod on a node\n- Used to optimize resource allocation and prevent over-allocation\n\n**Common pitfalls**\n- Incorrectly configured overhead costs can lead to under- or over-allocation of resources\n\n**Related**\nPod, Node, Resource Management in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "node"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "node",
        "version": "v1",
        "fields": [
          "podFixed"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.node.v1.Overhead"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.node.v1.Overhead"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RuntimeClass",
      "type": "api_object",
      "title": "RuntimeClass",
      "summary": "RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass is used to determine which container runtime is used to run all containers in a pod. RuntimeClasses are manually defined by a user or cluster provisioner, and referenced in the PodSpec. The Kubelet is responsible for resolving the RuntimeClassName reference before running the pod.  For more details, see https://kubernetes.io/docs/concepts/containers/runtime-class/",
      "body": "Represents a runtime environment for containers in Kubernetes.\n\n**Why it matters**\nAllows for the definition of custom runtime environments, enabling more flexibility and control over container execution.\n\n**Key facts**\n- Defined in io.k8s.api.node.v1.RuntimeClass\n- Represents a runtime environment (e.g., Docker, rkt) for containers\n- Used to define custom runtime environments and optimize container execution\n\n**Common pitfalls**\n- Misconfigured or incompatible runtime classes can lead to container execution issues\n\n**Related**\nContainer, Pod, Runtime Environments in Kubernetes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "node"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "node",
        "version": "v1",
        "fields": [
          "apiVersion",
          "handler",
          "kind",
          "metadata",
          "overhead",
          "scheduling"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.node.v1.RuntimeClass"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.node.v1.RuntimeClass"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RuntimeClassList",
      "type": "api_object",
      "title": "RuntimeClassList",
      "summary": "RuntimeClassList is a list of RuntimeClass objects.",
      "body": "A list of RuntimeClasses, which define the runtime environments for pods.\n\n**Why it matters**\nRuntimeClasses enable flexible and efficient resource allocation by allowing pods to specify their required runtime environment.\n\n**Key facts**\n- Defined in io.k8s.api.node.v1.RuntimeClassList\n- Used to specify runtime environments for pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "node"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "node",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.node.v1.RuntimeClassList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.node.v1.RuntimeClassList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Scheduling",
      "type": "api_object",
      "title": "Scheduling",
      "summary": "Scheduling specifies the scheduling constraints for nodes supporting a RuntimeClass.",
      "body": "A scheduling mechanism that allows cluster administrators to define policies for pod placement and resource allocation.\n\n**Why it matters**\nScheduling enables efficient resource utilization, high availability, and scalability by ensuring pods are placed on suitable nodes based on their requirements.\n\n**Key facts**\n- Defined in io.k8s.api.node.v1.Scheduling\n- Used to define policies for pod placement and resource allocation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "node"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "node",
        "version": "v1",
        "fields": [
          "nodeSelector",
          "tolerations"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.node.v1.Scheduling"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.node.v1.Scheduling"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Eviction",
      "type": "api_object",
      "title": "Eviction",
      "summary": "Eviction evicts a pod from its node subject to certain policies and safety constraints. This is a subresource of Pod.  A request to cause such an eviction is created by POSTing to .../pods/<pod name>/evictions.",
      "body": "A mechanism that allows cluster administrators to evict pods from nodes when resources are scarce or other conditions are met.\n\n**Why it matters**\nEviction enables efficient resource management by allowing cluster administrators to reclaim resources and prevent node overload.\n\n**Key facts**\n- Defined in io.k8s.api.policy.v1.Eviction\n- Used to evict pods from nodes when resources are scarce",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "policy",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "policy",
        "version": "v1",
        "fields": [
          "apiVersion",
          "deleteOptions",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.policy.v1.Eviction"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.policy.v1.Eviction"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodDisruptionBudget",
      "type": "api_object",
      "title": "PodDisruptionBudget",
      "summary": "PodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods",
      "body": "A policy that defines the maximum number of pods that can be disrupted simultaneously, ensuring high availability and reliability.\n\n**Why it matters**\nPodDisruptionBudget ensures applications remain available even during maintenance or upgrades by limiting the number of pods that can be disrupted at any given time.\n\n**Key facts**\n- Defined in io.k8s.api.policy.v1.PodDisruptionBudget\n- Used to define maximum pod disruptions for high availability",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "policy",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "policy",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.policy.v1.PodDisruptionBudget"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.policy.v1.PodDisruptionBudget"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodDisruptionBudgetList",
      "type": "api_object",
      "title": "PodDisruptionBudgetList",
      "summary": "PodDisruptionBudgetList is a collection of PodDisruptionBudgets.",
      "body": "A list of PodDisruptionBudget objects.\n\n**Why it matters**\nProvides a way to manage and monitor pod disruptions in a Kubernetes cluster.\n\n**Key facts**\n- Represents a collection of PodDisruptionBudget objects.\n- Used for monitoring and managing pod disruptions.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "policy",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "policy",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.policy.v1.PodDisruptionBudgetList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.policy.v1.PodDisruptionBudgetList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodDisruptionBudgetSpec",
      "type": "api_object",
      "title": "PodDisruptionBudgetSpec",
      "summary": "PodDisruptionBudgetSpec is a description of a PodDisruptionBudget.",
      "body": "The specification of the desired behavior for a PodDisruptionBudget.\n\n**Why it matters**\nDefines the configuration for a PodDisruptionBudget object.\n\n**Key facts**\n- Specifies the maximum number of pods that can be disrupted at any given time.\n- Configures the minimum available ratio of pods to total pods.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "policy",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "policy",
        "version": "v1",
        "fields": [
          "maxUnavailable",
          "minAvailable",
          "selector",
          "unhealthyPodEvictionPolicy"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.policy.v1.PodDisruptionBudgetSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.policy.v1.PodDisruptionBudgetSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodDisruptionBudgetStatus",
      "type": "api_object",
      "title": "PodDisruptionBudgetStatus",
      "summary": "PodDisruptionBudgetStatus represents information about the status of a PodDisruptionBudget. Status may trail the actual state of a system.",
      "body": "The current status of a PodDisruptionBudget.\n\n**Why it matters**\nProvides information about the current state of a PodDisruptionBudget object.\n\n**Key facts**\n- Reports on the number of unavailable and available pods.\n- Indicates whether the PodDisruptionBudget is satisfied or not.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "policy",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "policy",
        "version": "v1",
        "fields": [
          "conditions",
          "currentHealthy",
          "desiredHealthy",
          "disruptedPods",
          "disruptionsAllowed",
          "expectedPods",
          "observedGeneration"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.policy.v1.PodDisruptionBudgetStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.policy.v1.PodDisruptionBudgetStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:AggregationRule",
      "type": "api_object",
      "title": "AggregationRule",
      "summary": "AggregationRule describes how to locate ClusterRoles to aggregate into the ClusterRole",
      "body": "A rule that aggregates multiple roles and clusterroles into a single role.\n\n**Why it matters**\nAllows for the creation of custom roles by combining existing ones.\n\n**Key facts**\n- Combines multiple roles and clusterroles into a single role.\n- Used to create custom roles in Kubernetes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "clusterRoleSelectors"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.rbac.v1.AggregationRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.AggregationRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ClusterRole",
      "type": "api_object",
      "title": "ClusterRole",
      "summary": "ClusterRole is a cluster level, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding or ClusterRoleBinding.",
      "body": "A ClusterRole is a set of permissions that can be applied to a cluster.\n\n**Why it matters**\nClusterRoles define what actions can be performed on a cluster, enabling fine-grained access control.\n\n**Key facts**\n- Defined in the RBAC API (io.k8s.api.rbac.v1.ClusterRole)\n- Can be used to grant permissions to users or service accounts\n\n**Common pitfalls**\n- Care must be taken when granting ClusterRoles, as they can have far-reaching implications for cluster security\n- Inadequate ClusterRole definitions can lead to over-permissioning and increased risk of unauthorized access\n\n**Related**\nClusterRoleBinding, ServiceAccount, User",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "aggregationRule",
          "apiVersion",
          "kind",
          "metadata",
          "rules"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.rbac.v1.ClusterRole"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.ClusterRole"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ClusterRoleBinding",
      "type": "api_object",
      "title": "ClusterRoleBinding",
      "summary": "ClusterRoleBinding references a ClusterRole, but not contain it.  It can reference a ClusterRole in the global namespace, and adds who information via Subject.",
      "body": "A ClusterRoleBinding is a binding between a ClusterRole and a user or service account.\n\n**Why it matters**\nClusterRoleBindings enable the application of ClusterRoles to specific users or service accounts, enhancing access control.\n\n**Key facts**\n- Defined in the RBAC API (io.k8s.api.rbac.v1.ClusterRoleBinding)\n- Links a ClusterRole to a user or service account\n\n**Common pitfalls**\n- Incorrectly configured ClusterRoleBindings can lead to unauthorized access\n- Inadequate monitoring of ClusterRoleBindings can result in undetected security issues\n\n**Related**\nClusterRole, ServiceAccount, User",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "roleRef",
          "subjects"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.rbac.v1.ClusterRoleBinding"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.ClusterRoleBinding"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ClusterRoleBindingList",
      "type": "api_object",
      "title": "ClusterRoleBindingList",
      "summary": "ClusterRoleBindingList is a collection of ClusterRoleBindings",
      "body": "A list of ClusterRoleBindings, used for retrieving multiple bindings.\n\n**Why it matters**\nClusterRoleBindingLists provide a way to manage and view multiple ClusterRoleBindings in one operation.\n\n**Key facts**\n- Defined in the RBAC API (io.k8s.api.rbac.v1.ClusterRoleBindingList)\n- Used for retrieving multiple ClusterRoleBindings\n\n**Common pitfalls**\n- Care must be taken when managing large numbers of ClusterRoleBindings\n- Inadequate monitoring of ClusterRoleBindingLists can result in undetected security issues\n\n**Related**\nClusterRoleBinding, List",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.rbac.v1.ClusterRoleBindingList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.ClusterRoleBindingList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ClusterRoleList",
      "type": "api_object",
      "title": "ClusterRoleList",
      "summary": "ClusterRoleList is a collection of ClusterRoles",
      "body": "A list of ClusterRoles, used for retrieving multiple roles.\n\n**Why it matters**\nClusterRoleLists provide a way to manage and view multiple ClusterRoles in one operation.\n\n**Key facts**\n- Defined in the RBAC API (io.k8s.api.rbac.v1.ClusterRoleList)\n- Used for retrieving multiple ClusterRoles\n\n**Common pitfalls**\n- Care must be taken when managing large numbers of ClusterRoles\n- Inadequate monitoring of ClusterRoleLists can result in undetected security issues\n\n**Related**\nClusterRole, List",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.rbac.v1.ClusterRoleList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.ClusterRoleList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PolicyRule",
      "type": "api_object",
      "title": "PolicyRule",
      "summary": "PolicyRule holds information that describes a policy rule, but does not contain information about who the rule applies to or which namespace the rule applies to.",
      "body": "A PolicyRule is an object that defines a set of permissions for a user or group.\n\n**Why it matters**\nPolicyRules are used to control access to cluster resources and ensure security.\n\n**Key facts**\n- Defined in io.k8s.api.rbac.v1.PolicyRule\n- Specifies permissions for users or groups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "apiGroups",
          "nonResourceURLs",
          "resourceNames",
          "resources",
          "verbs"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.rbac.v1.PolicyRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.PolicyRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Role",
      "type": "api_object",
      "title": "Role",
      "summary": "Role is a namespaced, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding.",
      "body": "A Role is an object that defines a set of permissions for a user or group.\n\n**Why it matters**\nRoles are used to simplify permission management and reduce the number of PolicyRules needed.\n\n**Key facts**\n- Defined in io.k8s.api.rbac.v1.Role\n- Specifies a set of permissions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "rules"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.rbac.v1.Role"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.Role"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RoleBinding",
      "type": "api_object",
      "title": "RoleBinding",
      "summary": "RoleBinding references a role, but does not contain it.  It can reference a Role in the same namespace or a ClusterRole in the global namespace. It adds who information via Subjects and namespace information by which namespace it exists in.  RoleBindings in a given namespace only have effect in that namespace.",
      "body": "A RoleBinding is an object that binds a Role to a user or group.\n\n**Why it matters**\nRoleBindings are used to assign Roles to users or groups, enabling access to cluster resources.\n\n**Key facts**\n- Defined in io.k8s.api.rbac.v1.RoleBinding\n- Binds a Role to a user or group",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "roleRef",
          "subjects"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.rbac.v1.RoleBinding"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.RoleBinding"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RoleBindingList",
      "type": "api_object",
      "title": "RoleBindingList",
      "summary": "RoleBindingList is a collection of RoleBindings",
      "body": "A RoleBindingList is an object that contains a list of RoleBindings.\n\n**Why it matters**\nRoleBindingLists are used to manage multiple RoleBindings and simplify cluster resource access.\n\n**Key facts**\n- Defined in io.k8s.api.rbac.v1.RoleBindingList\n- Contains a list of RoleBindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.rbac.v1.RoleBindingList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.RoleBindingList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RoleList",
      "type": "api_object",
      "title": "RoleList",
      "summary": "A RoleList is an API object that represents a list of roles in a Kubernetes cluster.",
      "body": "A RoleList is an API object that represents a list of roles in a Kubernetes cluster.\n\n**Why it matters**\nRoles define permissions for users, groups, or service accounts to access resources within the cluster.\n\n**Key facts**\n- A RoleList is a collection of Role objects\n- Roles are used to manage access control and permissions\n\n**Common pitfalls**\n- Incorrectly configured roles can lead to security vulnerabilities\n\n**Related**\napi:Role, api:ClusterRole",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.rbac.v1.RoleList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.RoleList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RoleRef",
      "type": "api_object",
      "title": "RoleRef",
      "summary": "RoleRef contains information that points to the role being used",
      "body": "A RoleRef is an API object that references a role in a Kubernetes cluster.\n\n**Why it matters**\nRoleRefs are used to bind roles to users, groups, or service accounts.\n\n**Key facts**\n- A RoleRef contains a reference to a Role object\n- RoleRefs are used for access control and permissions\n\n**Common pitfalls**\n- Incorrectly configured RoleRefs can lead to security vulnerabilities\n\n**Related**\napi:Role, api:Subject",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "rbac",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "rbac",
        "version": "v1",
        "fields": [
          "apiGroup",
          "kind",
          "name"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.rbac.v1.RoleRef"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.RoleRef"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:AllocatedDeviceStatus",
      "type": "api_object",
      "title": "AllocatedDeviceStatus",
      "summary": "AllocatedDeviceStatus contains the status of an allocated device, if the driver chooses to report it. This may include driver-specific information.\n\nThe combination of Driver, Pool, Device, and ShareID must match the corresponding key in Status.Allocation.Devices.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "conditions",
          "data",
          "device",
          "driver",
          "networkData",
          "pool",
          "shareID"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.resource.v1.AllocatedDeviceStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.AllocatedDeviceStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.AllocatedDeviceStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.AllocatedDeviceStatus"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:AllocationResult",
      "type": "api_object",
      "title": "AllocationResult",
      "summary": "AllocationResult contains attributes of an allocated resource.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "allocationTimestamp",
          "devices",
          "nodeSelector"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.AllocationResult"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.AllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.AllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.AllocationResult"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:CELDeviceSelector",
      "type": "api_object",
      "title": "CELDeviceSelector",
      "summary": "CELDeviceSelector contains a CEL expression for selecting a device.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "expression"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.resource.v1.CELDeviceSelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CELDeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CELDeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CELDeviceSelector"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:CapacityRequestPolicy",
      "type": "api_object",
      "title": "CapacityRequestPolicy",
      "summary": "CapacityRequestPolicy defines how requests consume device capacity.\n\nMust not set more than one ValidRequestValues.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "default",
          "validRange",
          "validValues"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.CapacityRequestPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CapacityRequestPolicy"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CapacityRequestPolicy"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CapacityRequestPolicy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:CapacityRequestPolicyRange",
      "type": "api_object",
      "title": "CapacityRequestPolicyRange",
      "summary": "CapacityRequestPolicyRange defines a valid range for consumable capacity values.\n\n  - If the requested amount is less than Min, it is rounded up to the Min value.\n  - If Step is set and the requested amount is between Min and Max but not aligned with Step,\n    it will be rounded up to the next value equal to Min + (n * Step).\n  - If Step is not set, the requested amount is used as-is if it falls within the range Min to Max (if set).\n  - If the requested or rounded amount exceeds Max (if set), the request does not satisfy the policy,\n    and the device cannot be allocated.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "max",
          "min",
          "step"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.CapacityRequestPolicyRange"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CapacityRequestPolicyRange"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CapacityRequestPolicyRange"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CapacityRequestPolicyRange"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:CapacityRequirements",
      "type": "api_object",
      "title": "CapacityRequirements",
      "summary": "CapacityRequirements defines the capacity requirements for a specific device request.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "requests"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.resource.v1.CapacityRequirements"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CapacityRequirements"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CapacityRequirements"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CapacityRequirements"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:Counter",
      "type": "api_object",
      "title": "Counter",
      "summary": "Counter describes a quantity associated with a device.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "value"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.resource.v1.Counter"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.Counter"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.Counter"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.Counter"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:CounterSet",
      "type": "api_object",
      "title": "CounterSet",
      "summary": "CounterSet defines a named set of counters that are available to be used by devices defined in the ResourcePool.\n\nThe counters are not allocatable by themselves, but can be referenced by devices. When a device is allocated, the portion of counters it uses will no longer be available for use by other devices.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "counters",
          "name"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.resource.v1.CounterSet"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CounterSet"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CounterSet"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CounterSet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:Device",
      "type": "api_object",
      "title": "Device",
      "summary": "Device represents one individual hardware instance that can be selected based on its attributes. Besides the name, exactly one field must be set.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "allNodes",
          "allowMultipleAllocations",
          "attributes",
          "bindingConditions",
          "bindingFailureConditions",
          "bindsToNode",
          "capacity",
          "consumesCounters",
          "name",
          "nodeAllocatableResourceMappings",
          "nodeName",
          "nodeSelector",
          "taints"
        ],
        "field_count": 13,
        "def_name": "io.k8s.api.resource.v1.Device"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.Device"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.Device"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.Device"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceAllocationConfiguration",
      "type": "api_object",
      "title": "DeviceAllocationConfiguration",
      "summary": "DeviceAllocationConfiguration gets embedded in an AllocationResult.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "opaque",
          "requests",
          "source"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.DeviceAllocationConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceAllocationConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceAllocationConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceAllocationConfiguration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceAllocationResult",
      "type": "api_object",
      "title": "DeviceAllocationResult",
      "summary": "DeviceAllocationResult is the result of allocating devices.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "config",
          "results"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.resource.v1.DeviceAllocationResult"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceAllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceAllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceAllocationResult"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceAttribute",
      "type": "api_object",
      "title": "DeviceAttribute",
      "summary": "DeviceAttribute must have exactly one field set.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "bool",
          "bools",
          "int",
          "ints",
          "string",
          "strings",
          "version",
          "versions"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.resource.v1.DeviceAttribute"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceAttribute"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceAttribute"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceAttribute"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceCapacity",
      "type": "api_object",
      "title": "DeviceCapacity",
      "summary": "DeviceCapacity describes a quantity associated with a device.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "requestPolicy",
          "value"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.resource.v1.DeviceCapacity"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceCapacity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceCapacity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceCapacity"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceClaim",
      "type": "api_object",
      "title": "DeviceClaim",
      "summary": "DeviceClaim defines how to request devices with a ResourceClaim.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "config",
          "constraints",
          "requests"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.DeviceClaim"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClaim"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClaim"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClaim"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceClaimConfiguration",
      "type": "api_object",
      "title": "DeviceClaimConfiguration",
      "summary": "DeviceClaimConfiguration is used for configuration parameters in DeviceClaim.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "opaque",
          "requests"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.resource.v1.DeviceClaimConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClaimConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClaimConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClaimConfiguration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceClass",
      "type": "api_object",
      "title": "DeviceClass",
      "summary": "DeviceClass is a vendor- or admin-provided resource that contains device configuration and selectors. It can be referenced in the device requests of a claim to apply these presets. Cluster scoped.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1.DeviceClass"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClass"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClass"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClass"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceClassConfiguration",
      "type": "api_object",
      "title": "DeviceClassConfiguration",
      "summary": "DeviceClassConfiguration is used in DeviceClass.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "opaque"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.resource.v1.DeviceClassConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClassConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClassConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClassConfiguration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceClassList",
      "type": "api_object",
      "title": "DeviceClassList",
      "summary": "DeviceClassList is a collection of classes.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1.DeviceClassList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClassList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClassList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClassList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceClassSpec",
      "type": "api_object",
      "title": "DeviceClassSpec",
      "summary": "DeviceClassSpec is used in a [DeviceClass] to define what can be allocated and how to configure it.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "config",
          "extendedResourceName",
          "selectors"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.DeviceClassSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClassSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClassSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClassSpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceConstraint",
      "type": "api_object",
      "title": "DeviceConstraint",
      "summary": "DeviceConstraint must have exactly one field set besides Requests.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "distinctAttribute",
          "matchAttribute",
          "requests"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.DeviceConstraint"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceConstraint"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceConstraint"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceConstraint"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceCounterConsumption",
      "type": "api_object",
      "title": "DeviceCounterConsumption",
      "summary": "DeviceCounterConsumption defines a set of counters that a device will consume from a CounterSet.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "counterSet",
          "counters"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.resource.v1.DeviceCounterConsumption"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceCounterConsumption"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceCounterConsumption"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceCounterConsumption"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceRequest",
      "type": "api_object",
      "title": "DeviceRequest",
      "summary": "DeviceRequest is a request for devices required for a claim. This is typically a request for a single resource like a device, but can also ask for several identical devices. With FirstAvailable it is also possible to provide a prioritized list of requests.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "exactly",
          "firstAvailable",
          "name"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.DeviceRequest"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceRequest"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceRequestAllocationResult",
      "type": "api_object",
      "title": "DeviceRequestAllocationResult",
      "summary": "DeviceRequestAllocationResult contains the allocation result for one request.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "adminAccess",
          "bindingConditions",
          "bindingFailureConditions",
          "consumedCapacity",
          "device",
          "driver",
          "pool",
          "request",
          "shareID",
          "tolerations"
        ],
        "field_count": 10,
        "def_name": "io.k8s.api.resource.v1.DeviceRequestAllocationResult"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceRequestAllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceRequestAllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceRequestAllocationResult"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceSelector",
      "type": "api_object",
      "title": "DeviceSelector",
      "summary": "DeviceSelector must have exactly one field set.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "cel"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.resource.v1.DeviceSelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceSelector"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceSubRequest",
      "type": "api_object",
      "title": "DeviceSubRequest",
      "summary": "DeviceSubRequest describes a request for device provided in the claim.spec.devices.requests[].firstAvailable array. Each is typically a request for a single resource like a device, but can also ask for several identical devices.\n\nDeviceSubRequest is similar to ExactDeviceRequest, but doesn't expose the AdminAccess field as that one is only supported when requesting a specific device.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "allocationMode",
          "capacity",
          "count",
          "deviceClassName",
          "name",
          "selectors",
          "tolerations"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.resource.v1.DeviceSubRequest"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceSubRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceSubRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceSubRequest"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceTaint",
      "type": "api_object",
      "title": "DeviceTaint",
      "summary": "The device this taint is attached to has the \"effect\" on any claim which does not tolerate the taint and, through the claim, to pods using the claim.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "effect",
          "key",
          "timeAdded",
          "value"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1.DeviceTaint"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaint"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaint"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceTaint"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaint"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceTaintRule",
      "type": "api_object",
      "title": "DeviceTaintRule",
      "summary": "DeviceTaintRule adds one taint to all devices which match the selector. This has the same effect as if the taint was specified directly in the ResourceSlice by the DRA driver.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.resource.v1.DeviceTaintRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaintRule"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaintRule"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaintRule"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceTaintRuleList",
      "type": "api_object",
      "title": "DeviceTaintRuleList",
      "summary": "DeviceTaintRuleList is a collection of DeviceTaintRules.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1.DeviceTaintRuleList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaintRuleList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaintRuleList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaintRuleList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceTaintRuleSpec",
      "type": "api_object",
      "title": "DeviceTaintRuleSpec",
      "summary": "DeviceTaintRuleSpec specifies the selector and one taint.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "deviceSelector",
          "taint"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.resource.v1.DeviceTaintRuleSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaintRuleSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaintRuleSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaintRuleSpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceTaintRuleStatus",
      "type": "api_object",
      "title": "DeviceTaintRuleStatus",
      "summary": "DeviceTaintRuleStatus provides information about an on-going pod eviction.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "conditions"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.resource.v1.DeviceTaintRuleStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaintRuleStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaintRuleStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaintRuleStatus"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceTaintSelector",
      "type": "api_object",
      "title": "DeviceTaintSelector",
      "summary": "DeviceTaintSelector defines which device(s) a DeviceTaintRule applies to. The empty selector matches all devices. Without a selector, no devices are matched.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "device",
          "driver",
          "pool"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.DeviceTaintSelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaintSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaintSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaintSelector"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:DeviceToleration",
      "type": "api_object",
      "title": "DeviceToleration",
      "summary": "The ResourceClaim this DeviceToleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "effect",
          "key",
          "operator",
          "tolerationSeconds",
          "value"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.resource.v1.DeviceToleration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceToleration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceToleration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceToleration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ExactDeviceRequest",
      "type": "api_object",
      "title": "ExactDeviceRequest",
      "summary": "ExactDeviceRequest is a request for one or more identical devices.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "adminAccess",
          "allocationMode",
          "capacity",
          "count",
          "deviceClassName",
          "selectors",
          "tolerations"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.resource.v1.ExactDeviceRequest"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ExactDeviceRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ExactDeviceRequest"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:NetworkDeviceData",
      "type": "api_object",
      "title": "NetworkDeviceData",
      "summary": "NetworkDeviceData provides network-related details for the allocated device. This information may be filled by drivers or other components to configure or identify the device within a network context.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "hardwareAddress",
          "interfaceName",
          "ips"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.NetworkDeviceData"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.NetworkDeviceData"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.NetworkDeviceData"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.NetworkDeviceData"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:NodeAllocatableResourceMapping",
      "type": "api_object",
      "title": "NodeAllocatableResourceMapping",
      "summary": "NodeAllocatableResourceMapping defines the translation between the DRA device/capacity units requested to the corresponding quantity of the node allocatable resource.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "allocationMultiplier",
          "capacityKey"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.resource.v1.NodeAllocatableResourceMapping"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.NodeAllocatableResourceMapping"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.NodeAllocatableResourceMapping"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.NodeAllocatableResourceMapping"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:OpaqueDeviceConfiguration",
      "type": "api_object",
      "title": "OpaqueDeviceConfiguration",
      "summary": "OpaqueDeviceConfiguration contains configuration parameters for a driver in a format defined by the driver vendor.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "driver",
          "parameters"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.resource.v1.OpaqueDeviceConfiguration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.OpaqueDeviceConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.OpaqueDeviceConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.OpaqueDeviceConfiguration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceClaimConsumerReference",
      "type": "api_object",
      "title": "ResourceClaimConsumerReference",
      "summary": "ResourceClaimConsumerReference contains enough information to let you locate the consumer of a ResourceClaim. The user must be a resource in the same namespace as the ResourceClaim.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "apiGroup",
          "name",
          "resource",
          "uid"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1.ResourceClaimConsumerReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimConsumerReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimConsumerReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimConsumerReference"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceClaimList",
      "type": "api_object",
      "title": "ResourceClaimList",
      "summary": "ResourceClaimList is a collection of claims.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1.ResourceClaimList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceClaimSpec",
      "type": "api_object",
      "title": "ResourceClaimSpec",
      "summary": "ResourceClaimSpec defines what is being requested in a ResourceClaim and how to configure it.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "devices"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.resource.v1.ResourceClaimSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimSpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceClaimStatus",
      "type": "api_object",
      "title": "ResourceClaimStatus",
      "summary": "ResourceClaimStatus tracks whether the resource has been allocated and what the result of that was.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "allocation",
          "devices",
          "reservedFor"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.ResourceClaimStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimStatus"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceClaimTemplate",
      "type": "api_object",
      "title": "ResourceClaimTemplate",
      "summary": "ResourceClaimTemplate is used to produce ResourceClaim objects.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1.ResourceClaimTemplate"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimTemplate"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimTemplate"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimTemplate"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceClaimTemplateList",
      "type": "api_object",
      "title": "ResourceClaimTemplateList",
      "summary": "ResourceClaimTemplateList is a collection of claim templates.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1.ResourceClaimTemplateList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimTemplateList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimTemplateList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimTemplateList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceClaimTemplateSpec",
      "type": "api_object",
      "title": "ResourceClaimTemplateSpec",
      "summary": "ResourceClaimTemplateSpec contains the metadata and fields for a ResourceClaim.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "metadata",
          "spec"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.resource.v1.ResourceClaimTemplateSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimTemplateSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimTemplateSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimTemplateSpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourcePool",
      "type": "api_object",
      "title": "ResourcePool",
      "summary": "ResourcePool describes the pool that ResourceSlices belong to.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "generation",
          "name",
          "resourceSliceCount"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1.ResourcePool"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourcePool"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourcePool"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourcePool"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceSlice",
      "type": "api_object",
      "title": "ResourceSlice",
      "summary": "ResourceSlice represents one or more resources in a pool of similar resources, managed by a common driver. A pool may span more than one ResourceSlice, and exactly how many ResourceSlices comprise a pool is determined by the driver.\n\nAt the moment, the only supported resources are devices with attributes and capacities. Each device in a given pool, regardless of how many ResourceSlices, must have a unique name. The ResourceSlice in which a device gets published may change over time. The unique identifier for a device is the tuple <driver name>, <pool name>, <device name>.\n\nWhenever a driver needs to update a pool, it increments the pool.Spec.Pool.Generation number and updates all ResourceSlices with that new number and new resource definitions. A consumer must only use ResourceSlices with the highest generation number and ignore all others.\n\nWhen allocating all resources in a pool matching certain criteria or when looking for the best solution among several different alternatives, a consumer should check the number of ResourceSlices in a pool (included in each ResourceSlice) to determine whether its view of a pool is complete and if not, should wait until the driver has completed updating the pool.\n\nFor resources that are not local to a node, the node name is not set. Instead, the driver may use a node selector to specify where the devices are available.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1.ResourceSlice"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceSlice"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceSlice"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceSlice"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceSliceList",
      "type": "api_object",
      "title": "ResourceSliceList",
      "summary": "ResourceSliceList is a collection of ResourceSlices.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1.ResourceSliceList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceSliceList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceSliceList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceSliceList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:ResourceSliceSpec",
      "type": "api_object",
      "title": "ResourceSliceSpec",
      "summary": "ResourceSliceSpec contains the information published by the driver in one ResourceSlice.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1",
        "fields": [
          "allNodes",
          "devices",
          "driver",
          "nodeName",
          "nodeSelector",
          "perDeviceNodeSelection",
          "pool",
          "sharedCounters"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.resource.v1.ResourceSliceSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceSliceSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceSliceSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceSliceSpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:PoolStatus",
      "type": "api_object",
      "title": "PoolStatus",
      "summary": "PoolStatus contains status information for a single resource pool.",
      "body": "Represents the status of a resource pool in Kubernetes.\n\n**Why it matters**\nIt provides information about the current state of a resource pool.\n\n**Key facts**\n- Contains details about the pool's capacity and utilization\n- Used to track changes in pool resources\n\n**Common pitfalls**\n- Misinterpretation of status values can lead to incorrect decisions\n\n**Related**\nResource Pools",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1alpha3",
        "fields": [
          "allocatedDevices",
          "availableDevices",
          "driver",
          "generation",
          "nodeName",
          "poolName",
          "resourceSliceCount",
          "totalDevices",
          "unavailableDevices",
          "validationError"
        ],
        "field_count": 10,
        "def_name": "io.k8s.api.resource.v1alpha3.PoolStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.PoolStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourcePoolStatusRequest",
      "type": "api_object",
      "title": "ResourcePoolStatusRequest",
      "summary": "ResourcePoolStatusRequest triggers a one-time calculation of resource pool status based on the provided filters. Once status is set, the request is considered complete and will not be reprocessed. Users should delete and recreate requests to get updated information.",
      "body": "A request for the status of a resource pool.\n\n**Why it matters**\nIt enables users to retrieve up-to-date information about pool resources.\n\n**Key facts**\n- Sent to the API server to retrieve pool status\n- Can be used in conjunction with PoolStatus\n\n**Common pitfalls**\n- Incorrectly formatted requests can lead to errors or inconsistencies\n\n**Related**\nResource Pools",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1alpha3",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequest"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequest"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourcePoolStatusRequestList",
      "type": "api_object",
      "title": "ResourcePoolStatusRequestList",
      "summary": "ResourcePoolStatusRequestList is a collection of ResourcePoolStatusRequests.",
      "body": "A list of resource pool status requests.\n\n**Why it matters**\nIt allows for batch retrieval of pool status information.\n\n**Key facts**\n- Contains multiple ResourcePoolStatusRequest objects\n- Used to retrieve status updates for multiple pools\n\n**Common pitfalls**\n- Overloading the API server with excessive requests can lead to performance issues\n\n**Related**\nResource Pools",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1alpha3",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequestList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequestList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourcePoolStatusRequestSpec",
      "type": "api_object",
      "title": "ResourcePoolStatusRequestSpec",
      "summary": "ResourcePoolStatusRequestSpec defines the filters for the pool status request.",
      "body": "Represents a request for resource pool status.\n\n**Why it matters**\nThis object is used to request the status of a resource pool, enabling users to monitor and manage their resources effectively.\n\n**Key facts**\n- Defined in io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequestSpec (source: swagger.json)\n- Used for requesting resource pool status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1alpha3",
        "fields": [
          "driver",
          "limit",
          "poolName"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequestSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequestSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ResourcePoolStatusRequestStatus",
      "type": "api_object",
      "title": "ResourcePoolStatusRequestStatus",
      "summary": "ResourcePoolStatusRequestStatus contains the calculated pool status information.",
      "body": "Represents the response to a request for resource pool status.\n\n**Why it matters**\nThis object provides the actual status of a resource pool, allowing users to make informed decisions about their resources.\n\n**Key facts**\n- Defined in io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequestStatus (source: swagger.json)\n- Contains the actual status of a resource pool",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1alpha3",
        "fields": [
          "conditions",
          "poolCount",
          "pools"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequestStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequestStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:BasicDevice",
      "type": "api_object",
      "title": "BasicDevice",
      "summary": "BasicDevice defines one device instance.",
      "body": "Represents a basic device in Kubernetes.\n\n**Why it matters**\nUsed to describe a basic device's properties, such as its name and type.\n\n**Key facts**\n- Defined in io.k8s.api.resource.v1beta1.BasicDevice\n- Part of the Kubernetes API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "resource"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "resource",
        "version": "v1beta1",
        "fields": [
          "allNodes",
          "allowMultipleAllocations",
          "attributes",
          "bindingConditions",
          "bindingFailureConditions",
          "bindsToNode",
          "capacity",
          "consumesCounters",
          "nodeAllocatableResourceMappings",
          "nodeName",
          "nodeSelector",
          "taints"
        ],
        "field_count": 12,
        "def_name": "io.k8s.api.resource.v1beta1.BasicDevice"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.BasicDevice"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PriorityClass",
      "type": "api_object",
      "title": "PriorityClass",
      "summary": "PriorityClass defines mapping from a priority class name to the priority integer value. The value can be any valid integer.",
      "body": "A class that defines the priority of pods in Kubernetes.\n\n**Why it matters**\nDetermines the scheduling priority of pods within a cluster.\n\n**Key facts**\n- Defines the priority of pods\n- Used for scheduling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1",
        "fields": [
          "apiVersion",
          "description",
          "globalDefault",
          "kind",
          "metadata",
          "preemptionPolicy",
          "value"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.scheduling.v1.PriorityClass"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1.PriorityClass"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PriorityClassList",
      "type": "api_object",
      "title": "PriorityClassList",
      "summary": "PriorityClassList is a collection of priority classes.",
      "body": "A list of PriorityClasses in Kubernetes.\n\n**Why it matters**\nProvides a collection of available PriorityClasses.\n\n**Key facts**\n- Contains multiple PriorityClasses\n- Used for scheduling",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.scheduling.v1.PriorityClassList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1.PriorityClassList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:AllDisruptionMode",
      "type": "api_object",
      "title": "AllDisruptionMode",
      "summary": "AllDisruptionMode specifies that children can only be disrupted together.",
      "body": "A disruption mode that allows all pods to be evicted in Kubernetes.\n\n**Why it matters**\nEnsures maximum flexibility during cluster upgrades or maintenance.\n\n**Key facts**\n- Allows all pods to be evicted\n- Used for cluster management",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.api.scheduling.v1alpha3.AllDisruptionMode"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.AllDisruptionMode"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:BasicSchedulingPolicy",
      "type": "api_object",
      "title": "BasicSchedulingPolicy",
      "summary": "BasicSchedulingPolicy indicates that standard Kubernetes scheduling behavior should be used.",
      "body": "A basic scheduling policy in Kubernetes, represented by the io.k8s.api.scheduling.v1alpha3.BasicSchedulingPolicy type.\n\n**Why it matters**\nProvides a simple way to define scheduling rules for pods.\n\n**Key facts**\n- Defined in the Scheduling API\n- Used to specify basic scheduling rules\n\n**Common pitfalls**\n- Limited flexibility compared to composite policies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.api.scheduling.v1alpha3.BasicSchedulingPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.BasicSchedulingPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CompositeBasicSchedulingPolicy",
      "type": "api_object",
      "title": "CompositeBasicSchedulingPolicy",
      "summary": "CompositeBasicSchedulingPolicy indicates that the groups belonging to the composite group should be scheduled independently.",
      "body": "A composite basic scheduling policy in Kubernetes, represented by the io.k8s.api.scheduling.v1alpha3.CompositeBasicSchedulingPolicy type.\n\n**Why it matters**\nAllows for more complex scheduling rules to be defined by combining multiple basic policies.\n\n**Key facts**\n- Combines multiple basic policies\n- Provides more flexibility than basic policies\n\n**Common pitfalls**\n- Can become complex and difficult to manage\n\n**Related**\napi:BasicSchedulingPolicy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.api.scheduling.v1alpha3.CompositeBasicSchedulingPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositeBasicSchedulingPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CompositeGangSchedulingPolicy",
      "type": "api_object",
      "title": "CompositeGangSchedulingPolicy",
      "summary": "CompositeGangSchedulingPolicy indicates that the groups belonging to the composite group should be scheduled using all-or-nothing semantics.",
      "body": "A composite gang scheduling policy in Kubernetes, represented by the io.k8s.api.scheduling.v1alpha3.CompositeGangSchedulingPolicy type.\n\n**Why it matters**\nEnables gang scheduling, where multiple pods are scheduled together as a group.\n\n**Key facts**\n- Used for gang scheduling\n- Combines multiple policies to schedule pods in groups\n\n**Common pitfalls**\n- Requires careful configuration to avoid conflicts\n\n**Related**\napi:CompositeBasicSchedulingPolicy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "minGroupCount"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.scheduling.v1alpha3.CompositeGangSchedulingPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositeGangSchedulingPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CompositePodGroup",
      "type": "api_object",
      "title": "CompositePodGroup",
      "summary": "CompositePodGroup represents a runtime instance of pod groups grouped together. CompositePodGroups are created by workload controllers (LWS, JobSet, etc...) from Workload.compositePodGroupTemplates. CompositePodGroup API enablement is toggled by the CompositePodGroup feature gate.",
      "body": "A composite pod group in Kubernetes, represented by the io.k8s.api.scheduling.v1alpha3.CompositePodGroup type.\n\n**Why it matters**\nAllows for grouping of pods based on scheduling policies and other criteria.\n\n**Key facts**\n- Used to group pods based on scheduling policies\n- Can be used with composite scheduling policies\n\n**Common pitfalls**\n- Requires careful configuration to avoid conflicts between groups\n\n**Related**\napi:CompositeGangSchedulingPolicy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.scheduling.v1alpha3.CompositePodGroup"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroup"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CompositePodGroupList",
      "type": "api_object",
      "title": "CompositePodGroupList",
      "summary": "CompositePodGroupList contains a list of CompositePodGroup resources.",
      "body": "A list of CompositePodGroups in the cluster.\n\n**Why it matters**\nThis API resource allows you to manage and retrieve lists of CompositePodGroups, enabling you to scale and orchestrate your workloads more efficiently.\n\n**Key facts**\n- Represents a collection of CompositePodGroup objects\n- Used for listing and retrieving CompositePodGroups\n\n**Common pitfalls**\n- May require careful configuration to avoid resource conflicts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CompositePodGroupSchedulingPolicy",
      "type": "api_object",
      "title": "CompositePodGroupSchedulingPolicy",
      "summary": "CompositePodGroupSchedulingPolicy defines the scheduling configuration for a CompositePodGroup. Exactly one policy must be set.",
      "body": "A policy that defines how pods are scheduled within a CompositePodGroup.\n\n**Why it matters**\nThis API resource enables you to define custom scheduling policies for your CompositePodGroups, allowing you to optimize resource allocation and improve workload performance.\n\n**Key facts**\n- Defines the scheduling behavior of pods in a CompositePodGroup\n- Can be used to implement custom scheduling strategies\n\n**Common pitfalls**\n- May require expertise in Kubernetes scheduling policies\n\n**Related**\nCompositePodGroupSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "basic",
          "gang"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupSchedulingPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupSchedulingPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CompositePodGroupSpec",
      "type": "api_object",
      "title": "CompositePodGroupSpec",
      "summary": "CompositePodGroupSpec defines the desired state of CompositePodGroup.",
      "body": "A specification for a CompositePodGroup, including its metadata and scheduling policy.\n\n**Why it matters**\nThis API resource allows you to define the configuration and behavior of your CompositePodGroups, enabling you to manage complex workloads with precision.\n\n**Key facts**\n- Contains metadata about the CompositePodGroup\n- Includes a reference to the CompositePodGroupSchedulingPolicy\n\n**Common pitfalls**\n- May require careful configuration to avoid resource conflicts\n\n**Related**\nCompositePodGroupStatus",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "parentCompositePodGroupName",
          "priority",
          "priorityClassName",
          "schedulingPolicy",
          "workloadRef"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CompositePodGroupStatus",
      "type": "api_object",
      "title": "CompositePodGroupStatus",
      "summary": "CompositePodGroupStatus represents information about the status of a composite pod group.",
      "body": "The current status of a CompositePodGroup, including its pod count and scheduling information.\n\n**Why it matters**\nThis API resource provides real-time visibility into the state of your CompositePodGroups, enabling you to monitor performance and troubleshoot issues more effectively.\n\n**Key facts**\n- Represents the current state of a CompositePodGroup\n- Includes pod count and scheduling information\n\n**Common pitfalls**\n- May require careful monitoring to detect anomalies\n\n**Related**\nCompositePodGroupSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "conditions"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CompositePodGroupTemplate",
      "type": "api_object",
      "title": "CompositePodGroupTemplate",
      "summary": "CompositePodGroupTemplate represents a template for a CompositePodGroup with a scheduling policy.",
      "body": "A CompositePodGroupTemplate is a template for creating composite pod groups.\n\n**Why it matters**\nIt allows for the creation of complex pod group structures.\n\n**Key facts**\n- Defined in io.k8s.api.scheduling.v1alpha3.CompositePodGroupTemplate",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "compositePodGroupTemplates",
          "name",
          "podGroupTemplates",
          "priority",
          "priorityClassName",
          "schedulingPolicy"
        ],
        "field_count": 6,
        "def_name": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupTemplate"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupTemplate"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DisruptionMode",
      "type": "api_object",
      "title": "DisruptionMode",
      "summary": "DisruptionMode defines how individual entities within a group can be disrupted. Exactly one mode can be set.",
      "body": "A DisruptionMode specifies how a pod group should be disrupted.\n\n**Why it matters**\nIt determines the behavior of a pod group during disruptions.\n\n**Key facts**\n- Defined in io.k8s.api.scheduling.v1alpha3.DisruptionMode",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "all",
          "single"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.scheduling.v1alpha3.DisruptionMode"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.DisruptionMode"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:GangSchedulingPolicy",
      "type": "api_object",
      "title": "GangSchedulingPolicy",
      "summary": "GangSchedulingPolicy defines the parameters for gang scheduling.",
      "body": "A GangSchedulingPolicy specifies the gang scheduling policy for a pod group.\n\n**Why it matters**\nIt enables gang scheduling for pod groups.\n\n**Key facts**\n- Defined in io.k8s.api.scheduling.v1alpha3.GangSchedulingPolicy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "minCount"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.scheduling.v1alpha3.GangSchedulingPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.GangSchedulingPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodGroup",
      "type": "api_object",
      "title": "PodGroup",
      "summary": "PodGroup represents a runtime instance of pods grouped together. PodGroups are created by workload controllers (Job, LWS, JobSet, etc...) from Workload.podGroupTemplates. PodGroup API enablement is toggled by the GenericWorkload feature gate.",
      "body": "A PodGroup is a group of pods that can be scheduled together.\n\n**Why it matters**\nIt allows for the scheduling of related pods as a single unit.\n\n**Key facts**\n- Defined in io.k8s.api.scheduling.v1alpha3.PodGroup",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.scheduling.v1alpha3.PodGroup"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroup"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodGroupList",
      "type": "api_object",
      "title": "PodGroupList",
      "summary": "PodGroupList contains a list of PodGroup resources.",
      "body": "A list of PodGroups, used to manage and schedule groups of pods.\n\n**Why it matters**\nPodGroupList enables efficient management of pod groups, allowing for better resource allocation and scheduling.\n\n**Key facts**\n- Represents a list of PodGroups in the API\n- Used for managing and scheduling groups of pods\n\n**Common pitfalls**\n- Incorrect usage can lead to inefficient resource allocation\n\n**Related**\nPodGroupResourceClaim, PodGroupSchedulingConstraints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.scheduling.v1alpha3.PodGroupList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodGroupResourceClaim",
      "type": "api_object",
      "title": "PodGroupResourceClaim",
      "summary": "PodGroupResourceClaim references exactly one ResourceClaim, either directly or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim for the PodGroup.\n\nIt adds a name to it that uniquely identifies the ResourceClaim inside the PodGroup. Pods that need access to the ResourceClaim define a matching reference in its own Spec.ResourceClaims. The Pod's claim must match all fields of the PodGroup's claim exactly.",
      "body": "A PodGroupResourceClaim represents a request for resources from a pod group.\n\n**Why it matters**\nPodGroupResourceClaim allows pods to request specific resources from their assigned pod groups.\n\n**Key facts**\n- Represents a resource claim made by a pod group\n- Used for requesting specific resources from the pod group\n\n**Common pitfalls**\n- Insufficient resource claims can lead to underutilization of resources\n\n**Related**\nPodGroupList, PodGroupSchedulingConstraints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "name",
          "resourceClaimName",
          "resourceClaimTemplateName"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.scheduling.v1alpha3.PodGroupResourceClaim"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupResourceClaim"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodGroupResourceClaimStatus",
      "type": "api_object",
      "title": "PodGroupResourceClaimStatus",
      "summary": "PodGroupResourceClaimStatus is stored in the PodGroupStatus for each PodGroupResourceClaim which references a ResourceClaimTemplate. It stores the generated name for the corresponding ResourceClaim.",
      "body": "The status of a PodGroupResourceClaim, indicating its current state.\n\n**Why it matters**\nPodGroupResourceClaimStatus provides visibility into the status of resource claims made by pod groups.\n\n**Key facts**\n- Represents the current status of a PodGroupResourceClaim\n- Used for monitoring and troubleshooting resource claims\n\n**Common pitfalls**\n- Misinterpretation of status can lead to incorrect decision-making\n\n**Related**\nPodGroupList, PodGroupSchedulingConstraints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "name",
          "resourceClaimName"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.scheduling.v1alpha3.PodGroupResourceClaimStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupResourceClaimStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodGroupSchedulingConstraints",
      "type": "api_object",
      "title": "PodGroupSchedulingConstraints",
      "summary": "PodGroupSchedulingConstraints defines scheduling constraints (e.g. topology) for a PodGroup.",
      "body": "A PodGroupSchedulingConstraints defines constraints for scheduling pods within a pod group.\n\n**Why it matters**\nPodGroupSchedulingConstraints enables fine-grained control over pod placement and resource allocation within pod groups.\n\n**Key facts**\n- Represents constraints for scheduling pods within a pod group\n- Used for controlling pod placement and resource allocation\n\n**Common pitfalls**\n- Incorrectly defined constraints can lead to inefficient resource utilization\n\n**Related**\nPodGroupList, PodGroupResourceClaim",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "topology"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.scheduling.v1alpha3.PodGroupSchedulingConstraints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupSchedulingConstraints"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodGroupSchedulingPolicy",
      "type": "api_object",
      "title": "PodGroupSchedulingPolicy",
      "summary": "PodGroupSchedulingPolicy defines the scheduling configuration for a PodGroup. Exactly one policy must be set. The policy is chosen at creation time by setting either the Basic or Gang field. The PodGroup may not change policy after creation. Fields within chosen policy may be updated after creation when their individual fields allow it.",
      "body": "A PodGroupSchedulingPolicy is an object that defines how pods are scheduled within a pod group.\n\n**Why it matters**\nIt allows for fine-grained control over pod placement and scheduling.\n\n**Key facts**\n- Defined in io.k8s.api.scheduling.v1alpha3.PodGroupSchedulingPolicy\n- Used to schedule pods within a pod group\n\n**Common pitfalls**\n- Incorrectly configured policies can lead to inefficient resource utilization\n\n**Related**\nPodGroupSpec, PodGroupStatus, PodGroupTemplate",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "basic",
          "gang"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.scheduling.v1alpha3.PodGroupSchedulingPolicy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupSchedulingPolicy"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodGroupSpec",
      "type": "api_object",
      "title": "PodGroupSpec",
      "summary": "PodGroupSpec defines the desired state of a PodGroup.",
      "body": "A PodGroupSpec is an object that defines the specification of a pod group.\n\n**Why it matters**\nIt provides a way to define the characteristics and requirements of a pod group.\n\n**Key facts**\n- Defined in io.k8s.api.scheduling.v1alpha3.PodGroupSpec\n- Includes metadata, selector, and scheduling policy\n\n**Common pitfalls**\n- Inadequate specification can lead to pod placement issues\n\n**Related**\nPodGroupSchedulingPolicy, PodGroupStatus, PodGroupTemplate",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "disruptionMode",
          "parentCompositePodGroupName",
          "preemptionPolicy",
          "priority",
          "priorityClassName",
          "resourceClaims",
          "schedulingConstraints",
          "schedulingPolicy",
          "workloadRef"
        ],
        "field_count": 9,
        "def_name": "io.k8s.api.scheduling.v1alpha3.PodGroupSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodGroupStatus",
      "type": "api_object",
      "title": "PodGroupStatus",
      "summary": "PodGroupStatus represents information about the status of a pod group.",
      "body": "A PodGroupStatus is an object that represents the current status of a pod group.\n\n**Why it matters**\nIt provides information about the state and health of a pod group.\n\n**Key facts**\n- Defined in io.k8s.api.scheduling.v1alpha3.PodGroupStatus\n- Includes conditions, phase, and other status-related fields\n\n**Common pitfalls**\n- Misinterpretation of status information can lead to incorrect decisions\n\n**Related**\nPodGroupSpec, PodGroupSchedulingPolicy, PodGroupTemplate",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "conditions",
          "resourceClaimStatuses"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.scheduling.v1alpha3.PodGroupStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:PodGroupTemplate",
      "type": "api_object",
      "title": "PodGroupTemplate",
      "summary": "PodGroupTemplate represents a template for a set of pods with a scheduling policy.",
      "body": "A PodGroupTemplate is an object that defines a template for creating pod groups.\n\n**Why it matters**\nIt allows for the creation of multiple pod groups from a single template.\n\n**Key facts**\n- Defined in io.k8s.api.scheduling.v1alpha3.PodGroupTemplate\n- Includes metadata, selector, and scheduling policy\n\n**Common pitfalls**\n- Incorrectly configured templates can lead to inefficient resource utilization\n\n**Related**\nPodGroupSpec, PodGroupStatus, PodGroupSchedulingPolicy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "disruptionMode",
          "name",
          "preemptionPolicy",
          "priority",
          "priorityClassName",
          "resourceClaims",
          "schedulingConstraints",
          "schedulingPolicy"
        ],
        "field_count": 8,
        "def_name": "io.k8s.api.scheduling.v1alpha3.PodGroupTemplate"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupTemplate"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SingleDisruptionMode",
      "type": "api_object",
      "title": "SingleDisruptionMode",
      "summary": "SingleDisruptionMode specifies that children can be disrupted independently.",
      "body": "Represents the maximum number of pods that can be disrupted at one time.\n\n**Why it matters**\nEnsures that a certain number of pods are not simultaneously affected by disruptions, such as node failures or maintenance.\n\n**Key facts**\n- Maximum number of pods to disrupt\n- Disruption mode for scheduling\n\n**Common pitfalls**\n- Insufficient disruption mode can lead to cascading failures\n- Incorrectly set disruption mode can cause pod delays\n\n**Related**\nPod Disruptions, Scheduling Strategies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.api.scheduling.v1alpha3.SingleDisruptionMode"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.SingleDisruptionMode"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:TopologyConstraint",
      "type": "api_object",
      "title": "TopologyConstraint",
      "summary": "TopologyConstraint defines a topology constraint for a PodGroup.",
      "body": "Specifies the topology requirements for a workload.\n\n**Why it matters**\nAllows for placement of pods based on specific topological constraints, such as node affinity or anti-affinity.\n\n**Key facts**\n- Node affinity and anti-affinity\n- Topology spread constraints\n\n**Common pitfalls**\n- Incorrectly set topology constraints can lead to pod placement issues\n- Insufficient topology constraints can cause performance degradation\n\n**Related**\nNode Affinity, Pod Placement Strategies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "key"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.scheduling.v1alpha3.TopologyConstraint"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.TopologyConstraint"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Workload",
      "type": "api_object",
      "title": "Workload",
      "summary": "Workload allows for expressing scheduling constraints that should be used when managing the lifecycle of workloads from the scheduling perspective, including scheduling, preemption, eviction and other phases. Workload API enablement is toggled by the GenericWorkload feature gate.",
      "body": "Represents a workload, such as a deployment or daemonset.\n\n**Why it matters**\nProvides a way to manage and schedule workloads in a cluster.\n\n**Key facts**\n- Represents a workload\n- Used for scheduling and management\n\n**Common pitfalls**\n- Incorrectly set workload can lead to pod placement issues\n- Insufficient workload information can cause performance degradation\n\n**Related**\nWorkload Management, Scheduling Strategies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.scheduling.v1alpha3.Workload"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.Workload"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:WorkloadList",
      "type": "api_object",
      "title": "WorkloadList",
      "summary": "WorkloadList contains a list of Workload resources.",
      "body": "Represents a list of Workloads.\n\n**Why it matters**\nUsed to manage and track multiple workloads in a Kubernetes cluster.\n\n**Key facts**\n- Extends the standard List type from the Kubernetes API.\n- Contains a list of Workload objects.\n\n**Related**\nWorkload",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.scheduling.v1alpha3.WorkloadList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.WorkloadList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:WorkloadReference",
      "type": "api_object",
      "title": "WorkloadReference",
      "summary": "WorkloadReference references the Workload object together with the template that was used to create a particular PodGroup.",
      "body": "Represents a reference to a workload.\n\n**Why it matters**\nUsed to link workloads together or to other resources in the cluster.\n\n**Key facts**\n- Contains metadata about the referenced workload, such as its name and namespace.\n\n**Related**\nWorkload, Reference",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "templateName",
          "workloadName"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.scheduling.v1alpha3.WorkloadReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.WorkloadReference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:WorkloadSpec",
      "type": "api_object",
      "title": "WorkloadSpec",
      "summary": "WorkloadSpec defines the desired state of a Workload.",
      "body": "Describes a workload.\n\n**Why it matters**\nUsed to define the characteristics of a workload, such as its scheduling requirements and resources.\n\n**Key facts**\n- Contains fields that describe the workload's behavior, such as its priority and affinity.\n\n**Related**\nWorkload",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "scheduling"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "scheduling",
        "version": "v1alpha3",
        "fields": [
          "compositePodGroupTemplates",
          "controllerRef",
          "podGroupTemplates"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.scheduling.v1alpha3.WorkloadSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.WorkloadSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSIDriver",
      "type": "api_object",
      "title": "CSIDriver",
      "summary": "CSIDriver captures information about a Container Storage Interface (CSI) volume driver deployed on the cluster. Kubernetes attach detach controller uses this object to determine whether attach is required. Kubelet uses this object to determine whether pod information needs to be passed on mount. CSIDriver objects are non-namespaced.",
      "body": "Represents a CSI driver.\n\n**Why it matters**\nUsed to manage storage resources in a Kubernetes cluster.\n\n**Key facts**\n- Extends the standard Plugin type from the Kubernetes API.\n\n**Related**\nCSI, Storage",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storage.v1.CSIDriver"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSIDriver"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSIDriverList",
      "type": "api_object",
      "title": "CSIDriverList",
      "summary": "CSIDriverList is a collection of CSIDriver objects.",
      "body": "A list of CSIDriver objects.\n\n**Why it matters**\nProvides a way to manage and configure CSI drivers in a Kubernetes cluster.\n\n**Key facts**\n- Represents a collection of CSIDriver objects.\n- Used for listing and retrieving CSIDriver resources.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storage.v1.CSIDriverList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSIDriverList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSIDriverSpec",
      "type": "api_object",
      "title": "CSIDriverSpec",
      "summary": "CSIDriverSpec is the specification of a CSIDriver.",
      "body": "A specification for a CSI driver.\n\n**Why it matters**\nDefines the configuration and behavior of a CSI driver in a Kubernetes cluster.\n\n**Key facts**\n- Represents the desired state of a CSIDriver object.\n- Used to configure and manage CSI drivers.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "attachRequired",
          "fsGroupPolicy",
          "nodeAllocatableUpdatePeriodSeconds",
          "podInfoOnMount",
          "preventPodSchedulingIfMissing",
          "requiresRepublish",
          "seLinuxMount",
          "serviceAccountTokenInSecrets",
          "storageCapacity",
          "tokenRequests",
          "volumeLifecycleModes"
        ],
        "field_count": 11,
        "def_name": "io.k8s.api.storage.v1.CSIDriverSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSIDriverSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSINode",
      "type": "api_object",
      "title": "CSINode",
      "summary": "CSINode holds information about all CSI drivers installed on a node. CSI drivers do not need to create the CSINode object directly. As long as they use the node-driver-registrar sidecar container, the kubelet will automatically populate the CSINode object for the CSI driver as part of kubelet plugin registration. CSINode has the same name as a node. If the object is missing, it means either there are no CSI Drivers available on the node, or the Kubelet version is low enough that it doesn't create this object. CSINode has an OwnerReference that points to the corresponding node object.",
      "body": "A node that provides storage through a CSI driver.\n\n**Why it matters**\nRepresents a node in a Kubernetes cluster that offers storage capabilities via a CSI driver.\n\n**Key facts**\n- Represents a node that provides storage services.\n- Used to manage and configure storage nodes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storage.v1.CSINode"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSINode"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSINodeDriver",
      "type": "api_object",
      "title": "CSINodeDriver",
      "summary": "CSINodeDriver holds information about the specification of one CSI driver installed on a node",
      "body": "A CSI driver for a specific storage node.\n\n**Why it matters**\nRepresents the CSI driver associated with a particular storage node in a Kubernetes cluster.\n\n**Key facts**\n- Represents the CSI driver for a CSINode object.\n- Used to manage and configure CSI drivers for storage nodes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "allocatable",
          "name",
          "nodeID",
          "topologyKeys"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storage.v1.CSINodeDriver"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSINodeDriver"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSINodeList",
      "type": "api_object",
      "title": "CSINodeList",
      "summary": "CSINodeList is a collection of CSINode objects.",
      "body": "A list of CSI nodes in the cluster.\n\n**Why it matters**\nProvides information about available CSI nodes for storage operations.\n\n**Key facts**\n- Represents a list of io.k8s.api.storage.v1.CSINode objects.\n- Used to retrieve a list of CSI nodes in the cluster.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storage.v1.CSINodeList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSINodeList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSINodeSpec",
      "type": "api_object",
      "title": "CSINodeSpec",
      "summary": "CSINodeSpec holds information about the specification of all CSI drivers installed on a node",
      "body": "A specification for a CSI node.\n\n**Why it matters**\nDefines the properties and capabilities of a CSI node.\n\n**Key facts**\n- Represents a io.k8s.api.storage.v1.CSINode object.\n- Contains information about the CSI node's capacity, topology, and other attributes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "drivers"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.storage.v1.CSINodeSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSINodeSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSIStorageCapacity",
      "type": "api_object",
      "title": "CSIStorageCapacity",
      "summary": "CSIStorageCapacity stores the result of one CSI GetCapacity call. For a given StorageClass, this describes the available capacity in a particular topology segment.  This can be used when considering where to instantiate new PersistentVolumes.\n\nFor example this can express things like: - StorageClass \"standard\" has \"1234 GiB\" available in \"topology.kubernetes.io/zone=us-east1\" - StorageClass \"localssd\" has \"10 GiB\" available in \"kubernetes.io/hostname=knode-abc123\"\n\nThe following three cases all imply that no capacity is available for a certain combination: - no object exists with suitable topology and storage class name - such an object exists, but the capacity is unset - such an object exists, but the capacity is zero\n\nThe producer of these objects can decide which approach is more suitable.\n\nThey are consumed by the kube-scheduler when a CSI driver opts into capacity-aware scheduling with CSIDriverSpec.StorageCapacity. The scheduler compares the MaximumVolumeSize against the requested size of pending volumes to filter out unsuitable nodes. If MaximumVolumeSize is unset, it falls back to a comparison against the less precise Capacity. If that is also unset, the scheduler assumes that capacity is insufficient and tries some other node.",
      "body": "Represents a CSI storage capacity.\n\n**Why it matters**\nProvides information about the available storage capacity for a CSI node.\n\n**Key facts**\n- Represents a io.k8s.api.storage.v1.CSIStorageCapacity object.\n- Contains information about the available storage capacity, including size and topology.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "capacity",
          "kind",
          "maximumVolumeSize",
          "metadata",
          "nodeTopology",
          "storageClassName"
        ],
        "field_count": 7,
        "def_name": "io.k8s.api.storage.v1.CSIStorageCapacity"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSIStorageCapacity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CSIStorageCapacityList",
      "type": "api_object",
      "title": "CSIStorageCapacityList",
      "summary": "CSIStorageCapacityList is a collection of CSIStorageCapacity objects.",
      "body": "A list of CSI storage capacities.\n\n**Why it matters**\nProvides a list of available CSI storage capacities in the cluster.\n\n**Key facts**\n- Represents a list of io.k8s.api.storage.v1.CSIStorageCapacity objects.\n- Used to retrieve a list of CSI storage capacities in the cluster.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storage.v1.CSIStorageCapacityList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSIStorageCapacityList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StorageClass",
      "type": "api_object",
      "title": "StorageClass",
      "summary": "StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.\n\nStorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.",
      "body": "A StorageClass is an abstraction provided by Kubernetes to dynamically provision storage resources.\n\n**Why it matters**\nIt allows for dynamic provisioning of storage, enabling users to request storage resources without specifying the underlying infrastructure.\n\n**Key facts**\n- Defined in io.k8s.api.storage.v1.StorageClass\n- Used for dynamic provisioning of storage resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "allowVolumeExpansion",
          "allowedTopologies",
          "apiVersion",
          "kind",
          "metadata",
          "mountOptions",
          "parameters",
          "provisioner",
          "reclaimPolicy",
          "volumeBindingMode"
        ],
        "field_count": 10,
        "def_name": "io.k8s.api.storage.v1.StorageClass"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.StorageClass"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StorageClassList",
      "type": "api_object",
      "title": "StorageClassList",
      "summary": "StorageClassList is a collection of storage classes.",
      "body": "A list of StorageClasses, which are used to manage and provision storage resources.\n\n**Why it matters**\nIt provides a way to manage multiple StorageClasses and their associated storage resources.\n\n**Key facts**\n- Defined in io.k8s.api.storage.v1.StorageClassList\n- Contains a list of StorageClasses\n\n**Related**\napi:StorageClass",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storage.v1.StorageClassList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.StorageClassList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeAttachment",
      "type": "api_object",
      "title": "VolumeAttachment",
      "summary": "VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node.\n\nVolumeAttachment objects are non-namespaced.",
      "body": "A resource that represents the attachment of a persistent volume to a node.\n\n**Why it matters**\nIt provides a way to manage the attachment and detachment of persistent volumes from nodes.\n\n**Key facts**\n- Defined in io.k8s.api.storage.v1.VolumeAttachment\n- Used for managing persistent volume attachments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.storage.v1.VolumeAttachment"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttachment"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeAttachmentList",
      "type": "api_object",
      "title": "VolumeAttachmentList",
      "summary": "VolumeAttachmentList is a collection of VolumeAttachment objects.",
      "body": "A list of VolumeAttachment objects.\n\n**Why it matters**\nProvides a way to manage and monitor volume attachments in a Kubernetes cluster.\n\n**Key facts**\n- Represents a collection of VolumeAttachment objects\n- Used for listing and managing volume attachments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storage.v1.VolumeAttachmentList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttachmentList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeAttachmentSource",
      "type": "api_object",
      "title": "VolumeAttachmentSource",
      "summary": "VolumeAttachmentSource represents a volume that should be attached. Right now only PersistentVolumes can be attached via external attacher, in the future we may allow also inline volumes in pods. Exactly one member can be set.",
      "body": "A source for a VolumeAttachment.\n\n**Why it matters**\nSpecifies the source of a volume attachment, such as a PersistentVolume or a local storage device.\n\n**Key facts**\n- Represents the source of a volume attachment\n- Can be a PersistentVolume or a local storage device\n\n**Related**\napi:PersistentVolume",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "inlineVolumeSpec",
          "persistentVolumeName"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.storage.v1.VolumeAttachmentSource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttachmentSource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeAttachmentSpec",
      "type": "api_object",
      "title": "VolumeAttachmentSpec",
      "summary": "VolumeAttachmentSpec is the specification of a VolumeAttachment request.",
      "body": "The specification for a VolumeAttachment.\n\n**Why it matters**\nDefines the configuration and settings for a volume attachment, such as the volume name and node name.\n\n**Key facts**\n- Represents the specification for a volume attachment\n- Includes fields like volumeName and nodeName\n\n**Related**\napi:VolumeAttachmentList, api:PersistentVolume",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "attacher",
          "nodeName",
          "source"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.storage.v1.VolumeAttachmentSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttachmentSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeAttachmentStatus",
      "type": "api_object",
      "title": "VolumeAttachmentStatus",
      "summary": "VolumeAttachmentStatus is the status of a VolumeAttachment request.",
      "body": "The status of a VolumeAttachment.\n\n**Why it matters**\nProvides information about the current state of a volume attachment, such as its readiness and health.\n\n**Key facts**\n- Represents the status of a volume attachment\n- Includes fields like attached and conditions\n\n**Related**\napi:VolumeAttachmentList, api:PersistentVolume",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "attachError",
          "attached",
          "attachmentMetadata",
          "detachError"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storage.v1.VolumeAttachmentStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttachmentStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeAttributesClass",
      "type": "api_object",
      "title": "VolumeAttributesClass",
      "summary": "VolumeAttributesClass represents a specification of mutable volume attributes defined by the CSI driver. The class can be specified during dynamic provisioning of PersistentVolumeClaims, and changed in the PersistentVolumeClaim spec after provisioning.",
      "body": "Represents a class of volume attributes.\n\n**Why it matters**\nThis API object is used to manage and configure volume attributes for storage classes in Kubernetes.\n\n**Key facts**\n- Defined in io.k8s.api.storage.v1.VolumeAttributesClass",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "driverName",
          "kind",
          "metadata",
          "parameters"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.storage.v1.VolumeAttributesClass"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttributesClass"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeAttributesClassList",
      "type": "api_object",
      "title": "VolumeAttributesClassList",
      "summary": "VolumeAttributesClassList is a collection of VolumeAttributesClass objects.",
      "body": "A list of VolumeAttributesClass objects.\n\n**Why it matters**\nThis API object is used to manage and configure multiple volume attributes for storage classes in Kubernetes.\n\n**Key facts**\n- Defined in io.k8s.api.storage.v1.VolumeAttributesClassList",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storage.v1.VolumeAttributesClassList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttributesClassList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeError",
      "type": "api_object",
      "title": "VolumeError",
      "summary": "VolumeError captures an error encountered during a volume operation.",
      "body": "Represents a volume error.\n\n**Why it matters**\nThis API object is used to handle and manage errors related to volumes in Kubernetes.\n\n**Key facts**\n- Defined in io.k8s.api.storage.v1.VolumeError",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "errorCode",
          "message",
          "time"
        ],
        "field_count": 3,
        "def_name": "io.k8s.api.storage.v1.VolumeError"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeError"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:VolumeNodeResources",
      "type": "api_object",
      "title": "VolumeNodeResources",
      "summary": "VolumeNodeResources is a set of resource limits for scheduling of volumes.",
      "body": "Represents node resources for a volume.\n\n**Why it matters**\nThis API object is used to manage and configure node resources for volumes in Kubernetes.\n\n**Key facts**\n- Defined in io.k8s.api.storage.v1.VolumeNodeResources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storage",
        "version": "v1",
        "fields": [
          "count"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.storage.v1.VolumeNodeResources"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeNodeResources"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StorageVersionMigration",
      "type": "api_object",
      "title": "StorageVersionMigration",
      "summary": "StorageVersionMigration represents a migration of stored data to the latest storage version.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storagemigration"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storagemigration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.api.storagemigration.v1.StorageVersionMigration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1.StorageVersionMigration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1beta1.StorageVersionMigration"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:StorageVersionMigrationList",
      "type": "api_object",
      "title": "StorageVersionMigrationList",
      "summary": "StorageVersionMigrationList is a collection of storage version migrations.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storagemigration"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storagemigration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.api.storagemigration.v1.StorageVersionMigrationList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1.StorageVersionMigrationList"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1beta1.StorageVersionMigrationList"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:StorageVersionMigrationSpec",
      "type": "api_object",
      "title": "StorageVersionMigrationSpec",
      "summary": "Spec of the storage version migration.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storagemigration"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storagemigration",
        "version": "v1",
        "fields": [
          "resource"
        ],
        "field_count": 1,
        "def_name": "io.k8s.api.storagemigration.v1.StorageVersionMigrationSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1.StorageVersionMigrationSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1beta1.StorageVersionMigrationSpec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:StorageVersionMigrationStatus",
      "type": "api_object",
      "title": "StorageVersionMigrationStatus",
      "summary": "Status of the storage version migration.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "storagemigration"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "storagemigration",
        "version": "v1",
        "fields": [
          "conditions",
          "resourceVersion"
        ],
        "field_count": 2,
        "def_name": "io.k8s.api.storagemigration.v1.StorageVersionMigrationStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1.StorageVersionMigrationStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1beta1.StorageVersionMigrationStatus"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "api:CustomResourceColumnDefinition",
      "type": "api_object",
      "title": "CustomResourceColumnDefinition",
      "summary": "CustomResourceColumnDefinition specifies a column for server side printing.",
      "body": "A CustomResourceColumnDefinition defines a column in a custom resource's list view.\n\n**Why it matters**\nIt allows users to customize the display of their custom resources.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceColumnDefinition\n- Used to define columns in a custom resource's list view",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "description",
          "format",
          "jsonPath",
          "name",
          "priority",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceColumnDefinition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceColumnDefinition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceConversion",
      "type": "api_object",
      "title": "CustomResourceConversion",
      "summary": "CustomResourceConversion describes how to convert different versions of a CR.",
      "body": "A CustomResourceConversion defines how to convert a custom resource from one version to another.\n\n**Why it matters**\nIt enables the conversion of custom resources between different versions.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceConversion\n- Used for converting custom resources between versions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "strategy",
          "webhook"
        ],
        "field_count": 2,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceConversion"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceConversion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceDefinition",
      "type": "api_object",
      "title": "CustomResourceDefinition",
      "summary": "CustomResourceDefinition represents a resource that should be exposed on the API server.  Its name MUST be in the format <.spec.name>.<.spec.group>.",
      "body": "A CustomResourceDefinition defines a new resource type in the cluster.\n\n**Why it matters**\nIt allows users to create and manage custom resources.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition\n- Used to define new resource types",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceDefinitionCondition",
      "type": "api_object",
      "title": "CustomResourceDefinitionCondition",
      "summary": "CustomResourceDefinitionCondition contains details for the current condition of this pod.",
      "body": "A CustomResourceDefinitionCondition represents the status of a custom resource definition.\n\n**Why it matters**\nIt provides information about the status of custom resource definitions.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionCondition\n- Used to represent the status of custom resource definitions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "message",
          "observedGeneration",
          "reason",
          "status",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceDefinitionList",
      "type": "api_object",
      "title": "CustomResourceDefinitionList",
      "summary": "CustomResourceDefinitionList is a list of CustomResourceDefinition objects.",
      "body": "A CustomResourceDefinitionList is an API resource that represents a list of custom resource definitions.\n\n**Why it matters**\nIt allows you to manage multiple custom resource definitions in a single request.\n\n**Key facts**\n- Represents a list of custom resource definitions\n- Managed by the apiextensions-apiserver\n\n**Common pitfalls**\n- Requires proper configuration and management\n\n**Related**\nCustomResourceDefinition (CRD), apiextensions-apiserver",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceDefinitionNames",
      "type": "api_object",
      "title": "CustomResourceDefinitionNames",
      "summary": "CustomResourceDefinitionNames indicates the names to serve this CustomResourceDefinition",
      "body": "A CustomResourceDefinitionNames is an API resource that represents the names of custom resource definitions.\n\n**Why it matters**\nIt allows you to retrieve and manage the names of custom resource definitions in a single request.\n\n**Key facts**\n- Represents the names of custom resource definitions\n- Managed by the apiextensions-apiserver\n\n**Common pitfalls**\n- Requires proper configuration and management\n\n**Related**\nCustomResourceDefinition (CRD), apiextensions-apiserver",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "categories",
          "kind",
          "listKind",
          "plural",
          "shortNames",
          "singular"
        ],
        "field_count": 6,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionNames"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionNames"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceDefinitionSpec",
      "type": "api_object",
      "title": "CustomResourceDefinitionSpec",
      "summary": "CustomResourceDefinitionSpec describes how a user wants their resource to appear",
      "body": "A CustomResourceDefinitionSpec is an API resource that represents the specification of a custom resource definition.\n\n**Why it matters**\nIt allows you to define and manage the structure and behavior of custom resources in a single request.\n\n**Key facts**\n- Represents the specification of a custom resource definition\n- Managed by the apiextensions-apiserver\n\n**Common pitfalls**\n- Requires proper configuration and management\n\n**Related**\nCustomResourceDefinition (CRD), apiextensions-apiserver",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "conversion",
          "group",
          "names",
          "preserveUnknownFields",
          "scope",
          "versions"
        ],
        "field_count": 6,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceDefinitionStatus",
      "type": "api_object",
      "title": "CustomResourceDefinitionStatus",
      "summary": "CustomResourceDefinitionStatus indicates the state of the CustomResourceDefinition",
      "body": "A CustomResourceDefinitionStatus is an API resource that represents the status of a custom resource definition.\n\n**Why it matters**\nIt allows you to retrieve and manage the status of custom resource definitions in a single request.\n\n**Key facts**\n- Represents the status of a custom resource definition\n- Managed by the apiextensions-apiserver\n\n**Common pitfalls**\n- Requires proper configuration and management\n\n**Related**\nCustomResourceDefinition (CRD), apiextensions-apiserver",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "acceptedNames",
          "conditions",
          "observedGeneration",
          "storedVersions"
        ],
        "field_count": 4,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceDefinitionVersion",
      "type": "api_object",
      "title": "CustomResourceDefinitionVersion",
      "summary": "CustomResourceDefinitionVersion describes a version for CRD.",
      "body": "A CustomResourceDefinitionVersion is an API resource that defines a version of a custom resource.\n\n**Why it matters**\nCustomResourceDefinitionVersions allow for the management and evolution of custom resources over time.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion\n- Used to manage versions of custom resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "additionalPrinterColumns",
          "deprecated",
          "deprecationWarning",
          "name",
          "schema",
          "selectableFields",
          "served",
          "storage",
          "subresources"
        ],
        "field_count": 9,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceSubresourceScale",
      "type": "api_object",
      "title": "CustomResourceSubresourceScale",
      "summary": "CustomResourceSubresourceScale defines how to serve the scale subresource for CustomResources.",
      "body": "A CustomResourceSubresourceScale is a subresource that defines the scaling behavior of a custom resource.\n\n**Why it matters**\nCustomResourceSubresourceScales allow for the management of scaling behavior for custom resources.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceScale\n- Used to manage scaling behavior for custom resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "labelSelectorPath",
          "specReplicasPath",
          "statusReplicasPath"
        ],
        "field_count": 3,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceScale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceScale"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceSubresourceStatus",
      "type": "api_object",
      "title": "CustomResourceSubresourceStatus",
      "summary": "CustomResourceSubresourceStatus defines how to serve the status subresource for CustomResources. Status is represented by the `.status` JSON path inside of a CustomResource. When set, * exposes a /status subresource for the custom resource * PUT requests to the /status subresource take a custom resource object, and ignore changes to anything except the status stanza * PUT/POST/PATCH requests to the custom resource ignore changes to the status stanza",
      "body": "A CustomResourceSubresourceStatus is a subresource that defines the status of a custom resource.\n\n**Why it matters**\nCustomResourceSubresourceStatuses allow for the management and monitoring of custom resources.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceStatus\n- Used to manage status of custom resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceSubresources",
      "type": "api_object",
      "title": "CustomResourceSubresources",
      "summary": "CustomResourceSubresources defines the status and scale subresources for CustomResources.",
      "body": "A CustomResourceSubresources is a resource that defines the subresources of a custom resource.\n\n**Why it matters**\nCustomResourceSubresources allow for the management and configuration of subresources for custom resources.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresources\n- Used to manage subresources for custom resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "scale",
          "status"
        ],
        "field_count": 2,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresources"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresources"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:CustomResourceValidation",
      "type": "api_object",
      "title": "CustomResourceValidation",
      "summary": "CustomResourceValidation is a list of validation methods for CustomResources.",
      "body": "CustomResourceValidation is an API object that defines validation rules for custom resources.\n\n**Why it matters**\nIt ensures data consistency and prevents invalid custom resource definitions from being created or updated.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation\n- Used to validate custom resource definitions\n\n**Common pitfalls**\n- Incorrectly defined validation rules can lead to data inconsistencies and errors",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "openAPIV3Schema"
        ],
        "field_count": 1,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ExternalDocumentation",
      "type": "api_object",
      "title": "ExternalDocumentation",
      "summary": "ExternalDocumentation allows referencing an external resource for extended documentation.",
      "body": "ExternalDocumentation is an API object that provides links to external documentation for custom resources.\n\n**Why it matters**\nIt enables users to access additional information about custom resources, such as usage guidelines and troubleshooting tips.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation\n- Used to provide links to external documentation for custom resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "description",
          "url"
        ],
        "field_count": 2,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JSON",
      "type": "api_object",
      "title": "JSON",
      "summary": "JSON represents any valid JSON value. These types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil.",
      "body": "JSON is a data format used by the Kubernetes API to represent custom resource definitions.\n\n**Why it matters**\nIt enables efficient and platform-independent data exchange between systems.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON\n- Used to represent custom resource definitions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JSONSchemaProps",
      "type": "api_object",
      "title": "JSONSchemaProps",
      "summary": "JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-schema.org/).",
      "body": "JSONSchemaProps is an API object that defines properties for JSON schema validation.\n\n**Why it matters**\nIt enables the definition of custom validation rules for custom resources.\n\n**Key facts**\n- Defined in io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps\n- Used to define properties for JSON schema validation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "$ref",
          "$schema",
          "additionalItems",
          "additionalProperties",
          "allOf",
          "anyOf",
          "default",
          "definitions",
          "dependencies",
          "description",
          "enum",
          "example",
          "exclusiveMaximum",
          "exclusiveMinimum",
          "externalDocs",
          "format",
          "id",
          "items",
          "maxItems",
          "maxLength",
          "maxProperties",
          "maximum",
          "minItems",
          "minLength",
          "minProperties",
          "minimum",
          "multipleOf",
          "not",
          "nullable",
          "oneOf",
          "pattern",
          "patternProperties",
          "properties",
          "required",
          "title",
          "type",
          "uniqueItems",
          "x-kubernetes-embedded-resource",
          "x-kubernetes-int-or-string",
          "x-kubernetes-list-map-keys",
          "x-kubernetes-list-type",
          "x-kubernetes-map-type",
          "x-kubernetes-preserve-unknown-fields",
          "x-kubernetes-validations"
        ],
        "field_count": 44,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JSONSchemaPropsOrArray",
      "type": "api_object",
      "title": "JSONSchemaPropsOrArray",
      "summary": "JSONSchemaPropsOrArray represents a value that can either be a JSONSchemaProps or an array of JSONSchemaProps. Mainly here for serialization purposes.",
      "body": "Represents either a JSON schema props or an array of JSON schema props.\n\n**Why it matters**\nUsed to define the structure and validation rules for API objects.\n\n**Key facts**\n- Extends the `JSONSchemaProps` type\n- Can be used as an array of JSON schema props\n\n**Common pitfalls**\n- Must be used carefully to avoid over-specifying object structures\n\n**Related**\nJSONSchemaProps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JSONSchemaPropsOrBool",
      "type": "api_object",
      "title": "JSONSchemaPropsOrBool",
      "summary": "JSONSchemaPropsOrBool represents JSONSchemaProps or a boolean value. Defaults to true for the boolean property.",
      "body": "Represents either a JSON schema props or a boolean value.\n\n**Why it matters**\nUsed to define the structure and validation rules for API objects.\n\n**Key facts**\n- Extends the `JSONSchemaProps` type\n- Can be used as a boolean value\n\n**Common pitfalls**\n- Must be used carefully to avoid over-specifying object structures\n\n**Related**\nJSONSchemaProps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:JSONSchemaPropsOrStringArray",
      "type": "api_object",
      "title": "JSONSchemaPropsOrStringArray",
      "summary": "JSONSchemaPropsOrStringArray represents a JSONSchemaProps or a string array.",
      "body": "Represents either a JSON schema props or an array of strings.\n\n**Why it matters**\nUsed to define the structure and validation rules for API objects.\n\n**Key facts**\n- Extends the `JSONSchemaProps` type\n- Can be used as an array of strings\n\n**Common pitfalls**\n- Must be used carefully to avoid over-specifying object structures\n\n**Related**\nJSONSchemaProps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:SelectableField",
      "type": "api_object",
      "title": "SelectableField",
      "summary": "SelectableField specifies the JSON path of a field that may be used with field selectors.",
      "body": "Represents a field that can be selected for display or editing.\n\n**Why it matters**\nUsed to define the fields that are available for selection in API objects.\n\n**Key facts**\n- Extends the `ObjectMeta` type\n- Can be used to select fields for display or editing\n\n**Common pitfalls**\n- Must be used carefully to avoid over-specifying object structures\n\n**Related**\nObjectMeta",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "jsonPath"
        ],
        "field_count": 1,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.SelectableField"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.SelectableField"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ValidationRule",
      "type": "api_object",
      "title": "ValidationRule",
      "summary": "ValidationRule describes a validation rule written in the CEL expression language.",
      "body": "A rule for validating API objects in Kubernetes.\n\n**Why it matters**\nValidationRules ensure that API objects conform to the expected structure and format. This is crucial for maintaining data integrity and preventing errors.\n\n**Key facts**\n- Represents a validation rule for API objects\n- Ensures API objects conform to the expected structure and format\n\n**Related**\nAPI Objects, Validation",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "fieldPath",
          "message",
          "messageExpression",
          "optionalOldSelf",
          "reason",
          "rule"
        ],
        "field_count": 6,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:WebhookConversion",
      "type": "api_object",
      "title": "WebhookConversion",
      "summary": "WebhookConversion describes how to call a conversion webhook",
      "body": "A conversion for webhooks in Kubernetes.\n\n**Why it matters**\nWebhookConversions enable the conversion of webhook configurations, ensuring seamless interaction between different components.\n\n**Key facts**\n- Represents a conversion for webhook configurations\n- Enables conversion of webhook configurations\n\n**Related**\nWebhooks, Conversion",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiextensions"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiextensions",
        "version": "v1",
        "fields": [
          "clientConfig",
          "conversionReviewVersions"
        ],
        "field_count": 2,
        "def_name": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.WebhookConversion"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.WebhookConversion"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Quantity",
      "type": "api_object",
      "title": "Quantity",
      "summary": "Quantity is a fixed-point representation of a number. It provides convenient marshaling/unmarshaling in JSON and YAML, in addition to String() and AsInt64() accessors.\n\nThe serialization format is:\n\n``` <quantity>        ::= <signedNumber><suffix>\n\n\t(Note that <suffix> may be empty, from the \"\" case in <decimalSI>.)\n\n<digit>           ::= 0 | 1 | ... | 9 <digits>          ::= <digit> | <digit><digits> <number>          ::= <digits> | <digits>.<digits> | <digits>. | .<digits> <sign>            ::= \"+\" | \"-\" <signedNumber>    ::= <number> | <sign><number> <suffix>          ::= <binarySI> | <decimalExponent> | <decimalSI> <binarySI>        ::= Ki | Mi | Gi | Ti | Pi | Ei\n\n\t(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)\n\n<decimalSI>       ::= m | \"\" | k | M | G | T | P | E\n\n\t(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)\n\n<decimalExponent> ::= \"e\" <signedNumber> | \"E\" <signedNumber> ```\n\nNo matter which of the three exponent forms is used, no quantity may represent a number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal places. Numbers larger or more precise will be capped or rounded up. (E.g.: 0.1m will rounded up to 1m.) This may be extended in the future if we require larger or smaller quantities.\n\nWhen a Quantity is parsed from a string, it will remember the type of suffix it had, and will use the same type again when it is serialized.\n\nBefore serializing, Quantity will be put in \"canonical form\". This means that Exponent/suffix will be adjusted up or down (with a corresponding increase or decrease in Mantissa) such that:\n\n- No precision is lost - No fractional digits will be emitted - The exponent (or suffix) is as large as possible.\n\nThe sign will be omitted unless the number is negative.\n\nExamples:\n\n- 1.5 will be serialized as \"1500m\" - 1.5Gi will be serialized as \"1536Mi\"\n\nNote that the quantity will NEVER be internally represented by a floating point number. That is the whole point of this exercise.\n\nNon-canonical values will still parse as long as they are well formed, but will be re-emitted in their canonical form. (So always use canonical form, or don't diff.)\n\nThis format is intended to make it difficult to use these numbers without writing some sort of special handling code in the hopes that that will cause implementors to also use a fixed point implementation.",
      "body": "A Quantity represents a quantity of something, expressed as a number with an optional fractional part and an optional unit suffix.\n\n**Why it matters**\nQuantities are used to represent resource requests and limits in Kubernetes.\n\n**Key facts**\n- Represents a number with an optional fractional part\n- Optional unit suffix",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "api"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "api",
        "version": "resource",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apimachinery.pkg.api.resource.Quantity"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:APIGroup",
      "type": "api_object",
      "title": "APIGroup",
      "summary": "APIGroup contains the name, the supported versions, and the preferred version of a group.",
      "body": "An APIGroup represents a group of resources that share the same version and kind.\n\n**Why it matters**\nAPI groups help to organize related resources in Kubernetes.\n\n**Key facts**\n- Represents a group of resources with shared version and kind\n\n**Related**\napi:APIGroupList",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "name",
          "preferredVersion",
          "serverAddressByClientCIDRs",
          "versions"
        ],
        "field_count": 6,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.APIGroup"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.APIGroup"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:APIGroupList",
      "type": "api_object",
      "title": "APIGroupList",
      "summary": "APIGroupList is a list of APIGroup, to allow clients to discover the API at /apis.",
      "body": "An APIGroupList represents a list of API groups.\n\n**Why it matters**\nAPI group lists provide information about the available API groups in Kubernetes.\n\n**Key facts**\n- Represents a list of API groups\n\n**Related**\napi:APIGroup",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "apiVersion",
          "groups",
          "kind"
        ],
        "field_count": 3,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.APIGroupList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.APIGroupList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:APIResource",
      "type": "api_object",
      "title": "APIResource",
      "summary": "APIResource specifies the name of a resource and whether it is namespaced.",
      "body": "An APIResource represents a resource that can be accessed through the Kubernetes API.\n\n**Why it matters**\nAPI resources are used to interact with Kubernetes resources such as pods, services, and deployments.\n\n**Key facts**\n- Represents a resource accessible through the Kubernetes API",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "categories",
          "group",
          "kind",
          "name",
          "namespaced",
          "shortNames",
          "singularName",
          "storageVersionHash",
          "verbs",
          "version"
        ],
        "field_count": 10,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.APIResource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.APIResource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:APIResourceList",
      "type": "api_object",
      "title": "APIResourceList",
      "summary": "APIResourceList is a list of APIResource, it is used to expose the name of the resources supported in a specific group and version, and if the resource is namespaced.",
      "body": "A list of API resources, including their names and server-side fields.\n\n**Why it matters**\nAPIResourceList is used to manage and interact with various Kubernetes resources, such as pods, services, and deployments.\n\n**Key facts**\n- Derived from io.k8s.apimachinery.pkg.apis.meta.v1.APIResourceList\n- Contains a list of API resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "apiVersion",
          "groupVersion",
          "kind",
          "resources"
        ],
        "field_count": 4,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.APIResourceList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.APIResourceList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:APIVersions",
      "type": "api_object",
      "title": "APIVersions",
      "summary": "APIVersions lists the versions that are available, to allow clients to discover the API at /api, which is the root path of the legacy v1 API.",
      "body": "A list of supported API versions.\n\n**Why it matters**\nAPIVersions is used to determine the supported API versions in a Kubernetes cluster.\n\n**Key facts**\n- Derived from io.k8s.apimachinery.pkg.apis.meta.v1.APIVersions\n- Contains a list of supported API versions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "serverAddressByClientCIDRs",
          "versions"
        ],
        "field_count": 4,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.APIVersions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.APIVersions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Condition",
      "type": "api_object",
      "title": "Condition",
      "summary": "Condition contains details for one aspect of the current state of this API Resource.",
      "body": "A condition that can be applied to various Kubernetes resources.\n\n**Why it matters**\nConditions are used to track the status and health of Kubernetes resources, such as pods and deployments.\n\n**Key facts**\n- Derived from io.k8s.apimachinery.pkg.apis.meta.v1.Condition\n- Can be applied to various Kubernetes resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "message",
          "observedGeneration",
          "reason",
          "status",
          "type"
        ],
        "field_count": 6,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:DeleteOptions",
      "type": "api_object",
      "title": "DeleteOptions",
      "summary": "DeleteOptions may be provided when deleting an API object.",
      "body": "Options for deleting a resource, including whether to cascade delete dependent objects.\n\n**Why it matters**\nDeleteOptions is used to manage the deletion of Kubernetes resources and their dependencies.\n\n**Key facts**\n- Derived from io.k8s.apimachinery.pkg.apis.meta.v1.DeleteOptions\n- Includes options for cascading delete",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "apiVersion",
          "dryRun",
          "gracePeriodSeconds",
          "ignoreStoreReadErrorWithClusterBreakingPotential",
          "kind",
          "orphanDependents",
          "preconditions",
          "propagationPolicy"
        ],
        "field_count": 8,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.DeleteOptions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.DeleteOptions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FieldSelectorRequirement",
      "type": "api_object",
      "title": "FieldSelectorRequirement",
      "summary": "FieldSelectorRequirement is a selector that contains values, a key, and an operator that relates the key and values.",
      "body": "Represents a single requirement in a FieldSelector.\n\n**Why it matters**\nUsed to specify conditions for selecting resources based on their fields.\n\n**Key facts**\n- Must match one of the values listed in value field\n- Can be used with operator field\n\n**Common pitfalls**\n- Incorrectly specified requirements can lead to incorrect resource selection\n\n**Related**\nFieldSelector",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "key",
          "operator",
          "values"
        ],
        "field_count": 3,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.FieldSelectorRequirement"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.FieldSelectorRequirement"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:FieldsV1",
      "type": "api_object",
      "title": "FieldsV1",
      "summary": "FieldsV1 stores a set of fields in a data structure like a Trie, in JSON format.\n\nEach key is either a '.' representing the field itself, and will always map to an empty set, or a string representing a sub-field or item. The string will follow one of these four formats: 'f:<name>', where <name> is the name of a field in a struct, or key in a map 'v:<value>', where <value> is the exact json formatted value of a list item 'i:<index>', where <index> is position of a item in a list 'k:<keys>', where <keys> is a map of  a list item's key fields to their unique values If a key maps to an empty Fields value, the field that key represents is part of the set.\n\nThe exact format is defined in sigs.k8s.io/structured-merge-diff",
      "body": "Represents a set of fields that should be selected for a resource.\n\n**Why it matters**\nUsed to specify the fields that should be included in the response when retrieving resources.\n\n**Key facts**\n- Can include multiple fields\n- Can use wildcards for field names\n\n**Common pitfalls**\n- Incorrectly specified fields can lead to incomplete or incorrect responses\n\n**Related**\nFieldSelector",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.FieldsV1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.FieldsV1"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:GroupResource",
      "type": "api_object",
      "title": "GroupResource",
      "summary": "GroupResource specifies a Group and a Resource, but does not force a version.  This is useful for identifying concepts during lookup stages without having partially valid types",
      "body": "Represents a resource within a group.\n\n**Why it matters**\nUsed to specify the resource being requested, such as pods or services.\n\n**Key facts**\n- Consists of a group and a resource name\n- Can be used with verbs like get or list\n\n**Common pitfalls**\n- Incorrectly specified groups or resources can lead to incorrect responses\n\n**Related**\nGroupVersionForDiscovery",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "group",
          "resource"
        ],
        "field_count": 2,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.GroupResource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.GroupResource"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:GroupVersionForDiscovery",
      "type": "api_object",
      "title": "GroupVersionForDiscovery",
      "summary": "GroupVersion contains the \"group/version\" and \"version\" string of a version. It is made a struct to keep extensibility.",
      "body": "Represents a group and version for discovery.\n\n**Why it matters**\nUsed to specify the group and version of the API being requested.\n\n**Key facts**\n- Consists of a group and a version\n- Can be used with verbs like get or list\n\n**Common pitfalls**\n- Incorrectly specified groups or versions can lead to incorrect responses\n\n**Related**\nGroupResource",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "groupVersion",
          "version"
        ],
        "field_count": 2,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.GroupVersionForDiscovery"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.GroupVersionForDiscovery"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LabelSelector",
      "type": "api_object",
      "title": "LabelSelector",
      "summary": "A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.",
      "body": "A LabelSelector is used to select resources based on labels.\n\n**Why it matters**\nIt allows for flexible and efficient resource selection in Kubernetes.\n\n**Key facts**\n- Defined in io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector (swagger.json)\n- Used for selecting resources based on labels",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "matchExpressions",
          "matchLabels"
        ],
        "field_count": 2,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:LabelSelectorRequirement",
      "type": "api_object",
      "title": "LabelSelectorRequirement",
      "summary": "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.",
      "body": "A LabelSelectorRequirement is a single requirement within a LabelSelector.\n\n**Why it matters**\nIt enables the specification of multiple label requirements for selection.\n\n**Key facts**\n- Defined in io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelectorRequirement (swagger.json)\n- Represents a single requirement within a LabelSelector\n\n**Related**\napi:LabelSelector",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "key",
          "operator",
          "values"
        ],
        "field_count": 3,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelectorRequirement"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelectorRequirement"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ListMeta",
      "type": "api_object",
      "title": "ListMeta",
      "summary": "ListMeta describes metadata that synthetic resources must have, including lists and various status objects. A resource may have only one of {ObjectMeta, ListMeta}.",
      "body": "A ListMeta is metadata associated with a list of resources.\n\n**Why it matters**\nIt provides additional information about the list, such as self-link and resource version.\n\n**Key facts**\n- Defined in io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta (swagger.json)\n- Contains metadata for a list of resources",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "continue",
          "remainingItemCount",
          "resourceVersion",
          "selfLink",
          "shardInfo"
        ],
        "field_count": 5,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ManagedFieldsEntry",
      "type": "api_object",
      "title": "ManagedFieldsEntry",
      "summary": "ManagedFieldsEntry is a workflow-id, a FieldSet and the group version of the resource that the fieldset applies to.",
      "body": "A ManagedFieldsEntry represents the state of a resource's managed fields.\n\n**Why it matters**\nIt tracks changes made to a resource and its dependencies.\n\n**Key facts**\n- Defined in io.k8s.apimachinery.pkg.apis.meta.v1.ManagedFieldsEntry (swagger.json)\n- Tracks changes to a resource's managed fields",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "apiVersion",
          "fieldsType",
          "fieldsV1",
          "manager",
          "operation",
          "subresource",
          "time"
        ],
        "field_count": 7,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.ManagedFieldsEntry"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ManagedFieldsEntry"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:MicroTime",
      "type": "api_object",
      "title": "MicroTime",
      "summary": "MicroTime is version of Time with microsecond level precision.",
      "body": "Represents a time in seconds since epoch, with optional nanosecond precision.\n\n**Why it matters**\nUsed to represent timestamps in Kubernetes APIs.\n\n**Key facts**\n- Includes seconds and nanoseconds fields for high-precision timing.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.MicroTime"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.MicroTime"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ObjectMeta",
      "type": "api_object",
      "title": "ObjectMeta",
      "summary": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.",
      "body": "Provides metadata about an object, such as its name, namespace, and labels.\n\n**Why it matters**\nEssential metadata for objects in Kubernetes, enabling identification and management.\n\n**Key facts**\n- Includes fields like name, namespace, and labels to describe objects.\n\n**Related**\napi:MicroTime",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "annotations",
          "creationTimestamp",
          "deletionGracePeriodSeconds",
          "deletionTimestamp",
          "finalizers",
          "generateName",
          "generation",
          "labels",
          "managedFields",
          "name",
          "namespace",
          "ownerReferences",
          "resourceVersion",
          "selfLink",
          "uid"
        ],
        "field_count": 15,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:OwnerReference",
      "type": "api_object",
      "title": "OwnerReference",
      "summary": "OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.",
      "body": "References the owner of an object, including its kind and UID.\n\n**Why it matters**\nEnables tracking ownership and relationships between objects in Kubernetes.\n\n**Key facts**\n- Includes fields like kind, name, and uid to identify owners.\n\n**Related**\napi:ObjectMeta",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "apiVersion",
          "blockOwnerDeletion",
          "controller",
          "kind",
          "name",
          "uid"
        ],
        "field_count": 6,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.OwnerReference"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.OwnerReference"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Patch",
      "type": "api_object",
      "title": "Patch",
      "summary": "Patch is provided to give a concrete name and type to the Kubernetes PATCH request body.",
      "body": "Represents a patch operation on an object's metadata.\n\n**Why it matters**\nUsed for efficient updates of object metadata in Kubernetes APIs.\n\n**Key facts**\n- Includes fields like op and path to describe the patch operation.\n\n**Related**\napi:MicroTime, api:ObjectMeta",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.Patch"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Patch"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Preconditions",
      "type": "api_object",
      "title": "Preconditions",
      "summary": "Preconditions must be fulfilled before an operation (update, delete, etc.) is carried out.",
      "body": "A set of conditions that must be met before an API request is processed.\n\n**Why it matters**\nEnsures that API requests are valid and compliant with Kubernetes standards.\n\n**Key facts**\n- Preconditions are used to validate API requests.\n- They provide a way to enforce constraints on API interactions.\n\n**Common pitfalls**\n- Failing to meet preconditions can result in API request failures.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "resourceVersion",
          "uid"
        ],
        "field_count": 2,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.Preconditions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Preconditions"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ServerAddressByClientCIDR",
      "type": "api_object",
      "title": "ServerAddressByClientCIDR",
      "summary": "ServerAddressByClientCIDR helps the client to determine the server address that they should use, depending on the clientCIDR that they match.",
      "body": "A configuration that maps client IP addresses to server addresses.\n\n**Why it matters**\nAllows for more precise control over network traffic and security policies.\n\n**Key facts**\n- ServerAddressByClientCIDR is used to configure network policies based on client IP addresses.\n- It provides a way to map client IPs to specific server addresses.\n\n**Common pitfalls**\n- Incorrect configuration can lead to security vulnerabilities or network connectivity issues.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "clientCIDR",
          "serverAddress"
        ],
        "field_count": 2,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.ServerAddressByClientCIDR"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ServerAddressByClientCIDR"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:ShardInfo",
      "type": "api_object",
      "title": "ShardInfo",
      "summary": "ShardInfo describes the shard selector that was applied to produce a list response. Its presence on a list response indicates the list is a filtered subset.",
      "body": "Metadata about the shards in a distributed system.\n\n**Why it matters**\nProvides information about the distribution of data across multiple nodes.\n\n**Key facts**\n- ShardInfo contains metadata about the shards in a Kubernetes cluster.\n- It helps with load balancing and data distribution.\n\n**Common pitfalls**\n- Incorrect shard configuration can lead to performance issues or data inconsistencies.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "selector"
        ],
        "field_count": 1,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.ShardInfo"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ShardInfo"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Status",
      "type": "api_object",
      "title": "Status",
      "summary": "Status is a return value for calls that don't return other objects.",
      "body": "A container for API response status information.\n\n**Why it matters**\nProvides a standardized way to convey status information in API responses.\n\n**Key facts**\n- Status is used to report the outcome of an API request.\n- It includes metadata about the request, such as code and message.\n\n**Common pitfalls**\n- Misinterpreting or ignoring status information can lead to incorrect conclusions about API request outcomes.",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "apiVersion",
          "code",
          "details",
          "kind",
          "message",
          "metadata",
          "reason",
          "status"
        ],
        "field_count": 8,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Status"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StatusCause",
      "type": "api_object",
      "title": "StatusCause",
      "summary": "StatusCause provides more information about an api.Status failure, including cases when multiple errors are encountered.",
      "body": "Represents a cause of a status, e.g. used by events and conditions.\n\n**Why it matters**\nProvides context for the status of an object, such as why it was rejected or what action is required to resolve an issue.\n\n**Key facts**\n- Has a field 'type' which indicates the type of cause\n- Has a field 'field' which indicates the field that caused the error\n\n**Common pitfalls**\n- Not all status causes are created equal; some may be more severe than others\n\n**Related**\nStatus, Conditions, Events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "field",
          "message",
          "reason"
        ],
        "field_count": 3,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:StatusDetails",
      "type": "api_object",
      "title": "StatusDetails",
      "summary": "StatusDetails is a set of additional properties that MAY be set by the server to provide additional information about a response. The Reason field of a Status object defines what attributes will be set. Clients must ignore fields that do not match the defined type of each attribute, and should assume that any attribute may be empty, invalid, or under defined.",
      "body": "Provides additional information about the reason why a request was rejected or an action failed.\n\n**Why it matters**\nHelps users understand the root cause of an issue and take corrective action.\n\n**Key facts**\n- Has fields 'name' and 'group' which identify the status details\n- Can have multiple causes\n\n**Common pitfalls**\n- May not always provide a clear explanation for the error\n\n**Related**\nStatus, Causes, Events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "causes",
          "group",
          "kind",
          "name",
          "retryAfterSeconds",
          "uid"
        ],
        "field_count": 6,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Time",
      "type": "api_object",
      "title": "Time",
      "summary": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON.  Wrappers are provided for many of the factory methods that the time package offers.",
      "body": "Represents a point in time.\n\n**Why it matters**\nUsed to track when an event occurred or an object was last updated.\n\n**Key facts**\n- Has fields 'seconds' and 'nanos' which represent the time as seconds and nanoseconds respectively\n\n**Common pitfalls**\n- Not all times are created equal; some may be more precise than others\n\n**Related**\nEvents, Objects, Watches",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:WatchEvent",
      "type": "api_object",
      "title": "WatchEvent",
      "summary": "Event represents a single event to a watched resource.",
      "body": "Represents an event that occurred during a watch.\n\n**Why it matters**\nProvides real-time updates on changes to objects and resources.\n\n**Key facts**\n- Has fields 'type' which indicates the type of event\n- Can have multiple causes\n\n**Common pitfalls**\n- May not always provide a clear explanation for the change\n\n**Related**\nWatches, Events, Status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "meta"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "meta",
        "version": "v1",
        "fields": [
          "object",
          "type"
        ],
        "field_count": 2,
        "def_name": "io.k8s.apimachinery.pkg.apis.meta.v1.WatchEvent"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.WatchEvent"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:RawExtension",
      "type": "api_object",
      "title": "RawExtension",
      "summary": "RawExtension is used to hold extensions in external versions.\n\nTo use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types.\n\n// Internal package:\n\n\ttype MyAPIObject struct {\n\t\truntime.TypeMeta `json:\"\"`\n\t\tMyPlugin runtime.Object `json:\"myPlugin\"`\n\t}\n\n\ttype PluginA struct {\n\t\tAOption string `json:\"aOption\"`\n\t}\n\n// External package:\n\n\ttype MyAPIObject struct {\n\t\truntime.TypeMeta `json:\"\"`\n\t\tMyPlugin runtime.RawExtension `json:\"myPlugin\"`\n\t}\n\n\ttype PluginA struct {\n\t\tAOption string `json:\"aOption\"`\n\t}\n\n// On the wire, the JSON will look something like this:\n\n\t{\n\t\t\"kind\":\"MyAPIObject\",\n\t\t\"apiVersion\":\"v1\",\n\t\t\"myPlugin\": {\n\t\t\t\"kind\":\"PluginA\",\n\t\t\t\"aOption\":\"foo\",\n\t\t},\n\t}\n\nSo what happens? Decode first uses json or yaml to unmarshal the serialized data into your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step is to copy (using pkg/conversion) into the internal struct. The runtime package's DefaultScheme has conversion functions installed which will unpack the JSON stored in RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: In the case where the object is of an unknown type, a runtime.Unknown object will be created and stored.)",
      "body": "Represents an extension of any type.\n\n**Why it matters**\nUsed to extend the functionality of Kubernetes API objects.\n\n**Key facts**\n- Extends any type\n- Used in Kubernetes API objects",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "pkg"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "pkg",
        "version": "runtime",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apimachinery.pkg.runtime.RawExtension"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.runtime.RawExtension"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:IntOrString",
      "type": "api_object",
      "title": "IntOrString",
      "summary": "IntOrString is a type that can hold an int32 or a string.  When used in JSON or YAML marshalling and unmarshalling, it produces or consumes the inner type.  This allows you to have, for example, a JSON field that can accept a name or number.",
      "body": "Represents an integer or string value.\n\n**Why it matters**\nUsed to represent values that can be either integers or strings.\n\n**Key facts**\n- Can hold an integer or string value\n- Used in Kubernetes API objects",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "util"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "util",
        "version": "intstr",
        "fields": [],
        "field_count": 0,
        "def_name": "io.k8s.apimachinery.pkg.util.intstr.IntOrString"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.util.intstr.IntOrString"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:Info",
      "type": "api_object",
      "title": "Info",
      "summary": "Info contains versioning information. how we'll want to distribute that information.",
      "body": "Represents version information for a Kubernetes component.\n\n**Why it matters**\nUsed to provide version information about Kubernetes components.\n\n**Key facts**\n- Provides version information\n- Used in Kubernetes API objects",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "pkg"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "pkg",
        "version": "version",
        "fields": [
          "buildDate",
          "compiler",
          "emulationMajor",
          "emulationMinor",
          "gitCommit",
          "gitTreeState",
          "gitVersion",
          "goVersion",
          "major",
          "minCompatibilityMajor",
          "minCompatibilityMinor",
          "minor",
          "platform"
        ],
        "field_count": 13,
        "def_name": "io.k8s.apimachinery.pkg.version.Info"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.version.Info"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:APIService",
      "type": "api_object",
      "title": "APIService",
      "summary": "APIService represents a server for a particular GroupVersion. Name must be \"version.group\".",
      "body": "Represents an APIService resource.\n\n**Why it matters**\nUsed to manage APIServices in a Kubernetes cluster.\n\n**Key facts**\n- Manages APIServices\n- Used in Kubernetes API objects",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiregistration",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "kind",
          "metadata",
          "spec",
          "status"
        ],
        "field_count": 5,
        "def_name": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIService"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIService"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:APIServiceCondition",
      "type": "api_object",
      "title": "APIServiceCondition",
      "summary": "APIServiceCondition describes the state of an APIService at a particular point",
      "body": "Represents the condition of an APIService.\n\n**Why it matters**\nUsed to track the status of an APIService, such as its readiness or availability.\n\n**Key facts**\n- Has a type field that indicates the condition's meaning (e.g., 'Available').\n- Can have a message and reason associated with it.\n\n**Common pitfalls**\n- Not all conditions are created equal; some may be more important than others for a given APIService.\n\n**Related**\nAPIService, APIServiceList",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiregistration",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiregistration",
        "version": "v1",
        "fields": [
          "lastTransitionTime",
          "message",
          "reason",
          "status",
          "type"
        ],
        "field_count": 5,
        "def_name": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceCondition"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceCondition"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:APIServiceList",
      "type": "api_object",
      "title": "APIServiceList",
      "summary": "APIServiceList is a list of APIService objects.",
      "body": "A list of APIServices.\n\n**Why it matters**\nUsed to retrieve or manipulate multiple APIServices at once.\n\n**Key facts**\n- Contains a list of APIService objects, each with its own metadata and status.\n\n**Common pitfalls**\n- Care must be taken when updating or deleting multiple APIServices simultaneously.\n\n**Related**\nAPIService, APIServiceCondition",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiregistration",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiregistration",
        "version": "v1",
        "fields": [
          "apiVersion",
          "items",
          "kind",
          "metadata"
        ],
        "field_count": 4,
        "def_name": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceList"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceList"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:APIServiceSpec",
      "type": "api_object",
      "title": "APIServiceSpec",
      "summary": "APIServiceSpec contains information for locating and communicating with a server. Only https is supported, though you are able to disable certificate verification.",
      "body": "Describes the desired state of an APIService.\n\n**Why it matters**\nUsed to define or update the configuration of an APIService.\n\n**Key facts**\n- Includes a name, group, and version for the API being served.\n\n**Common pitfalls**\n- Inaccurate or incomplete specification can lead to errors or inconsistencies in the APIService's behavior.\n\n**Related**\nAPIService, APIServiceStatus",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiregistration",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiregistration",
        "version": "v1",
        "fields": [
          "caBundle",
          "group",
          "groupPriorityMinimum",
          "insecureSkipTLSVerify",
          "service",
          "version",
          "versionPriority"
        ],
        "field_count": 7,
        "def_name": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceSpec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceSpec"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "api:APIServiceStatus",
      "type": "api_object",
      "title": "APIServiceStatus",
      "summary": "APIServiceStatus contains derived information about an API server",
      "body": "Describes the observed state of an APIService.\n\n**Why it matters**\nUsed to report on the current status or health of an APIService.\n\n**Key facts**\n- Includes a set of conditions that describe its readiness and availability.\n\n**Common pitfalls**\n- Status information may not always reflect the actual state of the APIService, due to factors like network latency or cache inconsistencies.\n\n**Related**\nAPIService, APIServiceSpec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apiregistration",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "group": "apiregistration",
        "version": "v1",
        "fields": [
          "conditions"
        ],
        "field_count": 1,
        "def_name": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceStatus"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceStatus"
        }
      ],
      "confidence": 0.82,
      "derived_by": "ai:llama3.1:8b"
    },
    {
      "id": "apipath:get /.well-known/openid-configuration/",
      "type": "api_path",
      "title": "getServiceAccountIssuerOpenIDConfiguration",
      "summary": "get service account issuer OpenID configuration, also known as the 'OIDC discovery doc'",
      "body": "GET /.well-known/openid-configuration/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/.well-known/openid-configuration/",
        "operationId": "getServiceAccountIssuerOpenIDConfiguration",
        "kind": "Openid"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/.well-known/openid-configuration/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/",
      "type": "api_path",
      "title": "getCoreAPIVersions",
      "summary": "get available API versions",
      "body": "GET /api/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/",
        "operationId": "getCoreAPIVersions",
        "kind": "Api"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/",
      "type": "api_path",
      "title": "getCoreV1APIResources",
      "summary": "get available resources",
      "body": "GET /api/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/",
        "operationId": "getCoreV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/componentstatuses",
      "type": "api_path",
      "title": "listCoreV1ComponentStatus",
      "summary": "list objects of kind ComponentStatus",
      "body": "GET /api/v1/componentstatuses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/componentstatuses",
        "operationId": "listCoreV1ComponentStatus",
        "kind": "Componentstatuses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/componentstatuses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/componentstatuses/{name}",
      "type": "api_path",
      "title": "readCoreV1ComponentStatus",
      "summary": "read the specified ComponentStatus",
      "body": "GET /api/v1/componentstatuses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/componentstatuses/{name}",
        "operationId": "readCoreV1ComponentStatus",
        "kind": "Componentstatuses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/componentstatuses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/configmaps",
      "type": "api_path",
      "title": "listCoreV1ConfigMapForAllNamespaces",
      "summary": "list or watch objects of kind ConfigMap",
      "body": "GET /api/v1/configmaps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/configmaps",
        "operationId": "listCoreV1ConfigMapForAllNamespaces",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/configmaps"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/endpoints",
      "type": "api_path",
      "title": "listCoreV1EndpointsForAllNamespaces",
      "summary": "list or watch objects of kind Endpoints",
      "body": "GET /api/v1/endpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/endpoints",
        "operationId": "listCoreV1EndpointsForAllNamespaces",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/endpoints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/events",
      "type": "api_path",
      "title": "listCoreV1EventForAllNamespaces",
      "summary": "list or watch objects of kind Event",
      "body": "GET /api/v1/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/events",
        "operationId": "listCoreV1EventForAllNamespaces",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/limitranges",
      "type": "api_path",
      "title": "listCoreV1LimitRangeForAllNamespaces",
      "summary": "list or watch objects of kind LimitRange",
      "body": "GET /api/v1/limitranges",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/limitranges",
        "operationId": "listCoreV1LimitRangeForAllNamespaces",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/limitranges"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces",
      "type": "api_path",
      "title": "listCoreV1Namespace",
      "summary": "list or watch objects of kind Namespace",
      "body": "GET /api/v1/namespaces",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces",
        "operationId": "listCoreV1Namespace",
        "kind": "Namespaces"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces",
      "type": "api_path",
      "title": "createCoreV1Namespace",
      "summary": "create a Namespace",
      "body": "POST /api/v1/namespaces",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces",
        "operationId": "createCoreV1Namespace",
        "kind": "Namespaces"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/bindings",
      "type": "api_path",
      "title": "createCoreV1NamespacedBinding",
      "summary": "create a Binding",
      "body": "POST /api/v1/namespaces/{namespace}/bindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/bindings",
        "operationId": "createCoreV1NamespacedBinding",
        "kind": "Bindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/bindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/configmaps",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedConfigMap",
      "summary": "delete collection of ConfigMap",
      "body": "DELETE /api/v1/namespaces/{namespace}/configmaps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/configmaps",
        "operationId": "deleteCoreV1CollectionNamespacedConfigMap",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/configmaps"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/configmaps",
      "type": "api_path",
      "title": "listCoreV1NamespacedConfigMap",
      "summary": "list or watch objects of kind ConfigMap",
      "body": "GET /api/v1/namespaces/{namespace}/configmaps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/configmaps",
        "operationId": "listCoreV1NamespacedConfigMap",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/configmaps"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/configmaps",
      "type": "api_path",
      "title": "createCoreV1NamespacedConfigMap",
      "summary": "create a ConfigMap",
      "body": "POST /api/v1/namespaces/{namespace}/configmaps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/configmaps",
        "operationId": "createCoreV1NamespacedConfigMap",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/configmaps"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/configmaps/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedConfigMap",
      "summary": "delete a ConfigMap",
      "body": "DELETE /api/v1/namespaces/{namespace}/configmaps/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/configmaps/{name}",
        "operationId": "deleteCoreV1NamespacedConfigMap",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/configmaps/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/configmaps/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedConfigMap",
      "summary": "read the specified ConfigMap",
      "body": "GET /api/v1/namespaces/{namespace}/configmaps/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/configmaps/{name}",
        "operationId": "readCoreV1NamespacedConfigMap",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/configmaps/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/configmaps/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedConfigMap",
      "summary": "partially update the specified ConfigMap",
      "body": "PATCH /api/v1/namespaces/{namespace}/configmaps/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/configmaps/{name}",
        "operationId": "patchCoreV1NamespacedConfigMap",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/configmaps/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/configmaps/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedConfigMap",
      "summary": "replace the specified ConfigMap",
      "body": "PUT /api/v1/namespaces/{namespace}/configmaps/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/configmaps/{name}",
        "operationId": "replaceCoreV1NamespacedConfigMap",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/configmaps/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/endpoints",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedEndpoints",
      "summary": "delete collection of Endpoints",
      "body": "DELETE /api/v1/namespaces/{namespace}/endpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/endpoints",
        "operationId": "deleteCoreV1CollectionNamespacedEndpoints",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/endpoints",
      "type": "api_path",
      "title": "listCoreV1NamespacedEndpoints",
      "summary": "list or watch objects of kind Endpoints",
      "body": "GET /api/v1/namespaces/{namespace}/endpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/endpoints",
        "operationId": "listCoreV1NamespacedEndpoints",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/endpoints",
      "type": "api_path",
      "title": "createCoreV1NamespacedEndpoints",
      "summary": "create Endpoints",
      "body": "POST /api/v1/namespaces/{namespace}/endpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/endpoints",
        "operationId": "createCoreV1NamespacedEndpoints",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/endpoints/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedEndpoints",
      "summary": "delete Endpoints",
      "body": "DELETE /api/v1/namespaces/{namespace}/endpoints/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/endpoints/{name}",
        "operationId": "deleteCoreV1NamespacedEndpoints",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/endpoints/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedEndpoints",
      "summary": "read the specified Endpoints",
      "body": "GET /api/v1/namespaces/{namespace}/endpoints/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/endpoints/{name}",
        "operationId": "readCoreV1NamespacedEndpoints",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/endpoints/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedEndpoints",
      "summary": "partially update the specified Endpoints",
      "body": "PATCH /api/v1/namespaces/{namespace}/endpoints/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/endpoints/{name}",
        "operationId": "patchCoreV1NamespacedEndpoints",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/endpoints/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedEndpoints",
      "summary": "replace the specified Endpoints",
      "body": "PUT /api/v1/namespaces/{namespace}/endpoints/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/endpoints/{name}",
        "operationId": "replaceCoreV1NamespacedEndpoints",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/events",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedEvent",
      "summary": "delete collection of Event",
      "body": "DELETE /api/v1/namespaces/{namespace}/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/events",
        "operationId": "deleteCoreV1CollectionNamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/events",
      "type": "api_path",
      "title": "listCoreV1NamespacedEvent",
      "summary": "list or watch objects of kind Event",
      "body": "GET /api/v1/namespaces/{namespace}/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/events",
        "operationId": "listCoreV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/events",
      "type": "api_path",
      "title": "createCoreV1NamespacedEvent",
      "summary": "create an Event",
      "body": "POST /api/v1/namespaces/{namespace}/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/events",
        "operationId": "createCoreV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/events/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedEvent",
      "summary": "delete an Event",
      "body": "DELETE /api/v1/namespaces/{namespace}/events/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/events/{name}",
        "operationId": "deleteCoreV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/events/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/events/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedEvent",
      "summary": "read the specified Event",
      "body": "GET /api/v1/namespaces/{namespace}/events/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/events/{name}",
        "operationId": "readCoreV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/events/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/events/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedEvent",
      "summary": "partially update the specified Event",
      "body": "PATCH /api/v1/namespaces/{namespace}/events/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/events/{name}",
        "operationId": "patchCoreV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/events/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/events/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedEvent",
      "summary": "replace the specified Event",
      "body": "PUT /api/v1/namespaces/{namespace}/events/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/events/{name}",
        "operationId": "replaceCoreV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/events/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/limitranges",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedLimitRange",
      "summary": "delete collection of LimitRange",
      "body": "DELETE /api/v1/namespaces/{namespace}/limitranges",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/limitranges",
        "operationId": "deleteCoreV1CollectionNamespacedLimitRange",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/limitranges"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/limitranges",
      "type": "api_path",
      "title": "listCoreV1NamespacedLimitRange",
      "summary": "list or watch objects of kind LimitRange",
      "body": "GET /api/v1/namespaces/{namespace}/limitranges",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/limitranges",
        "operationId": "listCoreV1NamespacedLimitRange",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/limitranges"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/limitranges",
      "type": "api_path",
      "title": "createCoreV1NamespacedLimitRange",
      "summary": "create a LimitRange",
      "body": "POST /api/v1/namespaces/{namespace}/limitranges",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/limitranges",
        "operationId": "createCoreV1NamespacedLimitRange",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/limitranges"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/limitranges/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedLimitRange",
      "summary": "delete a LimitRange",
      "body": "DELETE /api/v1/namespaces/{namespace}/limitranges/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/limitranges/{name}",
        "operationId": "deleteCoreV1NamespacedLimitRange",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/limitranges/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/limitranges/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedLimitRange",
      "summary": "read the specified LimitRange",
      "body": "GET /api/v1/namespaces/{namespace}/limitranges/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/limitranges/{name}",
        "operationId": "readCoreV1NamespacedLimitRange",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/limitranges/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/limitranges/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedLimitRange",
      "summary": "partially update the specified LimitRange",
      "body": "PATCH /api/v1/namespaces/{namespace}/limitranges/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/limitranges/{name}",
        "operationId": "patchCoreV1NamespacedLimitRange",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/limitranges/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/limitranges/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedLimitRange",
      "summary": "replace the specified LimitRange",
      "body": "PUT /api/v1/namespaces/{namespace}/limitranges/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/limitranges/{name}",
        "operationId": "replaceCoreV1NamespacedLimitRange",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/limitranges/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/persistentvolumeclaims",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedPersistentVolumeClaim",
      "summary": "delete collection of PersistentVolumeClaim",
      "body": "DELETE /api/v1/namespaces/{namespace}/persistentvolumeclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/persistentvolumeclaims",
        "operationId": "deleteCoreV1CollectionNamespacedPersistentVolumeClaim",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/persistentvolumeclaims",
      "type": "api_path",
      "title": "listCoreV1NamespacedPersistentVolumeClaim",
      "summary": "list or watch objects of kind PersistentVolumeClaim",
      "body": "GET /api/v1/namespaces/{namespace}/persistentvolumeclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/persistentvolumeclaims",
        "operationId": "listCoreV1NamespacedPersistentVolumeClaim",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/persistentvolumeclaims",
      "type": "api_path",
      "title": "createCoreV1NamespacedPersistentVolumeClaim",
      "summary": "create a PersistentVolumeClaim",
      "body": "POST /api/v1/namespaces/{namespace}/persistentvolumeclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/persistentvolumeclaims",
        "operationId": "createCoreV1NamespacedPersistentVolumeClaim",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedPersistentVolumeClaim",
      "summary": "delete a PersistentVolumeClaim",
      "body": "DELETE /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
        "operationId": "deleteCoreV1NamespacedPersistentVolumeClaim",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedPersistentVolumeClaim",
      "summary": "read the specified PersistentVolumeClaim",
      "body": "GET /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
        "operationId": "readCoreV1NamespacedPersistentVolumeClaim",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedPersistentVolumeClaim",
      "summary": "partially update the specified PersistentVolumeClaim",
      "body": "PATCH /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
        "operationId": "patchCoreV1NamespacedPersistentVolumeClaim",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedPersistentVolumeClaim",
      "summary": "replace the specified PersistentVolumeClaim",
      "body": "PUT /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}",
        "operationId": "replaceCoreV1NamespacedPersistentVolumeClaim",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
      "type": "api_path",
      "title": "readCoreV1NamespacedPersistentVolumeClaimStatus",
      "summary": "read status of the specified PersistentVolumeClaim",
      "body": "GET /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
        "operationId": "readCoreV1NamespacedPersistentVolumeClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
      "type": "api_path",
      "title": "patchCoreV1NamespacedPersistentVolumeClaimStatus",
      "summary": "partially update status of the specified PersistentVolumeClaim",
      "body": "PATCH /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
        "operationId": "patchCoreV1NamespacedPersistentVolumeClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedPersistentVolumeClaimStatus",
      "summary": "replace status of the specified PersistentVolumeClaim",
      "body": "PUT /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
        "operationId": "replaceCoreV1NamespacedPersistentVolumeClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/pods",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedPod",
      "summary": "delete collection of Pod",
      "body": "DELETE /api/v1/namespaces/{namespace}/pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/pods",
        "operationId": "deleteCoreV1CollectionNamespacedPod",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods",
      "type": "api_path",
      "title": "listCoreV1NamespacedPod",
      "summary": "list or watch objects of kind Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods",
        "operationId": "listCoreV1NamespacedPod",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/pods",
      "type": "api_path",
      "title": "createCoreV1NamespacedPod",
      "summary": "create a Pod",
      "body": "POST /api/v1/namespaces/{namespace}/pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/pods",
        "operationId": "createCoreV1NamespacedPod",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/pods/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedPod",
      "summary": "delete a Pod",
      "body": "DELETE /api/v1/namespaces/{namespace}/pods/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}",
        "operationId": "deleteCoreV1NamespacedPod",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedPod",
      "summary": "read the specified Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}",
        "operationId": "readCoreV1NamespacedPod",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/pods/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedPod",
      "summary": "partially update the specified Pod",
      "body": "PATCH /api/v1/namespaces/{namespace}/pods/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}",
        "operationId": "patchCoreV1NamespacedPod",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/pods/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedPod",
      "summary": "replace the specified Pod",
      "body": "PUT /api/v1/namespaces/{namespace}/pods/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}",
        "operationId": "replaceCoreV1NamespacedPod",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}/attach",
      "type": "api_path",
      "title": "connectCoreV1GetNamespacedPodAttach",
      "summary": "connect GET requests to attach of Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods/{name}/attach",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/attach",
        "operationId": "connectCoreV1GetNamespacedPodAttach",
        "kind": "Attach"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/attach"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/pods/{name}/attach",
      "type": "api_path",
      "title": "connectCoreV1PostNamespacedPodAttach",
      "summary": "connect POST requests to attach of Pod",
      "body": "POST /api/v1/namespaces/{namespace}/pods/{name}/attach",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/attach",
        "operationId": "connectCoreV1PostNamespacedPodAttach",
        "kind": "Attach"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/attach"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/pods/{name}/binding",
      "type": "api_path",
      "title": "createCoreV1NamespacedPodBinding",
      "summary": "create binding of a Pod",
      "body": "POST /api/v1/namespaces/{namespace}/pods/{name}/binding",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/binding",
        "operationId": "createCoreV1NamespacedPodBinding",
        "kind": "Binding"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/binding"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers",
      "type": "api_path",
      "title": "readCoreV1NamespacedPodEphemeralcontainers",
      "summary": "read ephemeralcontainers of the specified Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers",
        "operationId": "readCoreV1NamespacedPodEphemeralcontainers",
        "kind": "Ephemeralcontainers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers",
      "type": "api_path",
      "title": "patchCoreV1NamespacedPodEphemeralcontainers",
      "summary": "partially update ephemeralcontainers of the specified Pod",
      "body": "PATCH /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers",
        "operationId": "patchCoreV1NamespacedPodEphemeralcontainers",
        "kind": "Ephemeralcontainers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedPodEphemeralcontainers",
      "summary": "replace ephemeralcontainers of the specified Pod",
      "body": "PUT /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers",
        "operationId": "replaceCoreV1NamespacedPodEphemeralcontainers",
        "kind": "Ephemeralcontainers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/pods/{name}/eviction",
      "type": "api_path",
      "title": "createCoreV1NamespacedPodEviction",
      "summary": "create eviction of a Pod",
      "body": "POST /api/v1/namespaces/{namespace}/pods/{name}/eviction",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/eviction",
        "operationId": "createCoreV1NamespacedPodEviction",
        "kind": "Eviction"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/eviction"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}/exec",
      "type": "api_path",
      "title": "connectCoreV1GetNamespacedPodExec",
      "summary": "connect GET requests to exec of Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods/{name}/exec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/exec",
        "operationId": "connectCoreV1GetNamespacedPodExec",
        "kind": "Exec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/exec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/pods/{name}/exec",
      "type": "api_path",
      "title": "connectCoreV1PostNamespacedPodExec",
      "summary": "connect POST requests to exec of Pod",
      "body": "POST /api/v1/namespaces/{namespace}/pods/{name}/exec",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/exec",
        "operationId": "connectCoreV1PostNamespacedPodExec",
        "kind": "Exec"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/exec"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}/log",
      "type": "api_path",
      "title": "readCoreV1NamespacedPodLog",
      "summary": "read log of the specified Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods/{name}/log",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/log",
        "operationId": "readCoreV1NamespacedPodLog",
        "kind": "Log"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/log"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}/portforward",
      "type": "api_path",
      "title": "connectCoreV1GetNamespacedPodPortforward",
      "summary": "connect GET requests to portforward of Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods/{name}/portforward",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/portforward",
        "operationId": "connectCoreV1GetNamespacedPodPortforward",
        "kind": "Portforward"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/portforward"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/pods/{name}/portforward",
      "type": "api_path",
      "title": "connectCoreV1PostNamespacedPodPortforward",
      "summary": "connect POST requests to portforward of Pod",
      "body": "POST /api/v1/namespaces/{namespace}/pods/{name}/portforward",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/portforward",
        "operationId": "connectCoreV1PostNamespacedPodPortforward",
        "kind": "Portforward"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/portforward"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/pods/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1DeleteNamespacedPodProxy",
      "summary": "connect DELETE requests to proxy of Pod",
      "body": "DELETE /api/v1/namespaces/{namespace}/pods/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/proxy",
        "operationId": "connectCoreV1DeleteNamespacedPodProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1GetNamespacedPodProxy",
      "summary": "connect GET requests to proxy of Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/proxy",
        "operationId": "connectCoreV1GetNamespacedPodProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/pods/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1PatchNamespacedPodProxy",
      "summary": "connect PATCH requests to proxy of Pod",
      "body": "PATCH /api/v1/namespaces/{namespace}/pods/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/proxy",
        "operationId": "connectCoreV1PatchNamespacedPodProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/pods/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1PostNamespacedPodProxy",
      "summary": "connect POST requests to proxy of Pod",
      "body": "POST /api/v1/namespaces/{namespace}/pods/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/proxy",
        "operationId": "connectCoreV1PostNamespacedPodProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/pods/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1PutNamespacedPodProxy",
      "summary": "connect PUT requests to proxy of Pod",
      "body": "PUT /api/v1/namespaces/{namespace}/pods/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/proxy",
        "operationId": "connectCoreV1PutNamespacedPodProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1DeleteNamespacedPodProxyWithPath",
      "summary": "connect DELETE requests to proxy of Pod",
      "body": "DELETE /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
        "operationId": "connectCoreV1DeleteNamespacedPodProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1GetNamespacedPodProxyWithPath",
      "summary": "connect GET requests to proxy of Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
        "operationId": "connectCoreV1GetNamespacedPodProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1PatchNamespacedPodProxyWithPath",
      "summary": "connect PATCH requests to proxy of Pod",
      "body": "PATCH /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
        "operationId": "connectCoreV1PatchNamespacedPodProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1PostNamespacedPodProxyWithPath",
      "summary": "connect POST requests to proxy of Pod",
      "body": "POST /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
        "operationId": "connectCoreV1PostNamespacedPodProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1PutNamespacedPodProxyWithPath",
      "summary": "connect PUT requests to proxy of Pod",
      "body": "PUT /api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}",
        "operationId": "connectCoreV1PutNamespacedPodProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}/resize",
      "type": "api_path",
      "title": "readCoreV1NamespacedPodResize",
      "summary": "read resize of the specified Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods/{name}/resize",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/resize",
        "operationId": "readCoreV1NamespacedPodResize",
        "kind": "Resize"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/resize"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/pods/{name}/resize",
      "type": "api_path",
      "title": "patchCoreV1NamespacedPodResize",
      "summary": "partially update resize of the specified Pod",
      "body": "PATCH /api/v1/namespaces/{namespace}/pods/{name}/resize",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/resize",
        "operationId": "patchCoreV1NamespacedPodResize",
        "kind": "Resize"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/resize"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/pods/{name}/resize",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedPodResize",
      "summary": "replace resize of the specified Pod",
      "body": "PUT /api/v1/namespaces/{namespace}/pods/{name}/resize",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/resize",
        "operationId": "replaceCoreV1NamespacedPodResize",
        "kind": "Resize"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/resize"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}/status",
      "type": "api_path",
      "title": "readCoreV1NamespacedPodStatus",
      "summary": "read status of the specified Pod",
      "body": "GET /api/v1/namespaces/{namespace}/pods/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/status",
        "operationId": "readCoreV1NamespacedPodStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/pods/{name}/status",
      "type": "api_path",
      "title": "patchCoreV1NamespacedPodStatus",
      "summary": "partially update status of the specified Pod",
      "body": "PATCH /api/v1/namespaces/{namespace}/pods/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/status",
        "operationId": "patchCoreV1NamespacedPodStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/pods/{name}/status",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedPodStatus",
      "summary": "replace status of the specified Pod",
      "body": "PUT /api/v1/namespaces/{namespace}/pods/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/pods/{name}/status",
        "operationId": "replaceCoreV1NamespacedPodStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/podtemplates",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedPodTemplate",
      "summary": "delete collection of PodTemplate",
      "body": "DELETE /api/v1/namespaces/{namespace}/podtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/podtemplates",
        "operationId": "deleteCoreV1CollectionNamespacedPodTemplate",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/podtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/podtemplates",
      "type": "api_path",
      "title": "listCoreV1NamespacedPodTemplate",
      "summary": "list or watch objects of kind PodTemplate",
      "body": "GET /api/v1/namespaces/{namespace}/podtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/podtemplates",
        "operationId": "listCoreV1NamespacedPodTemplate",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/podtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/podtemplates",
      "type": "api_path",
      "title": "createCoreV1NamespacedPodTemplate",
      "summary": "create a PodTemplate",
      "body": "POST /api/v1/namespaces/{namespace}/podtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/podtemplates",
        "operationId": "createCoreV1NamespacedPodTemplate",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/podtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/podtemplates/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedPodTemplate",
      "summary": "delete a PodTemplate",
      "body": "DELETE /api/v1/namespaces/{namespace}/podtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/podtemplates/{name}",
        "operationId": "deleteCoreV1NamespacedPodTemplate",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/podtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/podtemplates/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedPodTemplate",
      "summary": "read the specified PodTemplate",
      "body": "GET /api/v1/namespaces/{namespace}/podtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/podtemplates/{name}",
        "operationId": "readCoreV1NamespacedPodTemplate",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/podtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/podtemplates/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedPodTemplate",
      "summary": "partially update the specified PodTemplate",
      "body": "PATCH /api/v1/namespaces/{namespace}/podtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/podtemplates/{name}",
        "operationId": "patchCoreV1NamespacedPodTemplate",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/podtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/podtemplates/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedPodTemplate",
      "summary": "replace the specified PodTemplate",
      "body": "PUT /api/v1/namespaces/{namespace}/podtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/podtemplates/{name}",
        "operationId": "replaceCoreV1NamespacedPodTemplate",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/podtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/replicationcontrollers",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedReplicationController",
      "summary": "delete collection of ReplicationController",
      "body": "DELETE /api/v1/namespaces/{namespace}/replicationcontrollers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers",
        "operationId": "deleteCoreV1CollectionNamespacedReplicationController",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/replicationcontrollers",
      "type": "api_path",
      "title": "listCoreV1NamespacedReplicationController",
      "summary": "list or watch objects of kind ReplicationController",
      "body": "GET /api/v1/namespaces/{namespace}/replicationcontrollers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers",
        "operationId": "listCoreV1NamespacedReplicationController",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/replicationcontrollers",
      "type": "api_path",
      "title": "createCoreV1NamespacedReplicationController",
      "summary": "create a ReplicationController",
      "body": "POST /api/v1/namespaces/{namespace}/replicationcontrollers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers",
        "operationId": "createCoreV1NamespacedReplicationController",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedReplicationController",
      "summary": "delete a ReplicationController",
      "body": "DELETE /api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
        "operationId": "deleteCoreV1NamespacedReplicationController",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedReplicationController",
      "summary": "read the specified ReplicationController",
      "body": "GET /api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
        "operationId": "readCoreV1NamespacedReplicationController",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedReplicationController",
      "summary": "partially update the specified ReplicationController",
      "body": "PATCH /api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
        "operationId": "patchCoreV1NamespacedReplicationController",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedReplicationController",
      "summary": "replace the specified ReplicationController",
      "body": "PUT /api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}",
        "operationId": "replaceCoreV1NamespacedReplicationController",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
      "type": "api_path",
      "title": "readCoreV1NamespacedReplicationControllerScale",
      "summary": "read scale of the specified ReplicationController",
      "body": "GET /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
        "operationId": "readCoreV1NamespacedReplicationControllerScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
      "type": "api_path",
      "title": "patchCoreV1NamespacedReplicationControllerScale",
      "summary": "partially update scale of the specified ReplicationController",
      "body": "PATCH /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
        "operationId": "patchCoreV1NamespacedReplicationControllerScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedReplicationControllerScale",
      "summary": "replace scale of the specified ReplicationController",
      "body": "PUT /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
        "operationId": "replaceCoreV1NamespacedReplicationControllerScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
      "type": "api_path",
      "title": "readCoreV1NamespacedReplicationControllerStatus",
      "summary": "read status of the specified ReplicationController",
      "body": "GET /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
        "operationId": "readCoreV1NamespacedReplicationControllerStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
      "type": "api_path",
      "title": "patchCoreV1NamespacedReplicationControllerStatus",
      "summary": "partially update status of the specified ReplicationController",
      "body": "PATCH /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
        "operationId": "patchCoreV1NamespacedReplicationControllerStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedReplicationControllerStatus",
      "summary": "replace status of the specified ReplicationController",
      "body": "PUT /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
        "operationId": "replaceCoreV1NamespacedReplicationControllerStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/resourcequotas",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedResourceQuota",
      "summary": "delete collection of ResourceQuota",
      "body": "DELETE /api/v1/namespaces/{namespace}/resourcequotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/resourcequotas",
        "operationId": "deleteCoreV1CollectionNamespacedResourceQuota",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/resourcequotas",
      "type": "api_path",
      "title": "listCoreV1NamespacedResourceQuota",
      "summary": "list or watch objects of kind ResourceQuota",
      "body": "GET /api/v1/namespaces/{namespace}/resourcequotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/resourcequotas",
        "operationId": "listCoreV1NamespacedResourceQuota",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/resourcequotas",
      "type": "api_path",
      "title": "createCoreV1NamespacedResourceQuota",
      "summary": "create a ResourceQuota",
      "body": "POST /api/v1/namespaces/{namespace}/resourcequotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/resourcequotas",
        "operationId": "createCoreV1NamespacedResourceQuota",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/resourcequotas/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedResourceQuota",
      "summary": "delete a ResourceQuota",
      "body": "DELETE /api/v1/namespaces/{namespace}/resourcequotas/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/resourcequotas/{name}",
        "operationId": "deleteCoreV1NamespacedResourceQuota",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/resourcequotas/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedResourceQuota",
      "summary": "read the specified ResourceQuota",
      "body": "GET /api/v1/namespaces/{namespace}/resourcequotas/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/resourcequotas/{name}",
        "operationId": "readCoreV1NamespacedResourceQuota",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/resourcequotas/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedResourceQuota",
      "summary": "partially update the specified ResourceQuota",
      "body": "PATCH /api/v1/namespaces/{namespace}/resourcequotas/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/resourcequotas/{name}",
        "operationId": "patchCoreV1NamespacedResourceQuota",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/resourcequotas/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedResourceQuota",
      "summary": "replace the specified ResourceQuota",
      "body": "PUT /api/v1/namespaces/{namespace}/resourcequotas/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/resourcequotas/{name}",
        "operationId": "replaceCoreV1NamespacedResourceQuota",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
      "type": "api_path",
      "title": "readCoreV1NamespacedResourceQuotaStatus",
      "summary": "read status of the specified ResourceQuota",
      "body": "GET /api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
        "operationId": "readCoreV1NamespacedResourceQuotaStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
      "type": "api_path",
      "title": "patchCoreV1NamespacedResourceQuotaStatus",
      "summary": "partially update status of the specified ResourceQuota",
      "body": "PATCH /api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
        "operationId": "patchCoreV1NamespacedResourceQuotaStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedResourceQuotaStatus",
      "summary": "replace status of the specified ResourceQuota",
      "body": "PUT /api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
        "operationId": "replaceCoreV1NamespacedResourceQuotaStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/secrets",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedSecret",
      "summary": "delete collection of Secret",
      "body": "DELETE /api/v1/namespaces/{namespace}/secrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/secrets",
        "operationId": "deleteCoreV1CollectionNamespacedSecret",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/secrets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/secrets",
      "type": "api_path",
      "title": "listCoreV1NamespacedSecret",
      "summary": "list or watch objects of kind Secret",
      "body": "GET /api/v1/namespaces/{namespace}/secrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/secrets",
        "operationId": "listCoreV1NamespacedSecret",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/secrets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/secrets",
      "type": "api_path",
      "title": "createCoreV1NamespacedSecret",
      "summary": "create a Secret",
      "body": "POST /api/v1/namespaces/{namespace}/secrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/secrets",
        "operationId": "createCoreV1NamespacedSecret",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/secrets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/secrets/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedSecret",
      "summary": "delete a Secret",
      "body": "DELETE /api/v1/namespaces/{namespace}/secrets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/secrets/{name}",
        "operationId": "deleteCoreV1NamespacedSecret",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/secrets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/secrets/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedSecret",
      "summary": "read the specified Secret",
      "body": "GET /api/v1/namespaces/{namespace}/secrets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/secrets/{name}",
        "operationId": "readCoreV1NamespacedSecret",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/secrets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/secrets/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedSecret",
      "summary": "partially update the specified Secret",
      "body": "PATCH /api/v1/namespaces/{namespace}/secrets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/secrets/{name}",
        "operationId": "patchCoreV1NamespacedSecret",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/secrets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/secrets/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedSecret",
      "summary": "replace the specified Secret",
      "body": "PUT /api/v1/namespaces/{namespace}/secrets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/secrets/{name}",
        "operationId": "replaceCoreV1NamespacedSecret",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/secrets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/serviceaccounts",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedServiceAccount",
      "summary": "delete collection of ServiceAccount",
      "body": "DELETE /api/v1/namespaces/{namespace}/serviceaccounts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/serviceaccounts",
        "operationId": "deleteCoreV1CollectionNamespacedServiceAccount",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/serviceaccounts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/serviceaccounts",
      "type": "api_path",
      "title": "listCoreV1NamespacedServiceAccount",
      "summary": "list or watch objects of kind ServiceAccount",
      "body": "GET /api/v1/namespaces/{namespace}/serviceaccounts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/serviceaccounts",
        "operationId": "listCoreV1NamespacedServiceAccount",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/serviceaccounts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/serviceaccounts",
      "type": "api_path",
      "title": "createCoreV1NamespacedServiceAccount",
      "summary": "create a ServiceAccount",
      "body": "POST /api/v1/namespaces/{namespace}/serviceaccounts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/serviceaccounts",
        "operationId": "createCoreV1NamespacedServiceAccount",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/serviceaccounts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/serviceaccounts/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedServiceAccount",
      "summary": "delete a ServiceAccount",
      "body": "DELETE /api/v1/namespaces/{namespace}/serviceaccounts/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/serviceaccounts/{name}",
        "operationId": "deleteCoreV1NamespacedServiceAccount",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/serviceaccounts/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/serviceaccounts/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedServiceAccount",
      "summary": "read the specified ServiceAccount",
      "body": "GET /api/v1/namespaces/{namespace}/serviceaccounts/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/serviceaccounts/{name}",
        "operationId": "readCoreV1NamespacedServiceAccount",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/serviceaccounts/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/serviceaccounts/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedServiceAccount",
      "summary": "partially update the specified ServiceAccount",
      "body": "PATCH /api/v1/namespaces/{namespace}/serviceaccounts/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/serviceaccounts/{name}",
        "operationId": "patchCoreV1NamespacedServiceAccount",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/serviceaccounts/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/serviceaccounts/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedServiceAccount",
      "summary": "replace the specified ServiceAccount",
      "body": "PUT /api/v1/namespaces/{namespace}/serviceaccounts/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/serviceaccounts/{name}",
        "operationId": "replaceCoreV1NamespacedServiceAccount",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/serviceaccounts/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/serviceaccounts/{name}/token",
      "type": "api_path",
      "title": "createCoreV1NamespacedServiceAccountToken",
      "summary": "create token of a ServiceAccount",
      "body": "POST /api/v1/namespaces/{namespace}/serviceaccounts/{name}/token",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/serviceaccounts/{name}/token",
        "operationId": "createCoreV1NamespacedServiceAccountToken",
        "kind": "Token"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/serviceaccounts/{name}/token"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/services",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNamespacedService",
      "summary": "delete collection of Service",
      "body": "DELETE /api/v1/namespaces/{namespace}/services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/services",
        "operationId": "deleteCoreV1CollectionNamespacedService",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/services",
      "type": "api_path",
      "title": "listCoreV1NamespacedService",
      "summary": "list or watch objects of kind Service",
      "body": "GET /api/v1/namespaces/{namespace}/services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/services",
        "operationId": "listCoreV1NamespacedService",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/services",
      "type": "api_path",
      "title": "createCoreV1NamespacedService",
      "summary": "create a Service",
      "body": "POST /api/v1/namespaces/{namespace}/services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/services",
        "operationId": "createCoreV1NamespacedService",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/services/{name}",
      "type": "api_path",
      "title": "deleteCoreV1NamespacedService",
      "summary": "delete a Service",
      "body": "DELETE /api/v1/namespaces/{namespace}/services/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/services/{name}",
        "operationId": "deleteCoreV1NamespacedService",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/services/{name}",
      "type": "api_path",
      "title": "readCoreV1NamespacedService",
      "summary": "read the specified Service",
      "body": "GET /api/v1/namespaces/{namespace}/services/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/services/{name}",
        "operationId": "readCoreV1NamespacedService",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/services/{name}",
      "type": "api_path",
      "title": "patchCoreV1NamespacedService",
      "summary": "partially update the specified Service",
      "body": "PATCH /api/v1/namespaces/{namespace}/services/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/services/{name}",
        "operationId": "patchCoreV1NamespacedService",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/services/{name}",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedService",
      "summary": "replace the specified Service",
      "body": "PUT /api/v1/namespaces/{namespace}/services/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/services/{name}",
        "operationId": "replaceCoreV1NamespacedService",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/services/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1DeleteNamespacedServiceProxy",
      "summary": "connect DELETE requests to proxy of Service",
      "body": "DELETE /api/v1/namespaces/{namespace}/services/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/proxy",
        "operationId": "connectCoreV1DeleteNamespacedServiceProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/services/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1GetNamespacedServiceProxy",
      "summary": "connect GET requests to proxy of Service",
      "body": "GET /api/v1/namespaces/{namespace}/services/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/proxy",
        "operationId": "connectCoreV1GetNamespacedServiceProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/services/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1PatchNamespacedServiceProxy",
      "summary": "connect PATCH requests to proxy of Service",
      "body": "PATCH /api/v1/namespaces/{namespace}/services/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/proxy",
        "operationId": "connectCoreV1PatchNamespacedServiceProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/services/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1PostNamespacedServiceProxy",
      "summary": "connect POST requests to proxy of Service",
      "body": "POST /api/v1/namespaces/{namespace}/services/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/proxy",
        "operationId": "connectCoreV1PostNamespacedServiceProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/services/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1PutNamespacedServiceProxy",
      "summary": "connect PUT requests to proxy of Service",
      "body": "PUT /api/v1/namespaces/{namespace}/services/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/proxy",
        "operationId": "connectCoreV1PutNamespacedServiceProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1DeleteNamespacedServiceProxyWithPath",
      "summary": "connect DELETE requests to proxy of Service",
      "body": "DELETE /api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
        "operationId": "connectCoreV1DeleteNamespacedServiceProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1GetNamespacedServiceProxyWithPath",
      "summary": "connect GET requests to proxy of Service",
      "body": "GET /api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
        "operationId": "connectCoreV1GetNamespacedServiceProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1PatchNamespacedServiceProxyWithPath",
      "summary": "connect PATCH requests to proxy of Service",
      "body": "PATCH /api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
        "operationId": "connectCoreV1PatchNamespacedServiceProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1PostNamespacedServiceProxyWithPath",
      "summary": "connect POST requests to proxy of Service",
      "body": "POST /api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
        "operationId": "connectCoreV1PostNamespacedServiceProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1PutNamespacedServiceProxyWithPath",
      "summary": "connect PUT requests to proxy of Service",
      "body": "PUT /api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}",
        "operationId": "connectCoreV1PutNamespacedServiceProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{namespace}/services/{name}/status",
      "type": "api_path",
      "title": "readCoreV1NamespacedServiceStatus",
      "summary": "read status of the specified Service",
      "body": "GET /api/v1/namespaces/{namespace}/services/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/status",
        "operationId": "readCoreV1NamespacedServiceStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{namespace}/services/{name}/status",
      "type": "api_path",
      "title": "patchCoreV1NamespacedServiceStatus",
      "summary": "partially update status of the specified Service",
      "body": "PATCH /api/v1/namespaces/{namespace}/services/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/status",
        "operationId": "patchCoreV1NamespacedServiceStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{namespace}/services/{name}/status",
      "type": "api_path",
      "title": "replaceCoreV1NamespacedServiceStatus",
      "summary": "replace status of the specified Service",
      "body": "PUT /api/v1/namespaces/{namespace}/services/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{namespace}/services/{name}/status",
        "operationId": "replaceCoreV1NamespacedServiceStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/namespaces/{name}",
      "type": "api_path",
      "title": "deleteCoreV1Namespace",
      "summary": "delete a Namespace",
      "body": "DELETE /api/v1/namespaces/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/namespaces/{name}",
        "operationId": "deleteCoreV1Namespace",
        "kind": "Namespaces"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{name}",
      "type": "api_path",
      "title": "readCoreV1Namespace",
      "summary": "read the specified Namespace",
      "body": "GET /api/v1/namespaces/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{name}",
        "operationId": "readCoreV1Namespace",
        "kind": "Namespaces"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{name}",
      "type": "api_path",
      "title": "patchCoreV1Namespace",
      "summary": "partially update the specified Namespace",
      "body": "PATCH /api/v1/namespaces/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{name}",
        "operationId": "patchCoreV1Namespace",
        "kind": "Namespaces"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{name}",
      "type": "api_path",
      "title": "replaceCoreV1Namespace",
      "summary": "replace the specified Namespace",
      "body": "PUT /api/v1/namespaces/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{name}",
        "operationId": "replaceCoreV1Namespace",
        "kind": "Namespaces"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{name}/finalize",
      "type": "api_path",
      "title": "replaceCoreV1NamespaceFinalize",
      "summary": "replace finalize of the specified Namespace",
      "body": "PUT /api/v1/namespaces/{name}/finalize",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{name}/finalize",
        "operationId": "replaceCoreV1NamespaceFinalize",
        "kind": "Finalize"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}/finalize"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/namespaces/{name}/status",
      "type": "api_path",
      "title": "readCoreV1NamespaceStatus",
      "summary": "read status of the specified Namespace",
      "body": "GET /api/v1/namespaces/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/namespaces/{name}/status",
        "operationId": "readCoreV1NamespaceStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/namespaces/{name}/status",
      "type": "api_path",
      "title": "patchCoreV1NamespaceStatus",
      "summary": "partially update status of the specified Namespace",
      "body": "PATCH /api/v1/namespaces/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/namespaces/{name}/status",
        "operationId": "patchCoreV1NamespaceStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/namespaces/{name}/status",
      "type": "api_path",
      "title": "replaceCoreV1NamespaceStatus",
      "summary": "replace status of the specified Namespace",
      "body": "PUT /api/v1/namespaces/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/namespaces/{name}/status",
        "operationId": "replaceCoreV1NamespaceStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/nodes",
      "type": "api_path",
      "title": "deleteCoreV1CollectionNode",
      "summary": "delete collection of Node",
      "body": "DELETE /api/v1/nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/nodes",
        "operationId": "deleteCoreV1CollectionNode",
        "kind": "Nodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/nodes",
      "type": "api_path",
      "title": "listCoreV1Node",
      "summary": "list or watch objects of kind Node",
      "body": "GET /api/v1/nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/nodes",
        "operationId": "listCoreV1Node",
        "kind": "Nodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/nodes",
      "type": "api_path",
      "title": "createCoreV1Node",
      "summary": "create a Node",
      "body": "POST /api/v1/nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/nodes",
        "operationId": "createCoreV1Node",
        "kind": "Nodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/nodes/{name}",
      "type": "api_path",
      "title": "deleteCoreV1Node",
      "summary": "delete a Node",
      "body": "DELETE /api/v1/nodes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/nodes/{name}",
        "operationId": "deleteCoreV1Node",
        "kind": "Nodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/nodes/{name}",
      "type": "api_path",
      "title": "readCoreV1Node",
      "summary": "read the specified Node",
      "body": "GET /api/v1/nodes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/nodes/{name}",
        "operationId": "readCoreV1Node",
        "kind": "Nodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/nodes/{name}",
      "type": "api_path",
      "title": "patchCoreV1Node",
      "summary": "partially update the specified Node",
      "body": "PATCH /api/v1/nodes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/nodes/{name}",
        "operationId": "patchCoreV1Node",
        "kind": "Nodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/nodes/{name}",
      "type": "api_path",
      "title": "replaceCoreV1Node",
      "summary": "replace the specified Node",
      "body": "PUT /api/v1/nodes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/nodes/{name}",
        "operationId": "replaceCoreV1Node",
        "kind": "Nodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/nodes/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1DeleteNodeProxy",
      "summary": "connect DELETE requests to proxy of Node",
      "body": "DELETE /api/v1/nodes/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/nodes/{name}/proxy",
        "operationId": "connectCoreV1DeleteNodeProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/nodes/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1GetNodeProxy",
      "summary": "connect GET requests to proxy of Node",
      "body": "GET /api/v1/nodes/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/nodes/{name}/proxy",
        "operationId": "connectCoreV1GetNodeProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/nodes/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1PatchNodeProxy",
      "summary": "connect PATCH requests to proxy of Node",
      "body": "PATCH /api/v1/nodes/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/nodes/{name}/proxy",
        "operationId": "connectCoreV1PatchNodeProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/nodes/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1PostNodeProxy",
      "summary": "connect POST requests to proxy of Node",
      "body": "POST /api/v1/nodes/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/nodes/{name}/proxy",
        "operationId": "connectCoreV1PostNodeProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/nodes/{name}/proxy",
      "type": "api_path",
      "title": "connectCoreV1PutNodeProxy",
      "summary": "connect PUT requests to proxy of Node",
      "body": "PUT /api/v1/nodes/{name}/proxy",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/nodes/{name}/proxy",
        "operationId": "connectCoreV1PutNodeProxy",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/nodes/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1DeleteNodeProxyWithPath",
      "summary": "connect DELETE requests to proxy of Node",
      "body": "DELETE /api/v1/nodes/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/nodes/{name}/proxy/{path}",
        "operationId": "connectCoreV1DeleteNodeProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/nodes/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1GetNodeProxyWithPath",
      "summary": "connect GET requests to proxy of Node",
      "body": "GET /api/v1/nodes/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/nodes/{name}/proxy/{path}",
        "operationId": "connectCoreV1GetNodeProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/nodes/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1PatchNodeProxyWithPath",
      "summary": "connect PATCH requests to proxy of Node",
      "body": "PATCH /api/v1/nodes/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/nodes/{name}/proxy/{path}",
        "operationId": "connectCoreV1PatchNodeProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/nodes/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1PostNodeProxyWithPath",
      "summary": "connect POST requests to proxy of Node",
      "body": "POST /api/v1/nodes/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/nodes/{name}/proxy/{path}",
        "operationId": "connectCoreV1PostNodeProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/nodes/{name}/proxy/{path}",
      "type": "api_path",
      "title": "connectCoreV1PutNodeProxyWithPath",
      "summary": "connect PUT requests to proxy of Node",
      "body": "PUT /api/v1/nodes/{name}/proxy/{path}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/nodes/{name}/proxy/{path}",
        "operationId": "connectCoreV1PutNodeProxyWithPath",
        "kind": "Proxy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/proxy/{path}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/nodes/{name}/status",
      "type": "api_path",
      "title": "readCoreV1NodeStatus",
      "summary": "read status of the specified Node",
      "body": "GET /api/v1/nodes/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/nodes/{name}/status",
        "operationId": "readCoreV1NodeStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/nodes/{name}/status",
      "type": "api_path",
      "title": "patchCoreV1NodeStatus",
      "summary": "partially update status of the specified Node",
      "body": "PATCH /api/v1/nodes/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/nodes/{name}/status",
        "operationId": "patchCoreV1NodeStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/nodes/{name}/status",
      "type": "api_path",
      "title": "replaceCoreV1NodeStatus",
      "summary": "replace status of the specified Node",
      "body": "PUT /api/v1/nodes/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/nodes/{name}/status",
        "operationId": "replaceCoreV1NodeStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/persistentvolumeclaims",
      "type": "api_path",
      "title": "listCoreV1PersistentVolumeClaimForAllNamespaces",
      "summary": "list or watch objects of kind PersistentVolumeClaim",
      "body": "GET /api/v1/persistentvolumeclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/persistentvolumeclaims",
        "operationId": "listCoreV1PersistentVolumeClaimForAllNamespaces",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumeclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/persistentvolumes",
      "type": "api_path",
      "title": "deleteCoreV1CollectionPersistentVolume",
      "summary": "delete collection of PersistentVolume",
      "body": "DELETE /api/v1/persistentvolumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/persistentvolumes",
        "operationId": "deleteCoreV1CollectionPersistentVolume",
        "kind": "Persistentvolumes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/persistentvolumes",
      "type": "api_path",
      "title": "listCoreV1PersistentVolume",
      "summary": "list or watch objects of kind PersistentVolume",
      "body": "GET /api/v1/persistentvolumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/persistentvolumes",
        "operationId": "listCoreV1PersistentVolume",
        "kind": "Persistentvolumes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /api/v1/persistentvolumes",
      "type": "api_path",
      "title": "createCoreV1PersistentVolume",
      "summary": "create a PersistentVolume",
      "body": "POST /api/v1/persistentvolumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/api/v1/persistentvolumes",
        "operationId": "createCoreV1PersistentVolume",
        "kind": "Persistentvolumes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /api/v1/persistentvolumes/{name}",
      "type": "api_path",
      "title": "deleteCoreV1PersistentVolume",
      "summary": "delete a PersistentVolume",
      "body": "DELETE /api/v1/persistentvolumes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/api/v1/persistentvolumes/{name}",
        "operationId": "deleteCoreV1PersistentVolume",
        "kind": "Persistentvolumes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/persistentvolumes/{name}",
      "type": "api_path",
      "title": "readCoreV1PersistentVolume",
      "summary": "read the specified PersistentVolume",
      "body": "GET /api/v1/persistentvolumes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/persistentvolumes/{name}",
        "operationId": "readCoreV1PersistentVolume",
        "kind": "Persistentvolumes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/persistentvolumes/{name}",
      "type": "api_path",
      "title": "patchCoreV1PersistentVolume",
      "summary": "partially update the specified PersistentVolume",
      "body": "PATCH /api/v1/persistentvolumes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/persistentvolumes/{name}",
        "operationId": "patchCoreV1PersistentVolume",
        "kind": "Persistentvolumes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/persistentvolumes/{name}",
      "type": "api_path",
      "title": "replaceCoreV1PersistentVolume",
      "summary": "replace the specified PersistentVolume",
      "body": "PUT /api/v1/persistentvolumes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/persistentvolumes/{name}",
        "operationId": "replaceCoreV1PersistentVolume",
        "kind": "Persistentvolumes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/persistentvolumes/{name}/status",
      "type": "api_path",
      "title": "readCoreV1PersistentVolumeStatus",
      "summary": "read status of the specified PersistentVolume",
      "body": "GET /api/v1/persistentvolumes/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/persistentvolumes/{name}/status",
        "operationId": "readCoreV1PersistentVolumeStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /api/v1/persistentvolumes/{name}/status",
      "type": "api_path",
      "title": "patchCoreV1PersistentVolumeStatus",
      "summary": "partially update status of the specified PersistentVolume",
      "body": "PATCH /api/v1/persistentvolumes/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/api/v1/persistentvolumes/{name}/status",
        "operationId": "patchCoreV1PersistentVolumeStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /api/v1/persistentvolumes/{name}/status",
      "type": "api_path",
      "title": "replaceCoreV1PersistentVolumeStatus",
      "summary": "replace status of the specified PersistentVolume",
      "body": "PUT /api/v1/persistentvolumes/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/api/v1/persistentvolumes/{name}/status",
        "operationId": "replaceCoreV1PersistentVolumeStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/pods",
      "type": "api_path",
      "title": "listCoreV1PodForAllNamespaces",
      "summary": "list or watch objects of kind Pod",
      "body": "GET /api/v1/pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/pods",
        "operationId": "listCoreV1PodForAllNamespaces",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/podtemplates",
      "type": "api_path",
      "title": "listCoreV1PodTemplateForAllNamespaces",
      "summary": "list or watch objects of kind PodTemplate",
      "body": "GET /api/v1/podtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/podtemplates",
        "operationId": "listCoreV1PodTemplateForAllNamespaces",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/podtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/replicationcontrollers",
      "type": "api_path",
      "title": "listCoreV1ReplicationControllerForAllNamespaces",
      "summary": "list or watch objects of kind ReplicationController",
      "body": "GET /api/v1/replicationcontrollers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/replicationcontrollers",
        "operationId": "listCoreV1ReplicationControllerForAllNamespaces",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/replicationcontrollers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/resourcequotas",
      "type": "api_path",
      "title": "listCoreV1ResourceQuotaForAllNamespaces",
      "summary": "list or watch objects of kind ResourceQuota",
      "body": "GET /api/v1/resourcequotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/resourcequotas",
        "operationId": "listCoreV1ResourceQuotaForAllNamespaces",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/resourcequotas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/secrets",
      "type": "api_path",
      "title": "listCoreV1SecretForAllNamespaces",
      "summary": "list or watch objects of kind Secret",
      "body": "GET /api/v1/secrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/secrets",
        "operationId": "listCoreV1SecretForAllNamespaces",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/secrets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/serviceaccounts",
      "type": "api_path",
      "title": "listCoreV1ServiceAccountForAllNamespaces",
      "summary": "list or watch objects of kind ServiceAccount",
      "body": "GET /api/v1/serviceaccounts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/serviceaccounts",
        "operationId": "listCoreV1ServiceAccountForAllNamespaces",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/serviceaccounts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/services",
      "type": "api_path",
      "title": "listCoreV1ServiceForAllNamespaces",
      "summary": "list or watch objects of kind Service",
      "body": "GET /api/v1/services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/services",
        "operationId": "listCoreV1ServiceForAllNamespaces",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/services"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/configmaps",
      "type": "api_path",
      "title": "watchCoreV1ConfigMapListForAllNamespaces",
      "summary": "watch individual changes to a list of ConfigMap. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/configmaps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/configmaps",
        "operationId": "watchCoreV1ConfigMapListForAllNamespaces",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/configmaps"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/endpoints",
      "type": "api_path",
      "title": "watchCoreV1EndpointsListForAllNamespaces",
      "summary": "watch individual changes to a list of Endpoints. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/endpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/endpoints",
        "operationId": "watchCoreV1EndpointsListForAllNamespaces",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/endpoints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/events",
      "type": "api_path",
      "title": "watchCoreV1EventListForAllNamespaces",
      "summary": "watch individual changes to a list of Event. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/events",
        "operationId": "watchCoreV1EventListForAllNamespaces",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/limitranges",
      "type": "api_path",
      "title": "watchCoreV1LimitRangeListForAllNamespaces",
      "summary": "watch individual changes to a list of LimitRange. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/limitranges",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/limitranges",
        "operationId": "watchCoreV1LimitRangeListForAllNamespaces",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/limitranges"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces",
      "type": "api_path",
      "title": "watchCoreV1NamespaceList",
      "summary": "watch individual changes to a list of Namespace. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces",
        "operationId": "watchCoreV1NamespaceList",
        "kind": "Namespaces"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/configmaps",
      "type": "api_path",
      "title": "watchCoreV1NamespacedConfigMapList",
      "summary": "watch individual changes to a list of ConfigMap. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/configmaps",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/configmaps",
        "operationId": "watchCoreV1NamespacedConfigMapList",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/configmaps"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/configmaps/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedConfigMap",
      "summary": "watch changes to an object of kind ConfigMap. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/configmaps/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/configmaps/{name}",
        "operationId": "watchCoreV1NamespacedConfigMap",
        "kind": "Configmaps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/configmaps/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/endpoints",
      "type": "api_path",
      "title": "watchCoreV1NamespacedEndpointsList",
      "summary": "watch individual changes to a list of Endpoints. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/endpoints",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/endpoints",
        "operationId": "watchCoreV1NamespacedEndpointsList",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/endpoints"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/endpoints/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedEndpoints",
      "summary": "watch changes to an object of kind Endpoints. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/endpoints/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/endpoints/{name}",
        "operationId": "watchCoreV1NamespacedEndpoints",
        "kind": "Endpoints"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/endpoints/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/events",
      "type": "api_path",
      "title": "watchCoreV1NamespacedEventList",
      "summary": "watch individual changes to a list of Event. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/events",
        "operationId": "watchCoreV1NamespacedEventList",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/events/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedEvent",
      "summary": "watch changes to an object of kind Event. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/events/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/events/{name}",
        "operationId": "watchCoreV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/events/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/limitranges",
      "type": "api_path",
      "title": "watchCoreV1NamespacedLimitRangeList",
      "summary": "watch individual changes to a list of LimitRange. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/limitranges",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/limitranges",
        "operationId": "watchCoreV1NamespacedLimitRangeList",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/limitranges"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/limitranges/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedLimitRange",
      "summary": "watch changes to an object of kind LimitRange. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/limitranges/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/limitranges/{name}",
        "operationId": "watchCoreV1NamespacedLimitRange",
        "kind": "Limitranges"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/limitranges/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/persistentvolumeclaims",
      "type": "api_path",
      "title": "watchCoreV1NamespacedPersistentVolumeClaimList",
      "summary": "watch individual changes to a list of PersistentVolumeClaim. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/persistentvolumeclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/persistentvolumeclaims",
        "operationId": "watchCoreV1NamespacedPersistentVolumeClaimList",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/persistentvolumeclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/persistentvolumeclaims/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedPersistentVolumeClaim",
      "summary": "watch changes to an object of kind PersistentVolumeClaim. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/persistentvolumeclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/persistentvolumeclaims/{name}",
        "operationId": "watchCoreV1NamespacedPersistentVolumeClaim",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/persistentvolumeclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/pods",
      "type": "api_path",
      "title": "watchCoreV1NamespacedPodList",
      "summary": "watch individual changes to a list of Pod. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/pods",
        "operationId": "watchCoreV1NamespacedPodList",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/pods/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedPod",
      "summary": "watch changes to an object of kind Pod. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/pods/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/pods/{name}",
        "operationId": "watchCoreV1NamespacedPod",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/pods/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/podtemplates",
      "type": "api_path",
      "title": "watchCoreV1NamespacedPodTemplateList",
      "summary": "watch individual changes to a list of PodTemplate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/podtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/podtemplates",
        "operationId": "watchCoreV1NamespacedPodTemplateList",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/podtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/podtemplates/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedPodTemplate",
      "summary": "watch changes to an object of kind PodTemplate. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/podtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/podtemplates/{name}",
        "operationId": "watchCoreV1NamespacedPodTemplate",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/podtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/replicationcontrollers",
      "type": "api_path",
      "title": "watchCoreV1NamespacedReplicationControllerList",
      "summary": "watch individual changes to a list of ReplicationController. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/replicationcontrollers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/replicationcontrollers",
        "operationId": "watchCoreV1NamespacedReplicationControllerList",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/replicationcontrollers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/replicationcontrollers/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedReplicationController",
      "summary": "watch changes to an object of kind ReplicationController. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/replicationcontrollers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/replicationcontrollers/{name}",
        "operationId": "watchCoreV1NamespacedReplicationController",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/replicationcontrollers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/resourcequotas",
      "type": "api_path",
      "title": "watchCoreV1NamespacedResourceQuotaList",
      "summary": "watch individual changes to a list of ResourceQuota. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/resourcequotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/resourcequotas",
        "operationId": "watchCoreV1NamespacedResourceQuotaList",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/resourcequotas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/resourcequotas/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedResourceQuota",
      "summary": "watch changes to an object of kind ResourceQuota. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/resourcequotas/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/resourcequotas/{name}",
        "operationId": "watchCoreV1NamespacedResourceQuota",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/resourcequotas/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/secrets",
      "type": "api_path",
      "title": "watchCoreV1NamespacedSecretList",
      "summary": "watch individual changes to a list of Secret. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/secrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/secrets",
        "operationId": "watchCoreV1NamespacedSecretList",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/secrets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/secrets/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedSecret",
      "summary": "watch changes to an object of kind Secret. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/secrets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/secrets/{name}",
        "operationId": "watchCoreV1NamespacedSecret",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/secrets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/serviceaccounts",
      "type": "api_path",
      "title": "watchCoreV1NamespacedServiceAccountList",
      "summary": "watch individual changes to a list of ServiceAccount. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/serviceaccounts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/serviceaccounts",
        "operationId": "watchCoreV1NamespacedServiceAccountList",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/serviceaccounts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/serviceaccounts/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedServiceAccount",
      "summary": "watch changes to an object of kind ServiceAccount. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/serviceaccounts/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/serviceaccounts/{name}",
        "operationId": "watchCoreV1NamespacedServiceAccount",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/serviceaccounts/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/services",
      "type": "api_path",
      "title": "watchCoreV1NamespacedServiceList",
      "summary": "watch individual changes to a list of Service. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/services",
        "operationId": "watchCoreV1NamespacedServiceList",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/services"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{namespace}/services/{name}",
      "type": "api_path",
      "title": "watchCoreV1NamespacedService",
      "summary": "watch changes to an object of kind Service. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{namespace}/services/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{namespace}/services/{name}",
        "operationId": "watchCoreV1NamespacedService",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/services/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/namespaces/{name}",
      "type": "api_path",
      "title": "watchCoreV1Namespace",
      "summary": "watch changes to an object of kind Namespace. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/namespaces/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/namespaces/{name}",
        "operationId": "watchCoreV1Namespace",
        "kind": "Namespaces"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/nodes",
      "type": "api_path",
      "title": "watchCoreV1NodeList",
      "summary": "watch individual changes to a list of Node. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/nodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/nodes",
        "operationId": "watchCoreV1NodeList",
        "kind": "Nodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/nodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/nodes/{name}",
      "type": "api_path",
      "title": "watchCoreV1Node",
      "summary": "watch changes to an object of kind Node. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/nodes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/nodes/{name}",
        "operationId": "watchCoreV1Node",
        "kind": "Nodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/nodes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/persistentvolumeclaims",
      "type": "api_path",
      "title": "watchCoreV1PersistentVolumeClaimListForAllNamespaces",
      "summary": "watch individual changes to a list of PersistentVolumeClaim. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/persistentvolumeclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/persistentvolumeclaims",
        "operationId": "watchCoreV1PersistentVolumeClaimListForAllNamespaces",
        "kind": "Persistentvolumeclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/persistentvolumeclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/persistentvolumes",
      "type": "api_path",
      "title": "watchCoreV1PersistentVolumeList",
      "summary": "watch individual changes to a list of PersistentVolume. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/persistentvolumes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/persistentvolumes",
        "operationId": "watchCoreV1PersistentVolumeList",
        "kind": "Persistentvolumes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/persistentvolumes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/persistentvolumes/{name}",
      "type": "api_path",
      "title": "watchCoreV1PersistentVolume",
      "summary": "watch changes to an object of kind PersistentVolume. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /api/v1/watch/persistentvolumes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/persistentvolumes/{name}",
        "operationId": "watchCoreV1PersistentVolume",
        "kind": "Persistentvolumes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/persistentvolumes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/pods",
      "type": "api_path",
      "title": "watchCoreV1PodListForAllNamespaces",
      "summary": "watch individual changes to a list of Pod. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/pods",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/pods",
        "operationId": "watchCoreV1PodListForAllNamespaces",
        "kind": "Pods"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/pods"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/podtemplates",
      "type": "api_path",
      "title": "watchCoreV1PodTemplateListForAllNamespaces",
      "summary": "watch individual changes to a list of PodTemplate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/podtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/podtemplates",
        "operationId": "watchCoreV1PodTemplateListForAllNamespaces",
        "kind": "Podtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/podtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/replicationcontrollers",
      "type": "api_path",
      "title": "watchCoreV1ReplicationControllerListForAllNamespaces",
      "summary": "watch individual changes to a list of ReplicationController. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/replicationcontrollers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/replicationcontrollers",
        "operationId": "watchCoreV1ReplicationControllerListForAllNamespaces",
        "kind": "Replicationcontrollers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/replicationcontrollers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/resourcequotas",
      "type": "api_path",
      "title": "watchCoreV1ResourceQuotaListForAllNamespaces",
      "summary": "watch individual changes to a list of ResourceQuota. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/resourcequotas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/resourcequotas",
        "operationId": "watchCoreV1ResourceQuotaListForAllNamespaces",
        "kind": "Resourcequotas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/resourcequotas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/secrets",
      "type": "api_path",
      "title": "watchCoreV1SecretListForAllNamespaces",
      "summary": "watch individual changes to a list of Secret. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/secrets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/secrets",
        "operationId": "watchCoreV1SecretListForAllNamespaces",
        "kind": "Secrets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/secrets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/serviceaccounts",
      "type": "api_path",
      "title": "watchCoreV1ServiceAccountListForAllNamespaces",
      "summary": "watch individual changes to a list of ServiceAccount. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/serviceaccounts",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/serviceaccounts",
        "operationId": "watchCoreV1ServiceAccountListForAllNamespaces",
        "kind": "Serviceaccounts"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/serviceaccounts"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /api/v1/watch/services",
      "type": "api_path",
      "title": "watchCoreV1ServiceListForAllNamespaces",
      "summary": "watch individual changes to a list of Service. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /api/v1/watch/services",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/api/v1/watch/services",
        "operationId": "watchCoreV1ServiceListForAllNamespaces",
        "kind": "Services"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/services"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/",
      "type": "api_path",
      "title": "getAPIVersions",
      "summary": "get available API versions",
      "body": "GET /apis/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/",
        "operationId": "getAPIVersions",
        "kind": "Apis"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/",
      "type": "api_path",
      "title": "getAdmissionregistrationAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/admissionregistration.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/",
        "operationId": "getAdmissionregistrationAPIGroup",
        "kind": "Admissionregistration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/",
      "type": "api_path",
      "title": "getAdmissionregistrationV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/admissionregistration.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/",
        "operationId": "getAdmissionregistrationV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1CollectionMutatingAdmissionPolicy",
      "summary": "delete collection of MutatingAdmissionPolicy",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies",
        "operationId": "deleteAdmissionregistrationV1CollectionMutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "listAdmissionregistrationV1MutatingAdmissionPolicy",
      "summary": "list or watch objects of kind MutatingAdmissionPolicy",
      "body": "GET /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies",
        "operationId": "listAdmissionregistrationV1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "createAdmissionregistrationV1MutatingAdmissionPolicy",
      "summary": "create a MutatingAdmissionPolicy",
      "body": "POST /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies",
        "operationId": "createAdmissionregistrationV1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1MutatingAdmissionPolicy",
      "summary": "delete a MutatingAdmissionPolicy",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
        "operationId": "deleteAdmissionregistrationV1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "readAdmissionregistrationV1MutatingAdmissionPolicy",
      "summary": "read the specified MutatingAdmissionPolicy",
      "body": "GET /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
        "operationId": "readAdmissionregistrationV1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1MutatingAdmissionPolicy",
      "summary": "partially update the specified MutatingAdmissionPolicy",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
        "operationId": "patchAdmissionregistrationV1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1MutatingAdmissionPolicy",
      "summary": "replace the specified MutatingAdmissionPolicy",
      "body": "PUT /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}",
        "operationId": "replaceAdmissionregistrationV1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1CollectionMutatingAdmissionPolicyBinding",
      "summary": "delete collection of MutatingAdmissionPolicyBinding",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings",
        "operationId": "deleteAdmissionregistrationV1CollectionMutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "listAdmissionregistrationV1MutatingAdmissionPolicyBinding",
      "summary": "list or watch objects of kind MutatingAdmissionPolicyBinding",
      "body": "GET /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings",
        "operationId": "listAdmissionregistrationV1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "createAdmissionregistrationV1MutatingAdmissionPolicyBinding",
      "summary": "create a MutatingAdmissionPolicyBinding",
      "body": "POST /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings",
        "operationId": "createAdmissionregistrationV1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1MutatingAdmissionPolicyBinding",
      "summary": "delete a MutatingAdmissionPolicyBinding",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
        "operationId": "deleteAdmissionregistrationV1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "readAdmissionregistrationV1MutatingAdmissionPolicyBinding",
      "summary": "read the specified MutatingAdmissionPolicyBinding",
      "body": "GET /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
        "operationId": "readAdmissionregistrationV1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1MutatingAdmissionPolicyBinding",
      "summary": "partially update the specified MutatingAdmissionPolicyBinding",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
        "operationId": "patchAdmissionregistrationV1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1MutatingAdmissionPolicyBinding",
      "summary": "replace the specified MutatingAdmissionPolicyBinding",
      "body": "PUT /apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}",
        "operationId": "replaceAdmissionregistrationV1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1CollectionMutatingWebhookConfiguration",
      "summary": "delete collection of MutatingWebhookConfiguration",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations",
        "operationId": "deleteAdmissionregistrationV1CollectionMutatingWebhookConfiguration",
        "kind": "Mutatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations",
      "type": "api_path",
      "title": "listAdmissionregistrationV1MutatingWebhookConfiguration",
      "summary": "list or watch objects of kind MutatingWebhookConfiguration",
      "body": "GET /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations",
        "operationId": "listAdmissionregistrationV1MutatingWebhookConfiguration",
        "kind": "Mutatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations",
      "type": "api_path",
      "title": "createAdmissionregistrationV1MutatingWebhookConfiguration",
      "summary": "create a MutatingWebhookConfiguration",
      "body": "POST /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations",
        "operationId": "createAdmissionregistrationV1MutatingWebhookConfiguration",
        "kind": "Mutatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1MutatingWebhookConfiguration",
      "summary": "delete a MutatingWebhookConfiguration",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
        "operationId": "deleteAdmissionregistrationV1MutatingWebhookConfiguration",
        "kind": "Mutatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
      "type": "api_path",
      "title": "readAdmissionregistrationV1MutatingWebhookConfiguration",
      "summary": "read the specified MutatingWebhookConfiguration",
      "body": "GET /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
        "operationId": "readAdmissionregistrationV1MutatingWebhookConfiguration",
        "kind": "Mutatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1MutatingWebhookConfiguration",
      "summary": "partially update the specified MutatingWebhookConfiguration",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
        "operationId": "patchAdmissionregistrationV1MutatingWebhookConfiguration",
        "kind": "Mutatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1MutatingWebhookConfiguration",
      "summary": "replace the specified MutatingWebhookConfiguration",
      "body": "PUT /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}",
        "operationId": "replaceAdmissionregistrationV1MutatingWebhookConfiguration",
        "kind": "Mutatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1CollectionValidatingAdmissionPolicy",
      "summary": "delete collection of ValidatingAdmissionPolicy",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies",
        "operationId": "deleteAdmissionregistrationV1CollectionValidatingAdmissionPolicy",
        "kind": "Validatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies",
      "type": "api_path",
      "title": "listAdmissionregistrationV1ValidatingAdmissionPolicy",
      "summary": "list or watch objects of kind ValidatingAdmissionPolicy",
      "body": "GET /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies",
        "operationId": "listAdmissionregistrationV1ValidatingAdmissionPolicy",
        "kind": "Validatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies",
      "type": "api_path",
      "title": "createAdmissionregistrationV1ValidatingAdmissionPolicy",
      "summary": "create a ValidatingAdmissionPolicy",
      "body": "POST /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies",
        "operationId": "createAdmissionregistrationV1ValidatingAdmissionPolicy",
        "kind": "Validatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1ValidatingAdmissionPolicy",
      "summary": "delete a ValidatingAdmissionPolicy",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
        "operationId": "deleteAdmissionregistrationV1ValidatingAdmissionPolicy",
        "kind": "Validatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "readAdmissionregistrationV1ValidatingAdmissionPolicy",
      "summary": "read the specified ValidatingAdmissionPolicy",
      "body": "GET /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
        "operationId": "readAdmissionregistrationV1ValidatingAdmissionPolicy",
        "kind": "Validatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1ValidatingAdmissionPolicy",
      "summary": "partially update the specified ValidatingAdmissionPolicy",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
        "operationId": "patchAdmissionregistrationV1ValidatingAdmissionPolicy",
        "kind": "Validatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1ValidatingAdmissionPolicy",
      "summary": "replace the specified ValidatingAdmissionPolicy",
      "body": "PUT /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}",
        "operationId": "replaceAdmissionregistrationV1ValidatingAdmissionPolicy",
        "kind": "Validatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
      "type": "api_path",
      "title": "readAdmissionregistrationV1ValidatingAdmissionPolicyStatus",
      "summary": "read status of the specified ValidatingAdmissionPolicy",
      "body": "GET /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
        "operationId": "readAdmissionregistrationV1ValidatingAdmissionPolicyStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1ValidatingAdmissionPolicyStatus",
      "summary": "partially update status of the specified ValidatingAdmissionPolicy",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
        "operationId": "patchAdmissionregistrationV1ValidatingAdmissionPolicyStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1ValidatingAdmissionPolicyStatus",
      "summary": "replace status of the specified ValidatingAdmissionPolicy",
      "body": "PUT /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
        "operationId": "replaceAdmissionregistrationV1ValidatingAdmissionPolicyStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1CollectionValidatingAdmissionPolicyBinding",
      "summary": "delete collection of ValidatingAdmissionPolicyBinding",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings",
        "operationId": "deleteAdmissionregistrationV1CollectionValidatingAdmissionPolicyBinding",
        "kind": "Validatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings",
      "type": "api_path",
      "title": "listAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
      "summary": "list or watch objects of kind ValidatingAdmissionPolicyBinding",
      "body": "GET /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings",
        "operationId": "listAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
        "kind": "Validatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings",
      "type": "api_path",
      "title": "createAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
      "summary": "create a ValidatingAdmissionPolicyBinding",
      "body": "POST /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings",
        "operationId": "createAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
        "kind": "Validatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
      "summary": "delete a ValidatingAdmissionPolicyBinding",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
        "operationId": "deleteAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
        "kind": "Validatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "readAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
      "summary": "read the specified ValidatingAdmissionPolicyBinding",
      "body": "GET /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
        "operationId": "readAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
        "kind": "Validatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
      "summary": "partially update the specified ValidatingAdmissionPolicyBinding",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
        "operationId": "patchAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
        "kind": "Validatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
      "summary": "replace the specified ValidatingAdmissionPolicyBinding",
      "body": "PUT /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}",
        "operationId": "replaceAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
        "kind": "Validatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1CollectionValidatingWebhookConfiguration",
      "summary": "delete collection of ValidatingWebhookConfiguration",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations",
        "operationId": "deleteAdmissionregistrationV1CollectionValidatingWebhookConfiguration",
        "kind": "Validatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations",
      "type": "api_path",
      "title": "listAdmissionregistrationV1ValidatingWebhookConfiguration",
      "summary": "list or watch objects of kind ValidatingWebhookConfiguration",
      "body": "GET /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations",
        "operationId": "listAdmissionregistrationV1ValidatingWebhookConfiguration",
        "kind": "Validatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations",
      "type": "api_path",
      "title": "createAdmissionregistrationV1ValidatingWebhookConfiguration",
      "summary": "create a ValidatingWebhookConfiguration",
      "body": "POST /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations",
        "operationId": "createAdmissionregistrationV1ValidatingWebhookConfiguration",
        "kind": "Validatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1ValidatingWebhookConfiguration",
      "summary": "delete a ValidatingWebhookConfiguration",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
        "operationId": "deleteAdmissionregistrationV1ValidatingWebhookConfiguration",
        "kind": "Validatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
      "type": "api_path",
      "title": "readAdmissionregistrationV1ValidatingWebhookConfiguration",
      "summary": "read the specified ValidatingWebhookConfiguration",
      "body": "GET /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
        "operationId": "readAdmissionregistrationV1ValidatingWebhookConfiguration",
        "kind": "Validatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1ValidatingWebhookConfiguration",
      "summary": "partially update the specified ValidatingWebhookConfiguration",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
        "operationId": "patchAdmissionregistrationV1ValidatingWebhookConfiguration",
        "kind": "Validatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1ValidatingWebhookConfiguration",
      "summary": "replace the specified ValidatingWebhookConfiguration",
      "body": "PUT /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}",
        "operationId": "replaceAdmissionregistrationV1ValidatingWebhookConfiguration",
        "kind": "Validatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1MutatingAdmissionPolicyList",
      "summary": "watch individual changes to a list of MutatingAdmissionPolicy. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicies",
        "operationId": "watchAdmissionregistrationV1MutatingAdmissionPolicyList",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1MutatingAdmissionPolicy",
      "summary": "watch changes to an object of kind MutatingAdmissionPolicy. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicies/{name}",
        "operationId": "watchAdmissionregistrationV1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1MutatingAdmissionPolicyBindingList",
      "summary": "watch individual changes to a list of MutatingAdmissionPolicyBinding. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicybindings",
        "operationId": "watchAdmissionregistrationV1MutatingAdmissionPolicyBindingList",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1MutatingAdmissionPolicyBinding",
      "summary": "watch changes to an object of kind MutatingAdmissionPolicyBinding. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicybindings/{name}",
        "operationId": "watchAdmissionregistrationV1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1MutatingWebhookConfigurationList",
      "summary": "watch individual changes to a list of MutatingWebhookConfiguration. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations",
        "operationId": "watchAdmissionregistrationV1MutatingWebhookConfigurationList",
        "kind": "Mutatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations/{name}",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1MutatingWebhookConfiguration",
      "summary": "watch changes to an object of kind MutatingWebhookConfiguration. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations/{name}",
        "operationId": "watchAdmissionregistrationV1MutatingWebhookConfiguration",
        "kind": "Mutatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1ValidatingAdmissionPolicyList",
      "summary": "watch individual changes to a list of ValidatingAdmissionPolicy. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies",
        "operationId": "watchAdmissionregistrationV1ValidatingAdmissionPolicyList",
        "kind": "Validatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1ValidatingAdmissionPolicy",
      "summary": "watch changes to an object of kind ValidatingAdmissionPolicy. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies/{name}",
        "operationId": "watchAdmissionregistrationV1ValidatingAdmissionPolicy",
        "kind": "Validatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1ValidatingAdmissionPolicyBindingList",
      "summary": "watch individual changes to a list of ValidatingAdmissionPolicyBinding. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings",
        "operationId": "watchAdmissionregistrationV1ValidatingAdmissionPolicyBindingList",
        "kind": "Validatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
      "summary": "watch changes to an object of kind ValidatingAdmissionPolicyBinding. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings/{name}",
        "operationId": "watchAdmissionregistrationV1ValidatingAdmissionPolicyBinding",
        "kind": "Validatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1ValidatingWebhookConfigurationList",
      "summary": "watch individual changes to a list of ValidatingWebhookConfiguration. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations",
        "operationId": "watchAdmissionregistrationV1ValidatingWebhookConfigurationList",
        "kind": "Validatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations/{name}",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1ValidatingWebhookConfiguration",
      "summary": "watch changes to an object of kind ValidatingWebhookConfiguration. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations/{name}",
        "operationId": "watchAdmissionregistrationV1ValidatingWebhookConfiguration",
        "kind": "Validatingwebhookconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1alpha1/",
      "type": "api_path",
      "title": "getAdmissionregistrationV1alpha1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/admissionregistration.k8s.io/v1alpha1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/",
        "operationId": "getAdmissionregistrationV1alpha1APIResources",
        "kind": "V1alpha1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1alpha1CollectionMutatingAdmissionPolicy",
      "summary": "delete collection of MutatingAdmissionPolicy",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies",
        "operationId": "deleteAdmissionregistrationV1alpha1CollectionMutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "listAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
      "summary": "list or watch objects of kind MutatingAdmissionPolicy",
      "body": "GET /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies",
        "operationId": "listAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "createAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
      "summary": "create a MutatingAdmissionPolicy",
      "body": "POST /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies",
        "operationId": "createAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
      "summary": "delete a MutatingAdmissionPolicy",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
        "operationId": "deleteAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "readAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
      "summary": "read the specified MutatingAdmissionPolicy",
      "body": "GET /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
        "operationId": "readAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
      "summary": "partially update the specified MutatingAdmissionPolicy",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
        "operationId": "patchAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
      "summary": "replace the specified MutatingAdmissionPolicy",
      "body": "PUT /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}",
        "operationId": "replaceAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1alpha1CollectionMutatingAdmissionPolicyBinding",
      "summary": "delete collection of MutatingAdmissionPolicyBinding",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings",
        "operationId": "deleteAdmissionregistrationV1alpha1CollectionMutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "listAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
      "summary": "list or watch objects of kind MutatingAdmissionPolicyBinding",
      "body": "GET /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings",
        "operationId": "listAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "createAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
      "summary": "create a MutatingAdmissionPolicyBinding",
      "body": "POST /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings",
        "operationId": "createAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
      "summary": "delete a MutatingAdmissionPolicyBinding",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
        "operationId": "deleteAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "readAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
      "summary": "read the specified MutatingAdmissionPolicyBinding",
      "body": "GET /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
        "operationId": "readAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
      "summary": "partially update the specified MutatingAdmissionPolicyBinding",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
        "operationId": "patchAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
      "summary": "replace the specified MutatingAdmissionPolicyBinding",
      "body": "PUT /apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}",
        "operationId": "replaceAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1alpha1MutatingAdmissionPolicyList",
      "summary": "watch individual changes to a list of MutatingAdmissionPolicy. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicies",
        "operationId": "watchAdmissionregistrationV1alpha1MutatingAdmissionPolicyList",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
      "summary": "watch changes to an object of kind MutatingAdmissionPolicy. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicies/{name}",
        "operationId": "watchAdmissionregistrationV1alpha1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1alpha1MutatingAdmissionPolicyBindingList",
      "summary": "watch individual changes to a list of MutatingAdmissionPolicyBinding. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicybindings",
        "operationId": "watchAdmissionregistrationV1alpha1MutatingAdmissionPolicyBindingList",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
      "summary": "watch changes to an object of kind MutatingAdmissionPolicyBinding. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicybindings/{name}",
        "operationId": "watchAdmissionregistrationV1alpha1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1alpha1/watch/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1beta1/",
      "type": "api_path",
      "title": "getAdmissionregistrationV1beta1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/admissionregistration.k8s.io/v1beta1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/",
        "operationId": "getAdmissionregistrationV1beta1APIResources",
        "kind": "V1beta1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1beta1CollectionMutatingAdmissionPolicy",
      "summary": "delete collection of MutatingAdmissionPolicy",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies",
        "operationId": "deleteAdmissionregistrationV1beta1CollectionMutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "listAdmissionregistrationV1beta1MutatingAdmissionPolicy",
      "summary": "list or watch objects of kind MutatingAdmissionPolicy",
      "body": "GET /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies",
        "operationId": "listAdmissionregistrationV1beta1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "createAdmissionregistrationV1beta1MutatingAdmissionPolicy",
      "summary": "create a MutatingAdmissionPolicy",
      "body": "POST /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies",
        "operationId": "createAdmissionregistrationV1beta1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1beta1MutatingAdmissionPolicy",
      "summary": "delete a MutatingAdmissionPolicy",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
        "operationId": "deleteAdmissionregistrationV1beta1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "readAdmissionregistrationV1beta1MutatingAdmissionPolicy",
      "summary": "read the specified MutatingAdmissionPolicy",
      "body": "GET /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
        "operationId": "readAdmissionregistrationV1beta1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1beta1MutatingAdmissionPolicy",
      "summary": "partially update the specified MutatingAdmissionPolicy",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
        "operationId": "patchAdmissionregistrationV1beta1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1beta1MutatingAdmissionPolicy",
      "summary": "replace the specified MutatingAdmissionPolicy",
      "body": "PUT /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}",
        "operationId": "replaceAdmissionregistrationV1beta1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1beta1CollectionMutatingAdmissionPolicyBinding",
      "summary": "delete collection of MutatingAdmissionPolicyBinding",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings",
        "operationId": "deleteAdmissionregistrationV1beta1CollectionMutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "listAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
      "summary": "list or watch objects of kind MutatingAdmissionPolicyBinding",
      "body": "GET /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings",
        "operationId": "listAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "createAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
      "summary": "create a MutatingAdmissionPolicyBinding",
      "body": "POST /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings",
        "operationId": "createAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "deleteAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
      "summary": "delete a MutatingAdmissionPolicyBinding",
      "body": "DELETE /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
        "operationId": "deleteAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "readAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
      "summary": "read the specified MutatingAdmissionPolicyBinding",
      "body": "GET /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
        "operationId": "readAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "patchAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
      "summary": "partially update the specified MutatingAdmissionPolicyBinding",
      "body": "PATCH /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
        "operationId": "patchAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "replaceAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
      "summary": "replace the specified MutatingAdmissionPolicyBinding",
      "body": "PUT /apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}",
        "operationId": "replaceAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicies",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1beta1MutatingAdmissionPolicyList",
      "summary": "watch individual changes to a list of MutatingAdmissionPolicy. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicies",
        "operationId": "watchAdmissionregistrationV1beta1MutatingAdmissionPolicyList",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicies/{name}",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1beta1MutatingAdmissionPolicy",
      "summary": "watch changes to an object of kind MutatingAdmissionPolicy. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicies/{name}",
        "operationId": "watchAdmissionregistrationV1beta1MutatingAdmissionPolicy",
        "kind": "Mutatingadmissionpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicybindings",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1beta1MutatingAdmissionPolicyBindingList",
      "summary": "watch individual changes to a list of MutatingAdmissionPolicyBinding. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicybindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicybindings",
        "operationId": "watchAdmissionregistrationV1beta1MutatingAdmissionPolicyBindingList",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicybindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicybindings/{name}",
      "type": "api_path",
      "title": "watchAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
      "summary": "watch changes to an object of kind MutatingAdmissionPolicyBinding. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicybindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicybindings/{name}",
        "operationId": "watchAdmissionregistrationV1beta1MutatingAdmissionPolicyBinding",
        "kind": "Mutatingadmissionpolicybindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1beta1/watch/mutatingadmissionpolicybindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiextensions.k8s.io/",
      "type": "api_path",
      "title": "getApiextensionsAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/apiextensions.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiextensions.k8s.io/",
        "operationId": "getApiextensionsAPIGroup",
        "kind": "Apiextensions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiextensions.k8s.io/v1/",
      "type": "api_path",
      "title": "getApiextensionsV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/apiextensions.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiextensions.k8s.io/v1/",
        "operationId": "getApiextensionsV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apiextensions.k8s.io/v1/customresourcedefinitions",
      "type": "api_path",
      "title": "deleteApiextensionsV1CollectionCustomResourceDefinition",
      "summary": "delete collection of CustomResourceDefinition",
      "body": "DELETE /apis/apiextensions.k8s.io/v1/customresourcedefinitions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions",
        "operationId": "deleteApiextensionsV1CollectionCustomResourceDefinition",
        "kind": "Customresourcedefinitions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiextensions.k8s.io/v1/customresourcedefinitions",
      "type": "api_path",
      "title": "listApiextensionsV1CustomResourceDefinition",
      "summary": "list or watch objects of kind CustomResourceDefinition",
      "body": "GET /apis/apiextensions.k8s.io/v1/customresourcedefinitions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions",
        "operationId": "listApiextensionsV1CustomResourceDefinition",
        "kind": "Customresourcedefinitions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/apiextensions.k8s.io/v1/customresourcedefinitions",
      "type": "api_path",
      "title": "createApiextensionsV1CustomResourceDefinition",
      "summary": "create a CustomResourceDefinition",
      "body": "POST /apis/apiextensions.k8s.io/v1/customresourcedefinitions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions",
        "operationId": "createApiextensionsV1CustomResourceDefinition",
        "kind": "Customresourcedefinitions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
      "type": "api_path",
      "title": "deleteApiextensionsV1CustomResourceDefinition",
      "summary": "delete a CustomResourceDefinition",
      "body": "DELETE /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
        "operationId": "deleteApiextensionsV1CustomResourceDefinition",
        "kind": "Customresourcedefinitions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
      "type": "api_path",
      "title": "readApiextensionsV1CustomResourceDefinition",
      "summary": "read the specified CustomResourceDefinition",
      "body": "GET /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
        "operationId": "readApiextensionsV1CustomResourceDefinition",
        "kind": "Customresourcedefinitions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
      "type": "api_path",
      "title": "patchApiextensionsV1CustomResourceDefinition",
      "summary": "partially update the specified CustomResourceDefinition",
      "body": "PATCH /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
        "operationId": "patchApiextensionsV1CustomResourceDefinition",
        "kind": "Customresourcedefinitions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
      "type": "api_path",
      "title": "replaceApiextensionsV1CustomResourceDefinition",
      "summary": "replace the specified CustomResourceDefinition",
      "body": "PUT /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}",
        "operationId": "replaceApiextensionsV1CustomResourceDefinition",
        "kind": "Customresourcedefinitions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
      "type": "api_path",
      "title": "readApiextensionsV1CustomResourceDefinitionStatus",
      "summary": "read status of the specified CustomResourceDefinition",
      "body": "GET /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
        "operationId": "readApiextensionsV1CustomResourceDefinitionStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
      "type": "api_path",
      "title": "patchApiextensionsV1CustomResourceDefinitionStatus",
      "summary": "partially update status of the specified CustomResourceDefinition",
      "body": "PATCH /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
        "operationId": "patchApiextensionsV1CustomResourceDefinitionStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
      "type": "api_path",
      "title": "replaceApiextensionsV1CustomResourceDefinitionStatus",
      "summary": "replace status of the specified CustomResourceDefinition",
      "body": "PUT /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
        "operationId": "replaceApiextensionsV1CustomResourceDefinitionStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions",
      "type": "api_path",
      "title": "watchApiextensionsV1CustomResourceDefinitionList",
      "summary": "watch individual changes to a list of CustomResourceDefinition. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions",
        "operationId": "watchApiextensionsV1CustomResourceDefinitionList",
        "kind": "Customresourcedefinitions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions/{name}",
      "type": "api_path",
      "title": "watchApiextensionsV1CustomResourceDefinition",
      "summary": "watch changes to an object of kind CustomResourceDefinition. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions/{name}",
        "operationId": "watchApiextensionsV1CustomResourceDefinition",
        "kind": "Customresourcedefinitions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiregistration.k8s.io/",
      "type": "api_path",
      "title": "getApiregistrationAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/apiregistration.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiregistration.k8s.io/",
        "operationId": "getApiregistrationAPIGroup",
        "kind": "Apiregistration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiregistration.k8s.io/v1/",
      "type": "api_path",
      "title": "getApiregistrationV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/apiregistration.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiregistration.k8s.io/v1/",
        "operationId": "getApiregistrationV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apiregistration.k8s.io/v1/apiservices",
      "type": "api_path",
      "title": "deleteApiregistrationV1CollectionAPIService",
      "summary": "delete collection of APIService",
      "body": "DELETE /apis/apiregistration.k8s.io/v1/apiservices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apiregistration.k8s.io/v1/apiservices",
        "operationId": "deleteApiregistrationV1CollectionAPIService",
        "kind": "Apiservices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiregistration.k8s.io/v1/apiservices",
      "type": "api_path",
      "title": "listApiregistrationV1APIService",
      "summary": "list or watch objects of kind APIService",
      "body": "GET /apis/apiregistration.k8s.io/v1/apiservices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiregistration.k8s.io/v1/apiservices",
        "operationId": "listApiregistrationV1APIService",
        "kind": "Apiservices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/apiregistration.k8s.io/v1/apiservices",
      "type": "api_path",
      "title": "createApiregistrationV1APIService",
      "summary": "create an APIService",
      "body": "POST /apis/apiregistration.k8s.io/v1/apiservices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/apiregistration.k8s.io/v1/apiservices",
        "operationId": "createApiregistrationV1APIService",
        "kind": "Apiservices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apiregistration.k8s.io/v1/apiservices/{name}",
      "type": "api_path",
      "title": "deleteApiregistrationV1APIService",
      "summary": "delete an APIService",
      "body": "DELETE /apis/apiregistration.k8s.io/v1/apiservices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apiregistration.k8s.io/v1/apiservices/{name}",
        "operationId": "deleteApiregistrationV1APIService",
        "kind": "Apiservices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiregistration.k8s.io/v1/apiservices/{name}",
      "type": "api_path",
      "title": "readApiregistrationV1APIService",
      "summary": "read the specified APIService",
      "body": "GET /apis/apiregistration.k8s.io/v1/apiservices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiregistration.k8s.io/v1/apiservices/{name}",
        "operationId": "readApiregistrationV1APIService",
        "kind": "Apiservices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apiregistration.k8s.io/v1/apiservices/{name}",
      "type": "api_path",
      "title": "patchApiregistrationV1APIService",
      "summary": "partially update the specified APIService",
      "body": "PATCH /apis/apiregistration.k8s.io/v1/apiservices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apiregistration.k8s.io/v1/apiservices/{name}",
        "operationId": "patchApiregistrationV1APIService",
        "kind": "Apiservices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apiregistration.k8s.io/v1/apiservices/{name}",
      "type": "api_path",
      "title": "replaceApiregistrationV1APIService",
      "summary": "replace the specified APIService",
      "body": "PUT /apis/apiregistration.k8s.io/v1/apiservices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apiregistration.k8s.io/v1/apiservices/{name}",
        "operationId": "replaceApiregistrationV1APIService",
        "kind": "Apiservices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
      "type": "api_path",
      "title": "readApiregistrationV1APIServiceStatus",
      "summary": "read status of the specified APIService",
      "body": "GET /apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
        "operationId": "readApiregistrationV1APIServiceStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
      "type": "api_path",
      "title": "patchApiregistrationV1APIServiceStatus",
      "summary": "partially update status of the specified APIService",
      "body": "PATCH /apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
        "operationId": "patchApiregistrationV1APIServiceStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
      "type": "api_path",
      "title": "replaceApiregistrationV1APIServiceStatus",
      "summary": "replace status of the specified APIService",
      "body": "PUT /apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
        "operationId": "replaceApiregistrationV1APIServiceStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiregistration.k8s.io/v1/watch/apiservices",
      "type": "api_path",
      "title": "watchApiregistrationV1APIServiceList",
      "summary": "watch individual changes to a list of APIService. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apiregistration.k8s.io/v1/watch/apiservices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiregistration.k8s.io/v1/watch/apiservices",
        "operationId": "watchApiregistrationV1APIServiceList",
        "kind": "Apiservices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/watch/apiservices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apiregistration.k8s.io/v1/watch/apiservices/{name}",
      "type": "api_path",
      "title": "watchApiregistrationV1APIService",
      "summary": "watch changes to an object of kind APIService. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/apiregistration.k8s.io/v1/watch/apiservices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apiregistration.k8s.io/v1/watch/apiservices/{name}",
        "operationId": "watchApiregistrationV1APIService",
        "kind": "Apiservices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/watch/apiservices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/",
      "type": "api_path",
      "title": "getAppsAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/apps/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/",
        "operationId": "getAppsAPIGroup",
        "kind": "Apps"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/",
      "type": "api_path",
      "title": "getAppsV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/apps/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/",
        "operationId": "getAppsV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/controllerrevisions",
      "type": "api_path",
      "title": "listAppsV1ControllerRevisionForAllNamespaces",
      "summary": "list or watch objects of kind ControllerRevision",
      "body": "GET /apis/apps/v1/controllerrevisions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/controllerrevisions",
        "operationId": "listAppsV1ControllerRevisionForAllNamespaces",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/controllerrevisions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/daemonsets",
      "type": "api_path",
      "title": "listAppsV1DaemonSetForAllNamespaces",
      "summary": "list or watch objects of kind DaemonSet",
      "body": "GET /apis/apps/v1/daemonsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/daemonsets",
        "operationId": "listAppsV1DaemonSetForAllNamespaces",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/daemonsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/deployments",
      "type": "api_path",
      "title": "listAppsV1DeploymentForAllNamespaces",
      "summary": "list or watch objects of kind Deployment",
      "body": "GET /apis/apps/v1/deployments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/deployments",
        "operationId": "listAppsV1DeploymentForAllNamespaces",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/deployments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apps/v1/namespaces/{namespace}/controllerrevisions",
      "type": "api_path",
      "title": "deleteAppsV1CollectionNamespacedControllerRevision",
      "summary": "delete collection of ControllerRevision",
      "body": "DELETE /apis/apps/v1/namespaces/{namespace}/controllerrevisions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions",
        "operationId": "deleteAppsV1CollectionNamespacedControllerRevision",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/controllerrevisions",
      "type": "api_path",
      "title": "listAppsV1NamespacedControllerRevision",
      "summary": "list or watch objects of kind ControllerRevision",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/controllerrevisions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions",
        "operationId": "listAppsV1NamespacedControllerRevision",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/apps/v1/namespaces/{namespace}/controllerrevisions",
      "type": "api_path",
      "title": "createAppsV1NamespacedControllerRevision",
      "summary": "create a ControllerRevision",
      "body": "POST /apis/apps/v1/namespaces/{namespace}/controllerrevisions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions",
        "operationId": "createAppsV1NamespacedControllerRevision",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
      "type": "api_path",
      "title": "deleteAppsV1NamespacedControllerRevision",
      "summary": "delete a ControllerRevision",
      "body": "DELETE /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
        "operationId": "deleteAppsV1NamespacedControllerRevision",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
      "type": "api_path",
      "title": "readAppsV1NamespacedControllerRevision",
      "summary": "read the specified ControllerRevision",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
        "operationId": "readAppsV1NamespacedControllerRevision",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
      "type": "api_path",
      "title": "patchAppsV1NamespacedControllerRevision",
      "summary": "partially update the specified ControllerRevision",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
        "operationId": "patchAppsV1NamespacedControllerRevision",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedControllerRevision",
      "summary": "replace the specified ControllerRevision",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}",
        "operationId": "replaceAppsV1NamespacedControllerRevision",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apps/v1/namespaces/{namespace}/daemonsets",
      "type": "api_path",
      "title": "deleteAppsV1CollectionNamespacedDaemonSet",
      "summary": "delete collection of DaemonSet",
      "body": "DELETE /apis/apps/v1/namespaces/{namespace}/daemonsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apps/v1/namespaces/{namespace}/daemonsets",
        "operationId": "deleteAppsV1CollectionNamespacedDaemonSet",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/daemonsets",
      "type": "api_path",
      "title": "listAppsV1NamespacedDaemonSet",
      "summary": "list or watch objects of kind DaemonSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/daemonsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/daemonsets",
        "operationId": "listAppsV1NamespacedDaemonSet",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/apps/v1/namespaces/{namespace}/daemonsets",
      "type": "api_path",
      "title": "createAppsV1NamespacedDaemonSet",
      "summary": "create a DaemonSet",
      "body": "POST /apis/apps/v1/namespaces/{namespace}/daemonsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/apps/v1/namespaces/{namespace}/daemonsets",
        "operationId": "createAppsV1NamespacedDaemonSet",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
      "type": "api_path",
      "title": "deleteAppsV1NamespacedDaemonSet",
      "summary": "delete a DaemonSet",
      "body": "DELETE /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
        "operationId": "deleteAppsV1NamespacedDaemonSet",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
      "type": "api_path",
      "title": "readAppsV1NamespacedDaemonSet",
      "summary": "read the specified DaemonSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
        "operationId": "readAppsV1NamespacedDaemonSet",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
      "type": "api_path",
      "title": "patchAppsV1NamespacedDaemonSet",
      "summary": "partially update the specified DaemonSet",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
        "operationId": "patchAppsV1NamespacedDaemonSet",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedDaemonSet",
      "summary": "replace the specified DaemonSet",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}",
        "operationId": "replaceAppsV1NamespacedDaemonSet",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
      "type": "api_path",
      "title": "readAppsV1NamespacedDaemonSetStatus",
      "summary": "read status of the specified DaemonSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
        "operationId": "readAppsV1NamespacedDaemonSetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
      "type": "api_path",
      "title": "patchAppsV1NamespacedDaemonSetStatus",
      "summary": "partially update status of the specified DaemonSet",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
        "operationId": "patchAppsV1NamespacedDaemonSetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedDaemonSetStatus",
      "summary": "replace status of the specified DaemonSet",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
        "operationId": "replaceAppsV1NamespacedDaemonSetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apps/v1/namespaces/{namespace}/deployments",
      "type": "api_path",
      "title": "deleteAppsV1CollectionNamespacedDeployment",
      "summary": "delete collection of Deployment",
      "body": "DELETE /apis/apps/v1/namespaces/{namespace}/deployments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments",
        "operationId": "deleteAppsV1CollectionNamespacedDeployment",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/deployments",
      "type": "api_path",
      "title": "listAppsV1NamespacedDeployment",
      "summary": "list or watch objects of kind Deployment",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/deployments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments",
        "operationId": "listAppsV1NamespacedDeployment",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/apps/v1/namespaces/{namespace}/deployments",
      "type": "api_path",
      "title": "createAppsV1NamespacedDeployment",
      "summary": "create a Deployment",
      "body": "POST /apis/apps/v1/namespaces/{namespace}/deployments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments",
        "operationId": "createAppsV1NamespacedDeployment",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apps/v1/namespaces/{namespace}/deployments/{name}",
      "type": "api_path",
      "title": "deleteAppsV1NamespacedDeployment",
      "summary": "delete a Deployment",
      "body": "DELETE /apis/apps/v1/namespaces/{namespace}/deployments/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}",
        "operationId": "deleteAppsV1NamespacedDeployment",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/deployments/{name}",
      "type": "api_path",
      "title": "readAppsV1NamespacedDeployment",
      "summary": "read the specified Deployment",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/deployments/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}",
        "operationId": "readAppsV1NamespacedDeployment",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/deployments/{name}",
      "type": "api_path",
      "title": "patchAppsV1NamespacedDeployment",
      "summary": "partially update the specified Deployment",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/deployments/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}",
        "operationId": "patchAppsV1NamespacedDeployment",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/deployments/{name}",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedDeployment",
      "summary": "replace the specified Deployment",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/deployments/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}",
        "operationId": "replaceAppsV1NamespacedDeployment",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
      "type": "api_path",
      "title": "readAppsV1NamespacedDeploymentScale",
      "summary": "read scale of the specified Deployment",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
        "operationId": "readAppsV1NamespacedDeploymentScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
      "type": "api_path",
      "title": "patchAppsV1NamespacedDeploymentScale",
      "summary": "partially update scale of the specified Deployment",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
        "operationId": "patchAppsV1NamespacedDeploymentScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedDeploymentScale",
      "summary": "replace scale of the specified Deployment",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
        "operationId": "replaceAppsV1NamespacedDeploymentScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
      "type": "api_path",
      "title": "readAppsV1NamespacedDeploymentStatus",
      "summary": "read status of the specified Deployment",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
        "operationId": "readAppsV1NamespacedDeploymentStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
      "type": "api_path",
      "title": "patchAppsV1NamespacedDeploymentStatus",
      "summary": "partially update status of the specified Deployment",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
        "operationId": "patchAppsV1NamespacedDeploymentStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedDeploymentStatus",
      "summary": "replace status of the specified Deployment",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
        "operationId": "replaceAppsV1NamespacedDeploymentStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apps/v1/namespaces/{namespace}/replicasets",
      "type": "api_path",
      "title": "deleteAppsV1CollectionNamespacedReplicaSet",
      "summary": "delete collection of ReplicaSet",
      "body": "DELETE /apis/apps/v1/namespaces/{namespace}/replicasets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets",
        "operationId": "deleteAppsV1CollectionNamespacedReplicaSet",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/replicasets",
      "type": "api_path",
      "title": "listAppsV1NamespacedReplicaSet",
      "summary": "list or watch objects of kind ReplicaSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/replicasets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets",
        "operationId": "listAppsV1NamespacedReplicaSet",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/apps/v1/namespaces/{namespace}/replicasets",
      "type": "api_path",
      "title": "createAppsV1NamespacedReplicaSet",
      "summary": "create a ReplicaSet",
      "body": "POST /apis/apps/v1/namespaces/{namespace}/replicasets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets",
        "operationId": "createAppsV1NamespacedReplicaSet",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
      "type": "api_path",
      "title": "deleteAppsV1NamespacedReplicaSet",
      "summary": "delete a ReplicaSet",
      "body": "DELETE /apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
        "operationId": "deleteAppsV1NamespacedReplicaSet",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
      "type": "api_path",
      "title": "readAppsV1NamespacedReplicaSet",
      "summary": "read the specified ReplicaSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
        "operationId": "readAppsV1NamespacedReplicaSet",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
      "type": "api_path",
      "title": "patchAppsV1NamespacedReplicaSet",
      "summary": "partially update the specified ReplicaSet",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
        "operationId": "patchAppsV1NamespacedReplicaSet",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedReplicaSet",
      "summary": "replace the specified ReplicaSet",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}",
        "operationId": "replaceAppsV1NamespacedReplicaSet",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
      "type": "api_path",
      "title": "readAppsV1NamespacedReplicaSetScale",
      "summary": "read scale of the specified ReplicaSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
        "operationId": "readAppsV1NamespacedReplicaSetScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
      "type": "api_path",
      "title": "patchAppsV1NamespacedReplicaSetScale",
      "summary": "partially update scale of the specified ReplicaSet",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
        "operationId": "patchAppsV1NamespacedReplicaSetScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedReplicaSetScale",
      "summary": "replace scale of the specified ReplicaSet",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
        "operationId": "replaceAppsV1NamespacedReplicaSetScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
      "type": "api_path",
      "title": "readAppsV1NamespacedReplicaSetStatus",
      "summary": "read status of the specified ReplicaSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
        "operationId": "readAppsV1NamespacedReplicaSetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
      "type": "api_path",
      "title": "patchAppsV1NamespacedReplicaSetStatus",
      "summary": "partially update status of the specified ReplicaSet",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
        "operationId": "patchAppsV1NamespacedReplicaSetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedReplicaSetStatus",
      "summary": "replace status of the specified ReplicaSet",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
        "operationId": "replaceAppsV1NamespacedReplicaSetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apps/v1/namespaces/{namespace}/statefulsets",
      "type": "api_path",
      "title": "deleteAppsV1CollectionNamespacedStatefulSet",
      "summary": "delete collection of StatefulSet",
      "body": "DELETE /apis/apps/v1/namespaces/{namespace}/statefulsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets",
        "operationId": "deleteAppsV1CollectionNamespacedStatefulSet",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/statefulsets",
      "type": "api_path",
      "title": "listAppsV1NamespacedStatefulSet",
      "summary": "list or watch objects of kind StatefulSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/statefulsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets",
        "operationId": "listAppsV1NamespacedStatefulSet",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/apps/v1/namespaces/{namespace}/statefulsets",
      "type": "api_path",
      "title": "createAppsV1NamespacedStatefulSet",
      "summary": "create a StatefulSet",
      "body": "POST /apis/apps/v1/namespaces/{namespace}/statefulsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets",
        "operationId": "createAppsV1NamespacedStatefulSet",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
      "type": "api_path",
      "title": "deleteAppsV1NamespacedStatefulSet",
      "summary": "delete a StatefulSet",
      "body": "DELETE /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
        "operationId": "deleteAppsV1NamespacedStatefulSet",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
      "type": "api_path",
      "title": "readAppsV1NamespacedStatefulSet",
      "summary": "read the specified StatefulSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
        "operationId": "readAppsV1NamespacedStatefulSet",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
      "type": "api_path",
      "title": "patchAppsV1NamespacedStatefulSet",
      "summary": "partially update the specified StatefulSet",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
        "operationId": "patchAppsV1NamespacedStatefulSet",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedStatefulSet",
      "summary": "replace the specified StatefulSet",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}",
        "operationId": "replaceAppsV1NamespacedStatefulSet",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
      "type": "api_path",
      "title": "readAppsV1NamespacedStatefulSetScale",
      "summary": "read scale of the specified StatefulSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
        "operationId": "readAppsV1NamespacedStatefulSetScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
      "type": "api_path",
      "title": "patchAppsV1NamespacedStatefulSetScale",
      "summary": "partially update scale of the specified StatefulSet",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
        "operationId": "patchAppsV1NamespacedStatefulSetScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedStatefulSetScale",
      "summary": "replace scale of the specified StatefulSet",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
        "operationId": "replaceAppsV1NamespacedStatefulSetScale",
        "kind": "Scale"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
      "type": "api_path",
      "title": "readAppsV1NamespacedStatefulSetStatus",
      "summary": "read status of the specified StatefulSet",
      "body": "GET /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
        "operationId": "readAppsV1NamespacedStatefulSetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
      "type": "api_path",
      "title": "patchAppsV1NamespacedStatefulSetStatus",
      "summary": "partially update status of the specified StatefulSet",
      "body": "PATCH /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
        "operationId": "patchAppsV1NamespacedStatefulSetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
      "type": "api_path",
      "title": "replaceAppsV1NamespacedStatefulSetStatus",
      "summary": "replace status of the specified StatefulSet",
      "body": "PUT /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
        "operationId": "replaceAppsV1NamespacedStatefulSetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/replicasets",
      "type": "api_path",
      "title": "listAppsV1ReplicaSetForAllNamespaces",
      "summary": "list or watch objects of kind ReplicaSet",
      "body": "GET /apis/apps/v1/replicasets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/replicasets",
        "operationId": "listAppsV1ReplicaSetForAllNamespaces",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/replicasets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/statefulsets",
      "type": "api_path",
      "title": "listAppsV1StatefulSetForAllNamespaces",
      "summary": "list or watch objects of kind StatefulSet",
      "body": "GET /apis/apps/v1/statefulsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/statefulsets",
        "operationId": "listAppsV1StatefulSetForAllNamespaces",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/statefulsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/controllerrevisions",
      "type": "api_path",
      "title": "watchAppsV1ControllerRevisionListForAllNamespaces",
      "summary": "watch individual changes to a list of ControllerRevision. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apps/v1/watch/controllerrevisions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/controllerrevisions",
        "operationId": "watchAppsV1ControllerRevisionListForAllNamespaces",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/controllerrevisions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/daemonsets",
      "type": "api_path",
      "title": "watchAppsV1DaemonSetListForAllNamespaces",
      "summary": "watch individual changes to a list of DaemonSet. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apps/v1/watch/daemonsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/daemonsets",
        "operationId": "watchAppsV1DaemonSetListForAllNamespaces",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/daemonsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/deployments",
      "type": "api_path",
      "title": "watchAppsV1DeploymentListForAllNamespaces",
      "summary": "watch individual changes to a list of Deployment. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apps/v1/watch/deployments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/deployments",
        "operationId": "watchAppsV1DeploymentListForAllNamespaces",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/deployments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/namespaces/{namespace}/controllerrevisions",
      "type": "api_path",
      "title": "watchAppsV1NamespacedControllerRevisionList",
      "summary": "watch individual changes to a list of ControllerRevision. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apps/v1/watch/namespaces/{namespace}/controllerrevisions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/namespaces/{namespace}/controllerrevisions",
        "operationId": "watchAppsV1NamespacedControllerRevisionList",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/namespaces/{namespace}/controllerrevisions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/namespaces/{namespace}/controllerrevisions/{name}",
      "type": "api_path",
      "title": "watchAppsV1NamespacedControllerRevision",
      "summary": "watch changes to an object of kind ControllerRevision. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/apps/v1/watch/namespaces/{namespace}/controllerrevisions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/namespaces/{namespace}/controllerrevisions/{name}",
        "operationId": "watchAppsV1NamespacedControllerRevision",
        "kind": "Controllerrevisions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/namespaces/{namespace}/controllerrevisions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/namespaces/{namespace}/daemonsets",
      "type": "api_path",
      "title": "watchAppsV1NamespacedDaemonSetList",
      "summary": "watch individual changes to a list of DaemonSet. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apps/v1/watch/namespaces/{namespace}/daemonsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/namespaces/{namespace}/daemonsets",
        "operationId": "watchAppsV1NamespacedDaemonSetList",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/namespaces/{namespace}/daemonsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/namespaces/{namespace}/daemonsets/{name}",
      "type": "api_path",
      "title": "watchAppsV1NamespacedDaemonSet",
      "summary": "watch changes to an object of kind DaemonSet. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/apps/v1/watch/namespaces/{namespace}/daemonsets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/namespaces/{namespace}/daemonsets/{name}",
        "operationId": "watchAppsV1NamespacedDaemonSet",
        "kind": "Daemonsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/namespaces/{namespace}/daemonsets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/namespaces/{namespace}/deployments",
      "type": "api_path",
      "title": "watchAppsV1NamespacedDeploymentList",
      "summary": "watch individual changes to a list of Deployment. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apps/v1/watch/namespaces/{namespace}/deployments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/namespaces/{namespace}/deployments",
        "operationId": "watchAppsV1NamespacedDeploymentList",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/namespaces/{namespace}/deployments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/namespaces/{namespace}/deployments/{name}",
      "type": "api_path",
      "title": "watchAppsV1NamespacedDeployment",
      "summary": "watch changes to an object of kind Deployment. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/apps/v1/watch/namespaces/{namespace}/deployments/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/namespaces/{namespace}/deployments/{name}",
        "operationId": "watchAppsV1NamespacedDeployment",
        "kind": "Deployments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/namespaces/{namespace}/deployments/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/namespaces/{namespace}/replicasets",
      "type": "api_path",
      "title": "watchAppsV1NamespacedReplicaSetList",
      "summary": "watch individual changes to a list of ReplicaSet. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apps/v1/watch/namespaces/{namespace}/replicasets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/namespaces/{namespace}/replicasets",
        "operationId": "watchAppsV1NamespacedReplicaSetList",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/namespaces/{namespace}/replicasets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/namespaces/{namespace}/replicasets/{name}",
      "type": "api_path",
      "title": "watchAppsV1NamespacedReplicaSet",
      "summary": "watch changes to an object of kind ReplicaSet. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/apps/v1/watch/namespaces/{namespace}/replicasets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/namespaces/{namespace}/replicasets/{name}",
        "operationId": "watchAppsV1NamespacedReplicaSet",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/namespaces/{namespace}/replicasets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/namespaces/{namespace}/statefulsets",
      "type": "api_path",
      "title": "watchAppsV1NamespacedStatefulSetList",
      "summary": "watch individual changes to a list of StatefulSet. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apps/v1/watch/namespaces/{namespace}/statefulsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/namespaces/{namespace}/statefulsets",
        "operationId": "watchAppsV1NamespacedStatefulSetList",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/namespaces/{namespace}/statefulsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/namespaces/{namespace}/statefulsets/{name}",
      "type": "api_path",
      "title": "watchAppsV1NamespacedStatefulSet",
      "summary": "watch changes to an object of kind StatefulSet. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/apps/v1/watch/namespaces/{namespace}/statefulsets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/namespaces/{namespace}/statefulsets/{name}",
        "operationId": "watchAppsV1NamespacedStatefulSet",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/namespaces/{namespace}/statefulsets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/replicasets",
      "type": "api_path",
      "title": "watchAppsV1ReplicaSetListForAllNamespaces",
      "summary": "watch individual changes to a list of ReplicaSet. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apps/v1/watch/replicasets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/replicasets",
        "operationId": "watchAppsV1ReplicaSetListForAllNamespaces",
        "kind": "Replicasets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/replicasets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/apps/v1/watch/statefulsets",
      "type": "api_path",
      "title": "watchAppsV1StatefulSetListForAllNamespaces",
      "summary": "watch individual changes to a list of StatefulSet. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/apps/v1/watch/statefulsets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/apps/v1/watch/statefulsets",
        "operationId": "watchAppsV1StatefulSetListForAllNamespaces",
        "kind": "Statefulsets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/watch/statefulsets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/authentication.k8s.io/",
      "type": "api_path",
      "title": "getAuthenticationAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/authentication.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/authentication.k8s.io/",
        "operationId": "getAuthenticationAPIGroup",
        "kind": "Authentication"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/authentication.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/authentication.k8s.io/v1/",
      "type": "api_path",
      "title": "getAuthenticationV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/authentication.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/authentication.k8s.io/v1/",
        "operationId": "getAuthenticationV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/authentication.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/authentication.k8s.io/v1/selfsubjectreviews",
      "type": "api_path",
      "title": "createAuthenticationV1SelfSubjectReview",
      "summary": "create a SelfSubjectReview",
      "body": "POST /apis/authentication.k8s.io/v1/selfsubjectreviews",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/authentication.k8s.io/v1/selfsubjectreviews",
        "operationId": "createAuthenticationV1SelfSubjectReview",
        "kind": "Selfsubjectreviews"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/authentication.k8s.io/v1/selfsubjectreviews"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/authentication.k8s.io/v1/tokenreviews",
      "type": "api_path",
      "title": "createAuthenticationV1TokenReview",
      "summary": "create a TokenReview",
      "body": "POST /apis/authentication.k8s.io/v1/tokenreviews",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/authentication.k8s.io/v1/tokenreviews",
        "operationId": "createAuthenticationV1TokenReview",
        "kind": "Tokenreviews"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/authentication.k8s.io/v1/tokenreviews"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/authorization.k8s.io/",
      "type": "api_path",
      "title": "getAuthorizationAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/authorization.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/authorization.k8s.io/",
        "operationId": "getAuthorizationAPIGroup",
        "kind": "Authorization"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/authorization.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/authorization.k8s.io/v1/",
      "type": "api_path",
      "title": "getAuthorizationV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/authorization.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/authorization.k8s.io/v1/",
        "operationId": "getAuthorizationV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/authorization.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/authorization.k8s.io/v1/namespaces/{namespace}/localsubjectaccessreviews",
      "type": "api_path",
      "title": "createAuthorizationV1NamespacedLocalSubjectAccessReview",
      "summary": "create a LocalSubjectAccessReview",
      "body": "POST /apis/authorization.k8s.io/v1/namespaces/{namespace}/localsubjectaccessreviews",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/authorization.k8s.io/v1/namespaces/{namespace}/localsubjectaccessreviews",
        "operationId": "createAuthorizationV1NamespacedLocalSubjectAccessReview",
        "kind": "Localsubjectaccessreviews"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/authorization.k8s.io/v1/namespaces/{namespace}/localsubjectaccessreviews"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/authorization.k8s.io/v1/selfsubjectaccessreviews",
      "type": "api_path",
      "title": "createAuthorizationV1SelfSubjectAccessReview",
      "summary": "create a SelfSubjectAccessReview",
      "body": "POST /apis/authorization.k8s.io/v1/selfsubjectaccessreviews",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/authorization.k8s.io/v1/selfsubjectaccessreviews",
        "operationId": "createAuthorizationV1SelfSubjectAccessReview",
        "kind": "Selfsubjectaccessreviews"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/authorization.k8s.io/v1/selfsubjectaccessreviews"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/authorization.k8s.io/v1/selfsubjectrulesreviews",
      "type": "api_path",
      "title": "createAuthorizationV1SelfSubjectRulesReview",
      "summary": "create a SelfSubjectRulesReview",
      "body": "POST /apis/authorization.k8s.io/v1/selfsubjectrulesreviews",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/authorization.k8s.io/v1/selfsubjectrulesreviews",
        "operationId": "createAuthorizationV1SelfSubjectRulesReview",
        "kind": "Selfsubjectrulesreviews"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/authorization.k8s.io/v1/selfsubjectrulesreviews"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/authorization.k8s.io/v1/subjectaccessreviews",
      "type": "api_path",
      "title": "createAuthorizationV1SubjectAccessReview",
      "summary": "create a SubjectAccessReview",
      "body": "POST /apis/authorization.k8s.io/v1/subjectaccessreviews",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/authorization.k8s.io/v1/subjectaccessreviews",
        "operationId": "createAuthorizationV1SubjectAccessReview",
        "kind": "Subjectaccessreviews"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/authorization.k8s.io/v1/subjectaccessreviews"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/",
      "type": "api_path",
      "title": "getAutoscalingAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/autoscaling/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/",
        "operationId": "getAutoscalingAPIGroup",
        "kind": "Autoscaling"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v1/",
      "type": "api_path",
      "title": "getAutoscalingV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/autoscaling/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v1/",
        "operationId": "getAutoscalingV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v1/horizontalpodautoscalers",
      "type": "api_path",
      "title": "listAutoscalingV1HorizontalPodAutoscalerForAllNamespaces",
      "summary": "list or watch objects of kind HorizontalPodAutoscaler",
      "body": "GET /apis/autoscaling/v1/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v1/horizontalpodautoscalers",
        "operationId": "listAutoscalingV1HorizontalPodAutoscalerForAllNamespaces",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers",
      "type": "api_path",
      "title": "deleteAutoscalingV1CollectionNamespacedHorizontalPodAutoscaler",
      "summary": "delete collection of HorizontalPodAutoscaler",
      "body": "DELETE /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers",
        "operationId": "deleteAutoscalingV1CollectionNamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers",
      "type": "api_path",
      "title": "listAutoscalingV1NamespacedHorizontalPodAutoscaler",
      "summary": "list or watch objects of kind HorizontalPodAutoscaler",
      "body": "GET /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers",
        "operationId": "listAutoscalingV1NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers",
      "type": "api_path",
      "title": "createAutoscalingV1NamespacedHorizontalPodAutoscaler",
      "summary": "create a HorizontalPodAutoscaler",
      "body": "POST /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers",
        "operationId": "createAutoscalingV1NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "type": "api_path",
      "title": "deleteAutoscalingV1NamespacedHorizontalPodAutoscaler",
      "summary": "delete a HorizontalPodAutoscaler",
      "body": "DELETE /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
        "operationId": "deleteAutoscalingV1NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "type": "api_path",
      "title": "readAutoscalingV1NamespacedHorizontalPodAutoscaler",
      "summary": "read the specified HorizontalPodAutoscaler",
      "body": "GET /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
        "operationId": "readAutoscalingV1NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "type": "api_path",
      "title": "patchAutoscalingV1NamespacedHorizontalPodAutoscaler",
      "summary": "partially update the specified HorizontalPodAutoscaler",
      "body": "PATCH /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
        "operationId": "patchAutoscalingV1NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "type": "api_path",
      "title": "replaceAutoscalingV1NamespacedHorizontalPodAutoscaler",
      "summary": "replace the specified HorizontalPodAutoscaler",
      "body": "PUT /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}",
        "operationId": "replaceAutoscalingV1NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "type": "api_path",
      "title": "readAutoscalingV1NamespacedHorizontalPodAutoscalerStatus",
      "summary": "read status of the specified HorizontalPodAutoscaler",
      "body": "GET /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
        "operationId": "readAutoscalingV1NamespacedHorizontalPodAutoscalerStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "type": "api_path",
      "title": "patchAutoscalingV1NamespacedHorizontalPodAutoscalerStatus",
      "summary": "partially update status of the specified HorizontalPodAutoscaler",
      "body": "PATCH /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
        "operationId": "patchAutoscalingV1NamespacedHorizontalPodAutoscalerStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "type": "api_path",
      "title": "replaceAutoscalingV1NamespacedHorizontalPodAutoscalerStatus",
      "summary": "replace status of the specified HorizontalPodAutoscaler",
      "body": "PUT /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
        "operationId": "replaceAutoscalingV1NamespacedHorizontalPodAutoscalerStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v1/watch/horizontalpodautoscalers",
      "type": "api_path",
      "title": "watchAutoscalingV1HorizontalPodAutoscalerListForAllNamespaces",
      "summary": "watch individual changes to a list of HorizontalPodAutoscaler. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/autoscaling/v1/watch/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v1/watch/horizontalpodautoscalers",
        "operationId": "watchAutoscalingV1HorizontalPodAutoscalerListForAllNamespaces",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/watch/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v1/watch/namespaces/{namespace}/horizontalpodautoscalers",
      "type": "api_path",
      "title": "watchAutoscalingV1NamespacedHorizontalPodAutoscalerList",
      "summary": "watch individual changes to a list of HorizontalPodAutoscaler. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/autoscaling/v1/watch/namespaces/{namespace}/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v1/watch/namespaces/{namespace}/horizontalpodautoscalers",
        "operationId": "watchAutoscalingV1NamespacedHorizontalPodAutoscalerList",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/watch/namespaces/{namespace}/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v1/watch/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "type": "api_path",
      "title": "watchAutoscalingV1NamespacedHorizontalPodAutoscaler",
      "summary": "watch changes to an object of kind HorizontalPodAutoscaler. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/autoscaling/v1/watch/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v1/watch/namespaces/{namespace}/horizontalpodautoscalers/{name}",
        "operationId": "watchAutoscalingV1NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/watch/namespaces/{namespace}/horizontalpodautoscalers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v2/",
      "type": "api_path",
      "title": "getAutoscalingV2APIResources",
      "summary": "get available resources",
      "body": "GET /apis/autoscaling/v2/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v2/",
        "operationId": "getAutoscalingV2APIResources",
        "kind": "V2"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v2/horizontalpodautoscalers",
      "type": "api_path",
      "title": "listAutoscalingV2HorizontalPodAutoscalerForAllNamespaces",
      "summary": "list or watch objects of kind HorizontalPodAutoscaler",
      "body": "GET /apis/autoscaling/v2/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v2/horizontalpodautoscalers",
        "operationId": "listAutoscalingV2HorizontalPodAutoscalerForAllNamespaces",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers",
      "type": "api_path",
      "title": "deleteAutoscalingV2CollectionNamespacedHorizontalPodAutoscaler",
      "summary": "delete collection of HorizontalPodAutoscaler",
      "body": "DELETE /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers",
        "operationId": "deleteAutoscalingV2CollectionNamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers",
      "type": "api_path",
      "title": "listAutoscalingV2NamespacedHorizontalPodAutoscaler",
      "summary": "list or watch objects of kind HorizontalPodAutoscaler",
      "body": "GET /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers",
        "operationId": "listAutoscalingV2NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers",
      "type": "api_path",
      "title": "createAutoscalingV2NamespacedHorizontalPodAutoscaler",
      "summary": "create a HorizontalPodAutoscaler",
      "body": "POST /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers",
        "operationId": "createAutoscalingV2NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "type": "api_path",
      "title": "deleteAutoscalingV2NamespacedHorizontalPodAutoscaler",
      "summary": "delete a HorizontalPodAutoscaler",
      "body": "DELETE /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
        "operationId": "deleteAutoscalingV2NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "type": "api_path",
      "title": "readAutoscalingV2NamespacedHorizontalPodAutoscaler",
      "summary": "read the specified HorizontalPodAutoscaler",
      "body": "GET /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
        "operationId": "readAutoscalingV2NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "type": "api_path",
      "title": "patchAutoscalingV2NamespacedHorizontalPodAutoscaler",
      "summary": "partially update the specified HorizontalPodAutoscaler",
      "body": "PATCH /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
        "operationId": "patchAutoscalingV2NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "type": "api_path",
      "title": "replaceAutoscalingV2NamespacedHorizontalPodAutoscaler",
      "summary": "replace the specified HorizontalPodAutoscaler",
      "body": "PUT /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}",
        "operationId": "replaceAutoscalingV2NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "type": "api_path",
      "title": "readAutoscalingV2NamespacedHorizontalPodAutoscalerStatus",
      "summary": "read status of the specified HorizontalPodAutoscaler",
      "body": "GET /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
        "operationId": "readAutoscalingV2NamespacedHorizontalPodAutoscalerStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "type": "api_path",
      "title": "patchAutoscalingV2NamespacedHorizontalPodAutoscalerStatus",
      "summary": "partially update status of the specified HorizontalPodAutoscaler",
      "body": "PATCH /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
        "operationId": "patchAutoscalingV2NamespacedHorizontalPodAutoscalerStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "type": "api_path",
      "title": "replaceAutoscalingV2NamespacedHorizontalPodAutoscalerStatus",
      "summary": "replace status of the specified HorizontalPodAutoscaler",
      "body": "PUT /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
        "operationId": "replaceAutoscalingV2NamespacedHorizontalPodAutoscalerStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v2/watch/horizontalpodautoscalers",
      "type": "api_path",
      "title": "watchAutoscalingV2HorizontalPodAutoscalerListForAllNamespaces",
      "summary": "watch individual changes to a list of HorizontalPodAutoscaler. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/autoscaling/v2/watch/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v2/watch/horizontalpodautoscalers",
        "operationId": "watchAutoscalingV2HorizontalPodAutoscalerListForAllNamespaces",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/watch/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers",
      "type": "api_path",
      "title": "watchAutoscalingV2NamespacedHorizontalPodAutoscalerList",
      "summary": "watch individual changes to a list of HorizontalPodAutoscaler. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers",
        "operationId": "watchAutoscalingV2NamespacedHorizontalPodAutoscalerList",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "type": "api_path",
      "title": "watchAutoscalingV2NamespacedHorizontalPodAutoscaler",
      "summary": "watch changes to an object of kind HorizontalPodAutoscaler. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers/{name}",
        "operationId": "watchAutoscalingV2NamespacedHorizontalPodAutoscaler",
        "kind": "Horizontalpodautoscalers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/",
      "type": "api_path",
      "title": "getBatchAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/batch/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/",
        "operationId": "getBatchAPIGroup",
        "kind": "Batch"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/",
      "type": "api_path",
      "title": "getBatchV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/batch/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/",
        "operationId": "getBatchV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/cronjobs",
      "type": "api_path",
      "title": "listBatchV1CronJobForAllNamespaces",
      "summary": "list or watch objects of kind CronJob",
      "body": "GET /apis/batch/v1/cronjobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/cronjobs",
        "operationId": "listBatchV1CronJobForAllNamespaces",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/cronjobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/jobs",
      "type": "api_path",
      "title": "listBatchV1JobForAllNamespaces",
      "summary": "list or watch objects of kind Job",
      "body": "GET /apis/batch/v1/jobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/jobs",
        "operationId": "listBatchV1JobForAllNamespaces",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/jobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/batch/v1/namespaces/{namespace}/cronjobs",
      "type": "api_path",
      "title": "deleteBatchV1CollectionNamespacedCronJob",
      "summary": "delete collection of CronJob",
      "body": "DELETE /apis/batch/v1/namespaces/{namespace}/cronjobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/batch/v1/namespaces/{namespace}/cronjobs",
        "operationId": "deleteBatchV1CollectionNamespacedCronJob",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/namespaces/{namespace}/cronjobs",
      "type": "api_path",
      "title": "listBatchV1NamespacedCronJob",
      "summary": "list or watch objects of kind CronJob",
      "body": "GET /apis/batch/v1/namespaces/{namespace}/cronjobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/namespaces/{namespace}/cronjobs",
        "operationId": "listBatchV1NamespacedCronJob",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/batch/v1/namespaces/{namespace}/cronjobs",
      "type": "api_path",
      "title": "createBatchV1NamespacedCronJob",
      "summary": "create a CronJob",
      "body": "POST /apis/batch/v1/namespaces/{namespace}/cronjobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/batch/v1/namespaces/{namespace}/cronjobs",
        "operationId": "createBatchV1NamespacedCronJob",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
      "type": "api_path",
      "title": "deleteBatchV1NamespacedCronJob",
      "summary": "delete a CronJob",
      "body": "DELETE /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
        "operationId": "deleteBatchV1NamespacedCronJob",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
      "type": "api_path",
      "title": "readBatchV1NamespacedCronJob",
      "summary": "read the specified CronJob",
      "body": "GET /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
        "operationId": "readBatchV1NamespacedCronJob",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
      "type": "api_path",
      "title": "patchBatchV1NamespacedCronJob",
      "summary": "partially update the specified CronJob",
      "body": "PATCH /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
        "operationId": "patchBatchV1NamespacedCronJob",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
      "type": "api_path",
      "title": "replaceBatchV1NamespacedCronJob",
      "summary": "replace the specified CronJob",
      "body": "PUT /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}",
        "operationId": "replaceBatchV1NamespacedCronJob",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
      "type": "api_path",
      "title": "readBatchV1NamespacedCronJobStatus",
      "summary": "read status of the specified CronJob",
      "body": "GET /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
        "operationId": "readBatchV1NamespacedCronJobStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
      "type": "api_path",
      "title": "patchBatchV1NamespacedCronJobStatus",
      "summary": "partially update status of the specified CronJob",
      "body": "PATCH /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
        "operationId": "patchBatchV1NamespacedCronJobStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
      "type": "api_path",
      "title": "replaceBatchV1NamespacedCronJobStatus",
      "summary": "replace status of the specified CronJob",
      "body": "PUT /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
        "operationId": "replaceBatchV1NamespacedCronJobStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/batch/v1/namespaces/{namespace}/jobs",
      "type": "api_path",
      "title": "deleteBatchV1CollectionNamespacedJob",
      "summary": "delete collection of Job",
      "body": "DELETE /apis/batch/v1/namespaces/{namespace}/jobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/batch/v1/namespaces/{namespace}/jobs",
        "operationId": "deleteBatchV1CollectionNamespacedJob",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/namespaces/{namespace}/jobs",
      "type": "api_path",
      "title": "listBatchV1NamespacedJob",
      "summary": "list or watch objects of kind Job",
      "body": "GET /apis/batch/v1/namespaces/{namespace}/jobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/namespaces/{namespace}/jobs",
        "operationId": "listBatchV1NamespacedJob",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/batch/v1/namespaces/{namespace}/jobs",
      "type": "api_path",
      "title": "createBatchV1NamespacedJob",
      "summary": "create a Job",
      "body": "POST /apis/batch/v1/namespaces/{namespace}/jobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/batch/v1/namespaces/{namespace}/jobs",
        "operationId": "createBatchV1NamespacedJob",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/batch/v1/namespaces/{namespace}/jobs/{name}",
      "type": "api_path",
      "title": "deleteBatchV1NamespacedJob",
      "summary": "delete a Job",
      "body": "DELETE /apis/batch/v1/namespaces/{namespace}/jobs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}",
        "operationId": "deleteBatchV1NamespacedJob",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/namespaces/{namespace}/jobs/{name}",
      "type": "api_path",
      "title": "readBatchV1NamespacedJob",
      "summary": "read the specified Job",
      "body": "GET /apis/batch/v1/namespaces/{namespace}/jobs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}",
        "operationId": "readBatchV1NamespacedJob",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/batch/v1/namespaces/{namespace}/jobs/{name}",
      "type": "api_path",
      "title": "patchBatchV1NamespacedJob",
      "summary": "partially update the specified Job",
      "body": "PATCH /apis/batch/v1/namespaces/{namespace}/jobs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}",
        "operationId": "patchBatchV1NamespacedJob",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/batch/v1/namespaces/{namespace}/jobs/{name}",
      "type": "api_path",
      "title": "replaceBatchV1NamespacedJob",
      "summary": "replace the specified Job",
      "body": "PUT /apis/batch/v1/namespaces/{namespace}/jobs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}",
        "operationId": "replaceBatchV1NamespacedJob",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
      "type": "api_path",
      "title": "readBatchV1NamespacedJobStatus",
      "summary": "read status of the specified Job",
      "body": "GET /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
        "operationId": "readBatchV1NamespacedJobStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
      "type": "api_path",
      "title": "patchBatchV1NamespacedJobStatus",
      "summary": "partially update status of the specified Job",
      "body": "PATCH /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
        "operationId": "patchBatchV1NamespacedJobStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
      "type": "api_path",
      "title": "replaceBatchV1NamespacedJobStatus",
      "summary": "replace status of the specified Job",
      "body": "PUT /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
        "operationId": "replaceBatchV1NamespacedJobStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/watch/cronjobs",
      "type": "api_path",
      "title": "watchBatchV1CronJobListForAllNamespaces",
      "summary": "watch individual changes to a list of CronJob. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/batch/v1/watch/cronjobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/watch/cronjobs",
        "operationId": "watchBatchV1CronJobListForAllNamespaces",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/watch/cronjobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/watch/jobs",
      "type": "api_path",
      "title": "watchBatchV1JobListForAllNamespaces",
      "summary": "watch individual changes to a list of Job. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/batch/v1/watch/jobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/watch/jobs",
        "operationId": "watchBatchV1JobListForAllNamespaces",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/watch/jobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/watch/namespaces/{namespace}/cronjobs",
      "type": "api_path",
      "title": "watchBatchV1NamespacedCronJobList",
      "summary": "watch individual changes to a list of CronJob. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/batch/v1/watch/namespaces/{namespace}/cronjobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/watch/namespaces/{namespace}/cronjobs",
        "operationId": "watchBatchV1NamespacedCronJobList",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/watch/namespaces/{namespace}/cronjobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/watch/namespaces/{namespace}/cronjobs/{name}",
      "type": "api_path",
      "title": "watchBatchV1NamespacedCronJob",
      "summary": "watch changes to an object of kind CronJob. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/batch/v1/watch/namespaces/{namespace}/cronjobs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/watch/namespaces/{namespace}/cronjobs/{name}",
        "operationId": "watchBatchV1NamespacedCronJob",
        "kind": "Cronjobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/watch/namespaces/{namespace}/cronjobs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/watch/namespaces/{namespace}/jobs",
      "type": "api_path",
      "title": "watchBatchV1NamespacedJobList",
      "summary": "watch individual changes to a list of Job. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/batch/v1/watch/namespaces/{namespace}/jobs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/watch/namespaces/{namespace}/jobs",
        "operationId": "watchBatchV1NamespacedJobList",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/watch/namespaces/{namespace}/jobs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/batch/v1/watch/namespaces/{namespace}/jobs/{name}",
      "type": "api_path",
      "title": "watchBatchV1NamespacedJob",
      "summary": "watch changes to an object of kind Job. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/batch/v1/watch/namespaces/{namespace}/jobs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/batch/v1/watch/namespaces/{namespace}/jobs/{name}",
        "operationId": "watchBatchV1NamespacedJob",
        "kind": "Jobs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/watch/namespaces/{namespace}/jobs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/",
      "type": "api_path",
      "title": "getCertificatesAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/certificates.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/",
        "operationId": "getCertificatesAPIGroup",
        "kind": "Certificates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/",
      "type": "api_path",
      "title": "getCertificatesV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/certificates.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/",
        "operationId": "getCertificatesV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/certificates.k8s.io/v1/certificatesigningrequests",
      "type": "api_path",
      "title": "deleteCertificatesV1CollectionCertificateSigningRequest",
      "summary": "delete collection of CertificateSigningRequest",
      "body": "DELETE /apis/certificates.k8s.io/v1/certificatesigningrequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests",
        "operationId": "deleteCertificatesV1CollectionCertificateSigningRequest",
        "kind": "Certificatesigningrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/certificatesigningrequests",
      "type": "api_path",
      "title": "listCertificatesV1CertificateSigningRequest",
      "summary": "list or watch objects of kind CertificateSigningRequest",
      "body": "GET /apis/certificates.k8s.io/v1/certificatesigningrequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests",
        "operationId": "listCertificatesV1CertificateSigningRequest",
        "kind": "Certificatesigningrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/certificates.k8s.io/v1/certificatesigningrequests",
      "type": "api_path",
      "title": "createCertificatesV1CertificateSigningRequest",
      "summary": "create a CertificateSigningRequest",
      "body": "POST /apis/certificates.k8s.io/v1/certificatesigningrequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests",
        "operationId": "createCertificatesV1CertificateSigningRequest",
        "kind": "Certificatesigningrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
      "type": "api_path",
      "title": "deleteCertificatesV1CertificateSigningRequest",
      "summary": "delete a CertificateSigningRequest",
      "body": "DELETE /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
        "operationId": "deleteCertificatesV1CertificateSigningRequest",
        "kind": "Certificatesigningrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
      "type": "api_path",
      "title": "readCertificatesV1CertificateSigningRequest",
      "summary": "read the specified CertificateSigningRequest",
      "body": "GET /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
        "operationId": "readCertificatesV1CertificateSigningRequest",
        "kind": "Certificatesigningrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
      "type": "api_path",
      "title": "patchCertificatesV1CertificateSigningRequest",
      "summary": "partially update the specified CertificateSigningRequest",
      "body": "PATCH /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
        "operationId": "patchCertificatesV1CertificateSigningRequest",
        "kind": "Certificatesigningrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
      "type": "api_path",
      "title": "replaceCertificatesV1CertificateSigningRequest",
      "summary": "replace the specified CertificateSigningRequest",
      "body": "PUT /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}",
        "operationId": "replaceCertificatesV1CertificateSigningRequest",
        "kind": "Certificatesigningrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval",
      "type": "api_path",
      "title": "readCertificatesV1CertificateSigningRequestApproval",
      "summary": "read approval of the specified CertificateSigningRequest",
      "body": "GET /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval",
        "operationId": "readCertificatesV1CertificateSigningRequestApproval",
        "kind": "Approval"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval",
      "type": "api_path",
      "title": "patchCertificatesV1CertificateSigningRequestApproval",
      "summary": "partially update approval of the specified CertificateSigningRequest",
      "body": "PATCH /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval",
        "operationId": "patchCertificatesV1CertificateSigningRequestApproval",
        "kind": "Approval"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval",
      "type": "api_path",
      "title": "replaceCertificatesV1CertificateSigningRequestApproval",
      "summary": "replace approval of the specified CertificateSigningRequest",
      "body": "PUT /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval",
        "operationId": "replaceCertificatesV1CertificateSigningRequestApproval",
        "kind": "Approval"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
      "type": "api_path",
      "title": "readCertificatesV1CertificateSigningRequestStatus",
      "summary": "read status of the specified CertificateSigningRequest",
      "body": "GET /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
        "operationId": "readCertificatesV1CertificateSigningRequestStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
      "type": "api_path",
      "title": "patchCertificatesV1CertificateSigningRequestStatus",
      "summary": "partially update status of the specified CertificateSigningRequest",
      "body": "PATCH /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
        "operationId": "patchCertificatesV1CertificateSigningRequestStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
      "type": "api_path",
      "title": "replaceCertificatesV1CertificateSigningRequestStatus",
      "summary": "replace status of the specified CertificateSigningRequest",
      "body": "PUT /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
        "operationId": "replaceCertificatesV1CertificateSigningRequestStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/certificates.k8s.io/v1/clustertrustbundles",
      "type": "api_path",
      "title": "deleteCertificatesV1CollectionClusterTrustBundle",
      "summary": "delete collection of ClusterTrustBundle",
      "body": "DELETE /apis/certificates.k8s.io/v1/clustertrustbundles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/certificates.k8s.io/v1/clustertrustbundles",
        "operationId": "deleteCertificatesV1CollectionClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/clustertrustbundles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/clustertrustbundles",
      "type": "api_path",
      "title": "listCertificatesV1ClusterTrustBundle",
      "summary": "list or watch objects of kind ClusterTrustBundle",
      "body": "GET /apis/certificates.k8s.io/v1/clustertrustbundles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/clustertrustbundles",
        "operationId": "listCertificatesV1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/clustertrustbundles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/certificates.k8s.io/v1/clustertrustbundles",
      "type": "api_path",
      "title": "createCertificatesV1ClusterTrustBundle",
      "summary": "create a ClusterTrustBundle",
      "body": "POST /apis/certificates.k8s.io/v1/clustertrustbundles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/certificates.k8s.io/v1/clustertrustbundles",
        "operationId": "createCertificatesV1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/clustertrustbundles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
      "type": "api_path",
      "title": "deleteCertificatesV1ClusterTrustBundle",
      "summary": "delete a ClusterTrustBundle",
      "body": "DELETE /apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
        "operationId": "deleteCertificatesV1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/clustertrustbundles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
      "type": "api_path",
      "title": "readCertificatesV1ClusterTrustBundle",
      "summary": "read the specified ClusterTrustBundle",
      "body": "GET /apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
        "operationId": "readCertificatesV1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/clustertrustbundles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
      "type": "api_path",
      "title": "patchCertificatesV1ClusterTrustBundle",
      "summary": "partially update the specified ClusterTrustBundle",
      "body": "PATCH /apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
        "operationId": "patchCertificatesV1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/clustertrustbundles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
      "type": "api_path",
      "title": "replaceCertificatesV1ClusterTrustBundle",
      "summary": "replace the specified ClusterTrustBundle",
      "body": "PUT /apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/certificates.k8s.io/v1/clustertrustbundles/{name}",
        "operationId": "replaceCertificatesV1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/clustertrustbundles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/watch/certificatesigningrequests",
      "type": "api_path",
      "title": "watchCertificatesV1CertificateSigningRequestList",
      "summary": "watch individual changes to a list of CertificateSigningRequest. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/certificates.k8s.io/v1/watch/certificatesigningrequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/watch/certificatesigningrequests",
        "operationId": "watchCertificatesV1CertificateSigningRequestList",
        "kind": "Certificatesigningrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/watch/certificatesigningrequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/watch/certificatesigningrequests/{name}",
      "type": "api_path",
      "title": "watchCertificatesV1CertificateSigningRequest",
      "summary": "watch changes to an object of kind CertificateSigningRequest. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/certificates.k8s.io/v1/watch/certificatesigningrequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/watch/certificatesigningrequests/{name}",
        "operationId": "watchCertificatesV1CertificateSigningRequest",
        "kind": "Certificatesigningrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/watch/certificatesigningrequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/watch/clustertrustbundles",
      "type": "api_path",
      "title": "watchCertificatesV1ClusterTrustBundleList",
      "summary": "watch individual changes to a list of ClusterTrustBundle. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/certificates.k8s.io/v1/watch/clustertrustbundles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/watch/clustertrustbundles",
        "operationId": "watchCertificatesV1ClusterTrustBundleList",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/watch/clustertrustbundles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1/watch/clustertrustbundles/{name}",
      "type": "api_path",
      "title": "watchCertificatesV1ClusterTrustBundle",
      "summary": "watch changes to an object of kind ClusterTrustBundle. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/certificates.k8s.io/v1/watch/clustertrustbundles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1/watch/clustertrustbundles/{name}",
        "operationId": "watchCertificatesV1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/watch/clustertrustbundles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/",
      "type": "api_path",
      "title": "getCertificatesV1beta1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/certificates.k8s.io/v1beta1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/",
        "operationId": "getCertificatesV1beta1APIResources",
        "kind": "V1beta1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/certificates.k8s.io/v1beta1/clustertrustbundles",
      "type": "api_path",
      "title": "deleteCertificatesV1beta1CollectionClusterTrustBundle",
      "summary": "delete collection of ClusterTrustBundle",
      "body": "DELETE /apis/certificates.k8s.io/v1beta1/clustertrustbundles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles",
        "operationId": "deleteCertificatesV1beta1CollectionClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/clustertrustbundles",
      "type": "api_path",
      "title": "listCertificatesV1beta1ClusterTrustBundle",
      "summary": "list or watch objects of kind ClusterTrustBundle",
      "body": "GET /apis/certificates.k8s.io/v1beta1/clustertrustbundles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles",
        "operationId": "listCertificatesV1beta1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/certificates.k8s.io/v1beta1/clustertrustbundles",
      "type": "api_path",
      "title": "createCertificatesV1beta1ClusterTrustBundle",
      "summary": "create a ClusterTrustBundle",
      "body": "POST /apis/certificates.k8s.io/v1beta1/clustertrustbundles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles",
        "operationId": "createCertificatesV1beta1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
      "type": "api_path",
      "title": "deleteCertificatesV1beta1ClusterTrustBundle",
      "summary": "delete a ClusterTrustBundle",
      "body": "DELETE /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
        "operationId": "deleteCertificatesV1beta1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
      "type": "api_path",
      "title": "readCertificatesV1beta1ClusterTrustBundle",
      "summary": "read the specified ClusterTrustBundle",
      "body": "GET /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
        "operationId": "readCertificatesV1beta1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
      "type": "api_path",
      "title": "patchCertificatesV1beta1ClusterTrustBundle",
      "summary": "partially update the specified ClusterTrustBundle",
      "body": "PATCH /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
        "operationId": "patchCertificatesV1beta1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
      "type": "api_path",
      "title": "replaceCertificatesV1beta1ClusterTrustBundle",
      "summary": "replace the specified ClusterTrustBundle",
      "body": "PUT /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}",
        "operationId": "replaceCertificatesV1beta1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests",
      "type": "api_path",
      "title": "deleteCertificatesV1beta1CollectionNamespacedPodCertificateRequest",
      "summary": "delete collection of PodCertificateRequest",
      "body": "DELETE /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests",
        "operationId": "deleteCertificatesV1beta1CollectionNamespacedPodCertificateRequest",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests",
      "type": "api_path",
      "title": "listCertificatesV1beta1NamespacedPodCertificateRequest",
      "summary": "list or watch objects of kind PodCertificateRequest",
      "body": "GET /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests",
        "operationId": "listCertificatesV1beta1NamespacedPodCertificateRequest",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests",
      "type": "api_path",
      "title": "createCertificatesV1beta1NamespacedPodCertificateRequest",
      "summary": "create a PodCertificateRequest",
      "body": "POST /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests",
        "operationId": "createCertificatesV1beta1NamespacedPodCertificateRequest",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
      "type": "api_path",
      "title": "deleteCertificatesV1beta1NamespacedPodCertificateRequest",
      "summary": "delete a PodCertificateRequest",
      "body": "DELETE /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
        "operationId": "deleteCertificatesV1beta1NamespacedPodCertificateRequest",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
      "type": "api_path",
      "title": "readCertificatesV1beta1NamespacedPodCertificateRequest",
      "summary": "read the specified PodCertificateRequest",
      "body": "GET /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
        "operationId": "readCertificatesV1beta1NamespacedPodCertificateRequest",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
      "type": "api_path",
      "title": "patchCertificatesV1beta1NamespacedPodCertificateRequest",
      "summary": "partially update the specified PodCertificateRequest",
      "body": "PATCH /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
        "operationId": "patchCertificatesV1beta1NamespacedPodCertificateRequest",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
      "type": "api_path",
      "title": "replaceCertificatesV1beta1NamespacedPodCertificateRequest",
      "summary": "replace the specified PodCertificateRequest",
      "body": "PUT /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}",
        "operationId": "replaceCertificatesV1beta1NamespacedPodCertificateRequest",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
      "type": "api_path",
      "title": "readCertificatesV1beta1NamespacedPodCertificateRequestStatus",
      "summary": "read status of the specified PodCertificateRequest",
      "body": "GET /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
        "operationId": "readCertificatesV1beta1NamespacedPodCertificateRequestStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
      "type": "api_path",
      "title": "patchCertificatesV1beta1NamespacedPodCertificateRequestStatus",
      "summary": "partially update status of the specified PodCertificateRequest",
      "body": "PATCH /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
        "operationId": "patchCertificatesV1beta1NamespacedPodCertificateRequestStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
      "type": "api_path",
      "title": "replaceCertificatesV1beta1NamespacedPodCertificateRequestStatus",
      "summary": "replace status of the specified PodCertificateRequest",
      "body": "PUT /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
        "operationId": "replaceCertificatesV1beta1NamespacedPodCertificateRequestStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/podcertificaterequests",
      "type": "api_path",
      "title": "listCertificatesV1beta1PodCertificateRequestForAllNamespaces",
      "summary": "list or watch objects of kind PodCertificateRequest",
      "body": "GET /apis/certificates.k8s.io/v1beta1/podcertificaterequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/podcertificaterequests",
        "operationId": "listCertificatesV1beta1PodCertificateRequestForAllNamespaces",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/podcertificaterequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/watch/clustertrustbundles",
      "type": "api_path",
      "title": "watchCertificatesV1beta1ClusterTrustBundleList",
      "summary": "watch individual changes to a list of ClusterTrustBundle. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/certificates.k8s.io/v1beta1/watch/clustertrustbundles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/watch/clustertrustbundles",
        "operationId": "watchCertificatesV1beta1ClusterTrustBundleList",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/watch/clustertrustbundles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/watch/clustertrustbundles/{name}",
      "type": "api_path",
      "title": "watchCertificatesV1beta1ClusterTrustBundle",
      "summary": "watch changes to an object of kind ClusterTrustBundle. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/certificates.k8s.io/v1beta1/watch/clustertrustbundles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/watch/clustertrustbundles/{name}",
        "operationId": "watchCertificatesV1beta1ClusterTrustBundle",
        "kind": "Clustertrustbundles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/watch/clustertrustbundles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/watch/namespaces/{namespace}/podcertificaterequests",
      "type": "api_path",
      "title": "watchCertificatesV1beta1NamespacedPodCertificateRequestList",
      "summary": "watch individual changes to a list of PodCertificateRequest. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/certificates.k8s.io/v1beta1/watch/namespaces/{namespace}/podcertificaterequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/watch/namespaces/{namespace}/podcertificaterequests",
        "operationId": "watchCertificatesV1beta1NamespacedPodCertificateRequestList",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/watch/namespaces/{namespace}/podcertificaterequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/watch/namespaces/{namespace}/podcertificaterequests/{name}",
      "type": "api_path",
      "title": "watchCertificatesV1beta1NamespacedPodCertificateRequest",
      "summary": "watch changes to an object of kind PodCertificateRequest. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/certificates.k8s.io/v1beta1/watch/namespaces/{namespace}/podcertificaterequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/watch/namespaces/{namespace}/podcertificaterequests/{name}",
        "operationId": "watchCertificatesV1beta1NamespacedPodCertificateRequest",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/watch/namespaces/{namespace}/podcertificaterequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/certificates.k8s.io/v1beta1/watch/podcertificaterequests",
      "type": "api_path",
      "title": "watchCertificatesV1beta1PodCertificateRequestListForAllNamespaces",
      "summary": "watch individual changes to a list of PodCertificateRequest. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/certificates.k8s.io/v1beta1/watch/podcertificaterequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/certificates.k8s.io/v1beta1/watch/podcertificaterequests",
        "operationId": "watchCertificatesV1beta1PodCertificateRequestListForAllNamespaces",
        "kind": "Podcertificaterequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/watch/podcertificaterequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/",
      "type": "api_path",
      "title": "getCoordinationAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/coordination.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/",
        "operationId": "getCoordinationAPIGroup",
        "kind": "Coordination"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1/",
      "type": "api_path",
      "title": "getCoordinationV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/coordination.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1/",
        "operationId": "getCoordinationV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1/leases",
      "type": "api_path",
      "title": "listCoordinationV1LeaseForAllNamespaces",
      "summary": "list or watch objects of kind Lease",
      "body": "GET /apis/coordination.k8s.io/v1/leases",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1/leases",
        "operationId": "listCoordinationV1LeaseForAllNamespaces",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/leases"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases",
      "type": "api_path",
      "title": "deleteCoordinationV1CollectionNamespacedLease",
      "summary": "delete collection of Lease",
      "body": "DELETE /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases",
        "operationId": "deleteCoordinationV1CollectionNamespacedLease",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases",
      "type": "api_path",
      "title": "listCoordinationV1NamespacedLease",
      "summary": "list or watch objects of kind Lease",
      "body": "GET /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases",
        "operationId": "listCoordinationV1NamespacedLease",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases",
      "type": "api_path",
      "title": "createCoordinationV1NamespacedLease",
      "summary": "create a Lease",
      "body": "POST /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases",
        "operationId": "createCoordinationV1NamespacedLease",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
      "type": "api_path",
      "title": "deleteCoordinationV1NamespacedLease",
      "summary": "delete a Lease",
      "body": "DELETE /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
        "operationId": "deleteCoordinationV1NamespacedLease",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
      "type": "api_path",
      "title": "readCoordinationV1NamespacedLease",
      "summary": "read the specified Lease",
      "body": "GET /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
        "operationId": "readCoordinationV1NamespacedLease",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
      "type": "api_path",
      "title": "patchCoordinationV1NamespacedLease",
      "summary": "partially update the specified Lease",
      "body": "PATCH /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
        "operationId": "patchCoordinationV1NamespacedLease",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
      "type": "api_path",
      "title": "replaceCoordinationV1NamespacedLease",
      "summary": "replace the specified Lease",
      "body": "PUT /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}",
        "operationId": "replaceCoordinationV1NamespacedLease",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1/watch/leases",
      "type": "api_path",
      "title": "watchCoordinationV1LeaseListForAllNamespaces",
      "summary": "watch individual changes to a list of Lease. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/coordination.k8s.io/v1/watch/leases",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1/watch/leases",
        "operationId": "watchCoordinationV1LeaseListForAllNamespaces",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/watch/leases"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1/watch/namespaces/{namespace}/leases",
      "type": "api_path",
      "title": "watchCoordinationV1NamespacedLeaseList",
      "summary": "watch individual changes to a list of Lease. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/coordination.k8s.io/v1/watch/namespaces/{namespace}/leases",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1/watch/namespaces/{namespace}/leases",
        "operationId": "watchCoordinationV1NamespacedLeaseList",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/watch/namespaces/{namespace}/leases"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1/watch/namespaces/{namespace}/leases/{name}",
      "type": "api_path",
      "title": "watchCoordinationV1NamespacedLease",
      "summary": "watch changes to an object of kind Lease. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/coordination.k8s.io/v1/watch/namespaces/{namespace}/leases/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1/watch/namespaces/{namespace}/leases/{name}",
        "operationId": "watchCoordinationV1NamespacedLease",
        "kind": "Leases"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1/watch/namespaces/{namespace}/leases/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1alpha2/",
      "type": "api_path",
      "title": "getCoordinationV1alpha2APIResources",
      "summary": "get available resources",
      "body": "GET /apis/coordination.k8s.io/v1alpha2/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1alpha2/",
        "operationId": "getCoordinationV1alpha2APIResources",
        "kind": "V1alpha2"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1alpha2/leasecandidates",
      "type": "api_path",
      "title": "listCoordinationV1alpha2LeaseCandidateForAllNamespaces",
      "summary": "list or watch objects of kind LeaseCandidate",
      "body": "GET /apis/coordination.k8s.io/v1alpha2/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1alpha2/leasecandidates",
        "operationId": "listCoordinationV1alpha2LeaseCandidateForAllNamespaces",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates",
      "type": "api_path",
      "title": "deleteCoordinationV1alpha2CollectionNamespacedLeaseCandidate",
      "summary": "delete collection of LeaseCandidate",
      "body": "DELETE /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates",
        "operationId": "deleteCoordinationV1alpha2CollectionNamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates",
      "type": "api_path",
      "title": "listCoordinationV1alpha2NamespacedLeaseCandidate",
      "summary": "list or watch objects of kind LeaseCandidate",
      "body": "GET /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates",
        "operationId": "listCoordinationV1alpha2NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates",
      "type": "api_path",
      "title": "createCoordinationV1alpha2NamespacedLeaseCandidate",
      "summary": "create a LeaseCandidate",
      "body": "POST /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates",
        "operationId": "createCoordinationV1alpha2NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
      "type": "api_path",
      "title": "deleteCoordinationV1alpha2NamespacedLeaseCandidate",
      "summary": "delete a LeaseCandidate",
      "body": "DELETE /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
        "operationId": "deleteCoordinationV1alpha2NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
      "type": "api_path",
      "title": "readCoordinationV1alpha2NamespacedLeaseCandidate",
      "summary": "read the specified LeaseCandidate",
      "body": "GET /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
        "operationId": "readCoordinationV1alpha2NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
      "type": "api_path",
      "title": "patchCoordinationV1alpha2NamespacedLeaseCandidate",
      "summary": "partially update the specified LeaseCandidate",
      "body": "PATCH /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
        "operationId": "patchCoordinationV1alpha2NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
      "type": "api_path",
      "title": "replaceCoordinationV1alpha2NamespacedLeaseCandidate",
      "summary": "replace the specified LeaseCandidate",
      "body": "PUT /apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}",
        "operationId": "replaceCoordinationV1alpha2NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/namespaces/{namespace}/leasecandidates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1alpha2/watch/leasecandidates",
      "type": "api_path",
      "title": "watchCoordinationV1alpha2LeaseCandidateListForAllNamespaces",
      "summary": "watch individual changes to a list of LeaseCandidate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/coordination.k8s.io/v1alpha2/watch/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1alpha2/watch/leasecandidates",
        "operationId": "watchCoordinationV1alpha2LeaseCandidateListForAllNamespaces",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/watch/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1alpha2/watch/namespaces/{namespace}/leasecandidates",
      "type": "api_path",
      "title": "watchCoordinationV1alpha2NamespacedLeaseCandidateList",
      "summary": "watch individual changes to a list of LeaseCandidate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/coordination.k8s.io/v1alpha2/watch/namespaces/{namespace}/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1alpha2/watch/namespaces/{namespace}/leasecandidates",
        "operationId": "watchCoordinationV1alpha2NamespacedLeaseCandidateList",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/watch/namespaces/{namespace}/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1alpha2/watch/namespaces/{namespace}/leasecandidates/{name}",
      "type": "api_path",
      "title": "watchCoordinationV1alpha2NamespacedLeaseCandidate",
      "summary": "watch changes to an object of kind LeaseCandidate. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/coordination.k8s.io/v1alpha2/watch/namespaces/{namespace}/leasecandidates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1alpha2/watch/namespaces/{namespace}/leasecandidates/{name}",
        "operationId": "watchCoordinationV1alpha2NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1alpha2/watch/namespaces/{namespace}/leasecandidates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1beta1/",
      "type": "api_path",
      "title": "getCoordinationV1beta1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/coordination.k8s.io/v1beta1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1beta1/",
        "operationId": "getCoordinationV1beta1APIResources",
        "kind": "V1beta1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1beta1/leasecandidates",
      "type": "api_path",
      "title": "listCoordinationV1beta1LeaseCandidateForAllNamespaces",
      "summary": "list or watch objects of kind LeaseCandidate",
      "body": "GET /apis/coordination.k8s.io/v1beta1/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1beta1/leasecandidates",
        "operationId": "listCoordinationV1beta1LeaseCandidateForAllNamespaces",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates",
      "type": "api_path",
      "title": "deleteCoordinationV1beta1CollectionNamespacedLeaseCandidate",
      "summary": "delete collection of LeaseCandidate",
      "body": "DELETE /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates",
        "operationId": "deleteCoordinationV1beta1CollectionNamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates",
      "type": "api_path",
      "title": "listCoordinationV1beta1NamespacedLeaseCandidate",
      "summary": "list or watch objects of kind LeaseCandidate",
      "body": "GET /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates",
        "operationId": "listCoordinationV1beta1NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates",
      "type": "api_path",
      "title": "createCoordinationV1beta1NamespacedLeaseCandidate",
      "summary": "create a LeaseCandidate",
      "body": "POST /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates",
        "operationId": "createCoordinationV1beta1NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
      "type": "api_path",
      "title": "deleteCoordinationV1beta1NamespacedLeaseCandidate",
      "summary": "delete a LeaseCandidate",
      "body": "DELETE /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
        "operationId": "deleteCoordinationV1beta1NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
      "type": "api_path",
      "title": "readCoordinationV1beta1NamespacedLeaseCandidate",
      "summary": "read the specified LeaseCandidate",
      "body": "GET /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
        "operationId": "readCoordinationV1beta1NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
      "type": "api_path",
      "title": "patchCoordinationV1beta1NamespacedLeaseCandidate",
      "summary": "partially update the specified LeaseCandidate",
      "body": "PATCH /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
        "operationId": "patchCoordinationV1beta1NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
      "type": "api_path",
      "title": "replaceCoordinationV1beta1NamespacedLeaseCandidate",
      "summary": "replace the specified LeaseCandidate",
      "body": "PUT /apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}",
        "operationId": "replaceCoordinationV1beta1NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leasecandidates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1beta1/watch/leasecandidates",
      "type": "api_path",
      "title": "watchCoordinationV1beta1LeaseCandidateListForAllNamespaces",
      "summary": "watch individual changes to a list of LeaseCandidate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/coordination.k8s.io/v1beta1/watch/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1beta1/watch/leasecandidates",
        "operationId": "watchCoordinationV1beta1LeaseCandidateListForAllNamespaces",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/watch/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1beta1/watch/namespaces/{namespace}/leasecandidates",
      "type": "api_path",
      "title": "watchCoordinationV1beta1NamespacedLeaseCandidateList",
      "summary": "watch individual changes to a list of LeaseCandidate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/coordination.k8s.io/v1beta1/watch/namespaces/{namespace}/leasecandidates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1beta1/watch/namespaces/{namespace}/leasecandidates",
        "operationId": "watchCoordinationV1beta1NamespacedLeaseCandidateList",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/watch/namespaces/{namespace}/leasecandidates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/coordination.k8s.io/v1beta1/watch/namespaces/{namespace}/leasecandidates/{name}",
      "type": "api_path",
      "title": "watchCoordinationV1beta1NamespacedLeaseCandidate",
      "summary": "watch changes to an object of kind LeaseCandidate. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/coordination.k8s.io/v1beta1/watch/namespaces/{namespace}/leasecandidates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/coordination.k8s.io/v1beta1/watch/namespaces/{namespace}/leasecandidates/{name}",
        "operationId": "watchCoordinationV1beta1NamespacedLeaseCandidate",
        "kind": "Leasecandidates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/coordination.k8s.io/v1beta1/watch/namespaces/{namespace}/leasecandidates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/discovery.k8s.io/",
      "type": "api_path",
      "title": "getDiscoveryAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/discovery.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/discovery.k8s.io/",
        "operationId": "getDiscoveryAPIGroup",
        "kind": "Discovery"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/discovery.k8s.io/v1/",
      "type": "api_path",
      "title": "getDiscoveryV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/discovery.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/discovery.k8s.io/v1/",
        "operationId": "getDiscoveryV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/discovery.k8s.io/v1/endpointslices",
      "type": "api_path",
      "title": "listDiscoveryV1EndpointSliceForAllNamespaces",
      "summary": "list or watch objects of kind EndpointSlice",
      "body": "GET /apis/discovery.k8s.io/v1/endpointslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/discovery.k8s.io/v1/endpointslices",
        "operationId": "listDiscoveryV1EndpointSliceForAllNamespaces",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/endpointslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices",
      "type": "api_path",
      "title": "deleteDiscoveryV1CollectionNamespacedEndpointSlice",
      "summary": "delete collection of EndpointSlice",
      "body": "DELETE /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices",
        "operationId": "deleteDiscoveryV1CollectionNamespacedEndpointSlice",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices",
      "type": "api_path",
      "title": "listDiscoveryV1NamespacedEndpointSlice",
      "summary": "list or watch objects of kind EndpointSlice",
      "body": "GET /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices",
        "operationId": "listDiscoveryV1NamespacedEndpointSlice",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices",
      "type": "api_path",
      "title": "createDiscoveryV1NamespacedEndpointSlice",
      "summary": "create an EndpointSlice",
      "body": "POST /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices",
        "operationId": "createDiscoveryV1NamespacedEndpointSlice",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
      "type": "api_path",
      "title": "deleteDiscoveryV1NamespacedEndpointSlice",
      "summary": "delete an EndpointSlice",
      "body": "DELETE /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
        "operationId": "deleteDiscoveryV1NamespacedEndpointSlice",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
      "type": "api_path",
      "title": "readDiscoveryV1NamespacedEndpointSlice",
      "summary": "read the specified EndpointSlice",
      "body": "GET /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
        "operationId": "readDiscoveryV1NamespacedEndpointSlice",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
      "type": "api_path",
      "title": "patchDiscoveryV1NamespacedEndpointSlice",
      "summary": "partially update the specified EndpointSlice",
      "body": "PATCH /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
        "operationId": "patchDiscoveryV1NamespacedEndpointSlice",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
      "type": "api_path",
      "title": "replaceDiscoveryV1NamespacedEndpointSlice",
      "summary": "replace the specified EndpointSlice",
      "body": "PUT /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}",
        "operationId": "replaceDiscoveryV1NamespacedEndpointSlice",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/discovery.k8s.io/v1/watch/endpointslices",
      "type": "api_path",
      "title": "watchDiscoveryV1EndpointSliceListForAllNamespaces",
      "summary": "watch individual changes to a list of EndpointSlice. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/discovery.k8s.io/v1/watch/endpointslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/discovery.k8s.io/v1/watch/endpointslices",
        "operationId": "watchDiscoveryV1EndpointSliceListForAllNamespaces",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/watch/endpointslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices",
      "type": "api_path",
      "title": "watchDiscoveryV1NamespacedEndpointSliceList",
      "summary": "watch individual changes to a list of EndpointSlice. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices",
        "operationId": "watchDiscoveryV1NamespacedEndpointSliceList",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices/{name}",
      "type": "api_path",
      "title": "watchDiscoveryV1NamespacedEndpointSlice",
      "summary": "watch changes to an object of kind EndpointSlice. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices/{name}",
        "operationId": "watchDiscoveryV1NamespacedEndpointSlice",
        "kind": "Endpointslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/events.k8s.io/",
      "type": "api_path",
      "title": "getEventsAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/events.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/events.k8s.io/",
        "operationId": "getEventsAPIGroup",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/events.k8s.io/v1/",
      "type": "api_path",
      "title": "getEventsV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/events.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/events.k8s.io/v1/",
        "operationId": "getEventsV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/events.k8s.io/v1/events",
      "type": "api_path",
      "title": "listEventsV1EventForAllNamespaces",
      "summary": "list or watch objects of kind Event",
      "body": "GET /apis/events.k8s.io/v1/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/events.k8s.io/v1/events",
        "operationId": "listEventsV1EventForAllNamespaces",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/events.k8s.io/v1/namespaces/{namespace}/events",
      "type": "api_path",
      "title": "deleteEventsV1CollectionNamespacedEvent",
      "summary": "delete collection of Event",
      "body": "DELETE /apis/events.k8s.io/v1/namespaces/{namespace}/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/events.k8s.io/v1/namespaces/{namespace}/events",
        "operationId": "deleteEventsV1CollectionNamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/namespaces/{namespace}/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/events.k8s.io/v1/namespaces/{namespace}/events",
      "type": "api_path",
      "title": "listEventsV1NamespacedEvent",
      "summary": "list or watch objects of kind Event",
      "body": "GET /apis/events.k8s.io/v1/namespaces/{namespace}/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/events.k8s.io/v1/namespaces/{namespace}/events",
        "operationId": "listEventsV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/namespaces/{namespace}/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/events.k8s.io/v1/namespaces/{namespace}/events",
      "type": "api_path",
      "title": "createEventsV1NamespacedEvent",
      "summary": "create an Event",
      "body": "POST /apis/events.k8s.io/v1/namespaces/{namespace}/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/events.k8s.io/v1/namespaces/{namespace}/events",
        "operationId": "createEventsV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/namespaces/{namespace}/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
      "type": "api_path",
      "title": "deleteEventsV1NamespacedEvent",
      "summary": "delete an Event",
      "body": "DELETE /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
        "operationId": "deleteEventsV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
      "type": "api_path",
      "title": "readEventsV1NamespacedEvent",
      "summary": "read the specified Event",
      "body": "GET /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
        "operationId": "readEventsV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
      "type": "api_path",
      "title": "patchEventsV1NamespacedEvent",
      "summary": "partially update the specified Event",
      "body": "PATCH /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
        "operationId": "patchEventsV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
      "type": "api_path",
      "title": "replaceEventsV1NamespacedEvent",
      "summary": "replace the specified Event",
      "body": "PUT /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}",
        "operationId": "replaceEventsV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/namespaces/{namespace}/events/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/events.k8s.io/v1/watch/events",
      "type": "api_path",
      "title": "watchEventsV1EventListForAllNamespaces",
      "summary": "watch individual changes to a list of Event. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/events.k8s.io/v1/watch/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/events.k8s.io/v1/watch/events",
        "operationId": "watchEventsV1EventListForAllNamespaces",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/watch/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/events.k8s.io/v1/watch/namespaces/{namespace}/events",
      "type": "api_path",
      "title": "watchEventsV1NamespacedEventList",
      "summary": "watch individual changes to a list of Event. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/events.k8s.io/v1/watch/namespaces/{namespace}/events",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/events.k8s.io/v1/watch/namespaces/{namespace}/events",
        "operationId": "watchEventsV1NamespacedEventList",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/watch/namespaces/{namespace}/events"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/events.k8s.io/v1/watch/namespaces/{namespace}/events/{name}",
      "type": "api_path",
      "title": "watchEventsV1NamespacedEvent",
      "summary": "watch changes to an object of kind Event. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/events.k8s.io/v1/watch/namespaces/{namespace}/events/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/events.k8s.io/v1/watch/namespaces/{namespace}/events/{name}",
        "operationId": "watchEventsV1NamespacedEvent",
        "kind": "Events"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/events.k8s.io/v1/watch/namespaces/{namespace}/events/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/",
      "type": "api_path",
      "title": "getFlowcontrolApiserverAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/",
        "operationId": "getFlowcontrolApiserverAPIGroup",
        "kind": "Flowcontrol"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/",
      "type": "api_path",
      "title": "getFlowcontrolApiserverV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/",
        "operationId": "getFlowcontrolApiserverV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas",
      "type": "api_path",
      "title": "deleteFlowcontrolApiserverV1CollectionFlowSchema",
      "summary": "delete collection of FlowSchema",
      "body": "DELETE /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas",
        "operationId": "deleteFlowcontrolApiserverV1CollectionFlowSchema",
        "kind": "Flowschemas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas",
      "type": "api_path",
      "title": "listFlowcontrolApiserverV1FlowSchema",
      "summary": "list or watch objects of kind FlowSchema",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas",
        "operationId": "listFlowcontrolApiserverV1FlowSchema",
        "kind": "Flowschemas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas",
      "type": "api_path",
      "title": "createFlowcontrolApiserverV1FlowSchema",
      "summary": "create a FlowSchema",
      "body": "POST /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas",
        "operationId": "createFlowcontrolApiserverV1FlowSchema",
        "kind": "Flowschemas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
      "type": "api_path",
      "title": "deleteFlowcontrolApiserverV1FlowSchema",
      "summary": "delete a FlowSchema",
      "body": "DELETE /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
        "operationId": "deleteFlowcontrolApiserverV1FlowSchema",
        "kind": "Flowschemas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
      "type": "api_path",
      "title": "readFlowcontrolApiserverV1FlowSchema",
      "summary": "read the specified FlowSchema",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
        "operationId": "readFlowcontrolApiserverV1FlowSchema",
        "kind": "Flowschemas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
      "type": "api_path",
      "title": "patchFlowcontrolApiserverV1FlowSchema",
      "summary": "partially update the specified FlowSchema",
      "body": "PATCH /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
        "operationId": "patchFlowcontrolApiserverV1FlowSchema",
        "kind": "Flowschemas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
      "type": "api_path",
      "title": "replaceFlowcontrolApiserverV1FlowSchema",
      "summary": "replace the specified FlowSchema",
      "body": "PUT /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}",
        "operationId": "replaceFlowcontrolApiserverV1FlowSchema",
        "kind": "Flowschemas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
      "type": "api_path",
      "title": "readFlowcontrolApiserverV1FlowSchemaStatus",
      "summary": "read status of the specified FlowSchema",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
        "operationId": "readFlowcontrolApiserverV1FlowSchemaStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
      "type": "api_path",
      "title": "patchFlowcontrolApiserverV1FlowSchemaStatus",
      "summary": "partially update status of the specified FlowSchema",
      "body": "PATCH /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
        "operationId": "patchFlowcontrolApiserverV1FlowSchemaStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
      "type": "api_path",
      "title": "replaceFlowcontrolApiserverV1FlowSchemaStatus",
      "summary": "replace status of the specified FlowSchema",
      "body": "PUT /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
        "operationId": "replaceFlowcontrolApiserverV1FlowSchemaStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations",
      "type": "api_path",
      "title": "deleteFlowcontrolApiserverV1CollectionPriorityLevelConfiguration",
      "summary": "delete collection of PriorityLevelConfiguration",
      "body": "DELETE /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations",
        "operationId": "deleteFlowcontrolApiserverV1CollectionPriorityLevelConfiguration",
        "kind": "Prioritylevelconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations",
      "type": "api_path",
      "title": "listFlowcontrolApiserverV1PriorityLevelConfiguration",
      "summary": "list or watch objects of kind PriorityLevelConfiguration",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations",
        "operationId": "listFlowcontrolApiserverV1PriorityLevelConfiguration",
        "kind": "Prioritylevelconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations",
      "type": "api_path",
      "title": "createFlowcontrolApiserverV1PriorityLevelConfiguration",
      "summary": "create a PriorityLevelConfiguration",
      "body": "POST /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations",
        "operationId": "createFlowcontrolApiserverV1PriorityLevelConfiguration",
        "kind": "Prioritylevelconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
      "type": "api_path",
      "title": "deleteFlowcontrolApiserverV1PriorityLevelConfiguration",
      "summary": "delete a PriorityLevelConfiguration",
      "body": "DELETE /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
        "operationId": "deleteFlowcontrolApiserverV1PriorityLevelConfiguration",
        "kind": "Prioritylevelconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
      "type": "api_path",
      "title": "readFlowcontrolApiserverV1PriorityLevelConfiguration",
      "summary": "read the specified PriorityLevelConfiguration",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
        "operationId": "readFlowcontrolApiserverV1PriorityLevelConfiguration",
        "kind": "Prioritylevelconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
      "type": "api_path",
      "title": "patchFlowcontrolApiserverV1PriorityLevelConfiguration",
      "summary": "partially update the specified PriorityLevelConfiguration",
      "body": "PATCH /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
        "operationId": "patchFlowcontrolApiserverV1PriorityLevelConfiguration",
        "kind": "Prioritylevelconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
      "type": "api_path",
      "title": "replaceFlowcontrolApiserverV1PriorityLevelConfiguration",
      "summary": "replace the specified PriorityLevelConfiguration",
      "body": "PUT /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}",
        "operationId": "replaceFlowcontrolApiserverV1PriorityLevelConfiguration",
        "kind": "Prioritylevelconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
      "type": "api_path",
      "title": "readFlowcontrolApiserverV1PriorityLevelConfigurationStatus",
      "summary": "read status of the specified PriorityLevelConfiguration",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
        "operationId": "readFlowcontrolApiserverV1PriorityLevelConfigurationStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
      "type": "api_path",
      "title": "patchFlowcontrolApiserverV1PriorityLevelConfigurationStatus",
      "summary": "partially update status of the specified PriorityLevelConfiguration",
      "body": "PATCH /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
        "operationId": "patchFlowcontrolApiserverV1PriorityLevelConfigurationStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
      "type": "api_path",
      "title": "replaceFlowcontrolApiserverV1PriorityLevelConfigurationStatus",
      "summary": "replace status of the specified PriorityLevelConfiguration",
      "body": "PUT /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
        "operationId": "replaceFlowcontrolApiserverV1PriorityLevelConfigurationStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/watch/flowschemas",
      "type": "api_path",
      "title": "watchFlowcontrolApiserverV1FlowSchemaList",
      "summary": "watch individual changes to a list of FlowSchema. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/watch/flowschemas",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/watch/flowschemas",
        "operationId": "watchFlowcontrolApiserverV1FlowSchemaList",
        "kind": "Flowschemas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/watch/flowschemas"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/watch/flowschemas/{name}",
      "type": "api_path",
      "title": "watchFlowcontrolApiserverV1FlowSchema",
      "summary": "watch changes to an object of kind FlowSchema. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/watch/flowschemas/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/watch/flowschemas/{name}",
        "operationId": "watchFlowcontrolApiserverV1FlowSchema",
        "kind": "Flowschemas"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/watch/flowschemas/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/watch/prioritylevelconfigurations",
      "type": "api_path",
      "title": "watchFlowcontrolApiserverV1PriorityLevelConfigurationList",
      "summary": "watch individual changes to a list of PriorityLevelConfiguration. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/watch/prioritylevelconfigurations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/watch/prioritylevelconfigurations",
        "operationId": "watchFlowcontrolApiserverV1PriorityLevelConfigurationList",
        "kind": "Prioritylevelconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/watch/prioritylevelconfigurations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/watch/prioritylevelconfigurations/{name}",
      "type": "api_path",
      "title": "watchFlowcontrolApiserverV1PriorityLevelConfiguration",
      "summary": "watch changes to an object of kind PriorityLevelConfiguration. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/flowcontrol.apiserver.k8s.io/v1/watch/prioritylevelconfigurations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/flowcontrol.apiserver.k8s.io/v1/watch/prioritylevelconfigurations/{name}",
        "operationId": "watchFlowcontrolApiserverV1PriorityLevelConfiguration",
        "kind": "Prioritylevelconfigurations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/watch/prioritylevelconfigurations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/internal.apiserver.k8s.io/",
      "type": "api_path",
      "title": "getInternalApiserverAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/internal.apiserver.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/internal.apiserver.k8s.io/",
        "operationId": "getInternalApiserverAPIGroup",
        "kind": "Internal"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/internal.apiserver.k8s.io/v1alpha1/",
      "type": "api_path",
      "title": "getInternalApiserverV1alpha1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/internal.apiserver.k8s.io/v1alpha1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/",
        "operationId": "getInternalApiserverV1alpha1APIResources",
        "kind": "V1alpha1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/internal.apiserver.k8s.io/v1alpha1/storageversions",
      "type": "api_path",
      "title": "deleteInternalApiserverV1alpha1CollectionStorageVersion",
      "summary": "delete collection of StorageVersion",
      "body": "DELETE /apis/internal.apiserver.k8s.io/v1alpha1/storageversions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions",
        "operationId": "deleteInternalApiserverV1alpha1CollectionStorageVersion",
        "kind": "Storageversions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/internal.apiserver.k8s.io/v1alpha1/storageversions",
      "type": "api_path",
      "title": "listInternalApiserverV1alpha1StorageVersion",
      "summary": "list or watch objects of kind StorageVersion",
      "body": "GET /apis/internal.apiserver.k8s.io/v1alpha1/storageversions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions",
        "operationId": "listInternalApiserverV1alpha1StorageVersion",
        "kind": "Storageversions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/internal.apiserver.k8s.io/v1alpha1/storageversions",
      "type": "api_path",
      "title": "createInternalApiserverV1alpha1StorageVersion",
      "summary": "create a StorageVersion",
      "body": "POST /apis/internal.apiserver.k8s.io/v1alpha1/storageversions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions",
        "operationId": "createInternalApiserverV1alpha1StorageVersion",
        "kind": "Storageversions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
      "type": "api_path",
      "title": "deleteInternalApiserverV1alpha1StorageVersion",
      "summary": "delete a StorageVersion",
      "body": "DELETE /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
        "operationId": "deleteInternalApiserverV1alpha1StorageVersion",
        "kind": "Storageversions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
      "type": "api_path",
      "title": "readInternalApiserverV1alpha1StorageVersion",
      "summary": "read the specified StorageVersion",
      "body": "GET /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
        "operationId": "readInternalApiserverV1alpha1StorageVersion",
        "kind": "Storageversions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
      "type": "api_path",
      "title": "patchInternalApiserverV1alpha1StorageVersion",
      "summary": "partially update the specified StorageVersion",
      "body": "PATCH /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
        "operationId": "patchInternalApiserverV1alpha1StorageVersion",
        "kind": "Storageversions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
      "type": "api_path",
      "title": "replaceInternalApiserverV1alpha1StorageVersion",
      "summary": "replace the specified StorageVersion",
      "body": "PUT /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}",
        "operationId": "replaceInternalApiserverV1alpha1StorageVersion",
        "kind": "Storageversions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
      "type": "api_path",
      "title": "readInternalApiserverV1alpha1StorageVersionStatus",
      "summary": "read status of the specified StorageVersion",
      "body": "GET /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
        "operationId": "readInternalApiserverV1alpha1StorageVersionStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
      "type": "api_path",
      "title": "patchInternalApiserverV1alpha1StorageVersionStatus",
      "summary": "partially update status of the specified StorageVersion",
      "body": "PATCH /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
        "operationId": "patchInternalApiserverV1alpha1StorageVersionStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
      "type": "api_path",
      "title": "replaceInternalApiserverV1alpha1StorageVersionStatus",
      "summary": "replace status of the specified StorageVersion",
      "body": "PUT /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
        "operationId": "replaceInternalApiserverV1alpha1StorageVersionStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/internal.apiserver.k8s.io/v1alpha1/watch/storageversions",
      "type": "api_path",
      "title": "watchInternalApiserverV1alpha1StorageVersionList",
      "summary": "watch individual changes to a list of StorageVersion. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/internal.apiserver.k8s.io/v1alpha1/watch/storageversions",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/watch/storageversions",
        "operationId": "watchInternalApiserverV1alpha1StorageVersionList",
        "kind": "Storageversions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/watch/storageversions"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/internal.apiserver.k8s.io/v1alpha1/watch/storageversions/{name}",
      "type": "api_path",
      "title": "watchInternalApiserverV1alpha1StorageVersion",
      "summary": "watch changes to an object of kind StorageVersion. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/internal.apiserver.k8s.io/v1alpha1/watch/storageversions/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/internal.apiserver.k8s.io/v1alpha1/watch/storageversions/{name}",
        "operationId": "watchInternalApiserverV1alpha1StorageVersion",
        "kind": "Storageversions"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/watch/storageversions/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/",
      "type": "api_path",
      "title": "getNetworkingAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/networking.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/",
        "operationId": "getNetworkingAPIGroup",
        "kind": "Networking"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/",
      "type": "api_path",
      "title": "getNetworkingV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/networking.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/",
        "operationId": "getNetworkingV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/networking.k8s.io/v1/ingressclasses",
      "type": "api_path",
      "title": "deleteNetworkingV1CollectionIngressClass",
      "summary": "delete collection of IngressClass",
      "body": "DELETE /apis/networking.k8s.io/v1/ingressclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/networking.k8s.io/v1/ingressclasses",
        "operationId": "deleteNetworkingV1CollectionIngressClass",
        "kind": "Ingressclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ingressclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/ingressclasses",
      "type": "api_path",
      "title": "listNetworkingV1IngressClass",
      "summary": "list or watch objects of kind IngressClass",
      "body": "GET /apis/networking.k8s.io/v1/ingressclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/ingressclasses",
        "operationId": "listNetworkingV1IngressClass",
        "kind": "Ingressclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ingressclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/networking.k8s.io/v1/ingressclasses",
      "type": "api_path",
      "title": "createNetworkingV1IngressClass",
      "summary": "create an IngressClass",
      "body": "POST /apis/networking.k8s.io/v1/ingressclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/networking.k8s.io/v1/ingressclasses",
        "operationId": "createNetworkingV1IngressClass",
        "kind": "Ingressclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ingressclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/networking.k8s.io/v1/ingressclasses/{name}",
      "type": "api_path",
      "title": "deleteNetworkingV1IngressClass",
      "summary": "delete an IngressClass",
      "body": "DELETE /apis/networking.k8s.io/v1/ingressclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/networking.k8s.io/v1/ingressclasses/{name}",
        "operationId": "deleteNetworkingV1IngressClass",
        "kind": "Ingressclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ingressclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/ingressclasses/{name}",
      "type": "api_path",
      "title": "readNetworkingV1IngressClass",
      "summary": "read the specified IngressClass",
      "body": "GET /apis/networking.k8s.io/v1/ingressclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/ingressclasses/{name}",
        "operationId": "readNetworkingV1IngressClass",
        "kind": "Ingressclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ingressclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/networking.k8s.io/v1/ingressclasses/{name}",
      "type": "api_path",
      "title": "patchNetworkingV1IngressClass",
      "summary": "partially update the specified IngressClass",
      "body": "PATCH /apis/networking.k8s.io/v1/ingressclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/networking.k8s.io/v1/ingressclasses/{name}",
        "operationId": "patchNetworkingV1IngressClass",
        "kind": "Ingressclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ingressclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/networking.k8s.io/v1/ingressclasses/{name}",
      "type": "api_path",
      "title": "replaceNetworkingV1IngressClass",
      "summary": "replace the specified IngressClass",
      "body": "PUT /apis/networking.k8s.io/v1/ingressclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/networking.k8s.io/v1/ingressclasses/{name}",
        "operationId": "replaceNetworkingV1IngressClass",
        "kind": "Ingressclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ingressclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/ingresses",
      "type": "api_path",
      "title": "listNetworkingV1IngressForAllNamespaces",
      "summary": "list or watch objects of kind Ingress",
      "body": "GET /apis/networking.k8s.io/v1/ingresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/ingresses",
        "operationId": "listNetworkingV1IngressForAllNamespaces",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ingresses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/networking.k8s.io/v1/ipaddresses",
      "type": "api_path",
      "title": "deleteNetworkingV1CollectionIPAddress",
      "summary": "delete collection of IPAddress",
      "body": "DELETE /apis/networking.k8s.io/v1/ipaddresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/networking.k8s.io/v1/ipaddresses",
        "operationId": "deleteNetworkingV1CollectionIPAddress",
        "kind": "Ipaddresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ipaddresses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/ipaddresses",
      "type": "api_path",
      "title": "listNetworkingV1IPAddress",
      "summary": "list or watch objects of kind IPAddress",
      "body": "GET /apis/networking.k8s.io/v1/ipaddresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/ipaddresses",
        "operationId": "listNetworkingV1IPAddress",
        "kind": "Ipaddresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ipaddresses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/networking.k8s.io/v1/ipaddresses",
      "type": "api_path",
      "title": "createNetworkingV1IPAddress",
      "summary": "create an IPAddress",
      "body": "POST /apis/networking.k8s.io/v1/ipaddresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/networking.k8s.io/v1/ipaddresses",
        "operationId": "createNetworkingV1IPAddress",
        "kind": "Ipaddresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ipaddresses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/networking.k8s.io/v1/ipaddresses/{name}",
      "type": "api_path",
      "title": "deleteNetworkingV1IPAddress",
      "summary": "delete an IPAddress",
      "body": "DELETE /apis/networking.k8s.io/v1/ipaddresses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/networking.k8s.io/v1/ipaddresses/{name}",
        "operationId": "deleteNetworkingV1IPAddress",
        "kind": "Ipaddresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ipaddresses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/ipaddresses/{name}",
      "type": "api_path",
      "title": "readNetworkingV1IPAddress",
      "summary": "read the specified IPAddress",
      "body": "GET /apis/networking.k8s.io/v1/ipaddresses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/ipaddresses/{name}",
        "operationId": "readNetworkingV1IPAddress",
        "kind": "Ipaddresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ipaddresses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/networking.k8s.io/v1/ipaddresses/{name}",
      "type": "api_path",
      "title": "patchNetworkingV1IPAddress",
      "summary": "partially update the specified IPAddress",
      "body": "PATCH /apis/networking.k8s.io/v1/ipaddresses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/networking.k8s.io/v1/ipaddresses/{name}",
        "operationId": "patchNetworkingV1IPAddress",
        "kind": "Ipaddresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ipaddresses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/networking.k8s.io/v1/ipaddresses/{name}",
      "type": "api_path",
      "title": "replaceNetworkingV1IPAddress",
      "summary": "replace the specified IPAddress",
      "body": "PUT /apis/networking.k8s.io/v1/ipaddresses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/networking.k8s.io/v1/ipaddresses/{name}",
        "operationId": "replaceNetworkingV1IPAddress",
        "kind": "Ipaddresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/ipaddresses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses",
      "type": "api_path",
      "title": "deleteNetworkingV1CollectionNamespacedIngress",
      "summary": "delete collection of Ingress",
      "body": "DELETE /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses",
        "operationId": "deleteNetworkingV1CollectionNamespacedIngress",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses",
      "type": "api_path",
      "title": "listNetworkingV1NamespacedIngress",
      "summary": "list or watch objects of kind Ingress",
      "body": "GET /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses",
        "operationId": "listNetworkingV1NamespacedIngress",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses",
      "type": "api_path",
      "title": "createNetworkingV1NamespacedIngress",
      "summary": "create an Ingress",
      "body": "POST /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses",
        "operationId": "createNetworkingV1NamespacedIngress",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
      "type": "api_path",
      "title": "deleteNetworkingV1NamespacedIngress",
      "summary": "delete an Ingress",
      "body": "DELETE /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
        "operationId": "deleteNetworkingV1NamespacedIngress",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
      "type": "api_path",
      "title": "readNetworkingV1NamespacedIngress",
      "summary": "read the specified Ingress",
      "body": "GET /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
        "operationId": "readNetworkingV1NamespacedIngress",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
      "type": "api_path",
      "title": "patchNetworkingV1NamespacedIngress",
      "summary": "partially update the specified Ingress",
      "body": "PATCH /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
        "operationId": "patchNetworkingV1NamespacedIngress",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
      "type": "api_path",
      "title": "replaceNetworkingV1NamespacedIngress",
      "summary": "replace the specified Ingress",
      "body": "PUT /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}",
        "operationId": "replaceNetworkingV1NamespacedIngress",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
      "type": "api_path",
      "title": "readNetworkingV1NamespacedIngressStatus",
      "summary": "read status of the specified Ingress",
      "body": "GET /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
        "operationId": "readNetworkingV1NamespacedIngressStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
      "type": "api_path",
      "title": "patchNetworkingV1NamespacedIngressStatus",
      "summary": "partially update status of the specified Ingress",
      "body": "PATCH /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
        "operationId": "patchNetworkingV1NamespacedIngressStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
      "type": "api_path",
      "title": "replaceNetworkingV1NamespacedIngressStatus",
      "summary": "replace status of the specified Ingress",
      "body": "PUT /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
        "operationId": "replaceNetworkingV1NamespacedIngressStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies",
      "type": "api_path",
      "title": "deleteNetworkingV1CollectionNamespacedNetworkPolicy",
      "summary": "delete collection of NetworkPolicy",
      "body": "DELETE /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies",
        "operationId": "deleteNetworkingV1CollectionNamespacedNetworkPolicy",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies",
      "type": "api_path",
      "title": "listNetworkingV1NamespacedNetworkPolicy",
      "summary": "list or watch objects of kind NetworkPolicy",
      "body": "GET /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies",
        "operationId": "listNetworkingV1NamespacedNetworkPolicy",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies",
      "type": "api_path",
      "title": "createNetworkingV1NamespacedNetworkPolicy",
      "summary": "create a NetworkPolicy",
      "body": "POST /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies",
        "operationId": "createNetworkingV1NamespacedNetworkPolicy",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
      "type": "api_path",
      "title": "deleteNetworkingV1NamespacedNetworkPolicy",
      "summary": "delete a NetworkPolicy",
      "body": "DELETE /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
        "operationId": "deleteNetworkingV1NamespacedNetworkPolicy",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
      "type": "api_path",
      "title": "readNetworkingV1NamespacedNetworkPolicy",
      "summary": "read the specified NetworkPolicy",
      "body": "GET /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
        "operationId": "readNetworkingV1NamespacedNetworkPolicy",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
      "type": "api_path",
      "title": "patchNetworkingV1NamespacedNetworkPolicy",
      "summary": "partially update the specified NetworkPolicy",
      "body": "PATCH /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
        "operationId": "patchNetworkingV1NamespacedNetworkPolicy",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
      "type": "api_path",
      "title": "replaceNetworkingV1NamespacedNetworkPolicy",
      "summary": "replace the specified NetworkPolicy",
      "body": "PUT /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}",
        "operationId": "replaceNetworkingV1NamespacedNetworkPolicy",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/networkpolicies",
      "type": "api_path",
      "title": "listNetworkingV1NetworkPolicyForAllNamespaces",
      "summary": "list or watch objects of kind NetworkPolicy",
      "body": "GET /apis/networking.k8s.io/v1/networkpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/networkpolicies",
        "operationId": "listNetworkingV1NetworkPolicyForAllNamespaces",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/networkpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/networking.k8s.io/v1/servicecidrs",
      "type": "api_path",
      "title": "deleteNetworkingV1CollectionServiceCIDR",
      "summary": "delete collection of ServiceCIDR",
      "body": "DELETE /apis/networking.k8s.io/v1/servicecidrs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/networking.k8s.io/v1/servicecidrs",
        "operationId": "deleteNetworkingV1CollectionServiceCIDR",
        "kind": "Servicecidrs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/servicecidrs",
      "type": "api_path",
      "title": "listNetworkingV1ServiceCIDR",
      "summary": "list or watch objects of kind ServiceCIDR",
      "body": "GET /apis/networking.k8s.io/v1/servicecidrs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/servicecidrs",
        "operationId": "listNetworkingV1ServiceCIDR",
        "kind": "Servicecidrs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/networking.k8s.io/v1/servicecidrs",
      "type": "api_path",
      "title": "createNetworkingV1ServiceCIDR",
      "summary": "create a ServiceCIDR",
      "body": "POST /apis/networking.k8s.io/v1/servicecidrs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/networking.k8s.io/v1/servicecidrs",
        "operationId": "createNetworkingV1ServiceCIDR",
        "kind": "Servicecidrs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/networking.k8s.io/v1/servicecidrs/{name}",
      "type": "api_path",
      "title": "deleteNetworkingV1ServiceCIDR",
      "summary": "delete a ServiceCIDR",
      "body": "DELETE /apis/networking.k8s.io/v1/servicecidrs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/networking.k8s.io/v1/servicecidrs/{name}",
        "operationId": "deleteNetworkingV1ServiceCIDR",
        "kind": "Servicecidrs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/servicecidrs/{name}",
      "type": "api_path",
      "title": "readNetworkingV1ServiceCIDR",
      "summary": "read the specified ServiceCIDR",
      "body": "GET /apis/networking.k8s.io/v1/servicecidrs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/servicecidrs/{name}",
        "operationId": "readNetworkingV1ServiceCIDR",
        "kind": "Servicecidrs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/networking.k8s.io/v1/servicecidrs/{name}",
      "type": "api_path",
      "title": "patchNetworkingV1ServiceCIDR",
      "summary": "partially update the specified ServiceCIDR",
      "body": "PATCH /apis/networking.k8s.io/v1/servicecidrs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/networking.k8s.io/v1/servicecidrs/{name}",
        "operationId": "patchNetworkingV1ServiceCIDR",
        "kind": "Servicecidrs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/networking.k8s.io/v1/servicecidrs/{name}",
      "type": "api_path",
      "title": "replaceNetworkingV1ServiceCIDR",
      "summary": "replace the specified ServiceCIDR",
      "body": "PUT /apis/networking.k8s.io/v1/servicecidrs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/networking.k8s.io/v1/servicecidrs/{name}",
        "operationId": "replaceNetworkingV1ServiceCIDR",
        "kind": "Servicecidrs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/servicecidrs/{name}/status",
      "type": "api_path",
      "title": "readNetworkingV1ServiceCIDRStatus",
      "summary": "read status of the specified ServiceCIDR",
      "body": "GET /apis/networking.k8s.io/v1/servicecidrs/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/servicecidrs/{name}/status",
        "operationId": "readNetworkingV1ServiceCIDRStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/networking.k8s.io/v1/servicecidrs/{name}/status",
      "type": "api_path",
      "title": "patchNetworkingV1ServiceCIDRStatus",
      "summary": "partially update status of the specified ServiceCIDR",
      "body": "PATCH /apis/networking.k8s.io/v1/servicecidrs/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/networking.k8s.io/v1/servicecidrs/{name}/status",
        "operationId": "patchNetworkingV1ServiceCIDRStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/networking.k8s.io/v1/servicecidrs/{name}/status",
      "type": "api_path",
      "title": "replaceNetworkingV1ServiceCIDRStatus",
      "summary": "replace status of the specified ServiceCIDR",
      "body": "PUT /apis/networking.k8s.io/v1/servicecidrs/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/networking.k8s.io/v1/servicecidrs/{name}/status",
        "operationId": "replaceNetworkingV1ServiceCIDRStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/ingressclasses",
      "type": "api_path",
      "title": "watchNetworkingV1IngressClassList",
      "summary": "watch individual changes to a list of IngressClass. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/networking.k8s.io/v1/watch/ingressclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/ingressclasses",
        "operationId": "watchNetworkingV1IngressClassList",
        "kind": "Ingressclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/ingressclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/ingressclasses/{name}",
      "type": "api_path",
      "title": "watchNetworkingV1IngressClass",
      "summary": "watch changes to an object of kind IngressClass. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/networking.k8s.io/v1/watch/ingressclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/ingressclasses/{name}",
        "operationId": "watchNetworkingV1IngressClass",
        "kind": "Ingressclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/ingressclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/ingresses",
      "type": "api_path",
      "title": "watchNetworkingV1IngressListForAllNamespaces",
      "summary": "watch individual changes to a list of Ingress. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/networking.k8s.io/v1/watch/ingresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/ingresses",
        "operationId": "watchNetworkingV1IngressListForAllNamespaces",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/ingresses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/ipaddresses",
      "type": "api_path",
      "title": "watchNetworkingV1IPAddressList",
      "summary": "watch individual changes to a list of IPAddress. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/networking.k8s.io/v1/watch/ipaddresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/ipaddresses",
        "operationId": "watchNetworkingV1IPAddressList",
        "kind": "Ipaddresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/ipaddresses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/ipaddresses/{name}",
      "type": "api_path",
      "title": "watchNetworkingV1IPAddress",
      "summary": "watch changes to an object of kind IPAddress. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/networking.k8s.io/v1/watch/ipaddresses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/ipaddresses/{name}",
        "operationId": "watchNetworkingV1IPAddress",
        "kind": "Ipaddresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/ipaddresses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses",
      "type": "api_path",
      "title": "watchNetworkingV1NamespacedIngressList",
      "summary": "watch individual changes to a list of Ingress. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses",
        "operationId": "watchNetworkingV1NamespacedIngressList",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses/{name}",
      "type": "api_path",
      "title": "watchNetworkingV1NamespacedIngress",
      "summary": "watch changes to an object of kind Ingress. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses/{name}",
        "operationId": "watchNetworkingV1NamespacedIngress",
        "kind": "Ingresses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies",
      "type": "api_path",
      "title": "watchNetworkingV1NamespacedNetworkPolicyList",
      "summary": "watch individual changes to a list of NetworkPolicy. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies",
        "operationId": "watchNetworkingV1NamespacedNetworkPolicyList",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies/{name}",
      "type": "api_path",
      "title": "watchNetworkingV1NamespacedNetworkPolicy",
      "summary": "watch changes to an object of kind NetworkPolicy. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies/{name}",
        "operationId": "watchNetworkingV1NamespacedNetworkPolicy",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/networkpolicies",
      "type": "api_path",
      "title": "watchNetworkingV1NetworkPolicyListForAllNamespaces",
      "summary": "watch individual changes to a list of NetworkPolicy. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/networking.k8s.io/v1/watch/networkpolicies",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/networkpolicies",
        "operationId": "watchNetworkingV1NetworkPolicyListForAllNamespaces",
        "kind": "Networkpolicies"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/networkpolicies"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/servicecidrs",
      "type": "api_path",
      "title": "watchNetworkingV1ServiceCIDRList",
      "summary": "watch individual changes to a list of ServiceCIDR. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/networking.k8s.io/v1/watch/servicecidrs",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/servicecidrs",
        "operationId": "watchNetworkingV1ServiceCIDRList",
        "kind": "Servicecidrs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/servicecidrs"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/networking.k8s.io/v1/watch/servicecidrs/{name}",
      "type": "api_path",
      "title": "watchNetworkingV1ServiceCIDR",
      "summary": "watch changes to an object of kind ServiceCIDR. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/networking.k8s.io/v1/watch/servicecidrs/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/networking.k8s.io/v1/watch/servicecidrs/{name}",
        "operationId": "watchNetworkingV1ServiceCIDR",
        "kind": "Servicecidrs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/watch/servicecidrs/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/node.k8s.io/",
      "type": "api_path",
      "title": "getNodeAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/node.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/node.k8s.io/",
        "operationId": "getNodeAPIGroup",
        "kind": "Node"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/node.k8s.io/v1/",
      "type": "api_path",
      "title": "getNodeV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/node.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/node.k8s.io/v1/",
        "operationId": "getNodeV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/node.k8s.io/v1/runtimeclasses",
      "type": "api_path",
      "title": "deleteNodeV1CollectionRuntimeClass",
      "summary": "delete collection of RuntimeClass",
      "body": "DELETE /apis/node.k8s.io/v1/runtimeclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/node.k8s.io/v1/runtimeclasses",
        "operationId": "deleteNodeV1CollectionRuntimeClass",
        "kind": "Runtimeclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/v1/runtimeclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/node.k8s.io/v1/runtimeclasses",
      "type": "api_path",
      "title": "listNodeV1RuntimeClass",
      "summary": "list or watch objects of kind RuntimeClass",
      "body": "GET /apis/node.k8s.io/v1/runtimeclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/node.k8s.io/v1/runtimeclasses",
        "operationId": "listNodeV1RuntimeClass",
        "kind": "Runtimeclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/v1/runtimeclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/node.k8s.io/v1/runtimeclasses",
      "type": "api_path",
      "title": "createNodeV1RuntimeClass",
      "summary": "create a RuntimeClass",
      "body": "POST /apis/node.k8s.io/v1/runtimeclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/node.k8s.io/v1/runtimeclasses",
        "operationId": "createNodeV1RuntimeClass",
        "kind": "Runtimeclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/v1/runtimeclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/node.k8s.io/v1/runtimeclasses/{name}",
      "type": "api_path",
      "title": "deleteNodeV1RuntimeClass",
      "summary": "delete a RuntimeClass",
      "body": "DELETE /apis/node.k8s.io/v1/runtimeclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/node.k8s.io/v1/runtimeclasses/{name}",
        "operationId": "deleteNodeV1RuntimeClass",
        "kind": "Runtimeclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/v1/runtimeclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/node.k8s.io/v1/runtimeclasses/{name}",
      "type": "api_path",
      "title": "readNodeV1RuntimeClass",
      "summary": "read the specified RuntimeClass",
      "body": "GET /apis/node.k8s.io/v1/runtimeclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/node.k8s.io/v1/runtimeclasses/{name}",
        "operationId": "readNodeV1RuntimeClass",
        "kind": "Runtimeclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/v1/runtimeclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/node.k8s.io/v1/runtimeclasses/{name}",
      "type": "api_path",
      "title": "patchNodeV1RuntimeClass",
      "summary": "partially update the specified RuntimeClass",
      "body": "PATCH /apis/node.k8s.io/v1/runtimeclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/node.k8s.io/v1/runtimeclasses/{name}",
        "operationId": "patchNodeV1RuntimeClass",
        "kind": "Runtimeclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/v1/runtimeclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/node.k8s.io/v1/runtimeclasses/{name}",
      "type": "api_path",
      "title": "replaceNodeV1RuntimeClass",
      "summary": "replace the specified RuntimeClass",
      "body": "PUT /apis/node.k8s.io/v1/runtimeclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/node.k8s.io/v1/runtimeclasses/{name}",
        "operationId": "replaceNodeV1RuntimeClass",
        "kind": "Runtimeclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/v1/runtimeclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/node.k8s.io/v1/watch/runtimeclasses",
      "type": "api_path",
      "title": "watchNodeV1RuntimeClassList",
      "summary": "watch individual changes to a list of RuntimeClass. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/node.k8s.io/v1/watch/runtimeclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/node.k8s.io/v1/watch/runtimeclasses",
        "operationId": "watchNodeV1RuntimeClassList",
        "kind": "Runtimeclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/v1/watch/runtimeclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/node.k8s.io/v1/watch/runtimeclasses/{name}",
      "type": "api_path",
      "title": "watchNodeV1RuntimeClass",
      "summary": "watch changes to an object of kind RuntimeClass. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/node.k8s.io/v1/watch/runtimeclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/node.k8s.io/v1/watch/runtimeclasses/{name}",
        "operationId": "watchNodeV1RuntimeClass",
        "kind": "Runtimeclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/v1/watch/runtimeclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/policy/",
      "type": "api_path",
      "title": "getPolicyAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/policy/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/policy/",
        "operationId": "getPolicyAPIGroup",
        "kind": "Policy"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/policy/v1/",
      "type": "api_path",
      "title": "getPolicyV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/policy/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/policy/v1/",
        "operationId": "getPolicyV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets",
      "type": "api_path",
      "title": "deletePolicyV1CollectionNamespacedPodDisruptionBudget",
      "summary": "delete collection of PodDisruptionBudget",
      "body": "DELETE /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets",
        "operationId": "deletePolicyV1CollectionNamespacedPodDisruptionBudget",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets",
      "type": "api_path",
      "title": "listPolicyV1NamespacedPodDisruptionBudget",
      "summary": "list or watch objects of kind PodDisruptionBudget",
      "body": "GET /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets",
        "operationId": "listPolicyV1NamespacedPodDisruptionBudget",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets",
      "type": "api_path",
      "title": "createPolicyV1NamespacedPodDisruptionBudget",
      "summary": "create a PodDisruptionBudget",
      "body": "POST /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets",
        "operationId": "createPolicyV1NamespacedPodDisruptionBudget",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
      "type": "api_path",
      "title": "deletePolicyV1NamespacedPodDisruptionBudget",
      "summary": "delete a PodDisruptionBudget",
      "body": "DELETE /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
        "operationId": "deletePolicyV1NamespacedPodDisruptionBudget",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
      "type": "api_path",
      "title": "readPolicyV1NamespacedPodDisruptionBudget",
      "summary": "read the specified PodDisruptionBudget",
      "body": "GET /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
        "operationId": "readPolicyV1NamespacedPodDisruptionBudget",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
      "type": "api_path",
      "title": "patchPolicyV1NamespacedPodDisruptionBudget",
      "summary": "partially update the specified PodDisruptionBudget",
      "body": "PATCH /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
        "operationId": "patchPolicyV1NamespacedPodDisruptionBudget",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
      "type": "api_path",
      "title": "replacePolicyV1NamespacedPodDisruptionBudget",
      "summary": "replace the specified PodDisruptionBudget",
      "body": "PUT /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}",
        "operationId": "replacePolicyV1NamespacedPodDisruptionBudget",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
      "type": "api_path",
      "title": "readPolicyV1NamespacedPodDisruptionBudgetStatus",
      "summary": "read status of the specified PodDisruptionBudget",
      "body": "GET /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
        "operationId": "readPolicyV1NamespacedPodDisruptionBudgetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
      "type": "api_path",
      "title": "patchPolicyV1NamespacedPodDisruptionBudgetStatus",
      "summary": "partially update status of the specified PodDisruptionBudget",
      "body": "PATCH /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
        "operationId": "patchPolicyV1NamespacedPodDisruptionBudgetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
      "type": "api_path",
      "title": "replacePolicyV1NamespacedPodDisruptionBudgetStatus",
      "summary": "replace status of the specified PodDisruptionBudget",
      "body": "PUT /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
        "operationId": "replacePolicyV1NamespacedPodDisruptionBudgetStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/policy/v1/poddisruptionbudgets",
      "type": "api_path",
      "title": "listPolicyV1PodDisruptionBudgetForAllNamespaces",
      "summary": "list or watch objects of kind PodDisruptionBudget",
      "body": "GET /apis/policy/v1/poddisruptionbudgets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/policy/v1/poddisruptionbudgets",
        "operationId": "listPolicyV1PodDisruptionBudgetForAllNamespaces",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/poddisruptionbudgets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/policy/v1/watch/namespaces/{namespace}/poddisruptionbudgets",
      "type": "api_path",
      "title": "watchPolicyV1NamespacedPodDisruptionBudgetList",
      "summary": "watch individual changes to a list of PodDisruptionBudget. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/policy/v1/watch/namespaces/{namespace}/poddisruptionbudgets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/policy/v1/watch/namespaces/{namespace}/poddisruptionbudgets",
        "operationId": "watchPolicyV1NamespacedPodDisruptionBudgetList",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/watch/namespaces/{namespace}/poddisruptionbudgets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/policy/v1/watch/namespaces/{namespace}/poddisruptionbudgets/{name}",
      "type": "api_path",
      "title": "watchPolicyV1NamespacedPodDisruptionBudget",
      "summary": "watch changes to an object of kind PodDisruptionBudget. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/policy/v1/watch/namespaces/{namespace}/poddisruptionbudgets/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/policy/v1/watch/namespaces/{namespace}/poddisruptionbudgets/{name}",
        "operationId": "watchPolicyV1NamespacedPodDisruptionBudget",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/watch/namespaces/{namespace}/poddisruptionbudgets/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/policy/v1/watch/poddisruptionbudgets",
      "type": "api_path",
      "title": "watchPolicyV1PodDisruptionBudgetListForAllNamespaces",
      "summary": "watch individual changes to a list of PodDisruptionBudget. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/policy/v1/watch/poddisruptionbudgets",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/policy/v1/watch/poddisruptionbudgets",
        "operationId": "watchPolicyV1PodDisruptionBudgetListForAllNamespaces",
        "kind": "Poddisruptionbudgets"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/watch/poddisruptionbudgets"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/",
      "type": "api_path",
      "title": "getRbacAuthorizationAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/rbac.authorization.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/",
        "operationId": "getRbacAuthorizationAPIGroup",
        "kind": "Rbac"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/",
      "type": "api_path",
      "title": "getRbacAuthorizationV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/",
        "operationId": "getRbacAuthorizationV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/rbac.authorization.k8s.io/v1/clusterrolebindings",
      "type": "api_path",
      "title": "deleteRbacAuthorizationV1CollectionClusterRoleBinding",
      "summary": "delete collection of ClusterRoleBinding",
      "body": "DELETE /apis/rbac.authorization.k8s.io/v1/clusterrolebindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings",
        "operationId": "deleteRbacAuthorizationV1CollectionClusterRoleBinding",
        "kind": "Clusterrolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/clusterrolebindings",
      "type": "api_path",
      "title": "listRbacAuthorizationV1ClusterRoleBinding",
      "summary": "list or watch objects of kind ClusterRoleBinding",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/clusterrolebindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings",
        "operationId": "listRbacAuthorizationV1ClusterRoleBinding",
        "kind": "Clusterrolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/rbac.authorization.k8s.io/v1/clusterrolebindings",
      "type": "api_path",
      "title": "createRbacAuthorizationV1ClusterRoleBinding",
      "summary": "create a ClusterRoleBinding",
      "body": "POST /apis/rbac.authorization.k8s.io/v1/clusterrolebindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings",
        "operationId": "createRbacAuthorizationV1ClusterRoleBinding",
        "kind": "Clusterrolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
      "type": "api_path",
      "title": "deleteRbacAuthorizationV1ClusterRoleBinding",
      "summary": "delete a ClusterRoleBinding",
      "body": "DELETE /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
        "operationId": "deleteRbacAuthorizationV1ClusterRoleBinding",
        "kind": "Clusterrolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
      "type": "api_path",
      "title": "readRbacAuthorizationV1ClusterRoleBinding",
      "summary": "read the specified ClusterRoleBinding",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
        "operationId": "readRbacAuthorizationV1ClusterRoleBinding",
        "kind": "Clusterrolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
      "type": "api_path",
      "title": "patchRbacAuthorizationV1ClusterRoleBinding",
      "summary": "partially update the specified ClusterRoleBinding",
      "body": "PATCH /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
        "operationId": "patchRbacAuthorizationV1ClusterRoleBinding",
        "kind": "Clusterrolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
      "type": "api_path",
      "title": "replaceRbacAuthorizationV1ClusterRoleBinding",
      "summary": "replace the specified ClusterRoleBinding",
      "body": "PUT /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}",
        "operationId": "replaceRbacAuthorizationV1ClusterRoleBinding",
        "kind": "Clusterrolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/rbac.authorization.k8s.io/v1/clusterroles",
      "type": "api_path",
      "title": "deleteRbacAuthorizationV1CollectionClusterRole",
      "summary": "delete collection of ClusterRole",
      "body": "DELETE /apis/rbac.authorization.k8s.io/v1/clusterroles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterroles",
        "operationId": "deleteRbacAuthorizationV1CollectionClusterRole",
        "kind": "Clusterroles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterroles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/clusterroles",
      "type": "api_path",
      "title": "listRbacAuthorizationV1ClusterRole",
      "summary": "list or watch objects of kind ClusterRole",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/clusterroles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterroles",
        "operationId": "listRbacAuthorizationV1ClusterRole",
        "kind": "Clusterroles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterroles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/rbac.authorization.k8s.io/v1/clusterroles",
      "type": "api_path",
      "title": "createRbacAuthorizationV1ClusterRole",
      "summary": "create a ClusterRole",
      "body": "POST /apis/rbac.authorization.k8s.io/v1/clusterroles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterroles",
        "operationId": "createRbacAuthorizationV1ClusterRole",
        "kind": "Clusterroles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterroles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
      "type": "api_path",
      "title": "deleteRbacAuthorizationV1ClusterRole",
      "summary": "delete a ClusterRole",
      "body": "DELETE /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
        "operationId": "deleteRbacAuthorizationV1ClusterRole",
        "kind": "Clusterroles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
      "type": "api_path",
      "title": "readRbacAuthorizationV1ClusterRole",
      "summary": "read the specified ClusterRole",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
        "operationId": "readRbacAuthorizationV1ClusterRole",
        "kind": "Clusterroles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
      "type": "api_path",
      "title": "patchRbacAuthorizationV1ClusterRole",
      "summary": "partially update the specified ClusterRole",
      "body": "PATCH /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
        "operationId": "patchRbacAuthorizationV1ClusterRole",
        "kind": "Clusterroles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
      "type": "api_path",
      "title": "replaceRbacAuthorizationV1ClusterRole",
      "summary": "replace the specified ClusterRole",
      "body": "PUT /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}",
        "operationId": "replaceRbacAuthorizationV1ClusterRole",
        "kind": "Clusterroles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings",
      "type": "api_path",
      "title": "deleteRbacAuthorizationV1CollectionNamespacedRoleBinding",
      "summary": "delete collection of RoleBinding",
      "body": "DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings",
        "operationId": "deleteRbacAuthorizationV1CollectionNamespacedRoleBinding",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings",
      "type": "api_path",
      "title": "listRbacAuthorizationV1NamespacedRoleBinding",
      "summary": "list or watch objects of kind RoleBinding",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings",
        "operationId": "listRbacAuthorizationV1NamespacedRoleBinding",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings",
      "type": "api_path",
      "title": "createRbacAuthorizationV1NamespacedRoleBinding",
      "summary": "create a RoleBinding",
      "body": "POST /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings",
        "operationId": "createRbacAuthorizationV1NamespacedRoleBinding",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
      "type": "api_path",
      "title": "deleteRbacAuthorizationV1NamespacedRoleBinding",
      "summary": "delete a RoleBinding",
      "body": "DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
        "operationId": "deleteRbacAuthorizationV1NamespacedRoleBinding",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
      "type": "api_path",
      "title": "readRbacAuthorizationV1NamespacedRoleBinding",
      "summary": "read the specified RoleBinding",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
        "operationId": "readRbacAuthorizationV1NamespacedRoleBinding",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
      "type": "api_path",
      "title": "patchRbacAuthorizationV1NamespacedRoleBinding",
      "summary": "partially update the specified RoleBinding",
      "body": "PATCH /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
        "operationId": "patchRbacAuthorizationV1NamespacedRoleBinding",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
      "type": "api_path",
      "title": "replaceRbacAuthorizationV1NamespacedRoleBinding",
      "summary": "replace the specified RoleBinding",
      "body": "PUT /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}",
        "operationId": "replaceRbacAuthorizationV1NamespacedRoleBinding",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles",
      "type": "api_path",
      "title": "deleteRbacAuthorizationV1CollectionNamespacedRole",
      "summary": "delete collection of Role",
      "body": "DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles",
        "operationId": "deleteRbacAuthorizationV1CollectionNamespacedRole",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles",
      "type": "api_path",
      "title": "listRbacAuthorizationV1NamespacedRole",
      "summary": "list or watch objects of kind Role",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles",
        "operationId": "listRbacAuthorizationV1NamespacedRole",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles",
      "type": "api_path",
      "title": "createRbacAuthorizationV1NamespacedRole",
      "summary": "create a Role",
      "body": "POST /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles",
        "operationId": "createRbacAuthorizationV1NamespacedRole",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
      "type": "api_path",
      "title": "deleteRbacAuthorizationV1NamespacedRole",
      "summary": "delete a Role",
      "body": "DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
        "operationId": "deleteRbacAuthorizationV1NamespacedRole",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
      "type": "api_path",
      "title": "readRbacAuthorizationV1NamespacedRole",
      "summary": "read the specified Role",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
        "operationId": "readRbacAuthorizationV1NamespacedRole",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
      "type": "api_path",
      "title": "patchRbacAuthorizationV1NamespacedRole",
      "summary": "partially update the specified Role",
      "body": "PATCH /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
        "operationId": "patchRbacAuthorizationV1NamespacedRole",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
      "type": "api_path",
      "title": "replaceRbacAuthorizationV1NamespacedRole",
      "summary": "replace the specified Role",
      "body": "PUT /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}",
        "operationId": "replaceRbacAuthorizationV1NamespacedRole",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/rolebindings",
      "type": "api_path",
      "title": "listRbacAuthorizationV1RoleBindingForAllNamespaces",
      "summary": "list or watch objects of kind RoleBinding",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/rolebindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/rolebindings",
        "operationId": "listRbacAuthorizationV1RoleBindingForAllNamespaces",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/rolebindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/roles",
      "type": "api_path",
      "title": "listRbacAuthorizationV1RoleForAllNamespaces",
      "summary": "list or watch objects of kind Role",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/roles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/roles",
        "operationId": "listRbacAuthorizationV1RoleForAllNamespaces",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/roles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/watch/clusterrolebindings",
      "type": "api_path",
      "title": "watchRbacAuthorizationV1ClusterRoleBindingList",
      "summary": "watch individual changes to a list of ClusterRoleBinding. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/watch/clusterrolebindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/watch/clusterrolebindings",
        "operationId": "watchRbacAuthorizationV1ClusterRoleBindingList",
        "kind": "Clusterrolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/watch/clusterrolebindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/watch/clusterrolebindings/{name}",
      "type": "api_path",
      "title": "watchRbacAuthorizationV1ClusterRoleBinding",
      "summary": "watch changes to an object of kind ClusterRoleBinding. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/watch/clusterrolebindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/watch/clusterrolebindings/{name}",
        "operationId": "watchRbacAuthorizationV1ClusterRoleBinding",
        "kind": "Clusterrolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/watch/clusterrolebindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/watch/clusterroles",
      "type": "api_path",
      "title": "watchRbacAuthorizationV1ClusterRoleList",
      "summary": "watch individual changes to a list of ClusterRole. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/watch/clusterroles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/watch/clusterroles",
        "operationId": "watchRbacAuthorizationV1ClusterRoleList",
        "kind": "Clusterroles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/watch/clusterroles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/watch/clusterroles/{name}",
      "type": "api_path",
      "title": "watchRbacAuthorizationV1ClusterRole",
      "summary": "watch changes to an object of kind ClusterRole. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/watch/clusterroles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/watch/clusterroles/{name}",
        "operationId": "watchRbacAuthorizationV1ClusterRole",
        "kind": "Clusterroles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/watch/clusterroles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/rolebindings",
      "type": "api_path",
      "title": "watchRbacAuthorizationV1NamespacedRoleBindingList",
      "summary": "watch individual changes to a list of RoleBinding. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/rolebindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/rolebindings",
        "operationId": "watchRbacAuthorizationV1NamespacedRoleBindingList",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/rolebindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/rolebindings/{name}",
      "type": "api_path",
      "title": "watchRbacAuthorizationV1NamespacedRoleBinding",
      "summary": "watch changes to an object of kind RoleBinding. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/rolebindings/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/rolebindings/{name}",
        "operationId": "watchRbacAuthorizationV1NamespacedRoleBinding",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/rolebindings/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/roles",
      "type": "api_path",
      "title": "watchRbacAuthorizationV1NamespacedRoleList",
      "summary": "watch individual changes to a list of Role. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/roles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/roles",
        "operationId": "watchRbacAuthorizationV1NamespacedRoleList",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/roles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/roles/{name}",
      "type": "api_path",
      "title": "watchRbacAuthorizationV1NamespacedRole",
      "summary": "watch changes to an object of kind Role. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/roles/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/roles/{name}",
        "operationId": "watchRbacAuthorizationV1NamespacedRole",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/watch/namespaces/{namespace}/roles/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/watch/rolebindings",
      "type": "api_path",
      "title": "watchRbacAuthorizationV1RoleBindingListForAllNamespaces",
      "summary": "watch individual changes to a list of RoleBinding. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/watch/rolebindings",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/watch/rolebindings",
        "operationId": "watchRbacAuthorizationV1RoleBindingListForAllNamespaces",
        "kind": "Rolebindings"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/watch/rolebindings"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/rbac.authorization.k8s.io/v1/watch/roles",
      "type": "api_path",
      "title": "watchRbacAuthorizationV1RoleListForAllNamespaces",
      "summary": "watch individual changes to a list of Role. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/rbac.authorization.k8s.io/v1/watch/roles",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/rbac.authorization.k8s.io/v1/watch/roles",
        "operationId": "watchRbacAuthorizationV1RoleListForAllNamespaces",
        "kind": "Roles"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/rbac.authorization.k8s.io/v1/watch/roles"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/",
      "type": "api_path",
      "title": "getResourceAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/resource.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/",
        "operationId": "getResourceAPIGroup",
        "kind": "Resource"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/",
      "type": "api_path",
      "title": "getResourceV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/resource.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/",
        "operationId": "getResourceV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1/deviceclasses",
      "type": "api_path",
      "title": "deleteResourceV1CollectionDeviceClass",
      "summary": "delete collection of DeviceClass",
      "body": "DELETE /apis/resource.k8s.io/v1/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1/deviceclasses",
        "operationId": "deleteResourceV1CollectionDeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/deviceclasses",
      "type": "api_path",
      "title": "listResourceV1DeviceClass",
      "summary": "list or watch objects of kind DeviceClass",
      "body": "GET /apis/resource.k8s.io/v1/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/deviceclasses",
        "operationId": "listResourceV1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1/deviceclasses",
      "type": "api_path",
      "title": "createResourceV1DeviceClass",
      "summary": "create a DeviceClass",
      "body": "POST /apis/resource.k8s.io/v1/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1/deviceclasses",
        "operationId": "createResourceV1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1/deviceclasses/{name}",
      "type": "api_path",
      "title": "deleteResourceV1DeviceClass",
      "summary": "delete a DeviceClass",
      "body": "DELETE /apis/resource.k8s.io/v1/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1/deviceclasses/{name}",
        "operationId": "deleteResourceV1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/deviceclasses/{name}",
      "type": "api_path",
      "title": "readResourceV1DeviceClass",
      "summary": "read the specified DeviceClass",
      "body": "GET /apis/resource.k8s.io/v1/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/deviceclasses/{name}",
        "operationId": "readResourceV1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1/deviceclasses/{name}",
      "type": "api_path",
      "title": "patchResourceV1DeviceClass",
      "summary": "partially update the specified DeviceClass",
      "body": "PATCH /apis/resource.k8s.io/v1/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1/deviceclasses/{name}",
        "operationId": "patchResourceV1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1/deviceclasses/{name}",
      "type": "api_path",
      "title": "replaceResourceV1DeviceClass",
      "summary": "replace the specified DeviceClass",
      "body": "PUT /apis/resource.k8s.io/v1/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1/deviceclasses/{name}",
        "operationId": "replaceResourceV1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1/devicetaintrules",
      "type": "api_path",
      "title": "deleteResourceV1CollectionDeviceTaintRule",
      "summary": "delete collection of DeviceTaintRule",
      "body": "DELETE /apis/resource.k8s.io/v1/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1/devicetaintrules",
        "operationId": "deleteResourceV1CollectionDeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/devicetaintrules",
      "type": "api_path",
      "title": "listResourceV1DeviceTaintRule",
      "summary": "list or watch objects of kind DeviceTaintRule",
      "body": "GET /apis/resource.k8s.io/v1/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/devicetaintrules",
        "operationId": "listResourceV1DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1/devicetaintrules",
      "type": "api_path",
      "title": "createResourceV1DeviceTaintRule",
      "summary": "create a DeviceTaintRule",
      "body": "POST /apis/resource.k8s.io/v1/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1/devicetaintrules",
        "operationId": "createResourceV1DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1/devicetaintrules/{name}",
      "type": "api_path",
      "title": "deleteResourceV1DeviceTaintRule",
      "summary": "delete a DeviceTaintRule",
      "body": "DELETE /apis/resource.k8s.io/v1/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1/devicetaintrules/{name}",
        "operationId": "deleteResourceV1DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/devicetaintrules/{name}",
      "type": "api_path",
      "title": "readResourceV1DeviceTaintRule",
      "summary": "read the specified DeviceTaintRule",
      "body": "GET /apis/resource.k8s.io/v1/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/devicetaintrules/{name}",
        "operationId": "readResourceV1DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1/devicetaintrules/{name}",
      "type": "api_path",
      "title": "patchResourceV1DeviceTaintRule",
      "summary": "partially update the specified DeviceTaintRule",
      "body": "PATCH /apis/resource.k8s.io/v1/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1/devicetaintrules/{name}",
        "operationId": "patchResourceV1DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1/devicetaintrules/{name}",
      "type": "api_path",
      "title": "replaceResourceV1DeviceTaintRule",
      "summary": "replace the specified DeviceTaintRule",
      "body": "PUT /apis/resource.k8s.io/v1/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1/devicetaintrules/{name}",
        "operationId": "replaceResourceV1DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
      "type": "api_path",
      "title": "readResourceV1DeviceTaintRuleStatus",
      "summary": "read status of the specified DeviceTaintRule",
      "body": "GET /apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
        "operationId": "readResourceV1DeviceTaintRuleStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
      "type": "api_path",
      "title": "patchResourceV1DeviceTaintRuleStatus",
      "summary": "partially update status of the specified DeviceTaintRule",
      "body": "PATCH /apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
        "operationId": "patchResourceV1DeviceTaintRuleStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
      "type": "api_path",
      "title": "replaceResourceV1DeviceTaintRuleStatus",
      "summary": "replace status of the specified DeviceTaintRule",
      "body": "PUT /apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
        "operationId": "replaceResourceV1DeviceTaintRuleStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "deleteResourceV1CollectionNamespacedResourceClaim",
      "summary": "delete collection of ResourceClaim",
      "body": "DELETE /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims",
        "operationId": "deleteResourceV1CollectionNamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "listResourceV1NamespacedResourceClaim",
      "summary": "list or watch objects of kind ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims",
        "operationId": "listResourceV1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "createResourceV1NamespacedResourceClaim",
      "summary": "create a ResourceClaim",
      "body": "POST /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims",
        "operationId": "createResourceV1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "deleteResourceV1NamespacedResourceClaim",
      "summary": "delete a ResourceClaim",
      "body": "DELETE /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "deleteResourceV1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "readResourceV1NamespacedResourceClaim",
      "summary": "read the specified ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "readResourceV1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "patchResourceV1NamespacedResourceClaim",
      "summary": "partially update the specified ResourceClaim",
      "body": "PATCH /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "patchResourceV1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "replaceResourceV1NamespacedResourceClaim",
      "summary": "replace the specified ResourceClaim",
      "body": "PUT /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "replaceResourceV1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
      "type": "api_path",
      "title": "readResourceV1NamespacedResourceClaimStatus",
      "summary": "read status of the specified ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
        "operationId": "readResourceV1NamespacedResourceClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
      "type": "api_path",
      "title": "patchResourceV1NamespacedResourceClaimStatus",
      "summary": "partially update status of the specified ResourceClaim",
      "body": "PATCH /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
        "operationId": "patchResourceV1NamespacedResourceClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
      "type": "api_path",
      "title": "replaceResourceV1NamespacedResourceClaimStatus",
      "summary": "replace status of the specified ResourceClaim",
      "body": "PUT /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
        "operationId": "replaceResourceV1NamespacedResourceClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "deleteResourceV1CollectionNamespacedResourceClaimTemplate",
      "summary": "delete collection of ResourceClaimTemplate",
      "body": "DELETE /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "deleteResourceV1CollectionNamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "listResourceV1NamespacedResourceClaimTemplate",
      "summary": "list or watch objects of kind ResourceClaimTemplate",
      "body": "GET /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "listResourceV1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "createResourceV1NamespacedResourceClaimTemplate",
      "summary": "create a ResourceClaimTemplate",
      "body": "POST /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "createResourceV1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "deleteResourceV1NamespacedResourceClaimTemplate",
      "summary": "delete a ResourceClaimTemplate",
      "body": "DELETE /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "deleteResourceV1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "readResourceV1NamespacedResourceClaimTemplate",
      "summary": "read the specified ResourceClaimTemplate",
      "body": "GET /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "readResourceV1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "patchResourceV1NamespacedResourceClaimTemplate",
      "summary": "partially update the specified ResourceClaimTemplate",
      "body": "PATCH /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "patchResourceV1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "replaceResourceV1NamespacedResourceClaimTemplate",
      "summary": "replace the specified ResourceClaimTemplate",
      "body": "PUT /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "replaceResourceV1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/resourceclaims",
      "type": "api_path",
      "title": "listResourceV1ResourceClaimForAllNamespaces",
      "summary": "list or watch objects of kind ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/resourceclaims",
        "operationId": "listResourceV1ResourceClaimForAllNamespaces",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/resourceclaimtemplates",
      "type": "api_path",
      "title": "listResourceV1ResourceClaimTemplateForAllNamespaces",
      "summary": "list or watch objects of kind ResourceClaimTemplate",
      "body": "GET /apis/resource.k8s.io/v1/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/resourceclaimtemplates",
        "operationId": "listResourceV1ResourceClaimTemplateForAllNamespaces",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1/resourceslices",
      "type": "api_path",
      "title": "deleteResourceV1CollectionResourceSlice",
      "summary": "delete collection of ResourceSlice",
      "body": "DELETE /apis/resource.k8s.io/v1/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1/resourceslices",
        "operationId": "deleteResourceV1CollectionResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/resourceslices",
      "type": "api_path",
      "title": "listResourceV1ResourceSlice",
      "summary": "list or watch objects of kind ResourceSlice",
      "body": "GET /apis/resource.k8s.io/v1/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/resourceslices",
        "operationId": "listResourceV1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1/resourceslices",
      "type": "api_path",
      "title": "createResourceV1ResourceSlice",
      "summary": "create a ResourceSlice",
      "body": "POST /apis/resource.k8s.io/v1/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1/resourceslices",
        "operationId": "createResourceV1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1/resourceslices/{name}",
      "type": "api_path",
      "title": "deleteResourceV1ResourceSlice",
      "summary": "delete a ResourceSlice",
      "body": "DELETE /apis/resource.k8s.io/v1/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1/resourceslices/{name}",
        "operationId": "deleteResourceV1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/resourceslices/{name}",
      "type": "api_path",
      "title": "readResourceV1ResourceSlice",
      "summary": "read the specified ResourceSlice",
      "body": "GET /apis/resource.k8s.io/v1/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/resourceslices/{name}",
        "operationId": "readResourceV1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1/resourceslices/{name}",
      "type": "api_path",
      "title": "patchResourceV1ResourceSlice",
      "summary": "partially update the specified ResourceSlice",
      "body": "PATCH /apis/resource.k8s.io/v1/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1/resourceslices/{name}",
        "operationId": "patchResourceV1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1/resourceslices/{name}",
      "type": "api_path",
      "title": "replaceResourceV1ResourceSlice",
      "summary": "replace the specified ResourceSlice",
      "body": "PUT /apis/resource.k8s.io/v1/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1/resourceslices/{name}",
        "operationId": "replaceResourceV1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/deviceclasses",
      "type": "api_path",
      "title": "watchResourceV1DeviceClassList",
      "summary": "watch individual changes to a list of DeviceClass. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1/watch/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/deviceclasses",
        "operationId": "watchResourceV1DeviceClassList",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/deviceclasses/{name}",
      "type": "api_path",
      "title": "watchResourceV1DeviceClass",
      "summary": "watch changes to an object of kind DeviceClass. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1/watch/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/deviceclasses/{name}",
        "operationId": "watchResourceV1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/devicetaintrules",
      "type": "api_path",
      "title": "watchResourceV1DeviceTaintRuleList",
      "summary": "watch individual changes to a list of DeviceTaintRule. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1/watch/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/devicetaintrules",
        "operationId": "watchResourceV1DeviceTaintRuleList",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/devicetaintrules/{name}",
      "type": "api_path",
      "title": "watchResourceV1DeviceTaintRule",
      "summary": "watch changes to an object of kind DeviceTaintRule. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1/watch/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/devicetaintrules/{name}",
        "operationId": "watchResourceV1DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "watchResourceV1NamespacedResourceClaimList",
      "summary": "watch individual changes to a list of ResourceClaim. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaims",
        "operationId": "watchResourceV1NamespacedResourceClaimList",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "watchResourceV1NamespacedResourceClaim",
      "summary": "watch changes to an object of kind ResourceClaim. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "watchResourceV1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "watchResourceV1NamespacedResourceClaimTemplateList",
      "summary": "watch individual changes to a list of ResourceClaimTemplate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "watchResourceV1NamespacedResourceClaimTemplateList",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "watchResourceV1NamespacedResourceClaimTemplate",
      "summary": "watch changes to an object of kind ResourceClaimTemplate. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "watchResourceV1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/resourceclaims",
      "type": "api_path",
      "title": "watchResourceV1ResourceClaimListForAllNamespaces",
      "summary": "watch individual changes to a list of ResourceClaim. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1/watch/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/resourceclaims",
        "operationId": "watchResourceV1ResourceClaimListForAllNamespaces",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/resourceclaimtemplates",
      "type": "api_path",
      "title": "watchResourceV1ResourceClaimTemplateListForAllNamespaces",
      "summary": "watch individual changes to a list of ResourceClaimTemplate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1/watch/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/resourceclaimtemplates",
        "operationId": "watchResourceV1ResourceClaimTemplateListForAllNamespaces",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/resourceslices",
      "type": "api_path",
      "title": "watchResourceV1ResourceSliceList",
      "summary": "watch individual changes to a list of ResourceSlice. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1/watch/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/resourceslices",
        "operationId": "watchResourceV1ResourceSliceList",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1/watch/resourceslices/{name}",
      "type": "api_path",
      "title": "watchResourceV1ResourceSlice",
      "summary": "watch changes to an object of kind ResourceSlice. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1/watch/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1/watch/resourceslices/{name}",
        "operationId": "watchResourceV1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/watch/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/",
      "type": "api_path",
      "title": "getResourceV1alpha3APIResources",
      "summary": "get available resources",
      "body": "GET /apis/resource.k8s.io/v1alpha3/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/",
        "operationId": "getResourceV1alpha3APIResources",
        "kind": "V1alpha3"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1alpha3/devicetaintrules",
      "type": "api_path",
      "title": "deleteResourceV1alpha3CollectionDeviceTaintRule",
      "summary": "delete collection of DeviceTaintRule",
      "body": "DELETE /apis/resource.k8s.io/v1alpha3/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1alpha3/devicetaintrules",
        "operationId": "deleteResourceV1alpha3CollectionDeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/devicetaintrules",
      "type": "api_path",
      "title": "listResourceV1alpha3DeviceTaintRule",
      "summary": "list or watch objects of kind DeviceTaintRule",
      "body": "GET /apis/resource.k8s.io/v1alpha3/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/devicetaintrules",
        "operationId": "listResourceV1alpha3DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1alpha3/devicetaintrules",
      "type": "api_path",
      "title": "createResourceV1alpha3DeviceTaintRule",
      "summary": "create a DeviceTaintRule",
      "body": "POST /apis/resource.k8s.io/v1alpha3/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1alpha3/devicetaintrules",
        "operationId": "createResourceV1alpha3DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
      "type": "api_path",
      "title": "deleteResourceV1alpha3DeviceTaintRule",
      "summary": "delete a DeviceTaintRule",
      "body": "DELETE /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
        "operationId": "deleteResourceV1alpha3DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
      "type": "api_path",
      "title": "readResourceV1alpha3DeviceTaintRule",
      "summary": "read the specified DeviceTaintRule",
      "body": "GET /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
        "operationId": "readResourceV1alpha3DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
      "type": "api_path",
      "title": "patchResourceV1alpha3DeviceTaintRule",
      "summary": "partially update the specified DeviceTaintRule",
      "body": "PATCH /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
        "operationId": "patchResourceV1alpha3DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
      "type": "api_path",
      "title": "replaceResourceV1alpha3DeviceTaintRule",
      "summary": "replace the specified DeviceTaintRule",
      "body": "PUT /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}",
        "operationId": "replaceResourceV1alpha3DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
      "type": "api_path",
      "title": "readResourceV1alpha3DeviceTaintRuleStatus",
      "summary": "read status of the specified DeviceTaintRule",
      "body": "GET /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
        "operationId": "readResourceV1alpha3DeviceTaintRuleStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
      "type": "api_path",
      "title": "patchResourceV1alpha3DeviceTaintRuleStatus",
      "summary": "partially update status of the specified DeviceTaintRule",
      "body": "PATCH /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
        "operationId": "patchResourceV1alpha3DeviceTaintRuleStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
      "type": "api_path",
      "title": "replaceResourceV1alpha3DeviceTaintRuleStatus",
      "summary": "replace status of the specified DeviceTaintRule",
      "body": "PUT /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
        "operationId": "replaceResourceV1alpha3DeviceTaintRuleStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests",
      "type": "api_path",
      "title": "deleteResourceV1alpha3CollectionResourcePoolStatusRequest",
      "summary": "delete collection of ResourcePoolStatusRequest",
      "body": "DELETE /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests",
        "operationId": "deleteResourceV1alpha3CollectionResourcePoolStatusRequest",
        "kind": "Resourcepoolstatusrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests",
      "type": "api_path",
      "title": "listResourceV1alpha3ResourcePoolStatusRequest",
      "summary": "list or watch objects of kind ResourcePoolStatusRequest",
      "body": "GET /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests",
        "operationId": "listResourceV1alpha3ResourcePoolStatusRequest",
        "kind": "Resourcepoolstatusrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests",
      "type": "api_path",
      "title": "createResourceV1alpha3ResourcePoolStatusRequest",
      "summary": "create a ResourcePoolStatusRequest",
      "body": "POST /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests",
        "operationId": "createResourceV1alpha3ResourcePoolStatusRequest",
        "kind": "Resourcepoolstatusrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
      "type": "api_path",
      "title": "deleteResourceV1alpha3ResourcePoolStatusRequest",
      "summary": "delete a ResourcePoolStatusRequest",
      "body": "DELETE /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
        "operationId": "deleteResourceV1alpha3ResourcePoolStatusRequest",
        "kind": "Resourcepoolstatusrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
      "type": "api_path",
      "title": "readResourceV1alpha3ResourcePoolStatusRequest",
      "summary": "read the specified ResourcePoolStatusRequest",
      "body": "GET /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
        "operationId": "readResourceV1alpha3ResourcePoolStatusRequest",
        "kind": "Resourcepoolstatusrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
      "type": "api_path",
      "title": "patchResourceV1alpha3ResourcePoolStatusRequest",
      "summary": "partially update the specified ResourcePoolStatusRequest",
      "body": "PATCH /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
        "operationId": "patchResourceV1alpha3ResourcePoolStatusRequest",
        "kind": "Resourcepoolstatusrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
      "type": "api_path",
      "title": "replaceResourceV1alpha3ResourcePoolStatusRequest",
      "summary": "replace the specified ResourcePoolStatusRequest",
      "body": "PUT /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}",
        "operationId": "replaceResourceV1alpha3ResourcePoolStatusRequest",
        "kind": "Resourcepoolstatusrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
      "type": "api_path",
      "title": "readResourceV1alpha3ResourcePoolStatusRequestStatus",
      "summary": "read status of the specified ResourcePoolStatusRequest",
      "body": "GET /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
        "operationId": "readResourceV1alpha3ResourcePoolStatusRequestStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
      "type": "api_path",
      "title": "patchResourceV1alpha3ResourcePoolStatusRequestStatus",
      "summary": "partially update status of the specified ResourcePoolStatusRequest",
      "body": "PATCH /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
        "operationId": "patchResourceV1alpha3ResourcePoolStatusRequestStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
      "type": "api_path",
      "title": "replaceResourceV1alpha3ResourcePoolStatusRequestStatus",
      "summary": "replace status of the specified ResourcePoolStatusRequest",
      "body": "PUT /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
        "operationId": "replaceResourceV1alpha3ResourcePoolStatusRequestStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/watch/devicetaintrules",
      "type": "api_path",
      "title": "watchResourceV1alpha3DeviceTaintRuleList",
      "summary": "watch individual changes to a list of DeviceTaintRule. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1alpha3/watch/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/watch/devicetaintrules",
        "operationId": "watchResourceV1alpha3DeviceTaintRuleList",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/watch/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/watch/devicetaintrules/{name}",
      "type": "api_path",
      "title": "watchResourceV1alpha3DeviceTaintRule",
      "summary": "watch changes to an object of kind DeviceTaintRule. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1alpha3/watch/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/watch/devicetaintrules/{name}",
        "operationId": "watchResourceV1alpha3DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/watch/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/watch/resourcepoolstatusrequests",
      "type": "api_path",
      "title": "watchResourceV1alpha3ResourcePoolStatusRequestList",
      "summary": "watch individual changes to a list of ResourcePoolStatusRequest. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1alpha3/watch/resourcepoolstatusrequests",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/watch/resourcepoolstatusrequests",
        "operationId": "watchResourceV1alpha3ResourcePoolStatusRequestList",
        "kind": "Resourcepoolstatusrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/watch/resourcepoolstatusrequests"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1alpha3/watch/resourcepoolstatusrequests/{name}",
      "type": "api_path",
      "title": "watchResourceV1alpha3ResourcePoolStatusRequest",
      "summary": "watch changes to an object of kind ResourcePoolStatusRequest. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1alpha3/watch/resourcepoolstatusrequests/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1alpha3/watch/resourcepoolstatusrequests/{name}",
        "operationId": "watchResourceV1alpha3ResourcePoolStatusRequest",
        "kind": "Resourcepoolstatusrequests"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/watch/resourcepoolstatusrequests/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/",
      "type": "api_path",
      "title": "getResourceV1beta1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/resource.k8s.io/v1beta1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/",
        "operationId": "getResourceV1beta1APIResources",
        "kind": "V1beta1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta1/deviceclasses",
      "type": "api_path",
      "title": "deleteResourceV1beta1CollectionDeviceClass",
      "summary": "delete collection of DeviceClass",
      "body": "DELETE /apis/resource.k8s.io/v1beta1/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta1/deviceclasses",
        "operationId": "deleteResourceV1beta1CollectionDeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/deviceclasses",
      "type": "api_path",
      "title": "listResourceV1beta1DeviceClass",
      "summary": "list or watch objects of kind DeviceClass",
      "body": "GET /apis/resource.k8s.io/v1beta1/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/deviceclasses",
        "operationId": "listResourceV1beta1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1beta1/deviceclasses",
      "type": "api_path",
      "title": "createResourceV1beta1DeviceClass",
      "summary": "create a DeviceClass",
      "body": "POST /apis/resource.k8s.io/v1beta1/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1beta1/deviceclasses",
        "operationId": "createResourceV1beta1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
      "type": "api_path",
      "title": "deleteResourceV1beta1DeviceClass",
      "summary": "delete a DeviceClass",
      "body": "DELETE /apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
        "operationId": "deleteResourceV1beta1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
      "type": "api_path",
      "title": "readResourceV1beta1DeviceClass",
      "summary": "read the specified DeviceClass",
      "body": "GET /apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
        "operationId": "readResourceV1beta1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
      "type": "api_path",
      "title": "patchResourceV1beta1DeviceClass",
      "summary": "partially update the specified DeviceClass",
      "body": "PATCH /apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
        "operationId": "patchResourceV1beta1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
      "type": "api_path",
      "title": "replaceResourceV1beta1DeviceClass",
      "summary": "replace the specified DeviceClass",
      "body": "PUT /apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta1/deviceclasses/{name}",
        "operationId": "replaceResourceV1beta1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "deleteResourceV1beta1CollectionNamespacedResourceClaim",
      "summary": "delete collection of ResourceClaim",
      "body": "DELETE /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims",
        "operationId": "deleteResourceV1beta1CollectionNamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "listResourceV1beta1NamespacedResourceClaim",
      "summary": "list or watch objects of kind ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims",
        "operationId": "listResourceV1beta1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "createResourceV1beta1NamespacedResourceClaim",
      "summary": "create a ResourceClaim",
      "body": "POST /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims",
        "operationId": "createResourceV1beta1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "deleteResourceV1beta1NamespacedResourceClaim",
      "summary": "delete a ResourceClaim",
      "body": "DELETE /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "deleteResourceV1beta1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "readResourceV1beta1NamespacedResourceClaim",
      "summary": "read the specified ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "readResourceV1beta1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "patchResourceV1beta1NamespacedResourceClaim",
      "summary": "partially update the specified ResourceClaim",
      "body": "PATCH /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "patchResourceV1beta1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "replaceResourceV1beta1NamespacedResourceClaim",
      "summary": "replace the specified ResourceClaim",
      "body": "PUT /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "replaceResourceV1beta1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
      "type": "api_path",
      "title": "readResourceV1beta1NamespacedResourceClaimStatus",
      "summary": "read status of the specified ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
        "operationId": "readResourceV1beta1NamespacedResourceClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
      "type": "api_path",
      "title": "patchResourceV1beta1NamespacedResourceClaimStatus",
      "summary": "partially update status of the specified ResourceClaim",
      "body": "PATCH /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
        "operationId": "patchResourceV1beta1NamespacedResourceClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
      "type": "api_path",
      "title": "replaceResourceV1beta1NamespacedResourceClaimStatus",
      "summary": "replace status of the specified ResourceClaim",
      "body": "PUT /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
        "operationId": "replaceResourceV1beta1NamespacedResourceClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "deleteResourceV1beta1CollectionNamespacedResourceClaimTemplate",
      "summary": "delete collection of ResourceClaimTemplate",
      "body": "DELETE /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "deleteResourceV1beta1CollectionNamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "listResourceV1beta1NamespacedResourceClaimTemplate",
      "summary": "list or watch objects of kind ResourceClaimTemplate",
      "body": "GET /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "listResourceV1beta1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "createResourceV1beta1NamespacedResourceClaimTemplate",
      "summary": "create a ResourceClaimTemplate",
      "body": "POST /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "createResourceV1beta1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "deleteResourceV1beta1NamespacedResourceClaimTemplate",
      "summary": "delete a ResourceClaimTemplate",
      "body": "DELETE /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "deleteResourceV1beta1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "readResourceV1beta1NamespacedResourceClaimTemplate",
      "summary": "read the specified ResourceClaimTemplate",
      "body": "GET /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "readResourceV1beta1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "patchResourceV1beta1NamespacedResourceClaimTemplate",
      "summary": "partially update the specified ResourceClaimTemplate",
      "body": "PATCH /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "patchResourceV1beta1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "replaceResourceV1beta1NamespacedResourceClaimTemplate",
      "summary": "replace the specified ResourceClaimTemplate",
      "body": "PUT /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "replaceResourceV1beta1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/resourceclaims",
      "type": "api_path",
      "title": "listResourceV1beta1ResourceClaimForAllNamespaces",
      "summary": "list or watch objects of kind ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1beta1/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/resourceclaims",
        "operationId": "listResourceV1beta1ResourceClaimForAllNamespaces",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/resourceclaimtemplates",
      "type": "api_path",
      "title": "listResourceV1beta1ResourceClaimTemplateForAllNamespaces",
      "summary": "list or watch objects of kind ResourceClaimTemplate",
      "body": "GET /apis/resource.k8s.io/v1beta1/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/resourceclaimtemplates",
        "operationId": "listResourceV1beta1ResourceClaimTemplateForAllNamespaces",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta1/resourceslices",
      "type": "api_path",
      "title": "deleteResourceV1beta1CollectionResourceSlice",
      "summary": "delete collection of ResourceSlice",
      "body": "DELETE /apis/resource.k8s.io/v1beta1/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta1/resourceslices",
        "operationId": "deleteResourceV1beta1CollectionResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/resourceslices",
      "type": "api_path",
      "title": "listResourceV1beta1ResourceSlice",
      "summary": "list or watch objects of kind ResourceSlice",
      "body": "GET /apis/resource.k8s.io/v1beta1/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/resourceslices",
        "operationId": "listResourceV1beta1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1beta1/resourceslices",
      "type": "api_path",
      "title": "createResourceV1beta1ResourceSlice",
      "summary": "create a ResourceSlice",
      "body": "POST /apis/resource.k8s.io/v1beta1/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1beta1/resourceslices",
        "operationId": "createResourceV1beta1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta1/resourceslices/{name}",
      "type": "api_path",
      "title": "deleteResourceV1beta1ResourceSlice",
      "summary": "delete a ResourceSlice",
      "body": "DELETE /apis/resource.k8s.io/v1beta1/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta1/resourceslices/{name}",
        "operationId": "deleteResourceV1beta1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/resourceslices/{name}",
      "type": "api_path",
      "title": "readResourceV1beta1ResourceSlice",
      "summary": "read the specified ResourceSlice",
      "body": "GET /apis/resource.k8s.io/v1beta1/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/resourceslices/{name}",
        "operationId": "readResourceV1beta1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta1/resourceslices/{name}",
      "type": "api_path",
      "title": "patchResourceV1beta1ResourceSlice",
      "summary": "partially update the specified ResourceSlice",
      "body": "PATCH /apis/resource.k8s.io/v1beta1/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta1/resourceslices/{name}",
        "operationId": "patchResourceV1beta1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta1/resourceslices/{name}",
      "type": "api_path",
      "title": "replaceResourceV1beta1ResourceSlice",
      "summary": "replace the specified ResourceSlice",
      "body": "PUT /apis/resource.k8s.io/v1beta1/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta1/resourceslices/{name}",
        "operationId": "replaceResourceV1beta1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/watch/deviceclasses",
      "type": "api_path",
      "title": "watchResourceV1beta1DeviceClassList",
      "summary": "watch individual changes to a list of DeviceClass. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta1/watch/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/watch/deviceclasses",
        "operationId": "watchResourceV1beta1DeviceClassList",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/watch/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/watch/deviceclasses/{name}",
      "type": "api_path",
      "title": "watchResourceV1beta1DeviceClass",
      "summary": "watch changes to an object of kind DeviceClass. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1beta1/watch/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/watch/deviceclasses/{name}",
        "operationId": "watchResourceV1beta1DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/watch/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "watchResourceV1beta1NamespacedResourceClaimList",
      "summary": "watch individual changes to a list of ResourceClaim. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaims",
        "operationId": "watchResourceV1beta1NamespacedResourceClaimList",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "watchResourceV1beta1NamespacedResourceClaim",
      "summary": "watch changes to an object of kind ResourceClaim. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "watchResourceV1beta1NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "watchResourceV1beta1NamespacedResourceClaimTemplateList",
      "summary": "watch individual changes to a list of ResourceClaimTemplate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "watchResourceV1beta1NamespacedResourceClaimTemplateList",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "watchResourceV1beta1NamespacedResourceClaimTemplate",
      "summary": "watch changes to an object of kind ResourceClaimTemplate. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "watchResourceV1beta1NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/watch/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/watch/resourceclaims",
      "type": "api_path",
      "title": "watchResourceV1beta1ResourceClaimListForAllNamespaces",
      "summary": "watch individual changes to a list of ResourceClaim. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta1/watch/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/watch/resourceclaims",
        "operationId": "watchResourceV1beta1ResourceClaimListForAllNamespaces",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/watch/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/watch/resourceclaimtemplates",
      "type": "api_path",
      "title": "watchResourceV1beta1ResourceClaimTemplateListForAllNamespaces",
      "summary": "watch individual changes to a list of ResourceClaimTemplate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta1/watch/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/watch/resourceclaimtemplates",
        "operationId": "watchResourceV1beta1ResourceClaimTemplateListForAllNamespaces",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/watch/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/watch/resourceslices",
      "type": "api_path",
      "title": "watchResourceV1beta1ResourceSliceList",
      "summary": "watch individual changes to a list of ResourceSlice. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta1/watch/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/watch/resourceslices",
        "operationId": "watchResourceV1beta1ResourceSliceList",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/watch/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta1/watch/resourceslices/{name}",
      "type": "api_path",
      "title": "watchResourceV1beta1ResourceSlice",
      "summary": "watch changes to an object of kind ResourceSlice. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1beta1/watch/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta1/watch/resourceslices/{name}",
        "operationId": "watchResourceV1beta1ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/watch/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/",
      "type": "api_path",
      "title": "getResourceV1beta2APIResources",
      "summary": "get available resources",
      "body": "GET /apis/resource.k8s.io/v1beta2/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/",
        "operationId": "getResourceV1beta2APIResources",
        "kind": "V1beta2"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta2/deviceclasses",
      "type": "api_path",
      "title": "deleteResourceV1beta2CollectionDeviceClass",
      "summary": "delete collection of DeviceClass",
      "body": "DELETE /apis/resource.k8s.io/v1beta2/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta2/deviceclasses",
        "operationId": "deleteResourceV1beta2CollectionDeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/deviceclasses",
      "type": "api_path",
      "title": "listResourceV1beta2DeviceClass",
      "summary": "list or watch objects of kind DeviceClass",
      "body": "GET /apis/resource.k8s.io/v1beta2/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/deviceclasses",
        "operationId": "listResourceV1beta2DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1beta2/deviceclasses",
      "type": "api_path",
      "title": "createResourceV1beta2DeviceClass",
      "summary": "create a DeviceClass",
      "body": "POST /apis/resource.k8s.io/v1beta2/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1beta2/deviceclasses",
        "operationId": "createResourceV1beta2DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
      "type": "api_path",
      "title": "deleteResourceV1beta2DeviceClass",
      "summary": "delete a DeviceClass",
      "body": "DELETE /apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
        "operationId": "deleteResourceV1beta2DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
      "type": "api_path",
      "title": "readResourceV1beta2DeviceClass",
      "summary": "read the specified DeviceClass",
      "body": "GET /apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
        "operationId": "readResourceV1beta2DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
      "type": "api_path",
      "title": "patchResourceV1beta2DeviceClass",
      "summary": "partially update the specified DeviceClass",
      "body": "PATCH /apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
        "operationId": "patchResourceV1beta2DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
      "type": "api_path",
      "title": "replaceResourceV1beta2DeviceClass",
      "summary": "replace the specified DeviceClass",
      "body": "PUT /apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta2/deviceclasses/{name}",
        "operationId": "replaceResourceV1beta2DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta2/devicetaintrules",
      "type": "api_path",
      "title": "deleteResourceV1beta2CollectionDeviceTaintRule",
      "summary": "delete collection of DeviceTaintRule",
      "body": "DELETE /apis/resource.k8s.io/v1beta2/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta2/devicetaintrules",
        "operationId": "deleteResourceV1beta2CollectionDeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/devicetaintrules",
      "type": "api_path",
      "title": "listResourceV1beta2DeviceTaintRule",
      "summary": "list or watch objects of kind DeviceTaintRule",
      "body": "GET /apis/resource.k8s.io/v1beta2/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/devicetaintrules",
        "operationId": "listResourceV1beta2DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1beta2/devicetaintrules",
      "type": "api_path",
      "title": "createResourceV1beta2DeviceTaintRule",
      "summary": "create a DeviceTaintRule",
      "body": "POST /apis/resource.k8s.io/v1beta2/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1beta2/devicetaintrules",
        "operationId": "createResourceV1beta2DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
      "type": "api_path",
      "title": "deleteResourceV1beta2DeviceTaintRule",
      "summary": "delete a DeviceTaintRule",
      "body": "DELETE /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
        "operationId": "deleteResourceV1beta2DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
      "type": "api_path",
      "title": "readResourceV1beta2DeviceTaintRule",
      "summary": "read the specified DeviceTaintRule",
      "body": "GET /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
        "operationId": "readResourceV1beta2DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
      "type": "api_path",
      "title": "patchResourceV1beta2DeviceTaintRule",
      "summary": "partially update the specified DeviceTaintRule",
      "body": "PATCH /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
        "operationId": "patchResourceV1beta2DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
      "type": "api_path",
      "title": "replaceResourceV1beta2DeviceTaintRule",
      "summary": "replace the specified DeviceTaintRule",
      "body": "PUT /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}",
        "operationId": "replaceResourceV1beta2DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
      "type": "api_path",
      "title": "readResourceV1beta2DeviceTaintRuleStatus",
      "summary": "read status of the specified DeviceTaintRule",
      "body": "GET /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
        "operationId": "readResourceV1beta2DeviceTaintRuleStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
      "type": "api_path",
      "title": "patchResourceV1beta2DeviceTaintRuleStatus",
      "summary": "partially update status of the specified DeviceTaintRule",
      "body": "PATCH /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
        "operationId": "patchResourceV1beta2DeviceTaintRuleStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
      "type": "api_path",
      "title": "replaceResourceV1beta2DeviceTaintRuleStatus",
      "summary": "replace status of the specified DeviceTaintRule",
      "body": "PUT /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
        "operationId": "replaceResourceV1beta2DeviceTaintRuleStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "deleteResourceV1beta2CollectionNamespacedResourceClaim",
      "summary": "delete collection of ResourceClaim",
      "body": "DELETE /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims",
        "operationId": "deleteResourceV1beta2CollectionNamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "listResourceV1beta2NamespacedResourceClaim",
      "summary": "list or watch objects of kind ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims",
        "operationId": "listResourceV1beta2NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "createResourceV1beta2NamespacedResourceClaim",
      "summary": "create a ResourceClaim",
      "body": "POST /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims",
        "operationId": "createResourceV1beta2NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "deleteResourceV1beta2NamespacedResourceClaim",
      "summary": "delete a ResourceClaim",
      "body": "DELETE /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "deleteResourceV1beta2NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "readResourceV1beta2NamespacedResourceClaim",
      "summary": "read the specified ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "readResourceV1beta2NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "patchResourceV1beta2NamespacedResourceClaim",
      "summary": "partially update the specified ResourceClaim",
      "body": "PATCH /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "patchResourceV1beta2NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "replaceResourceV1beta2NamespacedResourceClaim",
      "summary": "replace the specified ResourceClaim",
      "body": "PUT /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "replaceResourceV1beta2NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
      "type": "api_path",
      "title": "readResourceV1beta2NamespacedResourceClaimStatus",
      "summary": "read status of the specified ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
        "operationId": "readResourceV1beta2NamespacedResourceClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
      "type": "api_path",
      "title": "patchResourceV1beta2NamespacedResourceClaimStatus",
      "summary": "partially update status of the specified ResourceClaim",
      "body": "PATCH /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
        "operationId": "patchResourceV1beta2NamespacedResourceClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
      "type": "api_path",
      "title": "replaceResourceV1beta2NamespacedResourceClaimStatus",
      "summary": "replace status of the specified ResourceClaim",
      "body": "PUT /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
        "operationId": "replaceResourceV1beta2NamespacedResourceClaimStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "deleteResourceV1beta2CollectionNamespacedResourceClaimTemplate",
      "summary": "delete collection of ResourceClaimTemplate",
      "body": "DELETE /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "deleteResourceV1beta2CollectionNamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "listResourceV1beta2NamespacedResourceClaimTemplate",
      "summary": "list or watch objects of kind ResourceClaimTemplate",
      "body": "GET /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "listResourceV1beta2NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "createResourceV1beta2NamespacedResourceClaimTemplate",
      "summary": "create a ResourceClaimTemplate",
      "body": "POST /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "createResourceV1beta2NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "deleteResourceV1beta2NamespacedResourceClaimTemplate",
      "summary": "delete a ResourceClaimTemplate",
      "body": "DELETE /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "deleteResourceV1beta2NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "readResourceV1beta2NamespacedResourceClaimTemplate",
      "summary": "read the specified ResourceClaimTemplate",
      "body": "GET /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "readResourceV1beta2NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "patchResourceV1beta2NamespacedResourceClaimTemplate",
      "summary": "partially update the specified ResourceClaimTemplate",
      "body": "PATCH /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "patchResourceV1beta2NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "replaceResourceV1beta2NamespacedResourceClaimTemplate",
      "summary": "replace the specified ResourceClaimTemplate",
      "body": "PUT /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "replaceResourceV1beta2NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/resourceclaims",
      "type": "api_path",
      "title": "listResourceV1beta2ResourceClaimForAllNamespaces",
      "summary": "list or watch objects of kind ResourceClaim",
      "body": "GET /apis/resource.k8s.io/v1beta2/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/resourceclaims",
        "operationId": "listResourceV1beta2ResourceClaimForAllNamespaces",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/resourceclaimtemplates",
      "type": "api_path",
      "title": "listResourceV1beta2ResourceClaimTemplateForAllNamespaces",
      "summary": "list or watch objects of kind ResourceClaimTemplate",
      "body": "GET /apis/resource.k8s.io/v1beta2/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/resourceclaimtemplates",
        "operationId": "listResourceV1beta2ResourceClaimTemplateForAllNamespaces",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta2/resourceslices",
      "type": "api_path",
      "title": "deleteResourceV1beta2CollectionResourceSlice",
      "summary": "delete collection of ResourceSlice",
      "body": "DELETE /apis/resource.k8s.io/v1beta2/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta2/resourceslices",
        "operationId": "deleteResourceV1beta2CollectionResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/resourceslices",
      "type": "api_path",
      "title": "listResourceV1beta2ResourceSlice",
      "summary": "list or watch objects of kind ResourceSlice",
      "body": "GET /apis/resource.k8s.io/v1beta2/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/resourceslices",
        "operationId": "listResourceV1beta2ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/resource.k8s.io/v1beta2/resourceslices",
      "type": "api_path",
      "title": "createResourceV1beta2ResourceSlice",
      "summary": "create a ResourceSlice",
      "body": "POST /apis/resource.k8s.io/v1beta2/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/resource.k8s.io/v1beta2/resourceslices",
        "operationId": "createResourceV1beta2ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/resource.k8s.io/v1beta2/resourceslices/{name}",
      "type": "api_path",
      "title": "deleteResourceV1beta2ResourceSlice",
      "summary": "delete a ResourceSlice",
      "body": "DELETE /apis/resource.k8s.io/v1beta2/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/resource.k8s.io/v1beta2/resourceslices/{name}",
        "operationId": "deleteResourceV1beta2ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/resourceslices/{name}",
      "type": "api_path",
      "title": "readResourceV1beta2ResourceSlice",
      "summary": "read the specified ResourceSlice",
      "body": "GET /apis/resource.k8s.io/v1beta2/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/resourceslices/{name}",
        "operationId": "readResourceV1beta2ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/resource.k8s.io/v1beta2/resourceslices/{name}",
      "type": "api_path",
      "title": "patchResourceV1beta2ResourceSlice",
      "summary": "partially update the specified ResourceSlice",
      "body": "PATCH /apis/resource.k8s.io/v1beta2/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/resource.k8s.io/v1beta2/resourceslices/{name}",
        "operationId": "patchResourceV1beta2ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/resource.k8s.io/v1beta2/resourceslices/{name}",
      "type": "api_path",
      "title": "replaceResourceV1beta2ResourceSlice",
      "summary": "replace the specified ResourceSlice",
      "body": "PUT /apis/resource.k8s.io/v1beta2/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/resource.k8s.io/v1beta2/resourceslices/{name}",
        "operationId": "replaceResourceV1beta2ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/deviceclasses",
      "type": "api_path",
      "title": "watchResourceV1beta2DeviceClassList",
      "summary": "watch individual changes to a list of DeviceClass. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/deviceclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/deviceclasses",
        "operationId": "watchResourceV1beta2DeviceClassList",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/deviceclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/deviceclasses/{name}",
      "type": "api_path",
      "title": "watchResourceV1beta2DeviceClass",
      "summary": "watch changes to an object of kind DeviceClass. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/deviceclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/deviceclasses/{name}",
        "operationId": "watchResourceV1beta2DeviceClass",
        "kind": "Deviceclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/deviceclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/devicetaintrules",
      "type": "api_path",
      "title": "watchResourceV1beta2DeviceTaintRuleList",
      "summary": "watch individual changes to a list of DeviceTaintRule. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/devicetaintrules",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/devicetaintrules",
        "operationId": "watchResourceV1beta2DeviceTaintRuleList",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/devicetaintrules"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/devicetaintrules/{name}",
      "type": "api_path",
      "title": "watchResourceV1beta2DeviceTaintRule",
      "summary": "watch changes to an object of kind DeviceTaintRule. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/devicetaintrules/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/devicetaintrules/{name}",
        "operationId": "watchResourceV1beta2DeviceTaintRule",
        "kind": "Devicetaintrules"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/devicetaintrules/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaims",
      "type": "api_path",
      "title": "watchResourceV1beta2NamespacedResourceClaimList",
      "summary": "watch individual changes to a list of ResourceClaim. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaims",
        "operationId": "watchResourceV1beta2NamespacedResourceClaimList",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaims/{name}",
      "type": "api_path",
      "title": "watchResourceV1beta2NamespacedResourceClaim",
      "summary": "watch changes to an object of kind ResourceClaim. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaims/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaims/{name}",
        "operationId": "watchResourceV1beta2NamespacedResourceClaim",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaims/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaimtemplates",
      "type": "api_path",
      "title": "watchResourceV1beta2NamespacedResourceClaimTemplateList",
      "summary": "watch individual changes to a list of ResourceClaimTemplate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaimtemplates",
        "operationId": "watchResourceV1beta2NamespacedResourceClaimTemplateList",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "type": "api_path",
      "title": "watchResourceV1beta2NamespacedResourceClaimTemplate",
      "summary": "watch changes to an object of kind ResourceClaimTemplate. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaimtemplates/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaimtemplates/{name}",
        "operationId": "watchResourceV1beta2NamespacedResourceClaimTemplate",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/namespaces/{namespace}/resourceclaimtemplates/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/resourceclaims",
      "type": "api_path",
      "title": "watchResourceV1beta2ResourceClaimListForAllNamespaces",
      "summary": "watch individual changes to a list of ResourceClaim. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/resourceclaims",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/resourceclaims",
        "operationId": "watchResourceV1beta2ResourceClaimListForAllNamespaces",
        "kind": "Resourceclaims"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/resourceclaims"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/resourceclaimtemplates",
      "type": "api_path",
      "title": "watchResourceV1beta2ResourceClaimTemplateListForAllNamespaces",
      "summary": "watch individual changes to a list of ResourceClaimTemplate. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/resourceclaimtemplates",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/resourceclaimtemplates",
        "operationId": "watchResourceV1beta2ResourceClaimTemplateListForAllNamespaces",
        "kind": "Resourceclaimtemplates"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/resourceclaimtemplates"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/resourceslices",
      "type": "api_path",
      "title": "watchResourceV1beta2ResourceSliceList",
      "summary": "watch individual changes to a list of ResourceSlice. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/resourceslices",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/resourceslices",
        "operationId": "watchResourceV1beta2ResourceSliceList",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/resourceslices"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/resource.k8s.io/v1beta2/watch/resourceslices/{name}",
      "type": "api_path",
      "title": "watchResourceV1beta2ResourceSlice",
      "summary": "watch changes to an object of kind ResourceSlice. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/resource.k8s.io/v1beta2/watch/resourceslices/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/resource.k8s.io/v1beta2/watch/resourceslices/{name}",
        "operationId": "watchResourceV1beta2ResourceSlice",
        "kind": "Resourceslices"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/watch/resourceslices/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/",
      "type": "api_path",
      "title": "getSchedulingAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/scheduling.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/",
        "operationId": "getSchedulingAPIGroup",
        "kind": "Scheduling"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1/",
      "type": "api_path",
      "title": "getSchedulingV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/scheduling.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1/",
        "operationId": "getSchedulingV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/scheduling.k8s.io/v1/priorityclasses",
      "type": "api_path",
      "title": "deleteSchedulingV1CollectionPriorityClass",
      "summary": "delete collection of PriorityClass",
      "body": "DELETE /apis/scheduling.k8s.io/v1/priorityclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/scheduling.k8s.io/v1/priorityclasses",
        "operationId": "deleteSchedulingV1CollectionPriorityClass",
        "kind": "Priorityclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1/priorityclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1/priorityclasses",
      "type": "api_path",
      "title": "listSchedulingV1PriorityClass",
      "summary": "list or watch objects of kind PriorityClass",
      "body": "GET /apis/scheduling.k8s.io/v1/priorityclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1/priorityclasses",
        "operationId": "listSchedulingV1PriorityClass",
        "kind": "Priorityclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1/priorityclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/scheduling.k8s.io/v1/priorityclasses",
      "type": "api_path",
      "title": "createSchedulingV1PriorityClass",
      "summary": "create a PriorityClass",
      "body": "POST /apis/scheduling.k8s.io/v1/priorityclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/scheduling.k8s.io/v1/priorityclasses",
        "operationId": "createSchedulingV1PriorityClass",
        "kind": "Priorityclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1/priorityclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/scheduling.k8s.io/v1/priorityclasses/{name}",
      "type": "api_path",
      "title": "deleteSchedulingV1PriorityClass",
      "summary": "delete a PriorityClass",
      "body": "DELETE /apis/scheduling.k8s.io/v1/priorityclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/scheduling.k8s.io/v1/priorityclasses/{name}",
        "operationId": "deleteSchedulingV1PriorityClass",
        "kind": "Priorityclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1/priorityclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1/priorityclasses/{name}",
      "type": "api_path",
      "title": "readSchedulingV1PriorityClass",
      "summary": "read the specified PriorityClass",
      "body": "GET /apis/scheduling.k8s.io/v1/priorityclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1/priorityclasses/{name}",
        "operationId": "readSchedulingV1PriorityClass",
        "kind": "Priorityclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1/priorityclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/scheduling.k8s.io/v1/priorityclasses/{name}",
      "type": "api_path",
      "title": "patchSchedulingV1PriorityClass",
      "summary": "partially update the specified PriorityClass",
      "body": "PATCH /apis/scheduling.k8s.io/v1/priorityclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/scheduling.k8s.io/v1/priorityclasses/{name}",
        "operationId": "patchSchedulingV1PriorityClass",
        "kind": "Priorityclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1/priorityclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/scheduling.k8s.io/v1/priorityclasses/{name}",
      "type": "api_path",
      "title": "replaceSchedulingV1PriorityClass",
      "summary": "replace the specified PriorityClass",
      "body": "PUT /apis/scheduling.k8s.io/v1/priorityclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/scheduling.k8s.io/v1/priorityclasses/{name}",
        "operationId": "replaceSchedulingV1PriorityClass",
        "kind": "Priorityclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1/priorityclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1/watch/priorityclasses",
      "type": "api_path",
      "title": "watchSchedulingV1PriorityClassList",
      "summary": "watch individual changes to a list of PriorityClass. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/scheduling.k8s.io/v1/watch/priorityclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1/watch/priorityclasses",
        "operationId": "watchSchedulingV1PriorityClassList",
        "kind": "Priorityclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1/watch/priorityclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1/watch/priorityclasses/{name}",
      "type": "api_path",
      "title": "watchSchedulingV1PriorityClass",
      "summary": "watch changes to an object of kind PriorityClass. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/scheduling.k8s.io/v1/watch/priorityclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1/watch/priorityclasses/{name}",
        "operationId": "watchSchedulingV1PriorityClass",
        "kind": "Priorityclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1/watch/priorityclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/",
      "type": "api_path",
      "title": "getSchedulingV1alpha3APIResources",
      "summary": "get available resources",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/",
        "operationId": "getSchedulingV1alpha3APIResources",
        "kind": "V1alpha3"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/compositepodgroups",
      "type": "api_path",
      "title": "listSchedulingV1alpha3CompositePodGroupForAllNamespaces",
      "summary": "list or watch objects of kind CompositePodGroup",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/compositepodgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/compositepodgroups",
        "operationId": "listSchedulingV1alpha3CompositePodGroupForAllNamespaces",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/compositepodgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups",
      "type": "api_path",
      "title": "deleteSchedulingV1alpha3CollectionNamespacedCompositePodGroup",
      "summary": "delete collection of CompositePodGroup",
      "body": "DELETE /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups",
        "operationId": "deleteSchedulingV1alpha3CollectionNamespacedCompositePodGroup",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups",
      "type": "api_path",
      "title": "listSchedulingV1alpha3NamespacedCompositePodGroup",
      "summary": "list or watch objects of kind CompositePodGroup",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups",
        "operationId": "listSchedulingV1alpha3NamespacedCompositePodGroup",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups",
      "type": "api_path",
      "title": "createSchedulingV1alpha3NamespacedCompositePodGroup",
      "summary": "create a CompositePodGroup",
      "body": "POST /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups",
        "operationId": "createSchedulingV1alpha3NamespacedCompositePodGroup",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
      "type": "api_path",
      "title": "deleteSchedulingV1alpha3NamespacedCompositePodGroup",
      "summary": "delete a CompositePodGroup",
      "body": "DELETE /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
        "operationId": "deleteSchedulingV1alpha3NamespacedCompositePodGroup",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
      "type": "api_path",
      "title": "readSchedulingV1alpha3NamespacedCompositePodGroup",
      "summary": "read the specified CompositePodGroup",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
        "operationId": "readSchedulingV1alpha3NamespacedCompositePodGroup",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
      "type": "api_path",
      "title": "patchSchedulingV1alpha3NamespacedCompositePodGroup",
      "summary": "partially update the specified CompositePodGroup",
      "body": "PATCH /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
        "operationId": "patchSchedulingV1alpha3NamespacedCompositePodGroup",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
      "type": "api_path",
      "title": "replaceSchedulingV1alpha3NamespacedCompositePodGroup",
      "summary": "replace the specified CompositePodGroup",
      "body": "PUT /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}",
        "operationId": "replaceSchedulingV1alpha3NamespacedCompositePodGroup",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
      "type": "api_path",
      "title": "readSchedulingV1alpha3NamespacedCompositePodGroupStatus",
      "summary": "read status of the specified CompositePodGroup",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
        "operationId": "readSchedulingV1alpha3NamespacedCompositePodGroupStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
      "type": "api_path",
      "title": "patchSchedulingV1alpha3NamespacedCompositePodGroupStatus",
      "summary": "partially update status of the specified CompositePodGroup",
      "body": "PATCH /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
        "operationId": "patchSchedulingV1alpha3NamespacedCompositePodGroupStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
      "type": "api_path",
      "title": "replaceSchedulingV1alpha3NamespacedCompositePodGroupStatus",
      "summary": "replace status of the specified CompositePodGroup",
      "body": "PUT /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
        "operationId": "replaceSchedulingV1alpha3NamespacedCompositePodGroupStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups",
      "type": "api_path",
      "title": "deleteSchedulingV1alpha3CollectionNamespacedPodGroup",
      "summary": "delete collection of PodGroup",
      "body": "DELETE /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups",
        "operationId": "deleteSchedulingV1alpha3CollectionNamespacedPodGroup",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups",
      "type": "api_path",
      "title": "listSchedulingV1alpha3NamespacedPodGroup",
      "summary": "list or watch objects of kind PodGroup",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups",
        "operationId": "listSchedulingV1alpha3NamespacedPodGroup",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups",
      "type": "api_path",
      "title": "createSchedulingV1alpha3NamespacedPodGroup",
      "summary": "create a PodGroup",
      "body": "POST /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups",
        "operationId": "createSchedulingV1alpha3NamespacedPodGroup",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
      "type": "api_path",
      "title": "deleteSchedulingV1alpha3NamespacedPodGroup",
      "summary": "delete a PodGroup",
      "body": "DELETE /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
        "operationId": "deleteSchedulingV1alpha3NamespacedPodGroup",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
      "type": "api_path",
      "title": "readSchedulingV1alpha3NamespacedPodGroup",
      "summary": "read the specified PodGroup",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
        "operationId": "readSchedulingV1alpha3NamespacedPodGroup",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
      "type": "api_path",
      "title": "patchSchedulingV1alpha3NamespacedPodGroup",
      "summary": "partially update the specified PodGroup",
      "body": "PATCH /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
        "operationId": "patchSchedulingV1alpha3NamespacedPodGroup",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
      "type": "api_path",
      "title": "replaceSchedulingV1alpha3NamespacedPodGroup",
      "summary": "replace the specified PodGroup",
      "body": "PUT /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}",
        "operationId": "replaceSchedulingV1alpha3NamespacedPodGroup",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
      "type": "api_path",
      "title": "readSchedulingV1alpha3NamespacedPodGroupStatus",
      "summary": "read status of the specified PodGroup",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
        "operationId": "readSchedulingV1alpha3NamespacedPodGroupStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
      "type": "api_path",
      "title": "patchSchedulingV1alpha3NamespacedPodGroupStatus",
      "summary": "partially update status of the specified PodGroup",
      "body": "PATCH /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
        "operationId": "patchSchedulingV1alpha3NamespacedPodGroupStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
      "type": "api_path",
      "title": "replaceSchedulingV1alpha3NamespacedPodGroupStatus",
      "summary": "replace status of the specified PodGroup",
      "body": "PUT /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
        "operationId": "replaceSchedulingV1alpha3NamespacedPodGroupStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads",
      "type": "api_path",
      "title": "deleteSchedulingV1alpha3CollectionNamespacedWorkload",
      "summary": "delete collection of Workload",
      "body": "DELETE /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads",
        "operationId": "deleteSchedulingV1alpha3CollectionNamespacedWorkload",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads",
      "type": "api_path",
      "title": "listSchedulingV1alpha3NamespacedWorkload",
      "summary": "list or watch objects of kind Workload",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads",
        "operationId": "listSchedulingV1alpha3NamespacedWorkload",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads",
      "type": "api_path",
      "title": "createSchedulingV1alpha3NamespacedWorkload",
      "summary": "create a Workload",
      "body": "POST /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads",
        "operationId": "createSchedulingV1alpha3NamespacedWorkload",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
      "type": "api_path",
      "title": "deleteSchedulingV1alpha3NamespacedWorkload",
      "summary": "delete a Workload",
      "body": "DELETE /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
        "operationId": "deleteSchedulingV1alpha3NamespacedWorkload",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
      "type": "api_path",
      "title": "readSchedulingV1alpha3NamespacedWorkload",
      "summary": "read the specified Workload",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
        "operationId": "readSchedulingV1alpha3NamespacedWorkload",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
      "type": "api_path",
      "title": "patchSchedulingV1alpha3NamespacedWorkload",
      "summary": "partially update the specified Workload",
      "body": "PATCH /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
        "operationId": "patchSchedulingV1alpha3NamespacedWorkload",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
      "type": "api_path",
      "title": "replaceSchedulingV1alpha3NamespacedWorkload",
      "summary": "replace the specified Workload",
      "body": "PUT /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}",
        "operationId": "replaceSchedulingV1alpha3NamespacedWorkload",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/workloads/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/podgroups",
      "type": "api_path",
      "title": "listSchedulingV1alpha3PodGroupForAllNamespaces",
      "summary": "list or watch objects of kind PodGroup",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/podgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/podgroups",
        "operationId": "listSchedulingV1alpha3PodGroupForAllNamespaces",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/podgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/watch/compositepodgroups",
      "type": "api_path",
      "title": "watchSchedulingV1alpha3CompositePodGroupListForAllNamespaces",
      "summary": "watch individual changes to a list of CompositePodGroup. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/watch/compositepodgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/watch/compositepodgroups",
        "operationId": "watchSchedulingV1alpha3CompositePodGroupListForAllNamespaces",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/watch/compositepodgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/compositepodgroups",
      "type": "api_path",
      "title": "watchSchedulingV1alpha3NamespacedCompositePodGroupList",
      "summary": "watch individual changes to a list of CompositePodGroup. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/compositepodgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/compositepodgroups",
        "operationId": "watchSchedulingV1alpha3NamespacedCompositePodGroupList",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/compositepodgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/compositepodgroups/{name}",
      "type": "api_path",
      "title": "watchSchedulingV1alpha3NamespacedCompositePodGroup",
      "summary": "watch changes to an object of kind CompositePodGroup. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/compositepodgroups/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/compositepodgroups/{name}",
        "operationId": "watchSchedulingV1alpha3NamespacedCompositePodGroup",
        "kind": "Compositepodgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/compositepodgroups/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/podgroups",
      "type": "api_path",
      "title": "watchSchedulingV1alpha3NamespacedPodGroupList",
      "summary": "watch individual changes to a list of PodGroup. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/podgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/podgroups",
        "operationId": "watchSchedulingV1alpha3NamespacedPodGroupList",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/podgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/podgroups/{name}",
      "type": "api_path",
      "title": "watchSchedulingV1alpha3NamespacedPodGroup",
      "summary": "watch changes to an object of kind PodGroup. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/podgroups/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/podgroups/{name}",
        "operationId": "watchSchedulingV1alpha3NamespacedPodGroup",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/podgroups/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/workloads",
      "type": "api_path",
      "title": "watchSchedulingV1alpha3NamespacedWorkloadList",
      "summary": "watch individual changes to a list of Workload. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/workloads",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/workloads",
        "operationId": "watchSchedulingV1alpha3NamespacedWorkloadList",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/workloads"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/workloads/{name}",
      "type": "api_path",
      "title": "watchSchedulingV1alpha3NamespacedWorkload",
      "summary": "watch changes to an object of kind Workload. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/workloads/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/workloads/{name}",
        "operationId": "watchSchedulingV1alpha3NamespacedWorkload",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/watch/namespaces/{namespace}/workloads/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/watch/podgroups",
      "type": "api_path",
      "title": "watchSchedulingV1alpha3PodGroupListForAllNamespaces",
      "summary": "watch individual changes to a list of PodGroup. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/watch/podgroups",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/watch/podgroups",
        "operationId": "watchSchedulingV1alpha3PodGroupListForAllNamespaces",
        "kind": "Podgroups"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/watch/podgroups"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/watch/workloads",
      "type": "api_path",
      "title": "watchSchedulingV1alpha3WorkloadListForAllNamespaces",
      "summary": "watch individual changes to a list of Workload. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/watch/workloads",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/watch/workloads",
        "operationId": "watchSchedulingV1alpha3WorkloadListForAllNamespaces",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/watch/workloads"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/workloads",
      "type": "api_path",
      "title": "listSchedulingV1alpha3WorkloadForAllNamespaces",
      "summary": "list or watch objects of kind Workload",
      "body": "GET /apis/scheduling.k8s.io/v1alpha3/workloads",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/scheduling.k8s.io/v1alpha3/workloads",
        "operationId": "listSchedulingV1alpha3WorkloadForAllNamespaces",
        "kind": "Workloads"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/workloads"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/",
      "type": "api_path",
      "title": "getStorageAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/storage.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/",
        "operationId": "getStorageAPIGroup",
        "kind": "Storage"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/",
      "type": "api_path",
      "title": "getStorageV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/storage.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/",
        "operationId": "getStorageV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/csidrivers",
      "type": "api_path",
      "title": "deleteStorageV1CollectionCSIDriver",
      "summary": "delete collection of CSIDriver",
      "body": "DELETE /apis/storage.k8s.io/v1/csidrivers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/csidrivers",
        "operationId": "deleteStorageV1CollectionCSIDriver",
        "kind": "Csidrivers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csidrivers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/csidrivers",
      "type": "api_path",
      "title": "listStorageV1CSIDriver",
      "summary": "list or watch objects of kind CSIDriver",
      "body": "GET /apis/storage.k8s.io/v1/csidrivers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/csidrivers",
        "operationId": "listStorageV1CSIDriver",
        "kind": "Csidrivers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csidrivers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/storage.k8s.io/v1/csidrivers",
      "type": "api_path",
      "title": "createStorageV1CSIDriver",
      "summary": "create a CSIDriver",
      "body": "POST /apis/storage.k8s.io/v1/csidrivers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/storage.k8s.io/v1/csidrivers",
        "operationId": "createStorageV1CSIDriver",
        "kind": "Csidrivers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csidrivers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/csidrivers/{name}",
      "type": "api_path",
      "title": "deleteStorageV1CSIDriver",
      "summary": "delete a CSIDriver",
      "body": "DELETE /apis/storage.k8s.io/v1/csidrivers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/csidrivers/{name}",
        "operationId": "deleteStorageV1CSIDriver",
        "kind": "Csidrivers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csidrivers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/csidrivers/{name}",
      "type": "api_path",
      "title": "readStorageV1CSIDriver",
      "summary": "read the specified CSIDriver",
      "body": "GET /apis/storage.k8s.io/v1/csidrivers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/csidrivers/{name}",
        "operationId": "readStorageV1CSIDriver",
        "kind": "Csidrivers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csidrivers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storage.k8s.io/v1/csidrivers/{name}",
      "type": "api_path",
      "title": "patchStorageV1CSIDriver",
      "summary": "partially update the specified CSIDriver",
      "body": "PATCH /apis/storage.k8s.io/v1/csidrivers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storage.k8s.io/v1/csidrivers/{name}",
        "operationId": "patchStorageV1CSIDriver",
        "kind": "Csidrivers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csidrivers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storage.k8s.io/v1/csidrivers/{name}",
      "type": "api_path",
      "title": "replaceStorageV1CSIDriver",
      "summary": "replace the specified CSIDriver",
      "body": "PUT /apis/storage.k8s.io/v1/csidrivers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storage.k8s.io/v1/csidrivers/{name}",
        "operationId": "replaceStorageV1CSIDriver",
        "kind": "Csidrivers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csidrivers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/csinodes",
      "type": "api_path",
      "title": "deleteStorageV1CollectionCSINode",
      "summary": "delete collection of CSINode",
      "body": "DELETE /apis/storage.k8s.io/v1/csinodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/csinodes",
        "operationId": "deleteStorageV1CollectionCSINode",
        "kind": "Csinodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csinodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/csinodes",
      "type": "api_path",
      "title": "listStorageV1CSINode",
      "summary": "list or watch objects of kind CSINode",
      "body": "GET /apis/storage.k8s.io/v1/csinodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/csinodes",
        "operationId": "listStorageV1CSINode",
        "kind": "Csinodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csinodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/storage.k8s.io/v1/csinodes",
      "type": "api_path",
      "title": "createStorageV1CSINode",
      "summary": "create a CSINode",
      "body": "POST /apis/storage.k8s.io/v1/csinodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/storage.k8s.io/v1/csinodes",
        "operationId": "createStorageV1CSINode",
        "kind": "Csinodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csinodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/csinodes/{name}",
      "type": "api_path",
      "title": "deleteStorageV1CSINode",
      "summary": "delete a CSINode",
      "body": "DELETE /apis/storage.k8s.io/v1/csinodes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/csinodes/{name}",
        "operationId": "deleteStorageV1CSINode",
        "kind": "Csinodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csinodes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/csinodes/{name}",
      "type": "api_path",
      "title": "readStorageV1CSINode",
      "summary": "read the specified CSINode",
      "body": "GET /apis/storage.k8s.io/v1/csinodes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/csinodes/{name}",
        "operationId": "readStorageV1CSINode",
        "kind": "Csinodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csinodes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storage.k8s.io/v1/csinodes/{name}",
      "type": "api_path",
      "title": "patchStorageV1CSINode",
      "summary": "partially update the specified CSINode",
      "body": "PATCH /apis/storage.k8s.io/v1/csinodes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storage.k8s.io/v1/csinodes/{name}",
        "operationId": "patchStorageV1CSINode",
        "kind": "Csinodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csinodes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storage.k8s.io/v1/csinodes/{name}",
      "type": "api_path",
      "title": "replaceStorageV1CSINode",
      "summary": "replace the specified CSINode",
      "body": "PUT /apis/storage.k8s.io/v1/csinodes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storage.k8s.io/v1/csinodes/{name}",
        "operationId": "replaceStorageV1CSINode",
        "kind": "Csinodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csinodes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/csistoragecapacities",
      "type": "api_path",
      "title": "listStorageV1CSIStorageCapacityForAllNamespaces",
      "summary": "list or watch objects of kind CSIStorageCapacity",
      "body": "GET /apis/storage.k8s.io/v1/csistoragecapacities",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/csistoragecapacities",
        "operationId": "listStorageV1CSIStorageCapacityForAllNamespaces",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/csistoragecapacities"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities",
      "type": "api_path",
      "title": "deleteStorageV1CollectionNamespacedCSIStorageCapacity",
      "summary": "delete collection of CSIStorageCapacity",
      "body": "DELETE /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities",
        "operationId": "deleteStorageV1CollectionNamespacedCSIStorageCapacity",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities",
      "type": "api_path",
      "title": "listStorageV1NamespacedCSIStorageCapacity",
      "summary": "list or watch objects of kind CSIStorageCapacity",
      "body": "GET /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities",
        "operationId": "listStorageV1NamespacedCSIStorageCapacity",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities",
      "type": "api_path",
      "title": "createStorageV1NamespacedCSIStorageCapacity",
      "summary": "create a CSIStorageCapacity",
      "body": "POST /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities",
        "operationId": "createStorageV1NamespacedCSIStorageCapacity",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
      "type": "api_path",
      "title": "deleteStorageV1NamespacedCSIStorageCapacity",
      "summary": "delete a CSIStorageCapacity",
      "body": "DELETE /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
        "operationId": "deleteStorageV1NamespacedCSIStorageCapacity",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
      "type": "api_path",
      "title": "readStorageV1NamespacedCSIStorageCapacity",
      "summary": "read the specified CSIStorageCapacity",
      "body": "GET /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
        "operationId": "readStorageV1NamespacedCSIStorageCapacity",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
      "type": "api_path",
      "title": "patchStorageV1NamespacedCSIStorageCapacity",
      "summary": "partially update the specified CSIStorageCapacity",
      "body": "PATCH /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
        "operationId": "patchStorageV1NamespacedCSIStorageCapacity",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
      "type": "api_path",
      "title": "replaceStorageV1NamespacedCSIStorageCapacity",
      "summary": "replace the specified CSIStorageCapacity",
      "body": "PUT /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}",
        "operationId": "replaceStorageV1NamespacedCSIStorageCapacity",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/storageclasses",
      "type": "api_path",
      "title": "deleteStorageV1CollectionStorageClass",
      "summary": "delete collection of StorageClass",
      "body": "DELETE /apis/storage.k8s.io/v1/storageclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/storageclasses",
        "operationId": "deleteStorageV1CollectionStorageClass",
        "kind": "Storageclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/storageclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/storageclasses",
      "type": "api_path",
      "title": "listStorageV1StorageClass",
      "summary": "list or watch objects of kind StorageClass",
      "body": "GET /apis/storage.k8s.io/v1/storageclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/storageclasses",
        "operationId": "listStorageV1StorageClass",
        "kind": "Storageclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/storageclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/storage.k8s.io/v1/storageclasses",
      "type": "api_path",
      "title": "createStorageV1StorageClass",
      "summary": "create a StorageClass",
      "body": "POST /apis/storage.k8s.io/v1/storageclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/storage.k8s.io/v1/storageclasses",
        "operationId": "createStorageV1StorageClass",
        "kind": "Storageclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/storageclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/storageclasses/{name}",
      "type": "api_path",
      "title": "deleteStorageV1StorageClass",
      "summary": "delete a StorageClass",
      "body": "DELETE /apis/storage.k8s.io/v1/storageclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/storageclasses/{name}",
        "operationId": "deleteStorageV1StorageClass",
        "kind": "Storageclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/storageclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/storageclasses/{name}",
      "type": "api_path",
      "title": "readStorageV1StorageClass",
      "summary": "read the specified StorageClass",
      "body": "GET /apis/storage.k8s.io/v1/storageclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/storageclasses/{name}",
        "operationId": "readStorageV1StorageClass",
        "kind": "Storageclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/storageclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storage.k8s.io/v1/storageclasses/{name}",
      "type": "api_path",
      "title": "patchStorageV1StorageClass",
      "summary": "partially update the specified StorageClass",
      "body": "PATCH /apis/storage.k8s.io/v1/storageclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storage.k8s.io/v1/storageclasses/{name}",
        "operationId": "patchStorageV1StorageClass",
        "kind": "Storageclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/storageclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storage.k8s.io/v1/storageclasses/{name}",
      "type": "api_path",
      "title": "replaceStorageV1StorageClass",
      "summary": "replace the specified StorageClass",
      "body": "PUT /apis/storage.k8s.io/v1/storageclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storage.k8s.io/v1/storageclasses/{name}",
        "operationId": "replaceStorageV1StorageClass",
        "kind": "Storageclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/storageclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/volumeattachments",
      "type": "api_path",
      "title": "deleteStorageV1CollectionVolumeAttachment",
      "summary": "delete collection of VolumeAttachment",
      "body": "DELETE /apis/storage.k8s.io/v1/volumeattachments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/volumeattachments",
        "operationId": "deleteStorageV1CollectionVolumeAttachment",
        "kind": "Volumeattachments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/volumeattachments",
      "type": "api_path",
      "title": "listStorageV1VolumeAttachment",
      "summary": "list or watch objects of kind VolumeAttachment",
      "body": "GET /apis/storage.k8s.io/v1/volumeattachments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/volumeattachments",
        "operationId": "listStorageV1VolumeAttachment",
        "kind": "Volumeattachments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/storage.k8s.io/v1/volumeattachments",
      "type": "api_path",
      "title": "createStorageV1VolumeAttachment",
      "summary": "create a VolumeAttachment",
      "body": "POST /apis/storage.k8s.io/v1/volumeattachments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/storage.k8s.io/v1/volumeattachments",
        "operationId": "createStorageV1VolumeAttachment",
        "kind": "Volumeattachments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/volumeattachments/{name}",
      "type": "api_path",
      "title": "deleteStorageV1VolumeAttachment",
      "summary": "delete a VolumeAttachment",
      "body": "DELETE /apis/storage.k8s.io/v1/volumeattachments/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/volumeattachments/{name}",
        "operationId": "deleteStorageV1VolumeAttachment",
        "kind": "Volumeattachments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/volumeattachments/{name}",
      "type": "api_path",
      "title": "readStorageV1VolumeAttachment",
      "summary": "read the specified VolumeAttachment",
      "body": "GET /apis/storage.k8s.io/v1/volumeattachments/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/volumeattachments/{name}",
        "operationId": "readStorageV1VolumeAttachment",
        "kind": "Volumeattachments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storage.k8s.io/v1/volumeattachments/{name}",
      "type": "api_path",
      "title": "patchStorageV1VolumeAttachment",
      "summary": "partially update the specified VolumeAttachment",
      "body": "PATCH /apis/storage.k8s.io/v1/volumeattachments/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storage.k8s.io/v1/volumeattachments/{name}",
        "operationId": "patchStorageV1VolumeAttachment",
        "kind": "Volumeattachments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storage.k8s.io/v1/volumeattachments/{name}",
      "type": "api_path",
      "title": "replaceStorageV1VolumeAttachment",
      "summary": "replace the specified VolumeAttachment",
      "body": "PUT /apis/storage.k8s.io/v1/volumeattachments/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storage.k8s.io/v1/volumeattachments/{name}",
        "operationId": "replaceStorageV1VolumeAttachment",
        "kind": "Volumeattachments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/volumeattachments/{name}/status",
      "type": "api_path",
      "title": "readStorageV1VolumeAttachmentStatus",
      "summary": "read status of the specified VolumeAttachment",
      "body": "GET /apis/storage.k8s.io/v1/volumeattachments/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/volumeattachments/{name}/status",
        "operationId": "readStorageV1VolumeAttachmentStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storage.k8s.io/v1/volumeattachments/{name}/status",
      "type": "api_path",
      "title": "patchStorageV1VolumeAttachmentStatus",
      "summary": "partially update status of the specified VolumeAttachment",
      "body": "PATCH /apis/storage.k8s.io/v1/volumeattachments/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storage.k8s.io/v1/volumeattachments/{name}/status",
        "operationId": "patchStorageV1VolumeAttachmentStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storage.k8s.io/v1/volumeattachments/{name}/status",
      "type": "api_path",
      "title": "replaceStorageV1VolumeAttachmentStatus",
      "summary": "replace status of the specified VolumeAttachment",
      "body": "PUT /apis/storage.k8s.io/v1/volumeattachments/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storage.k8s.io/v1/volumeattachments/{name}/status",
        "operationId": "replaceStorageV1VolumeAttachmentStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/volumeattributesclasses",
      "type": "api_path",
      "title": "deleteStorageV1CollectionVolumeAttributesClass",
      "summary": "delete collection of VolumeAttributesClass",
      "body": "DELETE /apis/storage.k8s.io/v1/volumeattributesclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/volumeattributesclasses",
        "operationId": "deleteStorageV1CollectionVolumeAttributesClass",
        "kind": "Volumeattributesclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattributesclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/volumeattributesclasses",
      "type": "api_path",
      "title": "listStorageV1VolumeAttributesClass",
      "summary": "list or watch objects of kind VolumeAttributesClass",
      "body": "GET /apis/storage.k8s.io/v1/volumeattributesclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/volumeattributesclasses",
        "operationId": "listStorageV1VolumeAttributesClass",
        "kind": "Volumeattributesclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattributesclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/storage.k8s.io/v1/volumeattributesclasses",
      "type": "api_path",
      "title": "createStorageV1VolumeAttributesClass",
      "summary": "create a VolumeAttributesClass",
      "body": "POST /apis/storage.k8s.io/v1/volumeattributesclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/storage.k8s.io/v1/volumeattributesclasses",
        "operationId": "createStorageV1VolumeAttributesClass",
        "kind": "Volumeattributesclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattributesclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
      "type": "api_path",
      "title": "deleteStorageV1VolumeAttributesClass",
      "summary": "delete a VolumeAttributesClass",
      "body": "DELETE /apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
        "operationId": "deleteStorageV1VolumeAttributesClass",
        "kind": "Volumeattributesclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattributesclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
      "type": "api_path",
      "title": "readStorageV1VolumeAttributesClass",
      "summary": "read the specified VolumeAttributesClass",
      "body": "GET /apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
        "operationId": "readStorageV1VolumeAttributesClass",
        "kind": "Volumeattributesclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattributesclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
      "type": "api_path",
      "title": "patchStorageV1VolumeAttributesClass",
      "summary": "partially update the specified VolumeAttributesClass",
      "body": "PATCH /apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
        "operationId": "patchStorageV1VolumeAttributesClass",
        "kind": "Volumeattributesclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattributesclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
      "type": "api_path",
      "title": "replaceStorageV1VolumeAttributesClass",
      "summary": "replace the specified VolumeAttributesClass",
      "body": "PUT /apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storage.k8s.io/v1/volumeattributesclasses/{name}",
        "operationId": "replaceStorageV1VolumeAttributesClass",
        "kind": "Volumeattributesclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattributesclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/csidrivers",
      "type": "api_path",
      "title": "watchStorageV1CSIDriverList",
      "summary": "watch individual changes to a list of CSIDriver. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/storage.k8s.io/v1/watch/csidrivers",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/csidrivers",
        "operationId": "watchStorageV1CSIDriverList",
        "kind": "Csidrivers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/csidrivers"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/csidrivers/{name}",
      "type": "api_path",
      "title": "watchStorageV1CSIDriver",
      "summary": "watch changes to an object of kind CSIDriver. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/storage.k8s.io/v1/watch/csidrivers/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/csidrivers/{name}",
        "operationId": "watchStorageV1CSIDriver",
        "kind": "Csidrivers"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/csidrivers/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/csinodes",
      "type": "api_path",
      "title": "watchStorageV1CSINodeList",
      "summary": "watch individual changes to a list of CSINode. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/storage.k8s.io/v1/watch/csinodes",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/csinodes",
        "operationId": "watchStorageV1CSINodeList",
        "kind": "Csinodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/csinodes"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/csinodes/{name}",
      "type": "api_path",
      "title": "watchStorageV1CSINode",
      "summary": "watch changes to an object of kind CSINode. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/storage.k8s.io/v1/watch/csinodes/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/csinodes/{name}",
        "operationId": "watchStorageV1CSINode",
        "kind": "Csinodes"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/csinodes/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/csistoragecapacities",
      "type": "api_path",
      "title": "watchStorageV1CSIStorageCapacityListForAllNamespaces",
      "summary": "watch individual changes to a list of CSIStorageCapacity. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/storage.k8s.io/v1/watch/csistoragecapacities",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/csistoragecapacities",
        "operationId": "watchStorageV1CSIStorageCapacityListForAllNamespaces",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/csistoragecapacities"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities",
      "type": "api_path",
      "title": "watchStorageV1NamespacedCSIStorageCapacityList",
      "summary": "watch individual changes to a list of CSIStorageCapacity. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities",
        "operationId": "watchStorageV1NamespacedCSIStorageCapacityList",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities/{name}",
      "type": "api_path",
      "title": "watchStorageV1NamespacedCSIStorageCapacity",
      "summary": "watch changes to an object of kind CSIStorageCapacity. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities/{name}",
        "operationId": "watchStorageV1NamespacedCSIStorageCapacity",
        "kind": "Csistoragecapacities"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/storageclasses",
      "type": "api_path",
      "title": "watchStorageV1StorageClassList",
      "summary": "watch individual changes to a list of StorageClass. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/storage.k8s.io/v1/watch/storageclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/storageclasses",
        "operationId": "watchStorageV1StorageClassList",
        "kind": "Storageclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/storageclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/storageclasses/{name}",
      "type": "api_path",
      "title": "watchStorageV1StorageClass",
      "summary": "watch changes to an object of kind StorageClass. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/storage.k8s.io/v1/watch/storageclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/storageclasses/{name}",
        "operationId": "watchStorageV1StorageClass",
        "kind": "Storageclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/storageclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/volumeattachments",
      "type": "api_path",
      "title": "watchStorageV1VolumeAttachmentList",
      "summary": "watch individual changes to a list of VolumeAttachment. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/storage.k8s.io/v1/watch/volumeattachments",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/volumeattachments",
        "operationId": "watchStorageV1VolumeAttachmentList",
        "kind": "Volumeattachments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/volumeattachments"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/volumeattachments/{name}",
      "type": "api_path",
      "title": "watchStorageV1VolumeAttachment",
      "summary": "watch changes to an object of kind VolumeAttachment. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/storage.k8s.io/v1/watch/volumeattachments/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/volumeattachments/{name}",
        "operationId": "watchStorageV1VolumeAttachment",
        "kind": "Volumeattachments"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/volumeattachments/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/volumeattributesclasses",
      "type": "api_path",
      "title": "watchStorageV1VolumeAttributesClassList",
      "summary": "watch individual changes to a list of VolumeAttributesClass. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/storage.k8s.io/v1/watch/volumeattributesclasses",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/volumeattributesclasses",
        "operationId": "watchStorageV1VolumeAttributesClassList",
        "kind": "Volumeattributesclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/volumeattributesclasses"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storage.k8s.io/v1/watch/volumeattributesclasses/{name}",
      "type": "api_path",
      "title": "watchStorageV1VolumeAttributesClass",
      "summary": "watch changes to an object of kind VolumeAttributesClass. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/storage.k8s.io/v1/watch/volumeattributesclasses/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis",
        "storage"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storage.k8s.io/v1/watch/volumeattributesclasses/{name}",
        "operationId": "watchStorageV1VolumeAttributesClass",
        "kind": "Volumeattributesclasses"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/watch/volumeattributesclasses/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/",
      "type": "api_path",
      "title": "getStoragemigrationAPIGroup",
      "summary": "get information of a group",
      "body": "GET /apis/storagemigration.k8s.io/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/",
        "operationId": "getStoragemigrationAPIGroup",
        "kind": "Storagemigration"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1/",
      "type": "api_path",
      "title": "getStoragemigrationV1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/storagemigration.k8s.io/v1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1/",
        "operationId": "getStoragemigrationV1APIResources",
        "kind": "V1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storagemigration.k8s.io/v1/storageversionmigrations",
      "type": "api_path",
      "title": "deleteStoragemigrationV1CollectionStorageVersionMigration",
      "summary": "delete collection of StorageVersionMigration",
      "body": "DELETE /apis/storagemigration.k8s.io/v1/storageversionmigrations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storagemigration.k8s.io/v1/storageversionmigrations",
        "operationId": "deleteStoragemigrationV1CollectionStorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1/storageversionmigrations",
      "type": "api_path",
      "title": "listStoragemigrationV1StorageVersionMigration",
      "summary": "list or watch objects of kind StorageVersionMigration",
      "body": "GET /apis/storagemigration.k8s.io/v1/storageversionmigrations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1/storageversionmigrations",
        "operationId": "listStoragemigrationV1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/storagemigration.k8s.io/v1/storageversionmigrations",
      "type": "api_path",
      "title": "createStoragemigrationV1StorageVersionMigration",
      "summary": "create a StorageVersionMigration",
      "body": "POST /apis/storagemigration.k8s.io/v1/storageversionmigrations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/storagemigration.k8s.io/v1/storageversionmigrations",
        "operationId": "createStoragemigrationV1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
      "type": "api_path",
      "title": "deleteStoragemigrationV1StorageVersionMigration",
      "summary": "delete a StorageVersionMigration",
      "body": "DELETE /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
        "operationId": "deleteStoragemigrationV1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
      "type": "api_path",
      "title": "readStoragemigrationV1StorageVersionMigration",
      "summary": "read the specified StorageVersionMigration",
      "body": "GET /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
        "operationId": "readStoragemigrationV1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
      "type": "api_path",
      "title": "patchStoragemigrationV1StorageVersionMigration",
      "summary": "partially update the specified StorageVersionMigration",
      "body": "PATCH /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
        "operationId": "patchStoragemigrationV1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
      "type": "api_path",
      "title": "replaceStoragemigrationV1StorageVersionMigration",
      "summary": "replace the specified StorageVersionMigration",
      "body": "PUT /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}",
        "operationId": "replaceStoragemigrationV1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
      "type": "api_path",
      "title": "readStoragemigrationV1StorageVersionMigrationStatus",
      "summary": "read status of the specified StorageVersionMigration",
      "body": "GET /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
        "operationId": "readStoragemigrationV1StorageVersionMigrationStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
      "type": "api_path",
      "title": "patchStoragemigrationV1StorageVersionMigrationStatus",
      "summary": "partially update status of the specified StorageVersionMigration",
      "body": "PATCH /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
        "operationId": "patchStoragemigrationV1StorageVersionMigrationStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
      "type": "api_path",
      "title": "replaceStoragemigrationV1StorageVersionMigrationStatus",
      "summary": "replace status of the specified StorageVersionMigration",
      "body": "PUT /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
        "operationId": "replaceStoragemigrationV1StorageVersionMigrationStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1/watch/storageversionmigrations",
      "type": "api_path",
      "title": "watchStoragemigrationV1StorageVersionMigrationList",
      "summary": "watch individual changes to a list of StorageVersionMigration. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/storagemigration.k8s.io/v1/watch/storageversionmigrations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1/watch/storageversionmigrations",
        "operationId": "watchStoragemigrationV1StorageVersionMigrationList",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/watch/storageversionmigrations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1/watch/storageversionmigrations/{name}",
      "type": "api_path",
      "title": "watchStoragemigrationV1StorageVersionMigration",
      "summary": "watch changes to an object of kind StorageVersionMigration. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/storagemigration.k8s.io/v1/watch/storageversionmigrations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1/watch/storageversionmigrations/{name}",
        "operationId": "watchStoragemigrationV1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/watch/storageversionmigrations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1beta1/",
      "type": "api_path",
      "title": "getStoragemigrationV1beta1APIResources",
      "summary": "get available resources",
      "body": "GET /apis/storagemigration.k8s.io/v1beta1/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1beta1/",
        "operationId": "getStoragemigrationV1beta1APIResources",
        "kind": "V1beta1"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations",
      "type": "api_path",
      "title": "deleteStoragemigrationV1beta1CollectionStorageVersionMigration",
      "summary": "delete collection of StorageVersionMigration",
      "body": "DELETE /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations",
        "operationId": "deleteStoragemigrationV1beta1CollectionStorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations",
      "type": "api_path",
      "title": "listStoragemigrationV1beta1StorageVersionMigration",
      "summary": "list or watch objects of kind StorageVersionMigration",
      "body": "GET /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations",
        "operationId": "listStoragemigrationV1beta1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:post /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations",
      "type": "api_path",
      "title": "createStoragemigrationV1beta1StorageVersionMigration",
      "summary": "create a StorageVersionMigration",
      "body": "POST /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "post",
        "path": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations",
        "operationId": "createStoragemigrationV1beta1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:delete /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
      "type": "api_path",
      "title": "deleteStoragemigrationV1beta1StorageVersionMigration",
      "summary": "delete a StorageVersionMigration",
      "body": "DELETE /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "delete",
        "path": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
        "operationId": "deleteStoragemigrationV1beta1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
      "type": "api_path",
      "title": "readStoragemigrationV1beta1StorageVersionMigration",
      "summary": "read the specified StorageVersionMigration",
      "body": "GET /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
        "operationId": "readStoragemigrationV1beta1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
      "type": "api_path",
      "title": "patchStoragemigrationV1beta1StorageVersionMigration",
      "summary": "partially update the specified StorageVersionMigration",
      "body": "PATCH /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
        "operationId": "patchStoragemigrationV1beta1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
      "type": "api_path",
      "title": "replaceStoragemigrationV1beta1StorageVersionMigration",
      "summary": "replace the specified StorageVersionMigration",
      "body": "PUT /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}",
        "operationId": "replaceStoragemigrationV1beta1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
      "type": "api_path",
      "title": "readStoragemigrationV1beta1StorageVersionMigrationStatus",
      "summary": "read status of the specified StorageVersionMigration",
      "body": "GET /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
        "operationId": "readStoragemigrationV1beta1StorageVersionMigrationStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:patch /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
      "type": "api_path",
      "title": "patchStoragemigrationV1beta1StorageVersionMigrationStatus",
      "summary": "partially update status of the specified StorageVersionMigration",
      "body": "PATCH /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "patch",
        "path": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
        "operationId": "patchStoragemigrationV1beta1StorageVersionMigrationStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:put /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
      "type": "api_path",
      "title": "replaceStoragemigrationV1beta1StorageVersionMigrationStatus",
      "summary": "replace status of the specified StorageVersionMigration",
      "body": "PUT /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "put",
        "path": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
        "operationId": "replaceStoragemigrationV1beta1StorageVersionMigrationStatus",
        "kind": "Status"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1beta1/watch/storageversionmigrations",
      "type": "api_path",
      "title": "watchStoragemigrationV1beta1StorageVersionMigrationList",
      "summary": "watch individual changes to a list of StorageVersionMigration. deprecated: use the 'watch' parameter with a list operation instead.",
      "body": "GET /apis/storagemigration.k8s.io/v1beta1/watch/storageversionmigrations",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1beta1/watch/storageversionmigrations",
        "operationId": "watchStoragemigrationV1beta1StorageVersionMigrationList",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/watch/storageversionmigrations"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /apis/storagemigration.k8s.io/v1beta1/watch/storageversionmigrations/{name}",
      "type": "api_path",
      "title": "watchStoragemigrationV1beta1StorageVersionMigration",
      "summary": "watch changes to an object of kind StorageVersionMigration. deprecated: use the 'watch' parameter with a list operation instead, filtered to a single item with the 'fieldSelector' parameter.",
      "body": "GET /apis/storagemigration.k8s.io/v1beta1/watch/storageversionmigrations/{name}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "apis"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/apis/storagemigration.k8s.io/v1beta1/watch/storageversionmigrations/{name}",
        "operationId": "watchStoragemigrationV1beta1StorageVersionMigration",
        "kind": "Storageversionmigrations"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/watch/storageversionmigrations/{name}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /logs/",
      "type": "api_path",
      "title": "logFileListHandler",
      "summary": "",
      "body": "GET /logs/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/logs/",
        "operationId": "logFileListHandler",
        "kind": "Logs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/logs/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /logs/{logpath}",
      "type": "api_path",
      "title": "logFileHandler",
      "summary": "",
      "body": "GET /logs/{logpath}",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/logs/{logpath}",
        "operationId": "logFileHandler",
        "kind": "Logs"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/logs/{logpath}"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /openid/v1/jwks/",
      "type": "api_path",
      "title": "getServiceAccountIssuerOpenIDKeyset",
      "summary": "get service account issuer OpenID JSON Web Key Set (contains public token verification keys)",
      "body": "GET /openid/v1/jwks/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/openid/v1/jwks/",
        "operationId": "getServiceAccountIssuerOpenIDKeyset",
        "kind": "Jwks"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/openid/v1/jwks/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "apipath:get /version/",
      "type": "api_path",
      "title": "getCodeVersion",
      "summary": "get the version information for this server",
      "body": "GET /version/",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "core"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "method": "get",
        "path": "/version/",
        "operationId": "getCodeVersion",
        "kind": "Version"
      },
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/version/"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:pods",
      "type": "role",
      "title": "permissions:pods",
      "summary": "RBAC permissions to manage 'pods' (group=core).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "pods",
        "apiGroup": "",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'pods' permits get,list,watch,create,update,patch,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:services",
      "type": "role",
      "title": "permissions:services",
      "summary": "RBAC permissions to manage 'services' (group=core).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "core",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "services",
        "apiGroup": "",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'services' permits get,list,watch,create,update,patch,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:deployments",
      "type": "role",
      "title": "permissions:deployments",
      "summary": "RBAC permissions to manage 'deployments' (group=apps).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "apps",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "deployments",
        "apiGroup": "apps",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'deployments' permits get,list,watch,create,update,patch,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:replicasets",
      "type": "role",
      "title": "permissions:replicasets",
      "summary": "RBAC permissions to manage 'replicasets' (group=apps).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "apps",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "replicasets",
        "apiGroup": "apps",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'replicasets' permits get,list,watch,create,update,patch,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:statefulsets",
      "type": "role",
      "title": "permissions:statefulsets",
      "summary": "RBAC permissions to manage 'statefulsets' (group=apps).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "apps",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "statefulsets",
        "apiGroup": "apps",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'statefulsets' permits get,list,watch,create,update,patch,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:daemonsets",
      "type": "role",
      "title": "permissions:daemonsets",
      "summary": "RBAC permissions to manage 'daemonsets' (group=apps).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "apps",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "daemonsets",
        "apiGroup": "apps",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'daemonsets' permits get,list,watch,create,update,patch,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:configmaps",
      "type": "role",
      "title": "permissions:configmaps",
      "summary": "RBAC permissions to manage 'configmaps' (group=core).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "configmaps",
        "apiGroup": "",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'configmaps' permits get,list,watch,create,update,patch,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:secrets",
      "type": "role",
      "title": "permissions:secrets",
      "summary": "RBAC permissions to manage 'secrets' (group=core).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "secrets",
        "apiGroup": "",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'secrets' permits get,list,watch,create,update,patch,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:namespaces",
      "type": "role",
      "title": "permissions:namespaces",
      "summary": "RBAC permissions to manage 'namespaces' (group=core).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "namespaces",
        "apiGroup": "",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'namespaces' permits get,list,watch,create,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:nodes",
      "type": "role",
      "title": "permissions:nodes",
      "summary": "RBAC permissions to manage 'nodes' (group=core).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "core",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "nodes",
        "apiGroup": "",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete",
          "cordondrain"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'nodes' permits get,list,watch,create,update,patch,delete,cordondrain"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:roles",
      "type": "role",
      "title": "permissions:roles",
      "summary": "RBAC permissions to manage 'roles' (group=rbac.authorization.k8s.io).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "rbac.authorization.k8s.io",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "roles",
        "apiGroup": "rbac.authorization.k8s.io",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete",
          "bind"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'roles' permits get,list,watch,create,update,patch,delete,bind"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:rolebindings",
      "type": "role",
      "title": "permissions:rolebindings",
      "summary": "RBAC permissions to manage 'rolebindings' (group=rbac.authorization.k8s.io).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "rbac.authorization.k8s.io",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "rolebindings",
        "apiGroup": "rbac.authorization.k8s.io",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete",
          "bind"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'rolebindings' permits get,list,watch,create,update,patch,delete,bind"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:clusterroles",
      "type": "role",
      "title": "permissions:clusterroles",
      "summary": "RBAC permissions to manage 'clusterroles' (group=rbac.authorization.k8s.io).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "rbac.authorization.k8s.io",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "clusterroles",
        "apiGroup": "rbac.authorization.k8s.io",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete",
          "bind"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'clusterroles' permits get,list,watch,create,update,patch,delete,bind"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:clusterrolebindings",
      "type": "role",
      "title": "permissions:clusterrolebindings",
      "summary": "RBAC permissions to manage 'clusterrolebindings' (group=rbac.authorization.k8s.io).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "rbac.authorization.k8s.io",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "clusterrolebindings",
        "apiGroup": "rbac.authorization.k8s.io",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete",
          "bind"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'clusterrolebindings' permits get,list,watch,create,update,patch,delete,bind"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:ingresses",
      "type": "role",
      "title": "permissions:ingresses",
      "summary": "RBAC permissions to manage 'ingresses' (group=networking.k8s.io).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "networking.k8s.io",
        "networking",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "ingresses",
        "apiGroup": "networking.k8s.io",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'ingresses' permits get,list,watch,create,update,patch,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "role:customresourcedefinitions",
      "type": "role",
      "title": "permissions:customresourcedefinitions",
      "summary": "RBAC permissions to manage 'customresourcedefinitions' (group=apiextensions.k8s.io).",
      "body": "",
      "body_trimmed": false,
      "version": "unknown",
      "section": null,
      "tags": [
        "rbac",
        "apiextensions.k8s.io",
        "security"
      ],
      "aliases": [],
      "url": null,
      "meta": {
        "resource": "customresourcedefinitions",
        "apiGroup": "apiextensions.k8s.io",
        "verbs": [
          "get",
          "list",
          "watch",
          "create",
          "update",
          "patch",
          "delete"
        ]
      },
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "resource 'customresourcedefinitions' permits get,list,watch,create,update,patch,delete"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "ctrl:kube-apiserver",
      "type": "controller",
      "title": "kube-apiserver",
      "summary": "Control-plane component: kube-apiserver.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "control-plane"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "control plane component kube-apiserver"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "ctrl:kube-scheduler",
      "type": "controller",
      "title": "kube-scheduler",
      "summary": "Control-plane component: kube-scheduler.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "control-plane"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "control plane component kube-scheduler"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "ctrl:kube-controller-manager",
      "type": "controller",
      "title": "kube-controller-manager",
      "summary": "Control-plane component: kube-controller-manager.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "control-plane"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "control plane component kube-controller-manager"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "ctrl:kubelet",
      "type": "controller",
      "title": "kubelet",
      "summary": "Control-plane component: kubelet.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "control-plane"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "control plane component kubelet"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "ctrl:kube-proxy",
      "type": "controller",
      "title": "kube-proxy",
      "summary": "Control-plane component: kube-proxy.",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "control-plane",
        "networking"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "control plane component kube-proxy"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "flow:kubectl",
      "type": "concept",
      "title": "kubectl apply: kubectl",
      "summary": "Reads manifest (YAML/JSON) from file/stdin",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "kubectl",
        "flow"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "kubernetes/website:reference/kubectl/apply",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Reads manifest (YAML/JSON) from file/stdin"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "flow:kube-apiserver",
      "type": "concept",
      "title": "kubectl apply: kube-apiserver",
      "summary": "Runs authentication, authorization (RBAC) and admission control",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "kubectl",
        "flow"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "kubernetes/website:reference/kubectl/apply",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Runs authentication, authorization (RBAC) and admission control"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "flow:kube-controller-manager_scheduler",
      "type": "concept",
      "title": "kubectl apply: kube-controller-manager/scheduler",
      "summary": "Reconcile controllers act on the new object",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "kubectl",
        "flow"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "kubernetes/website:reference/kubectl/apply",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Reconcile controllers act on the new object"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    },
    {
      "id": "flow:kubelet",
      "type": "concept",
      "title": "kubectl apply: kubelet",
      "summary": "Node kubelet schedules and starts containers via container runtime",
      "body": "",
      "body_trimmed": false,
      "version": "v1.34",
      "section": null,
      "tags": [
        "kubectl",
        "flow"
      ],
      "aliases": [],
      "url": null,
      "meta": {},
      "provenance": [
        {
          "source": "kubernetes/website:reference/kubectl/apply",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Node kubelet schedules and starts containers via container runtime"
        }
      ],
      "confidence": 1.0,
      "derived_by": "deterministic"
    }
  ],
  "edges": [
    {
      "from_id": "page:test",
      "to_id": "concept:heading-levels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:inline-elements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:lists",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:code-blocks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:links",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 275,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:tables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 322,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:visualizations-with-mermaid",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 373,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:sidebars-and-admonitions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 428,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:includes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 473,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:katacoda-embedded-live-environment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 481,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:h3",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        },
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:inline-text-styles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:bullet-lists",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:numbered-lists",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:tab-lists",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:header-within-a-tab-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:checklists",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 209,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:code-blocks-containing-hugo-shortcodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 253,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:sidebars",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 428,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:test",
      "to_id": "concept:admonitions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "test.md",
          "url": "https://kubernetes.io/docs/test/",
          "line_start": 428,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-stateful-set",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-stateful-set",
      "to_id": "concept:scaling-statefulsets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-stateful-set",
      "to_id": "concept:troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-stateful-set",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-stateful-set",
      "to_id": "concept:use-kubectl-to-scale-statefulsets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-stateful-set",
      "to_id": "concept:make-in-place-updates-on-your-statefulsets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-stateful-set",
      "to_id": "concept:scaling-down-does-not-work-right",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/delete-stateful-set",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/delete-stateful-set",
      "to_id": "concept:deleting-a-statefulset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/delete-stateful-set",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/delete-stateful-set",
      "to_id": "concept:persistent-volumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/delete-stateful-set",
      "to_id": "concept:complete-deletion-of-a-statefulset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/delete-stateful-set",
      "to_id": "concept:force-deletion-of-statefulset-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 6,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 7,
          "line_end": null,
          "quote": "StatefulSet"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 11,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelets",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 33,
          "line_end": null,
          "quote": "kubelets"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "gloss:minikube",
      "type": "references",
      "label": "minikube",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 41,
          "line_end": null,
          "quote": "minikube"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "gloss:service",
      "type": "references",
      "label": "service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 52,
          "line_end": null,
          "quote": "service"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 78,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "gloss:quantity",
      "type": "references",
      "label": "quantity",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 492,
          "line_end": null,
          "quote": "quantity"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:run-and-expose-php-apache-server",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:create-the-horizontalpodautoscaler-create-horizontal-pod-autoscaler",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:increase-the-load-increase-load",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:stop-generating-load-stop-load",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:autoscaling-on-multiple-metrics-and-custom-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 205,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:appendix-horizontal-pod-autoscaler-status-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 443,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:quantities",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 488,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:other-possible-scenarios",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 498,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:autoscaling-on-more-specific-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 385,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:autoscaling-on-metrics-not-related-to-kubernetes-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 407,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "concept:creating-the-autoscaler-declaratively",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": 500,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-single-instance-stateful-application",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-single-instance-stateful-application",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-single-instance-stateful-application",
      "to_id": "concept:deploy-mysql",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-single-instance-stateful-application",
      "to_id": "concept:accessing-the-mysql-instance",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-single-instance-stateful-application",
      "to_id": "concept:updating",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-single-instance-stateful-application",
      "to_id": "concept:deleting-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-single-instance-stateful-application",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-single-instance-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:performing-a-rolling-update",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:monitoring-rollout-progress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:pausing-and-resuming-a-rollout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:configuring-rolling-update-strategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:rolling-back-to-a-previous-revision-rollback",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 238,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 294,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:updating-with-kubectl-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:updating-only-the-container-image",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:pausing-a-rollout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:making-additional-changes-while-paused",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:resuming-a-rollout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:detecting-a-stalled-rollout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:viewing-rollout-history",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:rolling-back-to-the-previous-revision",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "concept:rolling-back-to-a-specific-revision",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": 276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "statefulset",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 4,
          "line_end": null,
          "quote": "statefulset"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 74,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:deploy-mysql",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:understanding-stateful-pod-initialization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:sending-client-traffic",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 210,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:simulate-pod-and-node-failure-simulate-pod-and-node-downtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 277,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:scaling-the-number-of-replicas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 401,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 477,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 518,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:create-a-configmap-configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:create-services-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:create-the-statefulset-statefulset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:generating-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:cloning-existing-data",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 165,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:starting-replication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 186,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:break-the-readiness-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 283,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:delete-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 323,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-replicated-stateful-application",
      "to_id": "concept:drain-a-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-replicated-stateful-application.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/",
          "line_start": 338,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:scaling-up-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:scaling-down-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:scaling-to-zero",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:other-ways-to-change-the-replica-count",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:when-to-use-manual-versus-automatic-scaling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 193,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 209,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 217,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:scaling-up-using-kubectl-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:declarative-scaling-using-kubectl-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:scale-using-kubectl-edit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "concept:scale-using-kubectl-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "custom resources",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 277,
          "line_end": null,
          "quote": "custom resources"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:protecting-an-application-with-a-poddisruptionbudget",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:identify-an-application-to-protect",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:think-about-how-your-application-reacts-to-disruptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:specifying-a-poddisruptionbudget",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:create-the-pdb-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:check-the-status-of-the-pdb",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:unhealthy-pod-eviction-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 235,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:arbitrary-workloads-and-arbitrary-selectors-arbitrary-controllers-and-selectors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 273,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:rounding-logic-when-specifying-percentages",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/configure-pdb",
      "to_id": "concept:healthiness-of-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/configure-pdb.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/configure-pdb/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-stateless-application-deployment",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-stateless-application-deployment",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-stateless-application-deployment",
      "to_id": "concept:creating-and-exploring-an-nginx-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-stateless-application-deployment",
      "to_id": "concept:updating-the-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-stateless-application-deployment",
      "to_id": "concept:scaling-the-application-by-increasing-the-replica-count",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-stateless-application-deployment",
      "to_id": "concept:deleting-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-stateless-application-deployment",
      "to_id": "concept:replicationcontrollers-the-old-way",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-stateless-application-deployment",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/force-delete-stateful-set-pod",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/force-delete-stateful-set-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/force-delete-stateful-set-pod",
      "to_id": "concept:statefulset-considerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/force-delete-stateful-set-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/force-delete-stateful-set-pod",
      "to_id": "concept:delete-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/force-delete-stateful-set-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/force-delete-stateful-set-pod",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/force-delete-stateful-set-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/force-delete-stateful-set-pod",
      "to_id": "concept:force-deletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/force-delete-stateful-set-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/access-api-from-pod",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/access-api-from-pod",
      "to_id": "concept:accessing-the-api-from-within-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/access-api-from-pod",
      "to_id": "concept:using-official-client-libraries",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/access-api-from-pod",
      "to_id": "concept:directly-accessing-the-rest-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/access-api-from-pod",
      "to_id": "concept:using-kubectl-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/access-api-from-pod",
      "to_id": "concept:without-using-a-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-windows",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-windows",
      "to_id": "concept:install-kubectl-on-windows",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-windows",
      "to_id": "concept:verify-kubectl-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-windows",
      "to_id": "concept:optional-kubectl-configurations-and-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-windows",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-windows",
      "to_id": "concept:install-kubectl-binary-on-windows-via-direct-download-or-curl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-windows",
      "to_id": "concept:install-on-windows-using-chocolatey-scoop-or-winget-install-nonstandard-package-tools",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-windows",
      "to_id": "concept:enable-shell-autocompletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-windows",
      "to_id": "concept:configure-kuberc",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-windows",
      "to_id": "concept:install-kubectl-convert-plugin",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-windows.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/",
          "line_start": 162,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:install-kubectl-on-macos",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:verify-kubectl-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:optional-kubectl-configurations-and-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 297,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:install-kubectl-binary-with-curl-on-macos",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:install-with-homebrew-on-macos",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:install-with-macports-on-macos",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:enable-shell-autocompletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:configure-kuberc",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:install-kubectl-convert-plugin",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:uninstall-kubectl-on-macos",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:uninstall-kubectl-using-the-command-line",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 274,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-macos",
      "to_id": "concept:uninstall-kubectl-using-homebrew",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-macos.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/",
          "line_start": 289,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:install-kubectl-on-linux",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:verify-kubectl-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 285,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:optional-kubectl-configurations-and-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 289,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 379,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:install-kubectl-binary-with-curl-on-linux",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:install-using-native-package-management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:install-using-other-package-management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:enable-shell-autocompletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 291,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:configure-kuberc",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 304,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/install-kubectl-linux",
      "to_id": "concept:install-kubectl-convert-plugin",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/install-kubectl-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/",
          "line_start": 308,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/_index",
      "to_id": "gloss:kubeadm",
      "type": "references",
      "label": "kubeadm",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/_index/",
          "line_start": 50,
          "line_end": null,
          "quote": "kubeadm"
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/_index",
      "to_id": "concept:kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/_index/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/_index",
      "to_id": "concept:kind",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/_index/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/_index",
      "to_id": "concept:minikube",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/_index/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/_index",
      "to_id": "concept:kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/_index.md",
          "url": "https://kubernetes.io/docs/tasks/tools/_index/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/included/verify-kubectl",
      "to_id": "concept:troubleshooting-the-no-auth-provider-found-error-message-no-auth-provider-found",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/included/verify-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/verify-kubectl/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/included/optional-kubectl-configs-bash-mac",
      "to_id": "concept:introduction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-mac.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-mac/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/included/optional-kubectl-configs-bash-mac",
      "to_id": "concept:upgrade-bash",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-mac.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-mac/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/included/optional-kubectl-configs-bash-mac",
      "to_id": "concept:install-bash-completion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-mac.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-mac/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/included/optional-kubectl-configs-bash-mac",
      "to_id": "concept:enable-kubectl-autocompletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-mac.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-mac/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/included/optional-kubectl-configs-bash-linux",
      "to_id": "concept:introduction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-linux/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/included/optional-kubectl-configs-bash-linux",
      "to_id": "concept:install-bash-completion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-linux/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tools/included/optional-kubectl-configs-bash-linux",
      "to_id": "concept:enable-kubectl-autocompletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tools/included/optional-kubectl-configs-bash-linux.md",
          "url": "https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-bash-linux/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:trade-offs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:how-to-create-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:how-to-update-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:how-to-delete-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:how-to-view-an-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:creating-and-editing-an-object-from-a-url-without-saving-the-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:migrating-from-imperative-commands-to-imperative-object-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:defining-controller-selectors-and-podtemplate-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 131,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-config",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/storage-version-migration",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinition",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/storage-version-migration.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/storage-version-migration/",
          "line_start": 146,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/storage-version-migration",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/storage-version-migration.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/storage-version-migration/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/storage-version-migration",
      "to_id": "concept:re-encrypt-kubernetes-secrets-using-storage-version-migration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/storage-version-migration.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/storage-version-migration/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/storage-version-migration",
      "to_id": "concept:update-the-preferred-storage-schema-of-a-crd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/storage-version-migration.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/storage-version-migration/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/kustomization",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/kustomization",
      "to_id": "concept:overview-of-kustomize",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/kustomization",
      "to_id": "concept:bases-and-overlays",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 857,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/kustomization",
      "to_id": "concept:how-to-apply-view-delete-objects-using-kustomize",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 936,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/kustomization",
      "to_id": "concept:kustomize-feature-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 1014,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/kustomization",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 1036,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/kustomization",
      "to_id": "concept:generating-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/kustomization",
      "to_id": "concept:setting-cross-cutting-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 388,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/kustomization",
      "to_id": "concept:composing-and-customizing-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/kustomization.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/",
          "line_start": 466,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-command",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-command",
      "to_id": "concept:trade-offs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-command",
      "to_id": "concept:how-to-create-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-command",
      "to_id": "concept:how-to-update-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-command",
      "to_id": "concept:how-to-delete-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-command",
      "to_id": "concept:how-to-view-an-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 109,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-command",
      "to_id": "concept:using-set-commands-to-modify-objects-before-creation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-command",
      "to_id": "concept:using-edit-to-modify-objects-before-creation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/imperative-command",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/imperative-command.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "concept:use-a-strategic-merge-patch-to-update-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "concept:use-a-json-merge-patch-to-update-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 207,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "concept:use-strategic-merge-patch-to-update-a-deployment-using-the-retainkeys-strategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 280,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "concept:summary",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 507,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 525,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "concept:notes-on-the-strategic-merge-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "concept:notes-on-the-strategic-merge-patch-using-the-retainkeys-strategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 349,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "concept:alternate-forms-of-the-kubectl-patch-command",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 388,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "concept:update-an-object-s-replica-count-using-kubectl-patch-with-subresource-scale-kubectl-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": 423,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:trade-offs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:how-to-create-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:how-to-update-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:how-to-delete-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 350,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:how-to-view-an-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 472,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:how-apply-calculates-differences-and-merges-changes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 480,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:default-field-values",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 799,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:how-to-change-ownership-of-a-field-between-the-configuration-file-and-direct-imperative-writers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 966,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:changing-management-methods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 987,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:defining-controller-selectors-and-podtemplate-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 1044,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 1065,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:recommended-kubectl-delete-f-filename",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 354,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:alternative-kubectl-apply-f-directory-prune",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 364,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:merge-patch-calculation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 495,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:how-different-types-of-fields-are-merged",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 613,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:merging-changes-to-primitive-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 634,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:merging-changes-to-map-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 649,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:merging-changes-for-fields-of-type-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 664,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:how-to-clear-server-defaulted-fields-or-fields-set-by-other-writers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 959,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:changing-the-owner-from-a-direct-imperative-writer-to-a-configuration-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 974,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:changing-the-owner-from-a-configuration-file-to-a-direct-imperative-writer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 979,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:migrating-from-imperative-command-management-to-declarative-object-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 1004,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/declarative-config",
      "to_id": "concept:migrating-from-imperative-object-configuration-to-declarative-object-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/declarative-config.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/declarative-config/",
          "line_start": 1034,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/extend-service-ip-ranges",
      "to_id": "gloss:finalizer",
      "type": "references",
      "label": "finalizers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 60,
          "line_end": null,
          "quote": "finalizers"
        }
      ]
    },
    {
      "from_id": "page:tasks/network/extend-service-ip-ranges",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/extend-service-ip-ranges",
      "to_id": "concept:extend-service-ip-ranges",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/extend-service-ip-ranges",
      "to_id": "concept:extend-the-number-of-available-ips-for-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/extend-service-ip-ranges",
      "to_id": "concept:kubernetes-service-cidr-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 195,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/extend-service-ip-ranges",
      "to_id": "concept:adding-a-new-servicecidr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/extend-service-ip-ranges",
      "to_id": "concept:deleting-a-servicecidr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/extend-service-ip-ranges",
      "to_id": "concept:preventing-unauthorized-servicecidr-creation-update-using-validating-admission-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/validate-dual-stack",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/validate-dual-stack",
      "to_id": "concept:validate-addressing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/validate-dual-stack",
      "to_id": "concept:validate-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/validate-dual-stack",
      "to_id": "concept:validate-node-addressing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/validate-dual-stack",
      "to_id": "concept:validate-pod-addressing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/validate-dual-stack",
      "to_id": "concept:create-a-dual-stack-load-balanced-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/validate-dual-stack.md",
          "url": "https://kubernetes.io/docs/tasks/network/validate-dual-stack/",
          "line_start": 241,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/customize-hosts-file-for-pods",
      "to_id": "concept:default-hosts-file-content",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/customize-hosts-file-for-pods.md",
          "url": "https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/customize-hosts-file-for-pods",
      "to_id": "concept:adding-additional-entries-with-hostaliases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/customize-hosts-file-for-pods.md",
          "url": "https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/customize-hosts-file-for-pods",
      "to_id": "concept:why-does-the-kubelet-manage-the-hosts-file-why-does-kubelet-manage-the-hosts-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/customize-hosts-file-for-pods.md",
          "url": "https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/",
          "line_start": 109,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/reconfigure-default-service-ip-ranges",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/reconfigure-default-service-ip-ranges",
      "to_id": "concept:kubernetes-default-servicecidr-reconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/reconfigure-default-service-ip-ranges",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/reconfigure-default-service-ip-ranges",
      "to_id": "concept:kubernetes-servicecidr-reconfiguration-categories",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/reconfigure-default-service-ip-ranges",
      "to_id": "concept:manual-operations-for-replacing-the-default-servicecidr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/reconfigure-default-service-ip-ranges",
      "to_id": "concept:illustrative-reconfiguration-steps",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/user-namespaces",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/user-namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/user-namespaces/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/user-namespaces",
      "to_id": "concept:run-a-pod-that-uses-a-user-namespace-create-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/user-namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/user-namespaces/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "gloss:qos-class",
      "type": "references",
      "label": "Quality of Service (QoS) classes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 4,
          "line_end": null,
          "quote": "Quality of Service (QoS) classes"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:create-a-pod-that-gets-assigned-a-qos-class-of-guaranteed",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:create-a-pod-that-gets-assigned-a-qos-class-of-burstable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 109,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:create-a-pod-that-gets-assigned-a-qos-class-of-besteffort",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:create-a-pod-that-has-two-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:retrieve-the-qos-class-for-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:for-app-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": 276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-projected-volume-storage",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secrets",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-projected-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-projected-volume-storage/",
          "line_start": 19,
          "line_end": null,
          "quote": "Secrets"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-projected-volume-storage",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-projected-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-projected-volume-storage/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-projected-volume-storage",
      "to_id": "concept:configure-a-projected-volume-for-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-projected-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-projected-volume-storage/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-projected-volume-storage",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-projected-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-projected-volume-storage/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-projected-volume-storage",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-projected-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-projected-volume-storage/",
          "line_start": 74,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 3,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 5,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 26,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 59,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "gloss:jwt",
      "type": "references",
      "label": "JSON Web Token",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 418,
          "line_end": null,
          "quote": "JSON Web Token"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "gloss:rbac",
      "type": "references",
      "label": "RBAC",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 507,
          "line_end": null,
          "quote": "RBAC"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:use-the-default-service-account-to-access-the-api-server",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:use-more-than-one-serviceaccount-use-multiple-service-accounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:manually-create-an-api-token-for-a-serviceaccount",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 168,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:add-imagepullsecrets-to-a-service-account",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 282,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:serviceaccount-token-volume-projection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 371,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 529,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:opt-out-of-api-credential-automounting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:cleanup-cleanup-use-multiple-service-accounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:manually-create-a-long-lived-api-token-for-a-serviceaccount",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 211,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:add-image-pull-secret-to-service-account",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:verify-that-imagepullsecrets-are-set-for-new-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 355,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:launch-a-pod-using-service-account-token-projection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 451,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "concept:service-account-issuer-discovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": 474,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "concept:configure-gmsas-and-windows-nodes-in-active-directory",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "concept:create-gmsa-credential-spec-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "concept:configure-cluster-role-to-enable-rbac-on-specific-gmsa-credential-specs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "concept:assign-role-to-service-accounts-to-use-specific-gmsa-credspecs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "concept:configure-gmsa-credential-spec-reference-in-pod-spec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "concept:authenticating-to-network-shares-using-hostname-or-fqdn",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 248,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "concept:troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 261,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "concept:install-the-gmsacredentialspec-crd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "concept:install-webhooks-to-validate-gmsa-users",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/pull-image-private-registry",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secret",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 4,
          "line_end": null,
          "quote": "Secret"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/pull-image-private-registry",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/pull-image-private-registry",
      "to_id": "concept:log-in-to-docker-hub",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/pull-image-private-registry",
      "to_id": "concept:create-a-secret-based-on-existing-credentials-registry-secret-existing-credentials",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/pull-image-private-registry",
      "to_id": "concept:create-a-secret-by-providing-credentials-on-the-command-line",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/pull-image-private-registry",
      "to_id": "concept:inspecting-the-secret-regcred",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/pull-image-private-registry",
      "to_id": "concept:create-a-pod-that-uses-your-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 181,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/pull-image-private-registry",
      "to_id": "concept:using-images-from-multiple-registries",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/pull-image-private-registry",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/pull-image-private-registry.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-volume-storage",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-volume-storage",
      "to_id": "concept:configure-a-volume-for-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-volume-storage",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:overall-approach",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:0-decide-whether-pod-security-admission-is-right-for-you-is-psa-right-for-you",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:1-review-namespace-permissions-review-namespace-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:2-simplify-standardize-podsecuritypolicies-simplify-psps",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:3-update-namespaces-update-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:4-review-namespace-creation-processes-review-namespace-creation-process",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 301,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:5-disable-podsecuritypolicy-disable-psp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 312,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:2-a-eliminate-purely-mutating-fields-eliminate-mutating-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:2-b-eliminate-options-not-covered-by-the-pod-security-standards-eliminate-non-standard-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:2-c-rollout-the-updated-psps-psp-update-rollout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:3-a-identify-an-appropriate-pod-security-level-identify-appropriate-level",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 207,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:3-b-verify-the-pod-security-level-verify-pss-level",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:3-c-enforce-the-pod-security-level-enforce-pod-security-level",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "concept:3-d-bypass-podsecuritypolicy-bypass-psp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": 273,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:specify-a-memory-request-and-a-memory-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:exceed-a-container-s-memory-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:specify-a-memory-request-that-is-too-big-for-your-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 230,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:memory-units",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 282,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:if-you-do-not-specify-a-memory-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 298,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:motivation-for-memory-requests-and-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 310,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 320,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 330,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:for-app-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 333,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": 343,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/attach-handler-lifecycle-event",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/attach-handler-lifecycle-event.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/attach-handler-lifecycle-event",
      "to_id": "concept:define-poststart-and-prestop-handlers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/attach-handler-lifecycle-event.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/attach-handler-lifecycle-event",
      "to_id": "concept:discussion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/attach-handler-lifecycle-event.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/attach-handler-lifecycle-event",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/attach-handler-lifecycle-event.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/attach-handler-lifecycle-event",
      "to_id": "concept:reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/attach-handler-lifecycle-event.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/image-volumes",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/image-volumes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/image-volumes/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/image-volumes",
      "to_id": "concept:run-a-pod-that-uses-an-image-volume-create-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/image-volumes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/image-volumes/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/image-volumes",
      "to_id": "concept:use-subpath-or-subpathexpr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/image-volumes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/image-volumes/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/image-volumes",
      "to_id": "concept:further-reading",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/image-volumes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/image-volumes/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 56,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:hostprocess-pod-configuration-requirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:volume-mounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:resource-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:choosing-a-user-account",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:base-image-for-hostprocess-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 253,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:troubleshooting-hostprocess-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 260,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:when-should-i-use-a-windows-hostprocess-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:example-manifest-excerpt-manifest-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:containerd-v1-6",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:containerd-v1-7-and-greater",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:system-accounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 201,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "concept:local-accounts-local-accounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": 215,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 5,
          "line_end": null,
          "quote": "pods"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "gloss:image",
      "type": "references",
      "label": "container image",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 9,
          "line_end": null,
          "quote": "container image"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 886,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "gloss:static-pod",
      "type": "references",
      "label": "static pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 890,
          "line_end": null,
          "quote": "static pods"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:create-a-configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:interim-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 513,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:define-container-environment-variables-using-configmap-data",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 528,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:configure-all-key-value-pairs-in-a-configmap-as-container-environment-variables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 583,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:use-configmap-defined-environment-variables-in-pod-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 613,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:add-configmap-data-to-a-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 642,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:understanding-configmaps-and-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 754,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:optional-configmaps",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 731,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:restrictions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 862,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 893,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 920,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:create-a-configmap-using-kubectl-create-configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:create-a-configmap-from-generator",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 390,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:define-a-container-environment-variable-with-data-from-a-single-configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 530,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:define-container-environment-variables-with-data-from-multiple-configmaps",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 551,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:populate-a-volume-with-data-stored-in-a-configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 658,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:add-configmap-data-to-a-specific-path-in-the-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 694,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:project-keys-to-specific-paths-and-file-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 722,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:optional-references",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 727,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "concept:mounted-configmaps-are-updated-automatically",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": 734,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 33,
          "line_end": null,
          "quote": "scheduler"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "gloss:init-container",
      "type": "references",
      "label": "init containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 137,
          "line_end": null,
          "quote": "init containers"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "gloss:ephemeral-container",
      "type": "references",
      "label": "ephemeral containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 138,
          "line_end": null,
          "quote": "ephemeral containers"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:pod-resize-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:container-resize-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 150,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:example-1-resizing-cpu-without-restart",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:example-2-resizing-memory-with-restart",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 207,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:troubleshooting-infeasible-resize-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:how-kubelet-retries-deferred-resizes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:leveraging-observedgeneration-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:for-application-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 267,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": 275,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes-using-node-affinity",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes-using-node-affinity",
      "to_id": "concept:add-a-label-to-a-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes-using-node-affinity",
      "to_id": "concept:schedule-a-pod-using-required-node-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes-using-node-affinity",
      "to_id": "concept:schedule-a-pod-using-preferred-node-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes-using-node-affinity",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "gloss:minikube",
      "type": "references",
      "label": "minikube",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 23,
          "line_end": null,
          "quote": "minikube"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 53,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:specify-a-cpu-request-and-a-cpu-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:cpu-units",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:specify-a-cpu-request-that-is-too-big-for-your-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:if-you-do-not-specify-a-cpu-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 207,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:if-you-specify-a-cpu-limit-but-do-not-specify-a-cpu-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 219,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:motivation-for-cpu-requests-and-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 226,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 236,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:for-app-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 250,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": 262,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "to_id": "concept:define-a-liveness-command",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "to_id": "concept:define-a-liveness-http-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "to_id": "concept:define-a-tcp-liveness-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "to_id": "concept:define-a-grpc-liveness-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "to_id": "concept:use-a-named-port",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "to_id": "concept:protect-slow-starting-containers-with-startup-probes-define-startup-probes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 252,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "to_id": "concept:define-readiness-probes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": 331,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:install-kompose",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:use-kompose",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:user-guide",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:kompose-convert",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 95,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:alternative-conversions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:restart",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:docker-compose-versions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:kubernetes-kompose-convert-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:openshift-kompose-convert-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 262,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/translate-compose-kubernetes",
      "to_id": "concept:warning-about-deployment-configurations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/translate-compose-kubernetes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/translate-compose-kubernetes/",
          "line_start": 452,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/enforce-standards-namespace-labels",
      "to_id": "gloss:admission-controller",
      "type": "references",
      "label": "admission controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": 5,
          "line_end": null,
          "quote": "admission controller"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/enforce-standards-namespace-labels",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/enforce-standards-namespace-labels",
      "to_id": "concept:requiring-the-baseline-pod-security-standard-with-namespace-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/enforce-standards-namespace-labels",
      "to_id": "concept:add-labels-to-existing-namespaces-with-kubectl-label",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/enforce-standards-namespace-labels",
      "to_id": "concept:applying-to-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/enforce-standards-namespace-labels",
      "to_id": "concept:applying-to-a-single-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-initialization",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-initialization.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-initialization",
      "to_id": "concept:create-a-pod-that-has-an-init-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-initialization.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-initialization",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-initialization.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/extended-resource",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/extended-resource",
      "to_id": "concept:assign-an-extended-resource-to-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/extended-resource",
      "to_id": "concept:attempt-to-create-a-second-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/extended-resource",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/extended-resource",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/extended-resource",
      "to_id": "concept:for-application-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/extended-resource",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "gloss:cri-o",
      "type": "references",
      "label": "cri-o",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 11,
          "line_end": null,
          "quote": "cri-o"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "gloss:label",
      "type": "references",
      "label": "Labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 173,
          "line_end": null,
          "quote": "Labels"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selectors",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 175,
          "line_end": null,
          "quote": "selectors"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "concept:create-a-static-pod-static-pod-creation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "concept:observe-static-pod-behavior-behavior-of-static-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "concept:dynamic-addition-and-removal-of-static-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 226,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 248,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "concept:filesystem-hosted-static-pod-manifest-configuration-files",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "concept:web-hosted-static-pod-manifest-pods-created-via-http",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/enforce-standards-admission-controller",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-admission-controller.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-admission-controller/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/enforce-standards-admission-controller",
      "to_id": "concept:configure-the-admission-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-admission-controller.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-admission-controller/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "gloss:csi",
      "type": "references",
      "label": "CSI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 713,
          "line_end": null,
          "quote": "CSI"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:set-the-security-context-for-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:configure-fine-grained-supplementalgroups-control-for-a-pod-supplementalgroupspolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 223,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:configure-volume-permission-and-ownership-change-policy-for-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 349,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:delegating-volume-permission-and-ownership-change-to-csi-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 388,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:set-the-security-context-for-a-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 402,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:set-capabilities-for-a-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 457,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:set-the-seccomp-profile-for-a-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 578,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:set-the-apparmor-profile-for-a-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 612,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:assign-selinux-labels-to-a-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 662,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:managing-access-to-the-proc-filesystem-proc-access",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 780,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:discussion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 833,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 855,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 866,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:implicit-group-memberships-defined-in-etc-group-in-the-container-image",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 153,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:implementations-implementations-supplementalgroupspolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "concept:efficient-selinux-volume-relabeling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": 683,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes",
      "to_id": "gloss:node",
      "type": "references",
      "label": "nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
          "line_start": 17,
          "line_end": null,
          "quote": "nodes"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes",
      "to_id": "concept:add-a-label-to-a-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes",
      "to_id": "concept:create-a-pod-that-gets-scheduled-to-your-chosen-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes",
      "to_id": "concept:create-a-pod-that-gets-scheduled-to-specific-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-pod-resources",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-pod-resources",
      "to_id": "concept:pod-resize-status-and-retry-logic",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-pod-resources",
      "to_id": "concept:container-resize-policy-and-pod-level-resize",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-pod-resources",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-pod-resources",
      "to_id": "concept:example-resizing-pod-level-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-pod-resources",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-pod-resources",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-pod-resources",
      "to_id": "concept:for-application-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-pod-resources",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-runasusername",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-runasusername.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-runasusername",
      "to_id": "concept:set-the-username-for-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-runasusername.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-runasusername",
      "to_id": "concept:set-the-username-for-a-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-runasusername.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-runasusername",
      "to_id": "concept:windows-username-limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-runasusername.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-runasusername",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-runasusername.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/share-process-namespace",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/share-process-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/share-process-namespace",
      "to_id": "concept:configure-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/share-process-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/share-process-namespace",
      "to_id": "concept:understanding-process-namespace-sharing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/share-process-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "concept:create-a-pod-with-memory-requests-and-limits-at-pod-level",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "concept:create-a-pod-with-cpu-requests-and-limits-at-pod-level",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 131,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "concept:create-a-pod-with-resource-requests-and-limits-at-both-pod-level-and-container-level",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 274,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "concept:for-application-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 277,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": 283,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/access-dra-device-metadata",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/access-dra-device-metadata",
      "to_id": "concept:access-device-metadata-with-a-resourceclaim-access-metadata-resourceclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/access-dra-device-metadata",
      "to_id": "concept:access-device-metadata-with-a-resourceclaimtemplate-access-metadata-template",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/access-dra-device-metadata",
      "to_id": "concept:read-metadata-in-your-application-read-metadata-application",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/access-dra-device-metadata",
      "to_id": "concept:clean-up-clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/access-dra-device-metadata",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 165,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/access-dra-device-metadata",
      "to_id": "concept:go-applications",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "gloss:deviceclass",
      "type": "references",
      "label": "DeviceClasses",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 16,
          "line_end": null,
          "quote": "DeviceClasses"
        },
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 16,
          "line_end": null,
          "quote": "DeviceClasses"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "gloss:resourceclaim",
      "type": "references",
      "label": "ResourceClaims",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 17,
          "line_end": null,
          "quote": "ResourceClaims"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "gloss:resourceclaimtemplate",
      "type": "references",
      "label": "ResourceClaimTemplates",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 18,
          "line_end": null,
          "quote": "ResourceClaimTemplates"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API groups",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 44,
          "line_end": null,
          "quote": "API groups"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "gloss:cel",
      "type": "references",
      "label": "cel",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 126,
          "line_end": null,
          "quote": "cel"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "gloss:dra",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "concept:about-dra-about-dra",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "concept:optional-enable-additional-dra-api-groups-enable-dra",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "concept:verify-that-dra-is-enabled-verify",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "concept:install-device-drivers-install-drivers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "concept:create-deviceclasses-create-deviceclasses",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "concept:clean-up-clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/set-up-dra-cluster",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/set-up-dra-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster/",
          "line_start": 185,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "gloss:resourceclaim",
      "type": "references",
      "label": "ResourceClaims",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 9,
          "line_end": null,
          "quote": "ResourceClaims"
        },
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 9,
          "line_end": null,
          "quote": "ResourceClaims"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "gloss:resourceclaimtemplate",
      "type": "references",
      "label": "ResourceClaimTemplates",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 10,
          "line_end": null,
          "quote": "ResourceClaimTemplates"
        },
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 10,
          "line_end": null,
          "quote": "ResourceClaimTemplate"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "gloss:deviceclass",
      "type": "references",
      "label": "DeviceClasses",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 38,
          "line_end": null,
          "quote": "DeviceClasses"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "gloss:cel",
      "type": "references",
      "label": "cel",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 40,
          "line_end": null,
          "quote": "cel"
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "concept:about-device-allocation-with-dra-about-device-allocation-dra",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "concept:identify-devices-to-claim-identify-devices",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "concept:claim-resources-claim-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "concept:request-devices-in-workloads-using-dra-request-devices-workloads",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "concept:clean-up-clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 168,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-hugepages/scheduling-hugepages",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-hugepages/scheduling-hugepages.md",
          "url": "https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-hugepages/scheduling-hugepages",
      "to_id": "concept:api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-hugepages/scheduling-hugepages.md",
          "url": "https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-access-mode-readwriteoncepod",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-access-mode-readwriteoncepod.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-access-mode-readwriteoncepod/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-access-mode-readwriteoncepod",
      "to_id": "concept:why-should-i-use-readwriteoncepod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-access-mode-readwriteoncepod.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-access-mode-readwriteoncepod/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-access-mode-readwriteoncepod",
      "to_id": "concept:migrating-existing-persistentvolumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-access-mode-readwriteoncepod.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-access-mode-readwriteoncepod/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-access-mode-readwriteoncepod",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-access-mode-readwriteoncepod.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-access-mode-readwriteoncepod/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/safely-drain-node",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 2,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/safely-drain-node",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/safely-drain-node",
      "to_id": "concept:optional-configure-a-disruption-budget-configure-poddisruptionbudget",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/safely-drain-node",
      "to_id": "concept:use-kubectl-drain-to-remove-a-node-from-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/safely-drain-node",
      "to_id": "concept:draining-multiple-nodes-in-parallel",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/safely-drain-node",
      "to_id": "concept:the-eviction-api-eviction-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/safely-drain-node",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "gloss:node",
      "type": "references",
      "label": "Node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 3,
          "line_end": null,
          "quote": "Node"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "gloss:pod-priority",
      "type": "references",
      "label": "priority",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 18,
          "line_end": null,
          "quote": "priority"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "gloss:priority-class",
      "type": "references",
      "label": "PriorityClasses",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 19,
          "line_end": null,
          "quote": "PriorityClasses"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "gloss:preemption",
      "type": "references",
      "label": "preempt",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 42,
          "line_end": null,
          "quote": "preempt"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 52,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "concept:create-a-priorityclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "concept:run-pods-that-request-node-capacity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "concept:adjust-placeholder-resource-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "concept:set-the-desired-replica-count",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "concept:pick-a-namespace-for-the-placeholder-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "concept:create-the-placeholder-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "concept:calculate-the-total-reserved-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-config-file",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-config-file",
      "to_id": "concept:create-the-config-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-config-file",
      "to_id": "concept:start-a-kubelet-process-configured-via-the-config-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-config-file",
      "to_id": "concept:drop-in-directory-for-kubelet-configuration-files-kubelet-conf-d",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-config-file",
      "to_id": "concept:viewing-the-kubelet-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-config-file",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 287,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-config-file",
      "to_id": "concept:kubelet-configuration-merging-order",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployments",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 21,
          "line_end": null,
          "quote": "Deployments"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 22,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 102,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:determine-whether-dns-horizontal-autoscaling-is-already-enabled-determining-whether-dns-horizontal-autoscaling-is-already-enabled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:get-the-name-of-your-dns-deployment-find-scaling-target",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:enable-dns-horizontal-autoscaling-enablng-dns-horizontal-autoscaling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:tune-dns-autoscaling-parameters-tuning-autoscaling-parameters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:disable-dns-horizontal-autoscaling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:understanding-how-dns-horizontal-autoscaling-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 204,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:option-1-scale-down-the-kube-dns-autoscaler-deployment-to-0-replicas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:option-2-delete-the-kube-dns-autoscaler-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "concept:option-3-delete-the-kube-dns-autoscaler-manifest-file-from-the-master-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": 186,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:kms-encryption-and-per-object-encryption-keys",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:configuring-the-kms-provider",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:implementing-a-kms-plugin",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 95,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:encrypting-your-data-with-the-kms-provider",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:verifying-that-the-data-is-encrypted",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 331,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:ensuring-all-secrets-are-encrypted",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 326,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:switching-from-a-local-encryption-provider-to-the-kms-provider",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 375,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 406,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:kms-v1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:kms-v2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:kms-v1-configuring-the-kms-provider-kms-v1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:kms-v2-configuring-the-kms-provider-kms-v2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:enabling-the-kms-supported-by-your-cloud-provider",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:developing-a-kms-plugin-grpc-server",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:integrating-a-kms-plugin-with-the-remote-kms",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:deploying-the-kms-plugin",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:kms-v1-encrypting-your-data-with-the-kms-provider-kms-v1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 263,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kms-provider",
      "to_id": "concept:kms-v2-encrypting-your-data-with-the-kms-provider-kms-v2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kms-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/",
          "line_start": 286,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/quota-api-object",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/quota-api-object",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/quota-api-object",
      "to_id": "concept:create-a-resourcequota",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/quota-api-object",
      "to_id": "concept:create-a-persistentvolumeclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/quota-api-object",
      "to_id": "concept:attempt-to-create-a-second-persistentvolumeclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/quota-api-object",
      "to_id": "concept:notes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/quota-api-object",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/quota-api-object",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/quota-api-object",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/quota-api-object",
      "to_id": "concept:for-app-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/quota-api-object.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/quota-api-object/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/use-cascading-deletion",
      "to_id": "gloss:garbage-collection",
      "type": "references",
      "label": "garbage collection",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 5,
          "line_end": null,
          "quote": "garbage collection"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/use-cascading-deletion",
      "to_id": "gloss:finalizer",
      "type": "references",
      "label": "finalizer",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 74,
          "line_end": null,
          "quote": "finalizer"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/use-cascading-deletion",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 151,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/use-cascading-deletion",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/use-cascading-deletion",
      "to_id": "concept:check-owner-references-on-your-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/use-cascading-deletion",
      "to_id": "concept:use-foreground-cascading-deletion-use-foreground-cascading-deletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/use-cascading-deletion",
      "to_id": "concept:use-background-cascading-deletion-use-background-cascading-deletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/use-cascading-deletion",
      "to_id": "concept:delete-owner-objects-and-orphan-dependents-set-orphan-deletion-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/use-cascading-deletion",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/use-cascading-deletion.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/use-cascading-deletion/",
          "line_start": 204,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/declare-network-policy",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/declare-network-policy",
      "to_id": "concept:create-an-nginx-deployment-and-expose-it-via-a-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/declare-network-policy",
      "to_id": "concept:test-the-service-by-accessing-it-from-another-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/declare-network-policy",
      "to_id": "concept:limit-access-to-the-nginx-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/declare-network-policy",
      "to_id": "concept:assign-the-policy-to-the-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/declare-network-policy",
      "to_id": "concept:test-access-to-the-service-when-access-label-is-not-defined",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/declare-network-policy",
      "to_id": "concept:define-access-label-and-test-again",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/declare-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/extended-resource-node",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/extended-resource-node",
      "to_id": "concept:get-the-names-of-your-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/extended-resource-node",
      "to_id": "concept:advertise-a-new-extended-resource-on-one-of-your-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/extended-resource-node",
      "to_id": "concept:discussion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/extended-resource-node",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/extended-resource-node",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/extended-resource-node",
      "to_id": "concept:storage-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/extended-resource-node",
      "to_id": "concept:for-application-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/extended-resource-node",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:node-allocatable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:general-guidelines",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:example-scenario",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 214,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:enabling-qos-and-pod-level-cgroups",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:configuring-a-cgroup-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:kube-reserved",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:system-reserved",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:explicitly-reserved-cpu-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:eviction-thresholds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/reserve-compute-resources",
      "to_id": "concept:enforcing-node-allocatable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/reserve-compute-resources.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/coredns",
      "to_id": "gloss:cncf",
      "type": "references",
      "label": "CNCF",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 17,
          "line_end": null,
          "quote": "CNCF"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/coredns",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/coredns",
      "to_id": "concept:about-coredns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/coredns",
      "to_id": "concept:installing-coredns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/coredns",
      "to_id": "concept:migrating-to-coredns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/coredns",
      "to_id": "concept:upgrading-coredns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/coredns",
      "to_id": "concept:tuning-coredns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/coredns",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/coredns",
      "to_id": "concept:upgrading-an-existing-cluster-with-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:understand-feature-gate-maturity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:identify-which-components-need-the-feature-gate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:configure-multiple-feature-gates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:verify-feature-gate-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:understanding-component-specific-requirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 245,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:during-cluster-initialization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:on-an-existing-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:check-control-plane-component-manifests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:check-kubelet-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:check-via-metrics-endpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 195,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-feature-gates",
      "to_id": "concept:check-via-flagz-endpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-feature-gates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-feature-gates/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secrets",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 5,
          "line_end": null,
          "quote": "Secrets"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "gloss:static-pod",
      "type": "references",
      "label": "static pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 30,
          "line_end": null,
          "quote": "static pod"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 706,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:determine-whether-encryption-at-rest-is-already-enabled-determining-whether-encryption-at-rest-is-already-enabled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:understanding-the-encryption-at-rest-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:encrypt-your-data-encrypting-your-data",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 338,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:prevent-plain-text-retrieval-cleanup-all-secrets-encrypted",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 608,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:rotate-a-decryption-key-rotating-a-decryption-key",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 645,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:decrypt-all-data-decrypting-all-data",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 666,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:configure-automatic-reloading",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 702,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 720,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:available-providers-providers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:key-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 304,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:protection-for-encryption-keys",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 328,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:generate-the-encryption-key-generate-key-no-kms",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 340,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:replicate-the-encryption-key",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 397,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:write-an-encryption-configuration-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 344,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:use-the-new-encryption-configuration-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 439,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:reconfigure-other-control-plane-hosts-api-server-config-update-more",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 494,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:verify-that-newly-written-data-is-encrypted-verifying-that-data-is-encrypted",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 514,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/encrypt-data",
      "to_id": "concept:ensure-all-relevant-data-are-encrypted-ensure-all-secrets-are-encrypted",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/encrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/",
          "line_start": 581,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespaces",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 2,
          "line_end": null,
          "quote": "namespaces"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 8,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Services",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 9,
          "line_end": null,
          "quote": "Services"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployments",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 10,
          "line_end": null,
          "quote": "Deployments"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "concept:viewing-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "concept:creating-a-new-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "concept:deleting-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "concept:subdividing-your-cluster-using-kubernetes-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "concept:understanding-the-motivation-for-using-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 268,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "concept:understanding-namespaces-and-dns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 307,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 317,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "concept:create-new-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "concept:create-pods-in-each-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/ip-masq-agent",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/ip-masq-agent.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/ip-masq-agent/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/ip-masq-agent",
      "to_id": "concept:ip-masquerade-agent-user-guide",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/ip-masq-agent.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/ip-masq-agent/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/ip-masq-agent",
      "to_id": "concept:create-an-ip-masq-agent",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/ip-masq-agent.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/ip-masq-agent/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/ip-masq-agent",
      "to_id": "concept:key-terms",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/ip-masq-agent.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/ip-masq-agent/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/nodelocaldns",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/nodelocaldns",
      "to_id": "concept:introduction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/nodelocaldns",
      "to_id": "concept:motivation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/nodelocaldns",
      "to_id": "concept:architecture-diagram",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/nodelocaldns",
      "to_id": "concept:configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/nodelocaldns",
      "to_id": "concept:stubdomains-and-upstream-server-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/nodelocaldns",
      "to_id": "concept:setting-memory-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "gloss:userns",
      "type": "references",
      "label": "user namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 6,
          "line_end": null,
          "quote": "user namespace"
        },
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 6,
          "line_end": null,
          "quote": "user namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:running-kubernetes-inside-rootless-docker-podman",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:running-kubernetes-inside-unprivileged-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:running-rootless-kubernetes-directly-on-a-host",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:manually-deploy-a-node-that-runs-the-kubelet-in-a-user-namespace-userns-the-hard-way",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:caveats",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 268,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:kind",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:minikube",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:sysbox",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:k3s",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:usernetes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:creating-a-user-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:creating-a-delegated-cgroup-tree",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:configuring-network",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 136,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:configuring-cri",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:configuring-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 219,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "concept:configuring-kube-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": 251,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "gloss:static-pod",
      "type": "references",
      "label": "static pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 94,
          "line_end": null,
          "quote": "static pods"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "gloss:etcd",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:understanding-etcdctl-and-etcdutl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:starting-etcd-clusters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:securing-etcd-clusters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:replacing-a-failed-etcd-member",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:backing-up-an-etcd-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 273,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:scaling-out-etcd-clusters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 375,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:restoring-an-etcd-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 389,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:upgrading-etcd-clusters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 466,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:maintaining-etcd-clusters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 474,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:resource-requirements-for-etcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:tools",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:single-node-etcd-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:multi-node-etcd-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:multi-node-etcd-cluster-with-load-balancer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:securing-communication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:limiting-access-of-etcd-clusters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:built-in-snapshot",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 284,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:volume-snapshot",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 351,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:snapshot-using-etcdctl-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 357,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/configure-upgrade-etcd",
      "to_id": "concept:cluster-defragmentation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/configure-upgrade-etcd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/",
          "line_start": 478,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-custom-nameservers",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod(s)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pod(s)"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-custom-nameservers",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 61,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-custom-nameservers",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-custom-nameservers",
      "to_id": "concept:introduction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-custom-nameservers",
      "to_id": "concept:coredns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-custom-nameservers",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-custom-nameservers",
      "to_id": "concept:coredns-configmap-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-custom-nameservers",
      "to_id": "concept:configuration-of-stub-domain-and-upstream-nameserver-using-coredns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "gloss:qos-class",
      "type": "references",
      "label": "QoS class",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 6,
          "line_end": null,
          "quote": "QoS class"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:how-does-the-memory-manager-operate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:memory-manager-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:reserved-memory-configuration-reserved-memory-flag",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 131,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:placing-a-pod-in-the-guaranteed-qos-class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 305,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:resource-alignment-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:windows-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:memory-manager-reserved-memory-syntax-reserved-memory-syntax",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:constraints-on-numa-memory-reservation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "concept:configurations-to-avoid-reserved-memory-configurations-to-avoid",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": 247,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/switch-to-evented-pleg",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/switch-to-evented-pleg.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/switch-to-evented-pleg/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/switch-to-evented-pleg",
      "to_id": "concept:why-switch-to-evented-pleg",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/switch-to-evented-pleg.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/switch-to-evented-pleg/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/switch-to-evented-pleg",
      "to_id": "concept:switching-to-evented-pleg",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/switch-to-evented-pleg.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/switch-to-evented-pleg/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/switch-to-evented-pleg",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/switch-to-evented-pleg.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/switch-to-evented-pleg/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/verify-signed-artifacts",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/verify-signed-artifacts",
      "to_id": "concept:verifying-binary-signatures",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/verify-signed-artifacts",
      "to_id": "concept:verifying-image-signatures",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/verify-signed-artifacts",
      "to_id": "concept:verifying-image-signatures-with-admission-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/verify-signed-artifacts",
      "to_id": "concept:verify-the-software-bill-of-materials",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/verify-signed-artifacts",
      "to_id": "concept:verifying-images-for-all-control-plane-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/verify-signed-artifacts.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/verify-signed-artifacts/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/developing-cloud-controller-manager",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "daemonset",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": 33,
          "line_end": null,
          "quote": "daemonset"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/developing-cloud-controller-manager",
      "to_id": "gloss:cloud-controller-manager",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/developing-cloud-controller-manager",
      "to_id": "concept:background",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/developing-cloud-controller-manager",
      "to_id": "concept:developing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/developing-cloud-controller-manager",
      "to_id": "concept:out-of-tree",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/developing-cloud-controller-manager",
      "to_id": "concept:in-tree",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/developing-cloud-controller-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/developing-cloud-controller-manager/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "gloss:addons",
      "type": "references",
      "label": "addon",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 8,
          "line_end": null,
          "quote": "addon"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 192,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "gloss:service",
      "type": "references",
      "label": "service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 245,
          "line_end": null,
          "quote": "service"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "gloss:endpoint-slice",
      "type": "references",
      "label": "endpointslice",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 246,
          "line_end": null,
          "quote": "endpointslice"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:known-issues",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 335,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:create-a-simple-pod-to-use-as-a-test-environment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:check-the-local-dns-configuration-first",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:check-if-the-dns-pod-is-running",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:check-for-errors-in-the-dns-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:is-dns-service-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:are-dns-endpoints-exposed",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:are-dns-queries-being-received-processed",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:does-coredns-have-sufficient-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-debugging-resolution",
      "to_id": "concept:are-you-in-the-right-namespace-for-the-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-debugging-resolution.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-credential-provider",
      "to_id": "concept:service-account-token-for-image-pulls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-credential-provider",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-credential-provider",
      "to_id": "concept:installing-plugins-on-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-credential-provider",
      "to_id": "concept:configuring-the-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-credential-provider",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": 274,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-credential-provider",
      "to_id": "concept:configure-a-kubelet-credential-provider",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-credential-provider.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/enable-disable-api",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/enable-disable-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/enable-disable-api/",
          "line_start": 3,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/enable-disable-api",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/enable-disable-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/enable-disable-api/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/certificates",
      "to_id": "concept:distributing-self-signed-ca-certificate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": 280,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/certificates",
      "to_id": "concept:certificates-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": 301,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/certificates",
      "to_id": "concept:easyrsa",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/certificates",
      "to_id": "concept:openssl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/certificates",
      "to_id": "concept:cfssl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/certificates.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/certificates/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods",
      "to_id": "concept:marking-pod-as-critical",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:how-topology-manager-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:windows-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:topology-manager-scopes-and-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:topology-manager-scopes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:topology-manager-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 150,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:topology-manager-policy-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 211,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:pod-interactions-with-topology-manager-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 268,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:known-limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 376,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 386,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:container-scope",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:pod-scope",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:none-policy-policy-none",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:best-effort-policy-policy-best-effort",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:restricted-policy-policy-restricted",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:single-numa-node-policy-policy-single-numa-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 196,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:prefer-closest-numa-nodes-policy-option-prefer-closest-numa-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "concept:max-allowable-numa-nodes-policy-option-max-allowable-numa-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-default-storage-class",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-default-storage-class.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-default-storage-class",
      "to_id": "concept:why-change-the-default-storage-class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-default-storage-class.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-default-storage-class",
      "to_id": "concept:changing-the-default-storageclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-default-storage-class.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-default-storage-class",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-default-storage-class.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/sysctl-cluster",
      "to_id": "gloss:sysctl",
      "type": "references",
      "label": "sysctl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 6,
          "line_end": null,
          "quote": "sysctl"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/sysctl-cluster",
      "to_id": "gloss:minikube",
      "type": "references",
      "label": "minikube",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 107,
          "line_end": null,
          "quote": "minikube"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/sysctl-cluster",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/sysctl-cluster",
      "to_id": "concept:listing-all-sysctl-parameters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/sysctl-cluster",
      "to_id": "concept:safe-and-unsafe-sysctls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/sysctl-cluster",
      "to_id": "concept:setting-sysctls-for-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/sysctl-cluster",
      "to_id": "concept:enabling-unsafe-sysctls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 14,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 16,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "concept:upgrade-approaches",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "concept:post-upgrade-tasks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "concept:kubeadm-upgrade-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "concept:manual-deployments",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "concept:other-deployments-upgrade-other",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "concept:switch-your-cluster-s-storage-api-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "concept:update-manifests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cluster-upgrade",
      "to_id": "concept:device-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cluster-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespaces",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 51,
          "line_end": null,
          "quote": "namespaces"
        },
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 51,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:controlling-access-to-the-kubernetes-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:controlling-access-to-the-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:controlling-the-capabilities-of-a-workload-or-user-at-runtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:protecting-cluster-components-from-compromise",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:what-s-next",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 273,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:use-transport-layer-security-tls-for-all-api-traffic",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:api-authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:api-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:limiting-resource-usage-on-a-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:controlling-what-privileges-containers-run-with",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:preventing-containers-from-loading-unwanted-kernel-modules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:restricting-network-access",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:restricting-cloud-metadata-api-access",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:controlling-which-nodes-pods-may-access",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:restrict-access-to-etcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:enable-audit-logging",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:restrict-access-to-alpha-or-beta-features",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 212,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:rotate-infrastructure-credentials-frequently",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 219,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:review-third-party-integrations-before-enabling-them",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 228,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:encrypt-secrets-at-rest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 249,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/securing-a-cluster",
      "to_id": "concept:receiving-alerts-for-security-updates-and-reporting-vulnerabilities",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/securing-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/",
          "line_start": 265,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secrets",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 5,
          "line_end": null,
          "quote": "Secrets"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "gloss:static-pod",
      "type": "references",
      "label": "static pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 33,
          "line_end": null,
          "quote": "static pod"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "concept:determine-whether-encryption-at-rest-is-already-enabled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "concept:decrypt-all-data-decrypting-all-data",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "concept:locate-the-encryption-configuration-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "concept:configure-the-api-server-to-decrypt-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "concept:reconfigure-other-control-plane-hosts-api-server-config-update-more-1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "concept:force-decryption",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/decrypt-data",
      "to_id": "concept:reconfigure-other-control-plane-hosts-api-server-config-update-more-2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/decrypt-data.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/decrypt-data/",
          "line_start": 152,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/limit-storage-consumption",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/limit-storage-consumption.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/limit-storage-consumption/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/limit-storage-consumption",
      "to_id": "concept:scenario-limiting-storage-consumption",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/limit-storage-consumption.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/limit-storage-consumption/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/limit-storage-consumption",
      "to_id": "concept:limitrange-to-limit-requests-for-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/limit-storage-consumption.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/limit-storage-consumption/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/limit-storage-consumption",
      "to_id": "concept:resourcequota-to-limit-pvc-count-and-cumulative-storage-capacity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/limit-storage-consumption.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/limit-storage-consumption/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/limit-storage-consumption",
      "to_id": "concept:summary",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/limit-storage-consumption.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/limit-storage-consumption/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-reclaim-policy",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-reclaim-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-reclaim-policy",
      "to_id": "concept:why-change-reclaim-policy-of-a-persistentvolume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-reclaim-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-reclaim-policy",
      "to_id": "concept:changing-the-reclaim-policy-of-a-persistentvolume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-reclaim-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-reclaim-policy",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-reclaim-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-reclaim-policy",
      "to_id": "concept:references-reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-reclaim-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/hardening-dra",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/hardening-dra",
      "to_id": "concept:identify-dra-components-that-write-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/hardening-dra",
      "to_id": "concept:grant-least-privilege-permissions-for-synthetic-subresources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/hardening-dra",
      "to_id": "concept:bind-roles-to-explicit-identities",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/hardening-dra",
      "to_id": "concept:validate-and-monitor",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 95,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/hardening-dra",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/hardening-dra",
      "to_id": "concept:grant-scheduler-and-allocation-controller-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/hardening-dra",
      "to_id": "concept:grant-node-local-driver-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/hardening-dra",
      "to_id": "concept:grant-multi-node-controller-permissions-only-when-needed",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/hardening-dra.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/hardening-dra/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "gloss:cloud-controller-manager",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "concept:background",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "concept:grant-access-to-migration-lease",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "concept:initial-leader-migration-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "concept:deploy-cloud-controller-manager",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "concept:upgrade-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "concept:optional-disable-leader-migration-disable-leader-migration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "concept:default-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/controller-manager-leader-migration",
      "to_id": "concept:special-case-migrating-the-node-ipam-controller-node-ipam-controller-migration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/controller-manager-leader-migration.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/controller-manager-leader-migration/",
          "line_start": 218,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cpu-management-policies",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cpu-management-policies",
      "to_id": "concept:configuring-cpu-management-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cpu-management-policies",
      "to_id": "concept:windows-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cpu-management-policies",
      "to_id": "concept:configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cpu-management-policies",
      "to_id": "concept:changing-the-cpu-manager-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cpu-management-policies",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cpu-management-policies",
      "to_id": "concept:none-policy-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cpu-management-policies",
      "to_id": "concept:static-policy-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cpu-management-policies",
      "to_id": "concept:static-policy-options-cpu-policy-static-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/running-cloud-controller",
      "to_id": "gloss:cloud-controller-manager",
      "type": "references",
      "label": "cloud-controller-manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 7,
          "line_end": null,
          "quote": "cloud-controller-manager"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/running-cloud-controller",
      "to_id": "concept:administration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/running-cloud-controller",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/running-cloud-controller",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/running-cloud-controller",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/running-cloud-controller",
      "to_id": "concept:requirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/running-cloud-controller",
      "to_id": "concept:running-cloud-controller-manager",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/running-cloud-controller",
      "to_id": "concept:support-for-volumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/running-cloud-controller",
      "to_id": "concept:scalability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/running-cloud-controller",
      "to_id": "concept:chicken-and-egg",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/running-cloud-controller.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/access-cluster-api",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/access-cluster-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/access-cluster-api",
      "to_id": "concept:accessing-the-kubernetes-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/access-cluster-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/access-cluster-api",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/access-cluster-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
          "line_start": 377,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/access-cluster-api",
      "to_id": "concept:accessing-for-the-first-time-with-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/access-cluster-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/access-cluster-api",
      "to_id": "concept:directly-accessing-the-rest-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/access-cluster-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/access-cluster-api",
      "to_id": "concept:programmatic-access-to-the-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/access-cluster-api.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/",
          "line_start": 150,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors",
      "to_id": "concept:about-the-incompatible-cni-versions-and-failed-to-destroy-network-for-sandbox-errors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors",
      "to_id": "concept:an-example-containerd-configuration-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors",
      "to_id": "concept:incompatible-cni-versions-error",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors",
      "to_id": "concept:failed-to-destroy-network-for-sandbox-error",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors",
      "to_id": "concept:updating-your-cni-plugins-and-cni-config-files",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/troubleshooting-cni-plugin-related-errors/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "to_id": "concept:drain-the-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "to_id": "concept:stop-the-docker-daemon",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "to_id": "concept:install-containerd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "to_id": "concept:configure-the-kubelet-to-use-containerd-as-its-container-runtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 93,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "to_id": "concept:restart-the-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "to_id": "concept:verify-that-the-node-is-healthy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "to_id": "concept:remove-docker-engine",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "to_id": "concept:uncordon-the-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volume",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 45,
          "line_end": null,
          "quote": "volume"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:telemetry-and-security-agents",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:migration-from-dockershim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:why-do-some-telemetry-agents-communicate-with-docker-engine",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:identify-daemonsets-that-depend-on-docker-engine-identify-docker-dependency",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:detecting-docker-dependency-from-node-agents",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:telemetry-and-security-agent-vendors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:aqua-https-www-aquasec-com",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:datadog-https-www-datadoghq-com-product",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:dynatrace-https-www-dynatrace-com",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:falco-https-falco-org",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:prisma-cloud-compute-https-docs-paloaltonetworks-com-prisma-prisma-cloud-html",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:signalfx-splunk-https-www-splunk-com-en-us-investor-relations-acquisitions-signalfx-html",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 131,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents",
      "to_id": "concept:yahoo-kubectl-flame",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/",
          "line_start": 155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": 4,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": 46,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you",
      "to_id": "concept:finding-if-your-app-has-a-dependencies-on-docker-find-docker-dependencies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you",
      "to_id": "concept:dependency-on-docker-explained-role-of-dockershim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you",
      "to_id": "concept:known-issues",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you",
      "to_id": "concept:some-filesystem-metrics-are-missing-and-the-metrics-format-is-different",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use",
      "to_id": "concept:find-out-the-container-runtime-used-on-a-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use",
      "to_id": "concept:find-out-what-container-runtime-endpoint-you-use-which-endpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/_index.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/_index/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 4,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:create-a-limitrange-and-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:attempt-to-create-a-pod-that-exceeds-the-maximum-memory-constraint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:attempt-to-create-a-pod-that-does-not-meet-the-minimum-memory-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:create-a-pod-that-does-not-specify-any-memory-request-or-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 162,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:enforcement-of-minimum-and-maximum-memory-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 217,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:motivation-for-minimum-and-maximum-memory-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 230,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 252,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 255,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "concept:for-app-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 4,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 10,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "gloss:limitrange",
      "type": "references",
      "label": "LimitRange",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 40,
          "line_end": null,
          "quote": "LimitRange"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "gloss:resource-quota",
      "type": "references",
      "label": "resource quota",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 155,
          "line_end": null,
          "quote": "resource quota"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "concept:create-a-limitrange-and-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "concept:what-if-you-specify-a-container-s-limit-but-not-its-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "concept:what-if-you-specify-a-container-s-request-but-not-its-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "concept:motivation-for-default-cpu-limits-and-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 153,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 172,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 185,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "concept:for-app-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 4,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "concept:create-a-resourcequota",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "concept:create-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "concept:attempt-to-create-a-second-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "concept:discussion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 136,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 152,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 162,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 165,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "concept:for-app-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": 179,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "Namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 4,
          "line_end": null,
          "quote": "Namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 61,
          "line_end": null,
          "quote": "deployment"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "gloss:cronjob",
      "type": "references",
      "label": "CronJobs",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 100,
          "line_end": null,
          "quote": "CronJobs"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "concept:create-a-resourcequota",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 103,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "concept:choice-of-resource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "concept:for-app-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 4,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "gloss:limitrange",
      "type": "references",
      "label": "LimitRange",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 38,
          "line_end": null,
          "quote": "LimitRange"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:create-a-limitrange-and-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:delete-the-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:attempt-to-create-a-pod-that-exceeds-the-maximum-cpu-constraint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:attempt-to-create-a-pod-that-does-not-meet-the-minimum-cpu-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:create-a-pod-that-does-not-specify-any-cpu-request-or-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 171,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:enforcement-of-minimum-and-maximum-cpu-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 218,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:motivation-for-minimum-and-maximum-cpu-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 244,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 257,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "concept:for-app-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": 271,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 4,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 11,
          "line_end": null,
          "quote": "control plane"
        },
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 11,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "gloss:limitrange",
      "type": "references",
      "label": "LimitRange",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 43,
          "line_end": null,
          "quote": "LimitRange"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "gloss:resource-quota",
      "type": "references",
      "label": "resource quota",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 171,
          "line_end": null,
          "quote": "resource quota"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "concept:create-a-limitrange-and-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "concept:what-if-you-specify-a-container-s-limit-but-not-its-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "concept:what-if-you-specify-a-container-s-request-but-not-its-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "concept:motivation-for-default-memory-limits-and-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 169,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "concept:for-cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "concept:for-app-developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/romana-network-policy",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/romana-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/romana-network-policy",
      "to_id": "concept:installing-romana-with-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/romana-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/romana-network-policy",
      "to_id": "concept:applying-network-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/romana-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/romana-network-policy",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/romana-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/calico-network-policy",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/calico-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/calico-network-policy",
      "to_id": "concept:creating-a-calico-cluster-with-google-kubernetes-engine-gke",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/calico-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/calico-network-policy",
      "to_id": "concept:creating-a-local-calico-cluster-with-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/calico-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/calico-network-policy",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/calico-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/kube-router-network-policy",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/kube-router-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/kube-router-network-policy/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/kube-router-network-policy",
      "to_id": "concept:installing-kube-router-addon",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/kube-router-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/kube-router-network-policy/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/kube-router-network-policy",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/kube-router-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/kube-router-network-policy/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/weave-network-policy",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/weave-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/weave-network-policy",
      "to_id": "concept:install-the-weave-net-addon",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/weave-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/weave-network-policy",
      "to_id": "concept:test-the-installation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/weave-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/weave-network-policy",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/weave-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/cilium-network-policy",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/cilium-network-policy",
      "to_id": "concept:deploying-cilium-on-minikube-for-basic-testing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/cilium-network-policy",
      "to_id": "concept:deploying-cilium-for-production-use",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/cilium-network-policy",
      "to_id": "concept:understanding-cilium-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/cilium-network-policy",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/antrea-network-policy",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/antrea-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/antrea-network-policy/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/antrea-network-policy",
      "to_id": "concept:deploying-antrea-with-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/antrea-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/antrea-network-policy/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/antrea-network-policy",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/antrea-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/antrea-network-policy/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/change-package-repository",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/change-package-repository.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/change-package-repository/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/change-package-repository",
      "to_id": "concept:switching-to-another-kubernetes-package-repository",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/change-package-repository.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/change-package-repository/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/change-package-repository",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/change-package-repository.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/change-package-repository/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/change-package-repository",
      "to_id": "concept:verifying-if-the-kubernetes-package-repositories-are-used",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/change-package-repository.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/change-package-repository/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "to_id": "concept:changing-the-package-repository",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "to_id": "concept:upgrading-worker-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "to_id": "concept:upgrade-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "to_id": "concept:call-kubeadm-upgrade",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "to_id": "concept:drain-the-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "to_id": "concept:upgrade-kubelet-and-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "to_id": "concept:uncordon-the-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-linux-nodes",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-linux-nodes/",
          "line_start": 9,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-linux-nodes",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-linux-nodes/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-linux-nodes",
      "to_id": "concept:adding-linux-worker-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-linux-nodes/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-linux-nodes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-linux-nodes/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-linux-nodes",
      "to_id": "concept:additional-information-for-kubeadm-join",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-linux-nodes/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-windows-nodes",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-windows-nodes",
      "to_id": "concept:adding-windows-worker-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-windows-nodes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-windows-nodes",
      "to_id": "concept:install-containerd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-windows-nodes",
      "to_id": "concept:install-kubeadm-and-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-windows-nodes",
      "to_id": "concept:run-kubeadm-join",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-windows-nodes",
      "to_id": "concept:network-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-windows-nodes",
      "to_id": "concept:install-kubectl-for-windows-optional-install-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:changing-the-package-repository",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:determine-which-version-to-upgrade-to",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:upgrading-control-plane-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:upgrade-worker-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:verify-the-status-of-the-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 298,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:recovering-from-a-failure-state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:how-it-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 335,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:additional-information",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:considerations-when-upgrading-etcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:call-kubeadm-upgrade",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:drain-the-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 225,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:upgrade-kubelet-and-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-upgrade",
      "to_id": "concept:uncordon-the-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/",
          "line_start": 279,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-windows-nodes",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-windows-nodes",
      "to_id": "concept:upgrading-worker-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-windows-nodes",
      "to_id": "concept:upgrade-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-windows-nodes",
      "to_id": "concept:drain-the-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-windows-nodes",
      "to_id": "concept:upgrade-the-kubelet-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-windows-nodes",
      "to_id": "concept:upgrade-kubelet-and-kube-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-windows-nodes",
      "to_id": "concept:uncordon-the-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/configure-cgroup-driver",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/configure-cgroup-driver",
      "to_id": "concept:configuring-the-container-runtime-cgroup-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/configure-cgroup-driver",
      "to_id": "concept:configuring-the-kubelet-cgroup-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/configure-cgroup-driver",
      "to_id": "concept:using-the-cgroupfs-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/configure-cgroup-driver",
      "to_id": "concept:migrating-to-the-systemd-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/configure-cgroup-driver",
      "to_id": "concept:modify-the-kubelet-configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/configure-cgroup-driver",
      "to_id": "concept:update-the-cgroup-driver-on-all-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/configure-cgroup-driver.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/",
          "line_start": 109,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-reconfigure",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-reconfigure",
      "to_id": "concept:reconfiguring-the-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-reconfigure",
      "to_id": "concept:persisting-the-reconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 209,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-reconfigure",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-reconfigure",
      "to_id": "concept:applying-cluster-configuration-changes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-reconfigure",
      "to_id": "concept:applying-kubelet-configuration-changes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-reconfigure",
      "to_id": "concept:applying-kube-proxy-configuration-changes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-reconfigure",
      "to_id": "concept:applying-coredns-configuration-changes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-reconfigure",
      "to_id": "concept:persisting-node-object-reconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-reconfigure.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure/",
          "line_start": 214,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:using-custom-certificates-custom-certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:choosing-an-encryption-algorithm-choosing-encryption-algorithm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:choosing-certificate-validity-period-choosing-cert-validity-period",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:external-ca-mode-external-ca-mode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:certificate-expiry-and-management-check-certificate-expiration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:automatic-certificate-renewal",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:manual-certificate-renewal",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:renew-certificates-with-the-kubernetes-certificates-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:renew-certificates-with-external-ca",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 286,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:certificate-authority-ca-rotation-certificate-authority-rotation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 301,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:enabling-signed-kubelet-serving-certificates-kubelet-serving-certs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 307,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:generating-kubeconfig-files-for-additional-users-kubeconfig-additional-users",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 377,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:signing-certificate-signing-requests-csr-generated-by-kubeadm-signing-csr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 437,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:manual-preparation-of-component-credentials",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:preparation-of-credentials-by-signing-csrs-generated-by-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:automated-preparation-of-component-credentials-by-using-kubeadm-phases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:copying-the-administrator-certificate-optional-admin-certificate-copy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:set-up-a-signer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:create-certificate-signing-requests-csr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 281,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:renewal-by-using-certificate-signing-requests-csr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 295,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:preparing-ca-and-service-account-files",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 469,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:generate-csrs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 499,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:signing-csrs-for-all-certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 564,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:embedding-certificates-in-kubeconfig-files",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 628,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:performing-cleanup-post-csr-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 649,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/kubeadm-certs",
      "to_id": "concept:kubeadm-node-initialization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/",
          "line_start": 671,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 5,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "gloss:ingress",
      "type": "references",
      "label": "ingress",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 12,
          "line_end": null,
          "quote": "ingress"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 66,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "concept:create-a-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "concept:finding-your-ip-address",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "concept:preserving-the-client-source-ip",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "concept:garbage-collecting-load-balancers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "concept:external-load-balancer-providers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 183,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 193,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "concept:create-a-service-from-a-manifest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "concept:create-a-service-using-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/create-external-load-balancer",
      "to_id": "concept:caveats-and-limitations-when-preserving-source-ips",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/create-external-load-balancer.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/",
          "line_start": 153,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/port-forward-access-application-cluster",
      "to_id": "gloss:rbac",
      "type": "references",
      "label": "Role-Based Access Control (RBAC)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 205,
          "line_end": null,
          "quote": "Role-Based Access Control (RBAC)"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/port-forward-access-application-cluster",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/port-forward-access-application-cluster",
      "to_id": "concept:creating-mongodb-deployment-and-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/port-forward-access-application-cluster",
      "to_id": "concept:forward-a-local-port-to-a-port-on-the-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/port-forward-access-application-cluster",
      "to_id": "concept:discussion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/port-forward-access-application-cluster",
      "to_id": "concept:authorization-and-security-considerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/port-forward-access-application-cluster",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 211,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/port-forward-access-application-cluster",
      "to_id": "concept:optionally-let-kubectl-choose-the-local-port-let-kubectl-choose-local-port",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/port-forward-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/",
          "line_start": 171,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 33,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "to_id": "gloss:replica-set",
      "type": "references",
      "label": "ReplicaSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 35,
          "line_end": null,
          "quote": "ReplicaSet"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 37,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "to_id": "concept:creating-a-service-for-an-application-running-in-two-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "to_id": "concept:using-a-service-configuration-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 136,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "to_id": "concept:deploying-the-dashboard-ui",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "to_id": "concept:accessing-the-dashboard-ui",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "to_id": "concept:welcome-view",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "to_id": "concept:deploying-containerized-applications",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "to_id": "concept:using-dashboard",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 204,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 258,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "to_id": "concept:command-line-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "to_id": "concept:specifying-application-details",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "to_id": "concept:uploading-a-yaml-or-json-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 195,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/web-ui-dashboard",
      "to_id": "concept:navigation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/web-ui-dashboard.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/list-all-running-container-images",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/list-all-running-container-images",
      "to_id": "concept:list-all-container-images-in-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/list-all-running-container-images",
      "to_id": "concept:list-container-images-by-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/list-all-running-container-images",
      "to_id": "concept:list-container-images-filtering-by-pod-label",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/list-all-running-container-images",
      "to_id": "concept:list-container-images-filtering-by-pod-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/list-all-running-container-images",
      "to_id": "concept:list-container-images-using-a-go-template-instead-of-jsonpath",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/list-all-running-container-images",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/list-all-running-container-images",
      "to_id": "concept:reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "gloss:service",
      "type": "references",
      "label": "service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 5,
          "line_end": null,
          "quote": "service"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 10,
          "line_end": null,
          "quote": "deployment"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selectors",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 89,
          "line_end": null,
          "quote": "selectors"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "concept:creating-the-backend-using-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "concept:creating-the-hello-service-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "concept:creating-the-frontend",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 109,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "concept:interact-with-the-frontend-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "concept:send-traffic-through-the-frontend",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster-services",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster-services.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster-services/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster-services",
      "to_id": "concept:accessing-services-running-on-the-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster-services.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster-services/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster-services",
      "to_id": "concept:ways-to-connect",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster-services.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster-services/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster-services",
      "to_id": "concept:discovering-builtin-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster-services.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster-services/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:accessing-for-the-first-time-with-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:directly-accessing-the-rest-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:programmatic-access-to-the-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 171,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:accessing-the-api-from-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:accessing-services-running-on-the-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:requesting-redirects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 222,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:so-many-proxies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 226,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:using-kubectl-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:without-kubectl-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:go-client",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:python-client",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 193,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster",
      "to_id": "concept:other-languages",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 26,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:define-clusters-users-and-contexts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:create-a-second-configuration-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 247,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:set-the-kubeconfig-environment-variable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:explore-the-home-kube-directory",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 341,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:append-home-kube-config-to-your-kubeconfig-environment-variable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 351,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 376,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:check-the-subject-represented-by-the-kubeconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 392,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 404,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:linux",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 272,
          "line_end": null,
          "quote": null
        },
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 272,
          "line_end": null,
          "quote": null
        },
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 272,
          "line_end": null,
          "quote": null
        },
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 272,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/configure-access-multiple-clusters",
      "to_id": "concept:windows-powershell",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        },
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        },
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 363,
          "line_end": null,
          "quote": null
        },
        {
          "source": "tasks/access-application-cluster/configure-access-multiple-clusters.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/communicate-containers-same-pod-shared-volume",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/communicate-containers-same-pod-shared-volume.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/communicate-containers-same-pod-shared-volume",
      "to_id": "concept:creating-a-pod-that-runs-two-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/communicate-containers-same-pod-shared-volume.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/communicate-containers-same-pod-shared-volume",
      "to_id": "concept:discussion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/communicate-containers-same-pod-shared-volume.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/",
          "line_start": 107,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/communicate-containers-same-pod-shared-volume",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/communicate-containers-same-pod-shared-volume.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-rotation",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-rotation.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-rotation/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-rotation",
      "to_id": "concept:overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-rotation.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-rotation/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-rotation",
      "to_id": "concept:enabling-client-certificate-rotation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-rotation.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-rotation/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-rotation",
      "to_id": "concept:understanding-the-certificate-rotation-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-rotation.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-rotation/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/manual-rotation-of-ca-certificates",
      "to_id": "gloss:kube-controller-manager",
      "type": "references",
      "label": "kube-controller-manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/manual-rotation-of-ca-certificates.md",
          "url": "https://kubernetes.io/docs/tasks/tls/manual-rotation-of-ca-certificates/",
          "line_start": 32,
          "line_end": null,
          "quote": "kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/manual-rotation-of-ca-certificates",
      "to_id": "gloss:service-account",
      "type": "references",
      "label": "ServiceAccount",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/manual-rotation-of-ca-certificates.md",
          "url": "https://kubernetes.io/docs/tasks/tls/manual-rotation-of-ca-certificates/",
          "line_start": 35,
          "line_end": null,
          "quote": "ServiceAccount"
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/manual-rotation-of-ca-certificates",
      "to_id": "gloss:cloud-controller-manager",
      "type": "references",
      "label": "cloud-controller-manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/manual-rotation-of-ca-certificates.md",
          "url": "https://kubernetes.io/docs/tasks/tls/manual-rotation-of-ca-certificates/",
          "line_start": 73,
          "line_end": null,
          "quote": "cloud-controller-manager"
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/manual-rotation-of-ca-certificates",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "kube-scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/manual-rotation-of-ca-certificates.md",
          "url": "https://kubernetes.io/docs/tasks/tls/manual-rotation-of-ca-certificates/",
          "line_start": 102,
          "line_end": null,
          "quote": "kube-scheduler"
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/manual-rotation-of-ca-certificates",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/manual-rotation-of-ca-certificates.md",
          "url": "https://kubernetes.io/docs/tasks/tls/manual-rotation-of-ca-certificates/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/manual-rotation-of-ca-certificates",
      "to_id": "concept:rotate-the-ca-certificates-manually",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/manual-rotation-of-ca-certificates.md",
          "url": "https://kubernetes.io/docs/tasks/tls/manual-rotation-of-ca-certificates/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secret",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 291,
          "line_end": null,
          "quote": "Secret"
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 303,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:trusting-tls-in-a-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:requesting-a-certificate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:create-a-certificate-signing-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:create-a-certificatesigningrequest-object-to-send-to-the-kubernetes-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:get-the-certificatesigningrequest-approved-get-the-certificate-signing-request-approved",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:sign-the-certificatesigningrequest-sign-the-certificate-signing-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:download-the-certificate-and-use-it",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 280,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:approving-certificatesigningrequests-approving-certificate-signing-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:configuring-your-cluster-to-provide-signing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 350,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:create-a-certificate-authority",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:issue-a-certificate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/managing-tls-in-a-cluster",
      "to_id": "concept:upload-the-signed-certificate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/managing-tls-in-a-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/",
          "line_start": 251,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "gloss:rbac",
      "type": "references",
      "label": "role based access control",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 23,
          "line_end": null,
          "quote": "role based access control"
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "concept:create-private-key",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "concept:create-an-x-509-certificate-signing-request-create-x-509-certificatessigningrequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "concept:create-a-kubernetes-certificatesigningrequest-create-k8s-certificatessigningrequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "concept:approve-the-certificatesigningrequest-approve-certificate-signing-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "concept:get-the-certificate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "concept:configure-the-certificate-into-kubeconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "concept:create-role-and-rolebinding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": 183,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-gpus/scheduling-gpus",
      "to_id": "gloss:device-plugin",
      "type": "references",
      "label": "device plugins",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-gpus/scheduling-gpus.md",
          "url": "https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/",
          "line_start": 7,
          "line_end": null,
          "quote": "device plugins"
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-gpus/scheduling-gpus",
      "to_id": "concept:using-device-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-gpus/scheduling-gpus.md",
          "url": "https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-gpus/scheduling-gpus",
      "to_id": "concept:manage-clusters-with-different-types-of-gpus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-gpus/scheduling-gpus.md",
          "url": "https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-gpus/scheduling-gpus",
      "to_id": "concept:automatic-node-labelling-node-labeller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-gpus/scheduling-gpus.md",
          "url": "https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/setup-extension-api-server",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-extension-api-server.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-extension-api-server/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/setup-extension-api-server",
      "to_id": "concept:set-up-an-extension-api-server-to-work-with-the-aggregation-layer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-extension-api-server.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-extension-api-server/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/setup-extension-api-server",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-extension-api-server.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-extension-api-server/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-multiple-schedulers",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-multiple-schedulers",
      "to_id": "concept:package-the-scheduler",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-multiple-schedulers",
      "to_id": "concept:define-a-kubernetes-deployment-for-the-scheduler",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-multiple-schedulers",
      "to_id": "concept:run-the-second-scheduler-in-the-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-multiple-schedulers",
      "to_id": "concept:specify-schedulers-for-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-multiple-schedulers",
      "to_id": "concept:enable-leader-election",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-multiple-schedulers",
      "to_id": "concept:verifying-that-the-pods-were-scheduled-using-the-desired-schedulers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-multiple-schedulers.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/http-proxy-access-api",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/http-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/http-proxy-access-api/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/http-proxy-access-api",
      "to_id": "concept:using-kubectl-to-start-a-proxy-server",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/http-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/http-proxy-access-api/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/http-proxy-access-api",
      "to_id": "concept:exploring-the-kubernetes-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/http-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/http-proxy-access-api/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/http-proxy-access-api",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/http-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/http-proxy-access-api/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/setup-konnectivity",
      "to_id": "gloss:static-pod",
      "type": "references",
      "label": "static Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-konnectivity.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-konnectivity/",
          "line_start": 68,
          "line_end": null,
          "quote": "static Pod"
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/setup-konnectivity",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-konnectivity.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-konnectivity/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/setup-konnectivity",
      "to_id": "concept:configure-the-konnectivity-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-konnectivity.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-konnectivity/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/socks5-proxy-access-api",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/socks5-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/socks5-proxy-access-api",
      "to_id": "concept:task-context",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/socks5-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/socks5-proxy-access-api",
      "to_id": "concept:using-ssh-to-create-a-socks5-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/socks5-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/socks5-proxy-access-api",
      "to_id": "concept:client-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/socks5-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/socks5-proxy-access-api",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/socks5-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
          "line_start": 136,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/socks5-proxy-access-api",
      "to_id": "concept:further-reading",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/socks5-proxy-access-api.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/socks5-proxy-access-api/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:authentication-flow",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:enable-kubernetes-apiserver-flags",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 244,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 358,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:kubernetes-apiserver-authentication-and-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:kubernetes-apiserver-proxies-the-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:extension-apiserver-authenticates-the-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 201,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:extension-apiserver-authorizes-the-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:extension-apiserver-executes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:ca-reusage-and-conflicts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/configure-aggregation-layer",
      "to_id": "concept:register-apiservice-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/configure-aggregation-layer.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/configure-aggregation-layer/",
          "line_start": 307,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:specify-multiple-versions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:webhook-conversion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:webhook-request-and-response",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 710,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:writing-reading-and-updating-versioned-customresourcedefinition-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 1014,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:upgrade-existing-objects-to-a-new-stored-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 1067,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:version-priority",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:version-deprecation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 261,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:version-removal",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 348,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:write-a-conversion-webhook-server",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 398,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:deploy-the-conversion-webhook-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 430,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:configure-customresourcedefinition-to-use-conversion-webhooks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 445,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:contacting-the-webhook",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 590,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:url",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:service-reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 656,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 712,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:response",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 404,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "concept:previous-storage-versions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": 1060,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "gloss:etcd",
      "type": "references",
      "label": "etcd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 317,
          "line_end": null,
          "quote": "etcd"
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 318,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinition",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 1668,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        },
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 1668,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        },
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 1668,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:create-a-customresourcedefinition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:create-custom-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:delete-a-customresourcedefinition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:specifying-a-structural-schema",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:serving-multiple-versions-of-a-crd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 525,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:advanced-topics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 532,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 2015,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:field-pruning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 315,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:intorstring",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 454,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:rawextension",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 494,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:finalizers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 534,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:validation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 491,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:validation-ratcheting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 707,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:validation-rules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 595,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:defaulting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 1376,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:publish-validation-schema-in-openapi",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 1510,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:additional-printer-columns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 1541,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:field-selectors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 1659,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:subresources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 1745,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "concept:categories",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": 1930,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/automated-tasks-with-cron-jobs",
      "to_id": "gloss:cronjob",
      "type": "references",
      "label": "CronJob",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/automated-tasks-with-cron-jobs.md",
          "url": "https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/",
          "line_start": 3,
          "line_end": null,
          "quote": "CronJob"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/automated-tasks-with-cron-jobs",
      "to_id": "gloss:watch",
      "type": "references",
      "label": "Watch",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/automated-tasks-with-cron-jobs.md",
          "url": "https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/",
          "line_start": 43,
          "line_end": null,
          "quote": "Watch"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/automated-tasks-with-cron-jobs",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/automated-tasks-with-cron-jobs.md",
          "url": "https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/automated-tasks-with-cron-jobs",
      "to_id": "concept:creating-a-cronjob-creating-a-cron-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/automated-tasks-with-cron-jobs.md",
          "url": "https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/automated-tasks-with-cron-jobs",
      "to_id": "concept:deleting-a-cronjob-deleting-a-cron-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/automated-tasks-with-cron-jobs.md",
          "url": "https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "gloss:job",
      "type": "references",
      "label": "Job",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 10,
          "line_end": null,
          "quote": "Job"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "gloss:preemption",
      "type": "references",
      "label": "preemption",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 14,
          "line_end": null,
          "quote": "preemption"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "gloss:api-eviction",
      "type": "references",
      "label": "API-initiated eviction",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 15,
          "line_end": null,
          "quote": "API-initiated eviction"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "gloss:taint",
      "type": "references",
      "label": "taint",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 16,
          "line_end": null,
          "quote": "taint"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "concept:usage-scenarios",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "concept:alternatives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "concept:using-pod-failure-policy-to-avoid-unnecessary-pod-retries-pod-failure-policy-failjob",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "concept:using-pod-failure-policy-to-ignore-pod-disruptions-pod-failure-policy-ignore",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "concept:using-pod-failure-policy-to-avoid-unnecessary-pod-retries-based-on-custom-pod-conditions-pod-failure-policy-config-issue",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "concept:using-pod-failure-policy-to-avoid-unnecessary-pod-retries-per-index-backoff-limit-per-index-failindex",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": 249,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/coarse-parallel-processing-work-queue",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/coarse-parallel-processing-work-queue",
      "to_id": "concept:starting-a-message-queue-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/coarse-parallel-processing-work-queue",
      "to_id": "concept:testing-the-message-queue-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/coarse-parallel-processing-work-queue",
      "to_id": "concept:fill-the-queue-with-tasks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/coarse-parallel-processing-work-queue",
      "to_id": "concept:create-a-container-image",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/coarse-parallel-processing-work-queue",
      "to_id": "concept:defining-a-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/coarse-parallel-processing-work-queue",
      "to_id": "concept:running-the-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 236,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/coarse-parallel-processing-work-queue",
      "to_id": "concept:alternatives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 299,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/coarse-parallel-processing-work-queue",
      "to_id": "concept:caveats",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/coarse-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/coarse-parallel-processing-work-queue/",
          "line_start": 320,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/fine-parallel-processing-work-queue",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/fine-parallel-processing-work-queue",
      "to_id": "concept:starting-redis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/fine-parallel-processing-work-queue",
      "to_id": "concept:filling-the-queue-with-tasks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/fine-parallel-processing-work-queue",
      "to_id": "concept:create-a-container-image-create-an-image",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/fine-parallel-processing-work-queue",
      "to_id": "concept:defining-a-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/fine-parallel-processing-work-queue",
      "to_id": "concept:running-the-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 177,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/fine-parallel-processing-work-queue",
      "to_id": "concept:alternatives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/fine-parallel-processing-work-queue",
      "to_id": "concept:push-the-image",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/fine-parallel-processing-work-queue.md",
          "url": "https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/indexed-parallel-processing-static",
      "to_id": "gloss:annotation",
      "type": "references",
      "label": "annotation",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/indexed-parallel-processing-static.md",
          "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
          "line_start": 12,
          "line_end": null,
          "quote": "annotation"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/indexed-parallel-processing-static",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/indexed-parallel-processing-static.md",
          "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
          "line_start": 41,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/indexed-parallel-processing-static",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/indexed-parallel-processing-static.md",
          "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/indexed-parallel-processing-static",
      "to_id": "concept:choose-an-approach",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/indexed-parallel-processing-static.md",
          "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/indexed-parallel-processing-static",
      "to_id": "concept:define-an-indexed-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/indexed-parallel-processing-static.md",
          "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/indexed-parallel-processing-static",
      "to_id": "concept:running-the-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/indexed-parallel-processing-static.md",
          "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/job-with-pod-to-pod-communication",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/job-with-pod-to-pod-communication.md",
          "url": "https://kubernetes.io/docs/tasks/job/job-with-pod-to-pod-communication/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/job-with-pod-to-pod-communication",
      "to_id": "concept:starting-a-job-with-pod-to-pod-communication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/job-with-pod-to-pod-communication.md",
          "url": "https://kubernetes.io/docs/tasks/job/job-with-pod-to-pod-communication/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/job-with-pod-to-pod-communication",
      "to_id": "concept:example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/job-with-pod-to-pod-communication.md",
          "url": "https://kubernetes.io/docs/tasks/job/job-with-pod-to-pod-communication/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "gloss:job",
      "type": "references",
      "label": "Jobs",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 3,
          "line_end": null,
          "quote": "Jobs"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "gloss:manifest",
      "type": "references",
      "label": "manifest",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 47,
          "line_end": null,
          "quote": "manifest"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "label selector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 118,
          "line_end": null,
          "quote": "label selector"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 266,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "gloss:resource-quota",
      "type": "references",
      "label": "resource quota",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 294,
          "line_end": null,
          "quote": "resource quota"
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "concept:create-jobs-based-on-a-template",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "concept:use-advanced-template-parameters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "concept:using-jobs-in-real-workloads",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 249,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "concept:labels-on-jobs-and-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 263,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "concept:alternatives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 286,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "concept:create-manifests-from-the-template",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "concept:create-jobs-from-the-manifests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "concept:clean-up-cleanup-1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/parallel-processing-expansion",
      "to_id": "concept:clean-up-cleanup-2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/parallel-processing-expansion.md",
          "url": "https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/",
          "line_start": 238,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:installing-kubectl-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:writing-kubectl-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:distributing-kubectl-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 347,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 380,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:discovering-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:example-plugin",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:using-a-plugin",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:naming-a-plugin",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:checking-for-plugin-warnings",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 313,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:using-the-command-line-runtime-package",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 333,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:krew-distributing-krew",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 352,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:native-platform-specific-package-management-distributing-native",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 362,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubectl/kubectl-plugins",
      "to_id": "concept:source-code-distributing-source-code",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubectl/kubectl-plugins.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/",
          "line_start": 372,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kustomize",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kustomize",
      "to_id": "concept:create-a-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kustomize",
      "to_id": "concept:edit-a-secret-edit-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kustomize",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kustomize",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kustomize",
      "to_id": "concept:create-the-kustomization-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kustomize",
      "to_id": "concept:apply-the-kustomization-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-config-file",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-config-file",
      "to_id": "concept:create-the-secret-create-the-config-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-config-file",
      "to_id": "concept:edit-a-secret-edit-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-config-file",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-config-file",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-config-file",
      "to_id": "concept:specify-unencoded-data-when-creating-a-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-config-file",
      "to_id": "concept:specify-both-data-and-stringdata",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secrets",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 4,
          "line_end": null,
          "quote": "Secrets"
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "concept:create-a-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "concept:edit-a-secret-edit-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 197,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "concept:use-raw-data",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "concept:use-source-files",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "concept:verify-the-secret-verify-the-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "concept:decode-the-secret-decoding-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-command-argument-container",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": 4,
          "line_end": null,
          "quote": "pod"
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-command-argument-container",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-command-argument-container",
      "to_id": "concept:define-a-command-and-arguments-when-you-create-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-command-argument-container",
      "to_id": "concept:use-environment-variables-to-define-arguments",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-command-argument-container",
      "to_id": "concept:run-a-command-in-a-shell",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-command-argument-container",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": 107,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:create-a-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:create-a-pod-that-has-access-to-the-secret-data-through-a-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:define-container-environment-variables-using-secret-data",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 236,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:configure-all-key-value-pairs-in-a-secret-as-container-environment-variables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 308,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:example-provide-prod-test-credentials-to-pods-using-secrets-provide-prod-test-creds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 344,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 479,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:convert-your-secret-data-to-a-base-64-representation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:create-a-secret-directly-with-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:project-secret-keys-to-specific-file-paths",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:set-posix-permissions-for-secret-keys",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 197,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:define-a-container-environment-variable-with-data-from-a-single-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:define-container-environment-variables-with-data-from-multiple-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "concept:references",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": 473,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-container",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-container",
      "to_id": "concept:define-an-environment-variable-for-a-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-container",
      "to_id": "concept:using-environment-variables-inside-of-your-config",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-container",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/downward-api-volume-expose-pod-information",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/downward-api-volume-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/downward-api-volume-expose-pod-information",
      "to_id": "concept:store-pod-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/downward-api-volume-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/downward-api-volume-expose-pod-information",
      "to_id": "concept:store-container-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/downward-api-volume-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/downward-api-volume-expose-pod-information",
      "to_id": "concept:project-keys-to-specific-paths-and-file-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/downward-api-volume-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/downward-api-volume-expose-pod-information",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/downward-api-volume-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/",
          "line_start": 197,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-interdependent-environment-variables",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-interdependent-environment-variables.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-interdependent-environment-variables/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-interdependent-environment-variables",
      "to_id": "concept:define-an-environment-dependent-variable-for-a-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-interdependent-environment-variables.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-interdependent-environment-variables/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-interdependent-environment-variables",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-interdependent-environment-variables.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-interdependent-environment-variables/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-via-file",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-via-file",
      "to_id": "concept:how-the-design-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-via-file",
      "to_id": "concept:env-file-syntax-env-file-syntax",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-via-file",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-via-file",
      "to_id": "concept:rules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-via-file",
      "to_id": "concept:unsupported-forms",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/environment-variable-expose-pod-information",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/environment-variable-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/environment-variable-expose-pod-information",
      "to_id": "concept:use-pod-fields-as-values-for-environment-variables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/environment-variable-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/environment-variable-expose-pod-information",
      "to_id": "concept:use-container-fields-as-values-for-environment-variables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/environment-variable-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/environment-variable-expose-pod-information",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/environment-variable-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/create-daemon-set",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "DaemonSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/create-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/create-daemon-set/",
          "line_start": 3,
          "line_end": null,
          "quote": "DaemonSet"
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/create-daemon-set",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/create-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/create-daemon-set/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/create-daemon-set",
      "to_id": "concept:define-the-daemonset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/create-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/create-daemon-set/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/create-daemon-set",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/create-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/create-daemon-set/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/create-daemon-set",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/create-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/create-daemon-set/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/pods-some-nodes",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/pods-some-nodes",
      "to_id": "gloss:node",
      "type": "references",
      "label": "Nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 3,
          "line_end": null,
          "quote": "Nodes"
        },
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 3,
          "line_end": null,
          "quote": "nodes"
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/pods-some-nodes",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "DaemonSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 3,
          "line_end": null,
          "quote": "DaemonSet"
        },
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 3,
          "line_end": null,
          "quote": "DaemonSet"
        },
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 3,
          "line_end": null,
          "quote": "DaemonSet"
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/pods-some-nodes",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/pods-some-nodes",
      "to_id": "concept:running-pods-on-only-some-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/pods-some-nodes",
      "to_id": "concept:step-1-add-labels-to-your-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/pods-some-nodes",
      "to_id": "concept:step-2-create-the-manifest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/pods-some-nodes",
      "to_id": "concept:step-3-create-the-daemonset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:daemonset-update-strategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:performing-a-rolling-update",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:creating-a-daemonset-with-rollingupdate-update-strategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:checking-daemonset-rollingupdate-update-strategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:updating-a-daemonset-template",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:watching-the-rolling-update-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "concept:daemonset-rolling-update-is-stuck",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/rollback-daemon-set",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "daemonset",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 3,
          "line_end": null,
          "quote": "daemonset"
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/rollback-daemon-set",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 83,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/rollback-daemon-set",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/rollback-daemon-set",
      "to_id": "concept:performing-a-rollback-on-a-daemonset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/rollback-daemon-set",
      "to_id": "concept:understanding-daemonset-revisions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/rollback-daemon-set",
      "to_id": "concept:troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/rollback-daemon-set",
      "to_id": "concept:step-1-find-the-daemonset-revision-you-want-to-roll-back-to",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/rollback-daemon-set",
      "to_id": "concept:step-2-roll-back-to-a-specific-revision",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/rollback-daemon-set",
      "to_id": "concept:step-3-watch-the-progress-of-the-daemonset-rollback",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/_index",
      "to_id": "concept:getting-help",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/_index",
      "to_id": "concept:help-my-question-isn-t-covered-i-need-help-now",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/_index",
      "to_id": "concept:questions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/_index",
      "to_id": "concept:stack-exchange-stack-overflow-or-server-fault-stack-exchange",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/_index",
      "to_id": "concept:slack",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/_index",
      "to_id": "concept:forum",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/_index",
      "to_id": "concept:bugs-and-feature-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/_index/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 9,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "gloss:image",
      "type": "references",
      "label": "container image",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 342,
          "line_end": null,
          "quote": "container image"
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "gloss:ephemeral-container",
      "type": "references",
      "label": "Ephemeral containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 375,
          "line_end": null,
          "quote": "Ephemeral containers"
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:using-kubectl-describe-pod-to-fetch-details-about-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:example-debugging-pending-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:examining-pod-logs-examine-pod-logs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 326,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:debugging-with-container-exec-container-exec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 340,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:debugging-with-an-ephemeral-debug-container-ephemeral-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 371,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:debugging-using-a-copy-of-the-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 463,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:debugging-via-a-shell-on-the-node-node-shell-session",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 603,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:debugging-a-pod-or-node-while-applying-a-profile-debugging-profiles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 670,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:example-debugging-using-ephemeral-containers-ephemeral-container-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 381,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:copying-a-pod-while-adding-a-new-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 471,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:copying-a-pod-while-changing-its-command",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 516,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:copying-a-pod-while-changing-container-images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 574,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:capturing-and-analyzing-node-pod-traffic",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 635,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:applying-a-static-profile-static-profile",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 678,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "concept:applying-custom-profile-custom-profile",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": 752,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/get-shell-running-container",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/get-shell-running-container",
      "to_id": "concept:getting-a-shell-to-a-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/get-shell-running-container",
      "to_id": "concept:writing-the-root-page-for-nginx",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/get-shell-running-container",
      "to_id": "concept:running-individual-commands-in-a-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/get-shell-running-container",
      "to_id": "concept:opening-a-shell-when-a-pod-has-more-than-one-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": 129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/get-shell-running-container",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-pods",
      "to_id": "concept:diagnosing-the-problem",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-pods",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-pods",
      "to_id": "concept:debugging-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-pods",
      "to_id": "concept:debugging-replication-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-pods",
      "to_id": "concept:debugging-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-statefulset",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-statefulset.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-statefulset/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-statefulset",
      "to_id": "concept:debugging-a-statefulset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-statefulset.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-statefulset/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-statefulset",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-statefulset.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-statefulset/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-init-containers",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-init-containers",
      "to_id": "concept:checking-the-status-of-init-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-init-containers",
      "to_id": "concept:getting-details-about-init-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-init-containers",
      "to_id": "concept:accessing-logs-from-init-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-init-containers",
      "to_id": "concept:understanding-pod-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/determine-reason-pod-failure",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/determine-reason-pod-failure.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/determine-reason-pod-failure/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/determine-reason-pod-failure",
      "to_id": "concept:writing-and-reading-a-termination-message",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/determine-reason-pod-failure.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/determine-reason-pod-failure/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/determine-reason-pod-failure",
      "to_id": "concept:customizing-the-termination-message",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/determine-reason-pod-failure.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/determine-reason-pod-failure/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/determine-reason-pod-failure",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/determine-reason-pod-failure.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/determine-reason-pod-failure/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:running-commands-in-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:setup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:does-the-service-exist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:any-network-policy-ingress-rules-affecting-the-target-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:does-the-service-work-by-dns-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 215,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:does-the-service-work-by-ip",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 336,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:is-the-service-defined-correctly",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 359,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:does-the-service-have-any-endpointslices",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 411,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:are-the-pods-working",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 456,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:is-the-kube-proxy-working",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 488,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:seek-help",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 670,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 685,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:does-any-service-work-by-dns-name-does-any-service-exist-in-dns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 315,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:is-kube-proxy-running",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 500,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:is-kube-proxy-proxying",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 587,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "concept:edge-case-a-pod-fails-to-reach-itself-via-the-service-ip-a-pod-fails-to-reach-itself-via-the-service-ip",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": 608,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "concept:installing-crictl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "concept:general-usage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "concept:example-crictl-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "concept:list-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "concept:list-images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "concept:list-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "concept:execute-a-command-in-a-running-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "concept:get-a-container-s-logs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/topology",
      "to_id": "concept:sources-of-troubleshooting-information",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/topology",
      "to_id": "concept:troubleshoot-topologyaffinityerror-topologyaffinityerror",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/topology",
      "to_id": "concept:examine-system-logs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/topology",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/topology",
      "to_id": "concept:check-the-device-plugin-resource-api-device-plugin-resource-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 193,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/topology",
      "to_id": "concept:examine-the-memory-manager-state-on-a-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/topology.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/topology/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/windows",
      "to_id": "concept:node-level-troubleshooting-troubleshooting-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/windows.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/windows/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/windows",
      "to_id": "concept:network-troubleshooting-troubleshooting-network",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/windows.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/windows/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/windows",
      "to_id": "concept:flannel-troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/windows.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/windows/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/windows",
      "to_id": "concept:further-investigation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/windows.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/windows/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 4,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "kube-apiserver",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 95,
          "line_end": null,
          "quote": "kube-apiserver"
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "concept:verify-kubectl-setup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "concept:check-kubeconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "concept:check-vpn-connectivity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "concept:authentication-and-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "concept:verify-contexts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "concept:api-server-and-load-balancer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 93,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "concept:tls-problems",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/troubleshoot-kubectl",
      "to_id": "concept:verify-kubectl-helpers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/troubleshoot-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/troubleshoot-kubectl/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/audit",
      "to_id": "concept:audit-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/audit",
      "to_id": "concept:audit-backends",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/audit",
      "to_id": "concept:event-batching-batching",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/audit",
      "to_id": "concept:parameter-tuning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/audit",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 268,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/audit",
      "to_id": "concept:log-backend",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/audit",
      "to_id": "concept:webhook-backend",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/audit",
      "to_id": "concept:log-entry-truncation-truncate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/audit.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/audit/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/resource-usage-monitoring",
      "to_id": "concept:resource-metrics-pipeline",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-usage-monitoring.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-usage-monitoring/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/resource-usage-monitoring",
      "to_id": "concept:full-metrics-pipeline",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-usage-monitoring.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-usage-monitoring/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/resource-usage-monitoring",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-usage-monitoring.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-usage-monitoring/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "gloss:addons",
      "type": "references",
      "label": "Addon",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 25,
          "line_end": null,
          "quote": "Addon"
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:enabling-node-problem-detector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:overwrite-the-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:problem-daemons",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:exporter",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:recommendations-and-restrictions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:using-kubectl-to-enable-node-problem-detector-using-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:using-an-addon-pod-to-enable-node-problem-detector-using-addon-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:adding-support-for-other-log-format-support-other-log-format",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "concept:adding-custom-plugin-monitors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/resource-metrics-pipeline",
      "to_id": "concept:metrics-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/resource-metrics-pipeline",
      "to_id": "concept:measuring-resource-usage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 177,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/resource-metrics-pipeline",
      "to_id": "concept:metrics-server",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/resource-metrics-pipeline",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 226,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/resource-metrics-pipeline",
      "to_id": "concept:cpu",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/resource-metrics-pipeline",
      "to_id": "concept:memory",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/resource-metrics-pipeline.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/local-debugging",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/local-debugging.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/local-debugging",
      "to_id": "concept:connecting-your-local-machine-to-a-remote-kubernetes-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/local-debugging.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/local-debugging",
      "to_id": "concept:developing-or-debugging-an-existing-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/local-debugging.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/local-debugging",
      "to_id": "concept:how-does-telepresence-work",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/local-debugging.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/local-debugging",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/local-debugging.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/kubectl-node-debug",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/kubectl-node-debug.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/kubectl-node-debug/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/kubectl-node-debug",
      "to_id": "concept:debugging-a-node-using-kubectl-debug-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/kubectl-node-debug.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/kubectl-node-debug/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/kubectl-node-debug",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/kubectl-node-debug.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/kubectl-node-debug/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 8,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 226,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "concept:listing-your-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "concept:looking-at-logs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "concept:cluster-failure-modes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 310,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "concept:example-debugging-a-down-unreachable-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "concept:control-plane-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 221,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "concept:worker-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "concept:contributing-causes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 238,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "concept:specific-scenarios",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/_index",
      "to_id": "concept:mitigations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/_index/",
          "line_start": 281,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/_index",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "kube-apiserver",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/_index.md",
          "url": "https://kubernetes.io/docs/setup/_index/",
          "line_start": 10,
          "line_end": null,
          "quote": "kube-apiserver"
        }
      ]
    },
    {
      "from_id": "page:setup/_index",
      "to_id": "gloss:kube-proxy",
      "type": "references",
      "label": "kube-proxy",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/_index.md",
          "url": "https://kubernetes.io/docs/setup/_index/",
          "line_start": 10,
          "line_end": null,
          "quote": "kube-proxy"
        }
      ]
    },
    {
      "from_id": "page:setup/_index",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/_index.md",
          "url": "https://kubernetes.io/docs/setup/_index/",
          "line_start": 47,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:setup/_index",
      "to_id": "concept:learning-environment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/_index.md",
          "url": "https://kubernetes.io/docs/setup/_index/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/_index",
      "to_id": "concept:production-environment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/_index.md",
          "url": "https://kubernetes.io/docs/setup/_index/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/_index.md",
          "url": "https://kubernetes.io/docs/setup/_index/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 6,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "Container Runtime Interface",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 12,
          "line_end": null,
          "quote": "Container Runtime Interface"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "gloss:cgroup",
      "type": "references",
      "label": "control groups",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 73,
          "line_end": null,
          "quote": "control groups"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 76,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:install-and-configure-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:cgroup-drivers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:cri-version-support-cri-versions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 172,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:container-runtimes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 348,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:network-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:enable-ipv4-packet-forwarding-prerequisite-ipv4-forwarding-optional",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:cgroupfs-driver-cgroupfs-cgroup-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:systemd-cgroup-driver-systemd-cgroup-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:migrating-to-the-systemd-driver-in-kubeadm-managed-clusters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:containerd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:cri-o",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:docker-engine-docker",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 313,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "concept:mirantis-container-runtime-mcr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": 328,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/_index",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 28,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/_index",
      "to_id": "concept:production-considerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/_index",
      "to_id": "concept:production-cluster-setup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/_index",
      "to_id": "concept:production-user-management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/_index",
      "to_id": "concept:set-limits-on-workload-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 249,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 273,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/_index",
      "to_id": "concept:production-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/_index",
      "to_id": "concept:production-worker-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/_index/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:not-possible-to-join-a-v1-18-node-to-a-v1-17-cluster-due-to-missing-rbac",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:ebtables-or-some-similar-executable-not-found-during-installation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:kubeadm-blocks-waiting-for-control-plane-during-installation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:kubeadm-blocks-when-removing-managed-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 93,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:pods-in-runcontainererror-crashloopbackoff-or-error-state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:coredns-is-stuck-in-the-pending-state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:hostport-services-do-not-work",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:pods-are-not-accessible-via-their-service-ip",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:tls-certificate-errors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:kubelet-client-certificate-rotation-fails-kubelet-client-cert",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:default-nic-when-using-flannel-as-the-pod-network-in-vagrant",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 226,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:non-public-ip-used-for-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 244,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:coredns-pods-have-crashloopbackoff-or-error-state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 281,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:etcd-pods-restart-continually",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 307,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:not-possible-to-pass-a-comma-separated-list-of-values-to-arguments-inside-a-component-extra-args-flag",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 333,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:kube-proxy-scheduled-before-node-is-initialized-by-cloud-controller-manager",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 351,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:usr-is-mounted-read-only-on-nodes-usr-mounted-read-only",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 392,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:kubeadm-upgrade-plan-prints-out-context-deadline-exceeded-error-message",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 440,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:kubeadm-reset-unmounts-var-lib-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 449,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:cannot-use-the-metrics-server-securely-in-a-kubeadm-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 457,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/troubleshooting-kubeadm",
      "to_id": "concept:upgrade-fails-due-to-etcd-hash-not-changing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/troubleshooting-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/",
          "line_start": 476,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 57,
          "line_end": null,
          "quote": "container runtime"
        },
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 57,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 58,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "gloss:cni",
      "type": "references",
      "label": "Container Network Interface",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 58,
          "line_end": null,
          "quote": "Container Network Interface"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "Container Runtime Interface",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 116,
          "line_end": null,
          "quote": "Container Runtime Interface"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:check-your-os-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:verify-the-mac-address-and-product-uuid-are-unique-for-every-node-verify-mac-address",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:check-network-adapters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:check-required-ports-check-required-ports",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:swap-configuration-swap-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 95,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:installing-a-container-runtime-installing-runtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:installing-kubeadm-kubelet-and-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:configuring-a-cgroup-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 389,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 380,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/install-kubeadm",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/install-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/",
          "line_start": 406,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 224,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 226,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "concept:customizing-the-control-plane-with-flags-in-clusterconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "concept:customizing-with-patches-patches",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "concept:customizing-the-kubelet-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "concept:customizing-kube-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "concept:customizing-coredns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 218,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "concept:apiserver-flags",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "concept:controllermanager-flags",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "concept:scheduler-flags",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/control-plane-flags",
      "to_id": "concept:etcd-flags",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/control-plane-flags.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm",
      "to_id": "concept:setting-up-the-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm/",
          "line_start": 304,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 62,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "gloss:etcd",
      "type": "references",
      "label": "etcd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 150,
          "line_end": null,
          "quote": "etcd"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API Server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 151,
          "line_end": null,
          "quote": "API Server"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 152,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:instructions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:clean-up-tear-down",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 447,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:version-skew-policy-version-skew-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 503,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:limitations-limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 561,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:troubleshooting-troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 589,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 596,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:preparing-the-hosts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:preparing-the-required-container-images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:initializing-your-control-plane-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:considerations-about-apiserver-advertise-address-and-controlplaneendpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:more-information",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 197,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:installing-a-pod-network-add-on-pod-network",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 280,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:managed-node-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 348,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:control-plane-node-isolation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 366,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:adding-more-control-plane-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 395,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:adding-worker-nodes-join-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 400,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:optional-controlling-your-cluster-from-machines-other-than-the-control-plane-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 410,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:optional-proxying-api-server-to-localhost",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 435,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:remove-the-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 458,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:clean-up-the-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 494,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:kubeadm-s-skew-against-the-kubernetes-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 508,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:kubeadm-s-skew-against-the-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 522,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:kubeadm-s-skew-against-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 533,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:cluster-resilience-resilience",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 563,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:platform-compatibility-multi-platform",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 578,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/create-cluster-kubeadm",
      "to_id": "concept:feedback-feedback",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/",
          "line_start": 613,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/ha-topology",
      "to_id": "concept:stacked-etcd-topology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/ha-topology.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/ha-topology/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/ha-topology",
      "to_id": "concept:external-etcd-topology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/ha-topology.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/ha-topology/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/ha-topology",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/ha-topology.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/ha-topology/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 8,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 8,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "to_id": "gloss:kubeadm",
      "type": "references",
      "label": "kubeadm",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 14,
          "line_end": null,
          "quote": "kubeadm"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 17,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "to_id": "concept:enable-ipv6-packet-forwarding-prerequisite-ipv6-forwarding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "to_id": "concept:create-a-dual-stack-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "to_id": "concept:join-a-node-to-dual-stack-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 107,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/dual-stack-support",
      "to_id": "concept:create-a-single-stack-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/dual-stack-support.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/kubelet-integration",
      "to_id": "concept:kubelet-configuration-patterns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/kubelet-integration",
      "to_id": "concept:configure-kubelets-using-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/kubelet-integration",
      "to_id": "concept:the-kubelet-drop-in-file-for-systemd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/kubelet-integration",
      "to_id": "concept:kubernetes-binaries-and-package-contents",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 205,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/kubelet-integration",
      "to_id": "concept:propagating-cluster-level-configuration-to-each-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/kubelet-integration",
      "to_id": "concept:providing-instance-specific-configuration-details",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/kubelet-integration",
      "to_id": "concept:workflow-when-using-kubeadm-init",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/kubelet-integration",
      "to_id": "concept:workflow-when-using-kubeadm-join",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/kubelet-integration.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:first-steps-for-both-methods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:stacked-control-plane-and-etcd-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:external-etcd-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 265,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:common-tasks-after-bootstrapping-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 345,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:manual-certificate-distribution-manual-certs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 356,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:container-images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:command-line-interface-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:create-load-balancer-for-kube-apiserver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:steps-for-the-first-control-plane-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 153,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:steps-for-the-rest-of-the-control-plane-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        },
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:set-up-the-etcd-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 271,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:set-up-the-first-control-plane-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 288,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/kubeadm/high-availability",
      "to_id": "concept:install-workers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/kubeadm/high-availability.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/",
          "line_start": 347,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 43,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 44,
          "line_end": null,
          "quote": "StatefulSet"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 49,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 60,
          "line_end": null,
          "quote": "scheduler"
        },
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 60,
          "line_end": null,
          "quote": "scheduler"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 115,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "gloss:ingress",
      "type": "references",
      "label": "Ingress",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 116,
          "line_end": null,
          "quote": "Ingress"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "gloss:toleration",
      "type": "references",
      "label": "toleration",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 128,
          "line_end": null,
          "quote": "toleration"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "concept:background",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "concept:control-plane-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "concept:node-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "concept:manual-zone-assignment-for-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "concept:storage-access-for-zones",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "concept:networking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "concept:fault-recovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/multiple-zones",
      "to_id": "concept:distributing-nodes-across-zones",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/multiple-zones.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/multiple-zones/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/enforcing-pod-security-standards",
      "to_id": "concept:using-the-built-in-pod-security-admission-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/enforcing-pod-security-standards",
      "to_id": "concept:third-party-alternatives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/enforcing-pod-security-standards",
      "to_id": "concept:configure-all-cluster-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/enforcing-pod-security-standards",
      "to_id": "concept:embrace-the-principle-of-least-privilege",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/enforcing-pod-security-standards",
      "to_id": "concept:adopt-a-multi-mode-strategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "gloss:node",
      "type": "references",
      "label": "nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 1,
          "line_end": null,
          "quote": "nodes"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 3,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 59,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "gloss:addons",
      "type": "references",
      "label": "addon",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 70,
          "line_end": null,
          "quote": "addon"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "DaemonSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 104,
          "line_end": null,
          "quote": "DaemonSet"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "concept:cloud-provider-resource-quotas-quota-issues",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "concept:control-plane-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "concept:addon-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "concept:prioritizing-cluster-essential-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/cluster-large",
      "to_id": "concept:etcd-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/cluster-large.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/cluster-large/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 21,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "concept:how-certificates-are-used-by-your-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "concept:where-certificates-are-stored",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "concept:configure-certificates-manually",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "concept:configure-certificates-for-user-accounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "concept:server-certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "concept:client-certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "concept:kubelet-s-server-and-client-certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "concept:single-root-ca",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "concept:all-certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/certificates",
      "to_id": "concept:certificate-paths",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/certificates.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/certificates/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/node-conformance",
      "to_id": "concept:node-conformance-test",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/node-conformance",
      "to_id": "concept:node-prerequisite",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/node-conformance",
      "to_id": "concept:running-node-conformance-test",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/node-conformance",
      "to_id": "concept:running-node-conformance-test-for-other-architectures",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/node-conformance",
      "to_id": "concept:running-selected-test",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/node-conformance",
      "to_id": "concept:caveats",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/learning-environment/_index",
      "to_id": "concept:installing-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/learning-environment/_index",
      "to_id": "concept:setting-up-local-kubernetes-environments",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/learning-environment/_index",
      "to_id": "concept:using-online-playgrounds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/learning-environment/_index",
      "to_id": "concept:practicing-with-production-like-clusters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/learning-environment/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/learning-environment/_index",
      "to_id": "concept:kind",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/learning-environment/_index",
      "to_id": "concept:minikube",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/learning-environment/_index",
      "to_id": "concept:other-local-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/learning-environment/_index.md",
          "url": "https://kubernetes.io/docs/setup/learning-environment/_index/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/_index",
      "to_id": "gloss:cluster",
      "type": "references",
      "label": "cluster",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/_index.md",
          "url": "https://kubernetes.io/docs/concepts/_index/",
          "line_start": 3,
          "line_end": null,
          "quote": "cluster"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 21,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "gloss:object",
      "type": "references",
      "label": "API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 35,
          "line_end": null,
          "quote": "API object"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 57,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 99,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "gloss:addons",
      "type": "references",
      "label": "addons",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 135,
          "line_end": null,
          "quote": "addons"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "gloss:operator-pattern",
      "type": "references",
      "label": "operators",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 136,
          "line_end": null,
          "quote": "operators"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "gloss:container-env-variables",
      "type": "references",
      "label": "environment variable",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 205,
          "line_end": null,
          "quote": "environment variable"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "gloss:configmap",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "concept:motivation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "concept:configmap-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "concept:configmaps-and-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "concept:using-configmaps",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "concept:immutable-configmaps-configmap-immutable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "concept:using-configmaps-as-files-from-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "concept:using-configmaps-as-environment-variables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 5,
          "line_end": null,
          "quote": "pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "gloss:image",
      "type": "references",
      "label": "container image",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 6,
          "line_end": null,
          "quote": "container image"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMaps",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 16,
          "line_end": null,
          "quote": "ConfigMaps"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "gloss:operator-pattern",
      "type": "references",
      "label": "operator",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 109,
          "line_end": null,
          "quote": "operator"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "gloss:service-account",
      "type": "references",
      "label": "ServiceAccount",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 174,
          "line_end": null,
          "quote": "ServiceAccount"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 207,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "gloss:container-env-variables",
      "type": "references",
      "label": "environment variables",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 475,
          "line_end": null,
          "quote": "environment variables"
        },
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 475,
          "line_end": null,
          "quote": "environment variable"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "gloss:static-pod",
      "type": "references",
      "label": "static Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 589,
          "line_end": null,
          "quote": "static Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:uses-for-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:types-of-secret-secret-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:working-with-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 422,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:immutable-secrets-secret-immutable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 591,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:information-security-for-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 669,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:use-case-dotfiles-in-a-secret-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:use-case-secret-visible-to-one-container-in-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:alternatives-to-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:opaque-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:serviceaccount-token-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:docker-config-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:basic-authentication-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 296,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:ssh-authentication-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 323,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:tls-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 348,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:bootstrap-token-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 385,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:creating-a-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 424,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:editing-a-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 457,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:using-a-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 472,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:using-secrets-as-files-from-a-pod-using-secrets-as-files-from-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 504,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:using-secrets-as-environment-variables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 539,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:container-image-pull-secrets-using-imagepullsecrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 558,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:using-secrets-with-static-pods-restriction-static-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 587,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:marking-a-secret-as-immutable-secret-immutable-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 604,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "concept:configure-least-privilege-access-to-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": 660,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 3,
          "line_end": null,
          "quote": "pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "gloss:container",
      "type": "references",
      "label": "container",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 4,
          "line_end": null,
          "quote": "container"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "kube-scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 8,
          "line_end": null,
          "quote": "kube-scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 9,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 26,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "gloss:cgroup",
      "type": "references",
      "label": "cgroups",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 29,
          "line_end": null,
          "quote": "cgroups"
        },
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 29,
          "line_end": null,
          "quote": "cgroups"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "gloss:eviction",
      "type": "references",
      "label": "evicted",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 281,
          "line_end": null,
          "quote": "evicted"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:requests-and-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:resource-requests-and-limits-of-pod-and-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:pod-level-resource-specification",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:resource-units-in-kubernetes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:container-resources-example-example-1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 186,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:pod-resources-example-example-2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 222,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:how-pods-with-resource-requests-are-scheduled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:how-kubernetes-applies-resource-requests-and-limits-how-pods-with-resource-limits-are-run",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 250,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:local-ephemeral-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:extended-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 393,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:pid-limiting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 541,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 287,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 700,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:huge-pages",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:cpu-resource-units-meaning-of-cpu",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:memory-resource-units-meaning-of-memory",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 168,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:resizing-container-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 289,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:monitoring-compute-memory-resource-usage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:considerations-for-memory-backed-emptydir-volumes-memory-backed-emptydir",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 331,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:resource-monitoring-for-local-ephemeral-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:managing-extended-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 403,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:consuming-extended-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 493,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:my-pods-are-pending-with-event-message-failedscheduling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 549,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "concept:my-container-is-terminated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": 643,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/organize-cluster-access-kubeconfig",
      "to_id": "concept:supporting-multiple-clusters-users-and-authentication-mechanisms",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/organize-cluster-access-kubeconfig",
      "to_id": "concept:context",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/organize-cluster-access-kubeconfig",
      "to_id": "concept:the-kubeconfig-environment-variable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/organize-cluster-access-kubeconfig",
      "to_id": "concept:merging-kubeconfig-files",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/organize-cluster-access-kubeconfig",
      "to_id": "concept:file-references",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/organize-cluster-access-kubeconfig",
      "to_id": "concept:proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/organize-cluster-access-kubeconfig",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/organize-cluster-access-kubeconfig.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/",
          "line_start": 168,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/windows-resource-management",
      "to_id": "gloss:cgroup",
      "type": "references",
      "label": "cgroups",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/windows-resource-management.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
          "line_start": 7,
          "line_end": null,
          "quote": "cgroups"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/windows-resource-management",
      "to_id": "gloss:job",
      "type": "references",
      "label": "Job",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/windows-resource-management.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
          "line_start": 16,
          "line_end": null,
          "quote": "Job"
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/windows-resource-management",
      "to_id": "concept:memory-management-resource-management-memory",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/windows-resource-management.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/windows-resource-management",
      "to_id": "concept:cpu-management-resource-management-cpu",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/windows-resource-management.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/windows-resource-management",
      "to_id": "concept:resource-reservation-resource-reservation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/windows-resource-management.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:base-security-hardening",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:advanced-security-hardening-advanced",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:application-design",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:service-account",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:pod-level-securitycontext-recommendations-security-context-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:container-level-securitycontext-recommendations-security-context-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:role-based-access-control-rbac-rbac",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:image-security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:network-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:linux-container-security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/application-security-checklist",
      "to_id": "concept:runtime-classes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/application-security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/application-security-checklist/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "concept:run-workloads-without-root-privileges-run-without-root",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "concept:security-features-in-the-linux-kernel-linux-security-features",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "concept:kernel-level-security-features-and-privileged-containers-kernel-security-features-privileged-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 222,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "concept:recommendations-and-best-practices-recommendations-best-practices",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 263,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "concept:seccomp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "concept:apparmor-and-selinux-policy-based-mandatory-access-control-policy-based-mac",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 107,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "concept:summary-of-features-summary",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "concept:considerations-for-managing-custom-configurations-considerations-custom-configurations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 212,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "concept:privileged-containers-privileged-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "gloss:rbac",
      "type": "references",
      "label": "RBAC",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 3,
          "line_end": null,
          "quote": "RBAC"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:general-good-practice",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:kubernetes-rbac-privilege-escalation-risks-privilege-escalation-risks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:kubernetes-rbac-denial-of-service-risks-denial-of-service-risks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:least-privilege",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:minimize-distribution-of-privileged-tokens",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:hardening",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:periodic-review",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:listing-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:workload-creation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:persistent-volume-creation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:access-to-proxy-subresource-of-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:escalate-verb",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:bind-verb",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:impersonate-verb",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:csrs-and-certificate-issuing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:token-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:control-admission-webhooks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:namespace-modification",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "concept:object-creation-denial-of-service-object-creation-dos",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": 194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "gloss:cncf",
      "type": "references",
      "label": "CNCF",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 2,
          "line_end": null,
          "quote": "CNCF"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespaces",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 68,
          "line_end": null,
          "quote": "namespaces"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "gloss:container",
      "type": "references",
      "label": "Containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 106,
          "line_end": null,
          "quote": "Containers"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 112,
          "line_end": null,
          "quote": "container runtime"
        },
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 112,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:cloud-native-information-security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:develop-lifecycle-phase-lifecycle-phase-develop",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:distribute-lifecycle-phase-lifecycle-phase-distribute",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:deploy-lifecycle-phase-lifecycle-phase-deploy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:runtime-lifecycle-phase-lifecycle-phase-runtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 195,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:runtime-protection-access-protection-runtime-access",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:runtime-protection-compute-protection-runtime-compute",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:runtime-protection-storage-protection-runtime-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:networking-and-security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:observability-and-runtime-security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:cloud-native-security-further-reading-cloud-native",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 197,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/cloud-native-security",
      "to_id": "concept:kubernetes-and-information-security-further-reading-k8s",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/cloud-native-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/cloud-native-security/",
          "line_start": 207,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 22,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 59,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "gloss:jwt",
      "type": "references",
      "label": "JSON Web Tokens",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 245,
          "line_end": null,
          "quote": "JSON Web Tokens"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "gloss:uid",
      "type": "references",
      "label": "unique ID",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 268,
          "line_end": null,
          "quote": "unique ID"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:what-are-service-accounts-what-are-service-accounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:use-cases-for-kubernetes-service-accounts-use-cases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:how-to-use-service-accounts-how-to-use",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:authenticating-service-account-credentials-authenticating-credentials",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:alternatives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 297,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 316,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:default-service-accounts-default-service-accounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:grant-permissions-to-a-serviceaccount-grant-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:assign-a-serviceaccount-to-a-pod-assign-to-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:restricting-access-to-secrets-deprecated-enforce-mountable-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "concept:authenticating-service-account-credentials-in-your-own-code-authenticating-in-code",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": 275,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "gloss:etcd",
      "type": "references",
      "label": "etcd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 21,
          "line_end": null,
          "quote": "etcd"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "gloss:rbac",
      "type": "references",
      "label": "Role-based Access Control",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 28,
          "line_end": null,
          "quote": "Role-based Access Control"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "gloss:manifest",
      "type": "references",
      "label": "manifest",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 109,
          "line_end": null,
          "quote": "manifest"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "gloss:secret",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "concept:cluster-administrators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "concept:good-practices-for-using-swap-memory",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "concept:developers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "concept:configure-encryption-at-rest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "concept:configure-least-privilege-access-to-secrets-least-privilege-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "concept:improve-etcd-management-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "concept:configure-access-to-external-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "concept:restrict-secret-access-to-specific-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "concept:protect-secret-data-after-reading",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "concept:avoid-sharing-secret-manifests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "gloss:admission-controller",
      "type": "references",
      "label": "admission controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 7,
          "line_end": null,
          "quote": "admission controllers"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 19,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "gloss:mirror-pod",
      "type": "references",
      "label": "mirror pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 31,
          "line_end": null,
          "quote": "mirror pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "concept:static-pods-static-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "concept:the-kubelet-api-kubelet-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "concept:the-etcd-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "concept:container-runtime-socket-runtime-socket",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "concept:mitigations-static-pods-mitigations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "concept:mitigations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "concept:mitigations-etcd-api-mitigations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/api-server-bypass-risks",
      "to_id": "concept:mitigations-runtime-socket-mitigations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/api-server-bypass-risks.md",
          "url": "https://kubernetes.io/docs/concepts/security/api-server-bypass-risks/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "Namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 119,
          "line_end": null,
          "quote": "Namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:use-cases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:terminology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:control-plane-isolation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:data-plane-isolation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 197,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:additional-considerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 310,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:implementations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 396,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:multiple-teams",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:multiple-customers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:tenants",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:isolation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:access-controls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:quotas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:network-isolation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:storage-isolation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:sandboxing-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 257,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:node-isolation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 283,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:api-priority-and-fairness",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:quality-of-service-qos-qos",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 327,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:dns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:operators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 380,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:namespace-per-tenant",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 399,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/multi-tenancy",
      "to_id": "concept:virtual-control-plane-per-tenant",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/multi-tenancy.md",
          "url": "https://kubernetes.io/docs/concepts/security/multi-tenancy/",
          "line_start": 441,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "gloss:admission-controller",
      "type": "references",
      "label": "admission controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 10,
          "line_end": null,
          "quote": "admission controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 11,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 34,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 36,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 72,
          "line_end": null,
          "quote": "deployment"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "gloss:job",
      "type": "references",
      "label": "job",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 72,
          "line_end": null,
          "quote": "job"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 73,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "concept:pod-security-levels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "concept:pod-security-admission-labels-for-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "concept:workload-resources-and-pod-templates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "concept:exemptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "concept:metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "concept:built-in-pod-security-admission-enforcement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/controlling-access",
      "to_id": "concept:transport-security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/controlling-access",
      "to_id": "concept:authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/controlling-access",
      "to_id": "concept:authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/controlling-access",
      "to_id": "concept:admission-control",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/controlling-access",
      "to_id": "concept:auditing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/controlling-access",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/controlling-access.md",
          "url": "https://kubernetes.io/docs/concepts/security/controlling-access/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:authentication-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:network-security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:pod-security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:logs-and-auditing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:pod-placement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:admission-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 312,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:what-s-next",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 397,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:enabling-seccomp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/security-checklist",
      "to_id": "concept:enabling-apparmor-or-selinux",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/security-checklist.md",
          "url": "https://kubernetes.io/docs/concepts/security/security-checklist/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:profile-details",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:policy-instantiation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 482,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:pod-os-field",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 507,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:user-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 530,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:faq",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 536,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:privileged",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:baseline",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:restricted",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:alternatives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 497,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:restricted-pod-security-standard-changes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 519,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:why-isn-t-there-a-profile-between-privileged-and-baseline",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 538,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:what-s-the-difference-between-a-security-profile-and-a-security-context",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 548,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "concept:what-about-sandboxed-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": 560,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-security",
      "to_id": "concept:protection-for-secret-data-on-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-security/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/windows-security",
      "to_id": "concept:protection-for-secret-data-on-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/windows-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/windows-security/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/windows-security",
      "to_id": "concept:container-users",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/windows-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/windows-security/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/windows-security",
      "to_id": "concept:pod-level-security-isolation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/windows-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/windows-security/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/_index",
      "to_id": "gloss:cncf",
      "type": "references",
      "label": "CNCF",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 6,
          "line_end": null,
          "quote": "CNCF"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/_index",
      "to_id": "concept:kubernetes-security-mechanisms-security-mechanisms",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/_index",
      "to_id": "concept:cloud-provider-security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/_index",
      "to_id": "concept:policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/_index",
      "to_id": "concept:control-plane-protection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/_index",
      "to_id": "concept:secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/_index",
      "to_id": "concept:workload-protection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/_index",
      "to_id": "concept:admission-control-admission-control",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/_index",
      "to_id": "concept:auditing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/_index.md",
          "url": "https://kubernetes.io/docs/concepts/security/_index/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/scheduler",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 2,
          "line_end": null,
          "quote": "scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/scheduler",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 4,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/scheduler",
      "to_id": "concept:kube-scheduler-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/scheduler",
      "to_id": "concept:scheduling-configurations-for-custom-schedulers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/scheduler",
      "to_id": "concept:disallow-labeling-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/scheduler",
      "to_id": "concept:scheduler-authentication-authorization-command-line-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/scheduler",
      "to_id": "concept:scheduler-networking-command-line-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/scheduler",
      "to_id": "concept:scheduler-tls-command-line-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/scheduler",
      "to_id": "concept:key-considerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/scheduler/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/dynamic-resource-allocation",
      "to_id": "concept:harden-dra-status-update-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/dynamic-resource-allocation",
      "to_id": "concept:node-aware-dra-verbs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/dynamic-resource-allocation",
      "to_id": "concept:example-rbac-patterns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/dynamic-resource-allocation",
      "to_id": "concept:related-cluster-administrator-task",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/dynamic-resource-allocation",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/dynamic-resource-allocation",
      "to_id": "concept:scheduler-and-allocation-controller-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/dynamic-resource-allocation",
      "to_id": "concept:node-local-dra-driver-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/dynamic-resource-allocation",
      "to_id": "concept:multi-node-status-controller-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/dynamic-resource-allocation/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/authentication-mechanisms",
      "to_id": "concept:x-509-client-certificate-authentication-x509-client-certificate-authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/authentication-mechanisms",
      "to_id": "concept:static-token-file-static-token-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/authentication-mechanisms",
      "to_id": "concept:bootstrap-tokens-bootstrap-tokens",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/authentication-mechanisms",
      "to_id": "concept:serviceaccount-secret-tokens-serviceaccount-secret-tokens",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/authentication-mechanisms",
      "to_id": "concept:tokenrequest-api-tokens-tokenrequest-api-tokens",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/authentication-mechanisms",
      "to_id": "concept:openid-connect-token-authentication-openid-connect-token-authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/authentication-mechanisms",
      "to_id": "concept:webhook-token-authentication-webhook-token-authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/authentication-mechanisms",
      "to_id": "concept:authenticating-proxy-authenticating-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/hardening-guide/authentication-mechanisms",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/hardening-guide/authentication-mechanisms.md",
          "url": "https://kubernetes.io/docs/concepts/security/hardening-guide/authentication-mechanisms/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-declared-features",
      "to_id": "concept:how-it-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-declared-features.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-declared-features/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-declared-features",
      "to_id": "concept:enabling-node-declared-features",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-declared-features.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-declared-features/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-declared-features",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-declared-features.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-declared-features/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node(s)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 4,
          "line_end": null,
          "quote": "node(s)"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 9,
          "line_end": null,
          "quote": "scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:node-labels-built-in-node-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:nodeselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:affinity-and-anti-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:nodename",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:nominatednodename",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 633,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:pod-topology-spread-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:pod-topology-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 667,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:operators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 720,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:node-isolation-restriction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:node-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "concept:inter-pod-affinity-and-anti-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:framework-workflow",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:interfaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:plugin-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:plugin-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:scheduling-cycle-binding-cycle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:preenqueue-pre-enqueue",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:enqueueextension",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:queueinghint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:queuesort-queue-sort",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:prefilter-pre-filter",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:filter",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:postfilter-post-filter",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:prescore-pre-score",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:score-scoring",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:normalizescore-normalize-scoring",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:reserve-reserve",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:permit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:prebind-pre-bind",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 223,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:bind",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "concept:postbind-post-bind",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": 240,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-scheduling-readiness",
      "to_id": "concept:configuring-pod-schedulinggates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-scheduling-readiness",
      "to_id": "concept:usage-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-scheduling-readiness",
      "to_id": "concept:observability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-scheduling-readiness",
      "to_id": "concept:mutable-pod-scheduling-directives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-scheduling-readiness",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 4,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "gloss:pod-disruption-budget",
      "type": "references",
      "label": "PodDisruptionBudget",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 16,
          "line_end": null,
          "quote": "PodDisruptionBudget"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "gloss:workload",
      "type": "references",
      "label": "workload",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 28,
          "line_end": null,
          "quote": "workload"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 29,
          "line_end": null,
          "quote": "StatefulSet"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 30,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "gloss:pod-priority",
      "type": "references",
      "label": "Priority",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 462,
          "line_end": null,
          "quote": "Priority"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "gloss:node-pressure-eviction",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:self-healing-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:eviction-signals-and-thresholds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:eviction-monitoring-interval",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 259,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:node-conditions-node-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:node-out-of-memory-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 446,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:good-practices-node-pressure-eviction-good-practices",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 476,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:known-issues",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 514,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 550,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:self-healing-for-static-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:eviction-signals-eviction-signals",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:deprecated-kubelet-garbage-collection-features",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:eviction-thresholds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:node-condition-oscillation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 284,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:reclaiming-node-level-resources-reclaim-node-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 294,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:pod-selection-for-kubelet-eviction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 332,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:minimum-eviction-reclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 402,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:schedulable-resources-and-eviction-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 480,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:daemonsets-and-node-pressure-eviction-daemonset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 506,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:kubelet-may-not-observe-memory-pressure-right-away",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 518,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "concept:active-file-memory-is-not-considered-as-available-memory",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": 533,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "gloss:affinity",
      "type": "references",
      "label": "affinity",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 248,
          "line_end": null,
          "quote": "affinity"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "gloss:qos-class",
      "type": "references",
      "label": "QoS class",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 339,
          "line_end": null,
          "quote": "QoS class"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:how-to-use-priority-and-preemption",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:priorityclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:non-preempting-priorityclass-non-preempting-priority-class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:pod-priority",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:preemption",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 179,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 280,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:interactions-between-pod-priority-and-quality-of-service-interactions-of-pod-priority-and-qos",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 337,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 365,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:notes-about-podpriority-and-existing-clusters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:example-priorityclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:example-non-preempting-priorityclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:effect-of-pod-priority-on-scheduling-order",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:user-exposed-information",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:limitations-of-preemption",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:pods-are-preempted-unnecessarily",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 285,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:pods-are-preempted-but-the-preemptor-is-not-scheduled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 305,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "concept:higher-priority-pods-are-preempted-before-lower-priority-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-aware-scheduling",
      "to_id": "concept:scheduling-framework-tas-plugins-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-aware-scheduling/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-aware-scheduling",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-aware-scheduling/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-aware-scheduling",
      "to_id": "concept:customizing-plugin-weights-and-bin-packing-resource-weights",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-aware-scheduling/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/gang-scheduling",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API group",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/gang-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/gang-scheduling/",
          "line_start": 11,
          "line_end": null,
          "quote": "API group"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/gang-scheduling",
      "to_id": "concept:how-it-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/gang-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/gang-scheduling/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/gang-scheduling",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/gang-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/gang-scheduling/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API group",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 75,
          "line_end": null,
          "quote": "API group"
        },
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 75,
          "line_end": null,
          "quote": "API groups"
        },
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 75,
          "line_end": null,
          "quote": "API groups"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "gloss:podgroup",
      "type": "references",
      "label": "PodGroups",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 138,
          "line_end": null,
          "quote": "PodGroups"
        },
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 138,
          "line_end": null,
          "quote": "PodGroups"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "gloss:cel",
      "type": "references",
      "label": "Common Expression Language (CEL)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 148,
          "line_end": null,
          "quote": "Common Expression Language (CEL)"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "gloss:device",
      "type": "references",
      "label": "devices",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 344,
          "line_end": null,
          "quote": "devices"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 367,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "gloss:cdi",
      "type": "references",
      "label": "CDI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 1415,
          "line_end": null,
          "quote": "CDI"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "gloss:dra",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:about-dra-about-dra",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:dra-terminology-terminology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:how-resource-allocation-with-dra-works-how-it-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 425,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:observability-of-dynamic-resources-observability-dynamic-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 477,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:pre-scheduled-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 542,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 576,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:dra-beta-features-beta-features",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 586,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:dra-alpha-features-alpha-features",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 649,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 1603,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:benefits-of-dra-dra-benefits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:types-of-dra-users-dra-user-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:deviceclass-deviceclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:resourceclaims-and-resourceclaimtemplates-resourceclaims-templates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:resourceslice-resourceslice",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 341,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:workflow-for-users-user-workflow",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 431,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:workflow-for-kubernetes-kubernetes-workflow",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 445,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:kubelet-device-metrics-monitoring-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 486,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:resourceclaim-device-status-resourceclaim-device-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 494,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:device-health-monitoring-device-health-monitoring",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 522,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:admin-access-admin-access",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 599,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:granular-status-authorization-granular-status-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 635,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:extended-resource-allocation-by-dra-extended-resource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 658,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:partitionable-devices-partitionable-devices",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 697,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:consumable-capacity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 769,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:device-taints-and-tolerations-device-taints-and-tolerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 875,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:resource-pool-status-resource-pool-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 1046,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:device-binding-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 1121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:node-allocatable-resources-node-allocatable-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 1235,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:dra-device-metadata-in-containers-device-metadata",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 1357,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/dynamic-resource-allocation",
      "to_id": "concept:list-type-attributes-list-type-attributes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/dynamic-resource-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/",
          "line_start": 1529,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-overhead",
      "to_id": "gloss:cgroup",
      "type": "references",
      "label": "cgroup",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-overhead.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
          "line_start": 105,
          "line_end": null,
          "quote": "cgroup"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-overhead",
      "to_id": "concept:configuring-pod-overhead-set-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-overhead.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-overhead",
      "to_id": "concept:usage-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-overhead.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-overhead",
      "to_id": "concept:verify-pod-cgroup-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-overhead.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-overhead",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-overhead.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-overhead",
      "to_id": "concept:observability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-overhead.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
          "line_start": 185,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/workload-aware-preemption",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API group",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/workload-aware-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/workload-aware-preemption/",
          "line_start": 18,
          "line_end": null,
          "quote": "API group"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/workload-aware-preemption",
      "to_id": "concept:how-it-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/workload-aware-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/workload-aware-preemption/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/workload-aware-preemption",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/workload-aware-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/workload-aware-preemption/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API group",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 18,
          "line_end": null,
          "quote": "API group"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:podgroup-scheduling-cycle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:podgroup-scheduling-algorithm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:placement-scheduling-algorithm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:podgroup-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:phase-1-candidate-placement-generation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:phase-2-pod-level-filtering-and-feasibility-check",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:phase-3-placement-scoring-and-selection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:podgroupscheduled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 131,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "concept:disruptiontarget",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduler-perf-tuning",
      "to_id": "concept:node-scoring-threshold-percentage-of-nodes-to-score",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduler-perf-tuning",
      "to_id": "concept:example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduler-perf-tuning",
      "to_id": "concept:tuning-percentageofnodestoscore",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduler-perf-tuning",
      "to_id": "concept:how-the-scheduler-iterates-over-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduler-perf-tuning",
      "to_id": "concept:enabling-opportunistic-batching",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduler-perf-tuning",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduler-perf-tuning",
      "to_id": "concept:setting-the-threshold",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduler-perf-tuning",
      "to_id": "concept:default-threshold",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduler-perf-tuning.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/resource-bin-packing",
      "to_id": "concept:enabling-bin-packing-using-mostallocated-strategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/resource-bin-packing.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/resource-bin-packing",
      "to_id": "concept:enabling-bin-packing-using-requestedtocapacityratio",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/resource-bin-packing.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/resource-bin-packing",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/resource-bin-packing.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
          "line_start": 261,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/resource-bin-packing",
      "to_id": "concept:tuning-the-score-function",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/resource-bin-packing.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/resource-bin-packing",
      "to_id": "concept:node-scoring-for-capacity-allocation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/resource-bin-packing.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/api-eviction",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 4,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/api-eviction",
      "to_id": "gloss:pod-disruption-budget",
      "type": "references",
      "label": "PodDisruptionBudget",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 70,
          "line_end": null,
          "quote": "PodDisruptionBudget"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/api-eviction",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 85,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/api-eviction",
      "to_id": "gloss:endpoint-slice",
      "type": "references",
      "label": "EndpointSlice",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 89,
          "line_end": null,
          "quote": "EndpointSlice"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/api-eviction",
      "to_id": "gloss:api-eviction",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/api-eviction",
      "to_id": "concept:calling-the-eviction-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/api-eviction",
      "to_id": "concept:how-api-initiated-eviction-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/api-eviction",
      "to_id": "concept:troubleshooting-stuck-evictions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/api-eviction",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "gloss:node",
      "type": "references",
      "label": "nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 4,
          "line_end": null,
          "quote": "nodes"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 357,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "gloss:qos-class",
      "type": "references",
      "label": "QoS class",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 370,
          "line_end": null,
          "quote": "QoS class"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "concept:concepts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "concept:numeric-comparison-operators-numeric-comparison-operators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "concept:example-use-cases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "concept:taint-based-evictions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 273,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "concept:taint-nodes-by-condition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 355,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "concept:device-taints-and-tolerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 388,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": 396,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "gloss:workload",
      "type": "references",
      "label": "workload",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 17,
          "line_end": null,
          "quote": "workload"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 210,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:motivation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:topologyspreadconstraints-field",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:consistency",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 258,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:topology-spread-constraint-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 273,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:implicit-conventions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 485,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:cluster-level-default-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 512,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:comparison-with-podaffinity-and-podantiaffinity-comparison-with-podaffinity-podantiaffinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 591,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:known-limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 616,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 644,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:spread-constraint-definition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:node-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 207,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:example-one-topology-spread-constraint-example-one-topologyspreadconstraint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 275,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:example-multiple-topology-spread-constraints-example-multiple-topologyspreadconstraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 367,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:example-conflicting-topology-spread-constraints-example-conflicting-topologyspreadconstraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 401,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:example-topology-spread-constraints-with-node-affinity-example-topologyspreadconstraints-with-nodeaffinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 443,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "concept:built-in-default-constraints-internal-default-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": 543,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/kube-scheduler",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/kube-scheduler",
      "to_id": "gloss:node",
      "type": "references",
      "label": "Nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 4,
          "line_end": null,
          "quote": "Nodes"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/kube-scheduler",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 5,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/kube-scheduler",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 25,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/kube-scheduler",
      "to_id": "concept:scheduling-overview-scheduling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/kube-scheduler",
      "to_id": "concept:kube-scheduler",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/kube-scheduler",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/kube-scheduler",
      "to_id": "concept:node-selection-in-kube-scheduler-kube-scheduler-implementation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/_index",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": 1,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/_index",
      "to_id": "gloss:node",
      "type": "references",
      "label": "Nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": 2,
          "line_end": null,
          "quote": "Nodes"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/_index",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": 3,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/_index",
      "to_id": "gloss:pod-priority",
      "type": "references",
      "label": "Priority",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": 4,
          "line_end": null,
          "quote": "Priority"
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/_index",
      "to_id": "gloss:pod-disruption",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/_index",
      "to_id": "concept:scheduling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/_index",
      "to_id": "concept:pod-disruption",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "gloss:csi",
      "type": "references",
      "label": "CSI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 40,
          "line_end": null,
          "quote": "CSI"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 250,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "concept:types-of-ephemeral-volumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "concept:csi-ephemeral-volumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        },
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "concept:csi-driver-restrictions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "concept:generic-ephemeral-volumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        },
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "concept:lifecycle-and-persistentvolumeclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 181,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "concept:persistentvolumeclaim-naming",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "concept:security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 238,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "concept:ephemeral-volumes-managed-by-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": 252,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-capacity",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-capacity.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-capacity/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-capacity",
      "to_id": "concept:api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-capacity.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-capacity/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-capacity",
      "to_id": "concept:scheduling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-capacity.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-capacity/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-capacity",
      "to_id": "concept:rescheduling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-capacity.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-capacity/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-capacity",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-capacity.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-capacity/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-capacity",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-capacity.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-capacity/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-populators-and-data-sources",
      "to_id": "gloss:persistent-volume-claim",
      "type": "references",
      "label": "PersistentVolumeClaim",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 9,
          "line_end": null,
          "quote": "PersistentVolumeClaim"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-populators-and-data-sources",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinition",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 20,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-populators-and-data-sources",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 70,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-populators-and-data-sources",
      "to_id": "concept:volume-populators-and-data-sources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-populators-and-data-sources",
      "to_id": "concept:data-source-references",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-populators-and-data-sources",
      "to_id": "concept:cross-namespace-data-sources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-populators-and-data-sources",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-populators-and-data-sources",
      "to_id": "concept:using-volume-populators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-populators-and-data-sources",
      "to_id": "concept:using-a-cross-namespace-volume-data-source",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/windows-storage",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volumes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/windows-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/windows-storage/",
          "line_start": 35,
          "line_end": null,
          "quote": "volumes"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/windows-storage",
      "to_id": "concept:persistent-storage-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/windows-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/windows-storage/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/projected-volumes",
      "to_id": "concept:introduction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/projected-volumes",
      "to_id": "concept:serviceaccounttoken-projected-volumes-serviceaccounttoken",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/projected-volumes",
      "to_id": "concept:clustertrustbundle-projected-volumes-clustertrustbundle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/projected-volumes",
      "to_id": "concept:podcertificate-projected-volumes-podcertificate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/projected-volumes",
      "to_id": "concept:securitycontext-interactions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 169,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/projected-volumes",
      "to_id": "concept:example-configuration-with-a-secret-a-downwardapi-and-a-configmap-example-configuration-secret-downwardapi-configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/projected-volumes",
      "to_id": "concept:example-configuration-secrets-with-a-non-default-permission-mode-set-example-configuration-secrets-nondefault-permission-mode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/projected-volumes",
      "to_id": "concept:linux",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/projected-volumes",
      "to_id": "concept:windows",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CRDs",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 36,
          "line_end": null,
          "quote": "CRDs"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "gloss:persistent-volume-claim",
      "type": "references",
      "label": "PersistentVolumeClaim",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 92,
          "line_end": null,
          "quote": "PersistentVolumeClaim"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "concept:introduction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "concept:lifecycle-of-a-volume-snapshot-and-volume-snapshot-content",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "concept:volumesnapshots",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "concept:volume-snapshot-contents",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "concept:converting-the-volume-mode-of-a-snapshot-convert-volume-mode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "concept:provisioning-volumes-from-snapshots",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "concept:provisioning-volume-snapshot",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "concept:binding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "concept:persistent-volume-claim-as-snapshot-source-protection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "concept:delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-pvc-datasource",
      "to_id": "gloss:csi",
      "type": "references",
      "label": "CSI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-pvc-datasource.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
          "line_start": 10,
          "line_end": null,
          "quote": "CSI"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-pvc-datasource",
      "to_id": "gloss:persistent-volume-claim",
      "type": "references",
      "label": "PVC",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-pvc-datasource.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
          "line_start": 11,
          "line_end": null,
          "quote": "PVC"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-pvc-datasource",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volume",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-pvc-datasource.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
          "line_start": 12,
          "line_end": null,
          "quote": "volume"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-pvc-datasource",
      "to_id": "concept:introduction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-pvc-datasource.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-pvc-datasource",
      "to_id": "concept:provisioning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-pvc-datasource.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-pvc-datasource",
      "to_id": "concept:usage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-pvc-datasource.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:storageclass-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:default-storageclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:provisioner",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:reclaim-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:volume-expansion-allow-volume-expansion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:mount-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:volume-binding-mode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:allowed-topologies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:parameters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 210,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:aws-ebs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 220,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:aws-efs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:nfs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:vsphere",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:ceph-rbd-deprecated-ceph-rbd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 356,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:azure-disk",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 393,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:azure-file-deprecated-azure-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 406,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:portworx-volume-deprecated-portworx-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 436,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-classes",
      "to_id": "concept:local",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-classes/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshot-classes",
      "to_id": "concept:introduction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshot-classes",
      "to_id": "concept:the-volumesnapshotclass-resource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshot-classes",
      "to_id": "concept:parameters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshot-classes",
      "to_id": "concept:volumesnapshotclass-dependencies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshot-classes",
      "to_id": "concept:driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshot-classes",
      "to_id": "concept:deletionpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "gloss:csi",
      "type": "references",
      "label": "csi",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 363,
          "line_end": null,
          "quote": "csi"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "gloss:quantity",
      "type": "references",
      "label": "quantity",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 567,
          "line_end": null,
          "quote": "quantity"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:introduction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:lifecycle-of-a-volume-and-claim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:types-of-persistent-volumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 476,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:persistent-volumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 356,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:persistentvolumeclaims",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:claims-as-volumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:raw-block-volume-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 590,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:volume-snapshot-and-restore-volume-from-snapshot-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1094,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:volume-cloning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:volume-populators-and-data-sources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:writing-portable-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:provisioning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:binding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:using",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:storage-object-in-use-protection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:reclaiming",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:persistentvolume-deletion-protection-finalizer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:reserving-a-persistentvolume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:expanding-persistent-volumes-claims",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 356,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:capacity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:volume-mode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 572,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:access-modes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        },
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        },
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:reclaim-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:mount-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 690,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:node-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 262,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:phase",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 744,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:volume-modes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 802,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:volume-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 807,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 815,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 830,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:unused-pvc-tracking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 919,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:a-note-on-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 980,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:persistentvolumes-typed-hostpath",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 986,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:persistentvolume-using-a-raw-block-volume-persistent-volume-using-a-raw-block-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1005,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:persistentvolumeclaim-requesting-a-raw-block-volume-persistent-volume-claim-requesting-a-raw-block-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1025,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:pod-specification-adding-raw-block-device-path-in-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1041,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:binding-block-volumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1068,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:create-a-persistentvolumeclaim-from-a-volume-snapshot-create-persistent-volume-claim-from-volume-snapshot",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:create-persistentvolumeclaim-from-an-existing-pvc-create-persistent-volume-claim-from-an-existing-pvc",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "concept:api-references-reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": 1208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-storage",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volumes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": 8,
          "line_end": null,
          "quote": "volumes"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-storage",
      "to_id": "concept:configurations-for-local-ephemeral-storage-configurations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-storage",
      "to_id": "concept:setting-requests-and-limits-for-local-ephemeral-storage-requests-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-storage",
      "to_id": "concept:how-pods-with-ephemeral-storage-requests-are-scheduled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": 171,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-storage",
      "to_id": "concept:ephemeral-storage-consumption-management-resource-emphemeralstorage-consumption",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-storage",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-storage.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-storage/",
          "line_start": 306,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-limits",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "kube-scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 53,
          "line_end": null,
          "quote": "kube-scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-limits",
      "to_id": "concept:kubernetes-default-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-limits",
      "to_id": "concept:dynamic-volume-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-limits",
      "to_id": "concept:mutable-csi-node-allocatable-count",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-limits",
      "to_id": "concept:preventing-pod-placement-without-csi-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-limits",
      "to_id": "concept:csi-volume-attach-limits-and-cluster-autoscaler",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pod"
        },
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 7,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secret",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 8,
          "line_end": null,
          "quote": "Secret"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "gloss:sidecar-container",
      "type": "references",
      "label": "sidecar container",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 15,
          "line_end": null,
          "quote": "sidecar container"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volume",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 34,
          "line_end": null,
          "quote": "volume"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "gloss:image",
      "type": "references",
      "label": "container image",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 62,
          "line_end": null,
          "quote": "container image"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "gloss:downward-api",
      "type": "references",
      "label": "downward API",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 135,
          "line_end": null,
          "quote": "downward API"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "gloss:csi",
      "type": "references",
      "label": "CSI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 242,
          "line_end": null,
          "quote": "CSI"
        },
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 242,
          "line_end": null,
          "quote": "Container Storage Interface"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "gloss:static-pod",
      "type": "references",
      "label": "static Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 317,
          "line_end": null,
          "quote": "static Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:why-volumes-are-important",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:how-volumes-work",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:types-of-volumes-volume-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:using-subpath-using-subpath",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 783,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 865,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:out-of-tree-volume-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 876,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:mount-propagation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 1082,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:read-only-mounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 1142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 1206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:downwardapi-downwardapi",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:emptydir-emptydir",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:fc-fibre-channel-fc",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:gcepersistentdisk-deprecated-gcepersistentdisk",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:gitrepo-disabled-gitrepo",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 251,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:hostpath-hostpath",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:image",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:iscsi",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 572,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:local",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:nfs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 662,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:persistentvolumeclaim-persistentvolumeclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 699,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:portworxvolume-deprecated-portworxvolume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 709,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:projected",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 757,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:using-subpath-with-expanded-environment-variables-using-subpath-expanded-environment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 824,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:csi",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:flexvolume-deprecated-flexvolume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 1059,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "concept:recursive-read-only-mounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": 1156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/dynamic-provisioning",
      "to_id": "concept:background",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/dynamic-provisioning",
      "to_id": "concept:enabling-dynamic-provisioning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/dynamic-provisioning",
      "to_id": "concept:using-dynamic-provisioning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/dynamic-provisioning",
      "to_id": "concept:defaulting-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/dynamic-provisioning",
      "to_id": "concept:topology-awareness",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-attributes-classes",
      "to_id": "gloss:csi",
      "type": "references",
      "label": "Container Storage Interface",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-attributes-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/",
          "line_start": 18,
          "line_end": null,
          "quote": "Container Storage Interface"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-attributes-classes",
      "to_id": "concept:the-volumeattributesclass-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-attributes-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-attributes-classes",
      "to_id": "concept:parameters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-attributes-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/",
          "line_start": 109,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-attributes-classes",
      "to_id": "concept:provisioner",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-attributes-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-attributes-classes",
      "to_id": "concept:resizer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-attributes-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-health-monitoring",
      "to_id": "gloss:csi",
      "type": "references",
      "label": "CSI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": 5,
          "line_end": null,
          "quote": "CSI"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-health-monitoring",
      "to_id": "gloss:persistent-volume-claim",
      "type": "references",
      "label": "PVCs",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": 7,
          "line_end": null,
          "quote": "PVCs"
        },
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": 7,
          "line_end": null,
          "quote": "PersistentVolumeClaim"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-health-monitoring",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": 8,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-health-monitoring",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": 17,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-health-monitoring",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": 24,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-health-monitoring",
      "to_id": "concept:volume-health-monitoring",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-health-monitoring",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 6,
          "line_end": null,
          "quote": "pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 21,
          "line_end": null,
          "quote": "selector"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 441,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:the-two-sorts-of-pod-isolation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:the-networkpolicy-resource-networkpolicy-resource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:behavior-of-to-and-from-selectors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:default-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:network-traffic-filtering",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 252,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:targeting-a-range-of-ports",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:targeting-multiple-namespaces-by-label",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 297,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:targeting-a-namespace-by-its-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 335,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:pod-lifecycle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 343,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:networkpolicy-and-hostnetwork-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 384,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:what-you-can-t-do-with-network-policies-at-least-not-yet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 426,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:networkpolicy-s-impact-on-existing-connections",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 452,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 462,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:default-deny-all-ingress-traffic",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 196,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:allow-all-ingress-traffic",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:default-deny-all-egress-traffic",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:allow-all-egress-traffic",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 232,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/network-policies",
      "to_id": "concept:default-deny-all-ingress-and-all-egress-traffic",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/network-policies.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/network-policies/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 14,
          "line_end": null,
          "quote": "selector"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "gloss:kube-controller-manager",
      "type": "references",
      "label": "kube-controller-manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 49,
          "line_end": null,
          "quote": "kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "gloss:kube-proxy",
      "type": "references",
      "label": "kube-proxy",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 53,
          "line_end": null,
          "quote": "kube-proxy"
        },
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 53,
          "line_end": null,
          "quote": "kube-proxy"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 115,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "gloss:label",
      "type": "references",
      "label": "label",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 122,
          "line_end": null,
          "quote": "label"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "gloss:endpoint-slice",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "concept:endpointslice-api-endpointslice-resource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 220,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "concept:address-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "concept:conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "concept:topology-information-topology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "concept:management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "concept:ownership",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "concept:distribution-of-endpointslices",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 136,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "concept:duplicate-endpoints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "concept:endpointslice-mirroring",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service-traffic-policy",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service-traffic-policy.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service-traffic-policy/",
          "line_start": 15,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service-traffic-policy",
      "to_id": "concept:using-service-internal-traffic-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service-traffic-policy.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service-traffic-policy/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service-traffic-policy",
      "to_id": "concept:how-it-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service-traffic-policy.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service-traffic-policy/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service-traffic-policy",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service-traffic-policy.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service-traffic-policy/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress-controllers",
      "to_id": "concept:ingress-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress-controllers.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress-controllers",
      "to_id": "concept:third-party-ingress-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress-controllers.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress-controllers",
      "to_id": "concept:using-multiple-ingress-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress-controllers.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress-controllers",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress-controllers.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 6,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Services",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 6,
          "line_end": null,
          "quote": "Services"
        },
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 6,
          "line_end": null,
          "quote": "Services"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "concept:supported-features",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "concept:prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "concept:configure-ipv4-ipv6-dual-stack",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "concept:services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "concept:egress-traffic",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "concept:windows-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 293,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "concept:dual-stack-service-configuration-scenarios",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "concept:headless-services-without-selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 248,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dual-stack",
      "to_id": "concept:service-type-loadbalancer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dual-stack.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dual-stack/",
          "line_start": 254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "gloss:addons",
      "type": "references",
      "label": "add-on",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 4,
          "line_end": null,
          "quote": "add-on"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 42,
          "line_end": null,
          "quote": "Service"
        },
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 42,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "concept:design-principles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "concept:resource-model",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "concept:request-flow",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 220,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "concept:conformance",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 240,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "concept:migrating-from-ingress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 249,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 258,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "concept:gatewayclass-api-kind-gateway-class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "concept:gateway-api-kind-gateway",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "concept:httproute-api-kind-httproute",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/gateway",
      "to_id": "concept:grpcroute-api-kind-grpcroute",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/gateway.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/gateway/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/cluster-ip-allocation",
      "to_id": "concept:how-service-clusterips-are-allocated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/cluster-ip-allocation",
      "to_id": "concept:why-do-you-need-to-reserve-service-cluster-ips",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/cluster-ip-allocation",
      "to_id": "concept:how-can-you-avoid-service-clusterip-conflicts-avoid-clusterip-conflict",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/cluster-ip-allocation",
      "to_id": "concept:examples-allocation-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/cluster-ip-allocation",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/cluster-ip-allocation",
      "to_id": "concept:example-1-allocation-example-1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/cluster-ip-allocation",
      "to_id": "concept:example-2-allocation-example-2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/cluster-ip-allocation",
      "to_id": "concept:example-3-allocation-example-3",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 11,
          "line_end": null,
          "quote": "deployment"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 15,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 47,
          "line_end": null,
          "quote": "selector"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinitions",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 63,
          "line_end": null,
          "quote": "CustomResourceDefinitions"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 69,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:object",
      "type": "references",
      "label": "object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 81,
          "line_end": null,
          "quote": "object"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:endpoint-slice",
      "type": "references",
      "label": "EndpointSlices",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 168,
          "line_end": null,
          "quote": "EndpointSlices"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 177,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:label",
      "type": "references",
      "label": "label",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 230,
          "line_end": null,
          "quote": "label"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:annotation",
      "type": "references",
      "label": "annotation",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 318,
          "line_end": null,
          "quote": "annotation"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "gloss:service",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:services-in-kubernetes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:defining-a-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:service-type-publishing-services-service-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 386,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:headless-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 838,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:discovering-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 883,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:virtual-ip-addressing-mechanism",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 961,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:external-ips",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 1007,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:api-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 1048,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 1053,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:cloud-native-service-discovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:port-definitions-field-spec-ports",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:services-without-selectors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:endpointslices",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:endpoints-deprecated-endpoints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 291,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:application-protocol",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 327,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:multi-port-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 351,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:type-clusterip-type-clusterip",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 425,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:type-nodeport-type-nodeport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 453,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:type-loadbalancer-loadbalancer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 548,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:type-externalname-externalname",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 790,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:with-selectors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 862,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:without-selectors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 868,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:environment-variables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 888,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:dns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:traffic-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 966,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:traffic-distribution-control-traffic-distribution",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 973,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "concept:session-stickiness",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": 1000,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "gloss:kube-proxy",
      "type": "references",
      "label": "kube-proxy",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 23,
          "line_end": null,
          "quote": "kube-proxy"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "gloss:toleration",
      "type": "references",
      "label": "tolerations",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 163,
          "line_end": null,
          "quote": "tolerations"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "gloss:horizontal-pod-autoscaler",
      "type": "references",
      "label": "Horizontal Pod Autoscaler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 170,
          "line_end": null,
          "quote": "Horizontal Pod Autoscaler"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:motivation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:enabling-topology-aware-routing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:when-it-works-best",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:how-it-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:safeguards",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:custom-heuristics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 185,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:1-incoming-traffic-is-evenly-distributed",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:2-the-service-has-3-or-more-endpoints-per-zone-three-or-more-endpoints-per-zone",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:endpointslice-controller-implementation-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/topology-aware-routing",
      "to_id": "concept:kube-proxy-implementation-kube-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/topology-aware-routing.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/windows-networking",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 99,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/windows-networking",
      "to_id": "concept:container-networking-on-windows-networking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/windows-networking",
      "to_id": "concept:network-modes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/windows-networking",
      "to_id": "concept:ip-address-management-ipam-ipam",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/windows-networking",
      "to_id": "concept:direct-server-return-dsr-dsr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/windows-networking",
      "to_id": "concept:load-balancing-and-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/windows-networking",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/windows-networking.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/windows-networking/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "gloss:service",
      "type": "references",
      "label": "service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 32,
          "line_end": null,
          "quote": "service"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "gloss:label",
      "type": "references",
      "label": "label",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 33,
          "line_end": null,
          "quote": "label"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CRD",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 114,
          "line_end": null,
          "quote": "CRD"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "secret",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 471,
          "line_end": null,
          "quote": "secret"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "gloss:ingress",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:terminology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:what-is-ingress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:the-ingress-resource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:hostname-wildcards",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 218,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:ingress-class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:types-of-ingress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 371,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:updating-an-ingress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 528,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:failing-across-availability-zones",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 614,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:alternatives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 619,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 626,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:ingress-rules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:defaultbackend-default-backend",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:resource-backends-resource-backend",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:path-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:ingressclass-scope",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 248,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:deprecated-annotation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 338,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:default-ingressclass-default-ingress-class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 351,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:ingress-backed-by-a-single-service-single-service-ingress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 373,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:simple-fanout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 401,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:name-based-virtual-hosting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 447,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:tls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "concept:load-balancing-load-balancing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": 513,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/_index",
      "to_id": "gloss:cloud-provider",
      "type": "references",
      "label": "cloud-provider",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/_index.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/_index/",
          "line_start": 47,
          "line_end": null,
          "quote": "cloud-provider"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/_index",
      "to_id": "gloss:cni",
      "type": "references",
      "label": "Container Networking Interface (CNI)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/_index.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/_index/",
          "line_start": 73,
          "line_end": null,
          "quote": "Container Networking Interface (CNI)"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/_index",
      "to_id": "gloss:kube-proxy",
      "type": "references",
      "label": "kube-proxy",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/_index.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/_index/",
          "line_start": 78,
          "line_end": null,
          "quote": "kube-proxy"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/_index",
      "to_id": "concept:the-kubernetes-network-model",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/_index.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/_index/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/_index.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/_index/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "gloss:endpoint-slice",
      "type": "references",
      "label": "EndpointSlice",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 196,
          "line_end": null,
          "quote": "EndpointSlice"
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:dns-search-domain-list-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 345,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:dns-resolution-on-windows-nodes-dns-windows",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 364,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:namespaces-of-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:dns-records",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:a-aaaa-records",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        },
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:srv-records",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 74,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:pod-s-hostname-and-subdomain-fields-pod-hostname-and-subdomain-field",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:pod-s-sethostnameasfqdn-field-pod-sethostnameasfqdn-field",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 207,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:pod-s-dns-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 233,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "concept:pod-s-dns-config-pod-dns-config",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "gloss:qos-class",
      "type": "references",
      "label": "QoS class",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 323,
          "line_end": null,
          "quote": "QoS class"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:topology-manager",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:cpu-manager",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:memory-manager",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 311,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:device-manager",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 334,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:pod-level-resource-managers-pod-level-resource-managers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 344,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 565,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:policies-for-assigning-cpus-to-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:policies-for-assigning-memory-to-pods-memory-management-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 320,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:glossary",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 374,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:how-pod-level-resource-managers-work",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 399,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:observability-and-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 538,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/resource-managers",
      "to_id": "concept:limitations-and-caveats",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/resource-managers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/resource-managers/",
          "line_start": 557,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "gloss:cncf",
      "type": "references",
      "label": "CNCF",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 61,
          "line_end": null,
          "quote": "CNCF"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "gloss:manifest",
      "type": "references",
      "label": "manifests",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 138,
          "line_end": null,
          "quote": "manifests"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:organizing-resource-configurations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:bulk-operations-in-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:updating-your-application-without-an-outage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 195,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:canary-deployments",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 279,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:updating-annotations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 333,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:scaling-your-application",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 356,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:in-place-updates-of-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 398,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:disruptive-updates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 461,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 478,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:external-tools",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:chaining-and-filtering",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:recursive-operations-on-local-files",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 131,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:managing-rollouts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 253,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:kubectl-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:kubectl-edit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 238,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "concept:kubectl-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": 230,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 33,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 39,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "gloss:replica",
      "type": "references",
      "label": "replicas",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 40,
          "line_end": null,
          "quote": "replicas"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "gloss:node",
      "type": "references",
      "label": "nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 76,
          "line_end": null,
          "quote": "nodes"
        },
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 76,
          "line_end": null,
          "quote": "nodes"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "concept:scaling-workloads-manually",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "concept:scaling-workloads-automatically",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "concept:scaling-cluster-infrastructure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "concept:scaling-workloads-horizontally",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "concept:scaling-workloads-vertically",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "concept:autoscaling-based-on-cluster-size",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "concept:event-driven-autoscaling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "concept:autoscaling-based-on-schedules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/_index",
      "to_id": "gloss:container",
      "type": "references",
      "label": "containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
          "line_start": 5,
          "line_end": null,
          "quote": "containers"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/_index",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
          "line_start": 9,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/_index",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
          "line_start": 15,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/_index",
      "to_id": "gloss:replication-controller",
      "type": "references",
      "label": "ReplicationController",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
          "line_start": 23,
          "line_end": null,
          "quote": "ReplicationController"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/_index",
      "to_id": "gloss:workload",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/_index",
      "to_id": "concept:workload-placement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/policies",
      "to_id": "concept:policy-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/policies",
      "to_id": "concept:setting-policies-via-podgrouptemplates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/policies",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/policies",
      "to_id": "concept:basic-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/policies",
      "to_id": "concept:gang-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/topology-aware-scheduling",
      "to_id": "concept:topology-aware-scheduling-with-gang-scheduling-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/topology-aware-scheduling",
      "to_id": "concept:topology-aware-scheduling-with-basic-scheduling-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/topology-aware-scheduling",
      "to_id": "concept:api-configuration-scheduling-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/topology-aware-scheduling",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/topology-aware-scheduling",
      "to_id": "concept:topology-constraint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/disruption-and-priority",
      "to_id": "concept:disruption-mode-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/disruption-and-priority",
      "to_id": "concept:pod-group-priority",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/disruption-and-priority",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/disruption-and-priority",
      "to_id": "concept:pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/disruption-and-priority",
      "to_id": "concept:podgroup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/_index",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API group",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 16,
          "line_end": null,
          "quote": "API group"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/_index",
      "to_id": "concept:what-is-a-workload",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/_index",
      "to_id": "concept:api-structure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/_index",
      "to_id": "concept:gang-scheduling-with-jobs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/_index",
      "to_id": "concept:podgrouptemplates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/_index",
      "to_id": "concept:referencing-a-workload-controlling-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/lifecycle",
      "to_id": "concept:ownership-and-lifecycle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/lifecycle",
      "to_id": "concept:creation-ordering",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/lifecycle",
      "to_id": "concept:deletion-protection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/lifecycle",
      "to_id": "concept:controller-managed-and-user-managed-podgroups",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/lifecycle",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/lifecycle",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API group",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 14,
          "line_end": null,
          "quote": "API group"
        },
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 14,
          "line_end": null,
          "quote": "API group"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "gloss:device",
      "type": "references",
      "label": "Devices",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 59,
          "line_end": null,
          "quote": "Devices"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "gloss:dra",
      "type": "references",
      "label": "Dynamic Resource Allocation (DRA)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 60,
          "line_end": null,
          "quote": "Dynamic Resource Allocation (DRA)"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "gloss:resourceclaim",
      "type": "references",
      "label": "ResourceClaims",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 78,
          "line_end": null,
          "quote": "ResourceClaims"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "gloss:resourceclaimtemplate",
      "type": "references",
      "label": "ResourceClaimTemplates",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 83,
          "line_end": null,
          "quote": "ResourceClaimTemplates"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "concept:what-is-a-podgroup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "concept:api-structure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "concept:creating-a-podgroup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "concept:how-it-fits-together",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 195,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "concept:scheduling-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "concept:template-reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "concept:requesting-dra-devices-for-a-podgroup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "concept:status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 48,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "concept:introduction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "concept:understanding-user-namespaces-for-pods-pods-and-userns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "concept:set-up-a-node-to-support-user-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "concept:id-count-for-each-of-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 209,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "concept:integration-with-pod-security-admission-checks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 262,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "concept:metrics-and-observability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 291,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 297,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "concept:filesystem-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 5,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "concept:sidecar-containers-in-kubernetes-pod-sidecar-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "concept:sidecar-containers-and-pod-lifecycle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "concept:differences-from-application-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "concept:differences-from-init-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "concept:resource-sharing-within-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "concept:example-application-sidecar-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "concept:jobs-with-sidecar-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "concept:sidecar-containers-and-linux-cgroups-cgroups",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/downward-api",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 45,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/downward-api",
      "to_id": "gloss:annotation",
      "type": "references",
      "label": "annotation",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 51,
          "line_end": null,
          "quote": "annotation"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/downward-api",
      "to_id": "gloss:label",
      "type": "references",
      "label": "label",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 54,
          "line_end": null,
          "quote": "label"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/downward-api",
      "to_id": "gloss:service-account",
      "type": "references",
      "label": "service account",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 60,
          "line_end": null,
          "quote": "service account"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/downward-api",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 63,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/downward-api",
      "to_id": "concept:available-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/downward-api",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/downward-api",
      "to_id": "concept:information-available-via-fieldref-downwardapi-fieldref",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/downward-api",
      "to_id": "concept:information-available-via-resourcefieldref-downwardapi-resourcefieldref",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/downward-api.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/downward-api/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "gloss:taint",
      "type": "references",
      "label": "taint",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 12,
          "line_end": null,
          "quote": "taint"
        },
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 12,
          "line_end": null,
          "quote": "taint"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 52,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "gloss:cni",
      "type": "references",
      "label": "CNI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 52,
          "line_end": null,
          "quote": "CNI"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "Container Runtime Interface (CRI)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 110,
          "line_end": null,
          "quote": "Container Runtime Interface (CRI)"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "gloss:disruption",
      "type": "references",
      "label": "disruption",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 136,
          "line_end": null,
          "quote": "disruption"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "gloss:preemption",
      "type": "references",
      "label": "preempted",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 141,
          "line_end": null,
          "quote": "preempted"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "gloss:api-eviction",
      "type": "references",
      "label": "eviction using the Kubernetes API",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 147,
          "line_end": null,
          "quote": "eviction using the Kubernetes API"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "gloss:node-pressure-eviction",
      "type": "references",
      "label": "node pressure eviction",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 153,
          "line_end": null,
          "quote": "node pressure eviction"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "gloss:operator-pattern",
      "type": "references",
      "label": "operators",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 230,
          "line_end": null,
          "quote": "operators"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "concept:structure-of-a-pod-condition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "concept:built-in-pod-conditions-built-in-pod-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "concept:lifecycle-pod-conditions-lifecycle-pod-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "concept:other-pod-conditions-other-pod-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "concept:enhanced-pod-readiness",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "concept:podreadytostartcontainers-pod-ready-to-start-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "concept:disruptiontarget-disruption-target",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "concept:podresizepending-and-podresizeinprogress-pod-resize-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "concept:status-for-pod-readiness",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 2,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 5,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 8,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "gloss:mirror-pod",
      "type": "references",
      "label": "mirror Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 25,
          "line_end": null,
          "quote": "mirror Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 31,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selectors",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 33,
          "line_end": null,
          "quote": "selectors"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "gloss:service-account",
      "type": "references",
      "label": "ServiceAccount",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 42,
          "line_end": null,
          "quote": "ServiceAccount"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 43,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secret",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 44,
          "line_end": null,
          "quote": "Secret"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "DaemonSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 53,
          "line_end": null,
          "quote": "DaemonSet"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "concept:mirror-pods-mirror-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "concept:limitations-limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "concept:static-pods-vs-daemonsets-static-pods-vs-daemonsets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 17,
          "line_end": null,
          "quote": "node"
        },
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 17,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:eviction",
      "type": "references",
      "label": "eviction",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 63,
          "line_end": null,
          "quote": "eviction"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 67,
          "line_end": null,
          "quote": "controller"
        },
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 67,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volume",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 81,
          "line_end": null,
          "quote": "volume"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:mirror-pod",
      "type": "references",
      "label": "mirror Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 137,
          "line_end": null,
          "quote": "mirror Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 152,
          "line_end": null,
          "quote": "scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 154,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secret",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 168,
          "line_end": null,
          "quote": "Secret"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:init-container",
      "type": "references",
      "label": "init containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 247,
          "line_end": null,
          "quote": "init containers"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:sidecar-container",
      "type": "references",
      "label": "sidecar container",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 250,
          "line_end": null,
          "quote": "sidecar container"
        },
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 250,
          "line_end": null,
          "quote": "sidecar containers"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:app-container",
      "type": "references",
      "label": "app containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 266,
          "line_end": null,
          "quote": "app containers"
        },
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 266,
          "line_end": null,
          "quote": "app containers"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:operator-pattern",
      "type": "references",
      "label": "operators",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 668,
          "line_end": null,
          "quote": "operators"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "cri",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 693,
          "line_end": null,
          "quote": "cri"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:condition",
      "type": "references",
      "label": "conditions",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 745,
          "line_end": null,
          "quote": "conditions"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 784,
          "line_end": null,
          "quote": "kubelet"
        },
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 784,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:endpoint-slice",
      "type": "references",
      "label": "EndpointSlice",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 832,
          "line_end": null,
          "quote": "EndpointSlice"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API Server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 860,
          "line_end": null,
          "quote": "API Server"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 934,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 935,
          "line_end": null,
          "quote": "selector"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "gloss:replica-set",
      "type": "references",
      "label": "ReplicaSets",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 936,
          "line_end": null,
          "quote": "ReplicaSets"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:pod-lifetime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:pod-phase",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:container-states",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:how-pods-handle-problems-with-containers-container-restarts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:pod-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:resizing-pods-pod-resize",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 724,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:container-probes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 780,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:termination-of-pods-pod-termination",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 838,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:pod-behavior-during-kubelet-restarts-kubelet-restarts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 1041,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 1083,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:pods-and-fault-recovery-pod-fault-recovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:associated-lifetimes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:waiting-container-state-waiting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:running-container-state-running",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:terminated-container-state-terminated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:container-restarts-restart-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:reduced-container-restart-delay",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 541,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:configurable-container-restart-delay",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 555,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:pod-readiness-pod-readiness-gate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 624,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:status-for-pod-readiness-pod-readiness-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 664,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:pod-readiness-to-start-containers-pod-ready-to-start-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 682,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:in-place-pod-resize-pod-resize-inplace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 734,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:resizing-by-launching-replacement-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 760,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:startup-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 796,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:liveness-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 809,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:readiness-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 822,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:stop-signals-pod-termination-stop-signals",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 864,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:defining-custom-stop-signals",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 870,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:pod-termination-flow-pod-termination-flow",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 896,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:forced-pod-termination-pod-termination-forced",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 968,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:pod-shutdown-and-sidecar-containers-termination-with-sidecars",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 1000,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:garbage-collection-of-pods-pod-garbage-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 1018,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "concept:detection-of-kubelet-restarts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": 1050,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 5,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "gloss:endpoint-slice",
      "type": "references",
      "label": "EndpointSlice",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 71,
          "line_end": null,
          "quote": "EndpointSlice"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:types-of-probe-types-of-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:when-to-use-each-probe-when-to-use-each-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:check-mechanisms-check-mechanisms",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:probe-results-probe-results",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 179,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:configuration-fields-configure-probes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:probe-mechanism-details-probe-mechanism-details",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 307,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 453,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:startup-probe-startup-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:liveness-probe-liveness-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:readiness-probe-readiness-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:when-should-you-use-a-startup-probe-when-should-you-use-a-startup-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:when-should-you-use-a-liveness-probe-when-should-you-use-a-liveness-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 103,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:when-should-you-use-a-readiness-probe-when-should-you-use-a-readiness-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:probe-level-terminationgraceperiodseconds-probe-level-terminationgraceperiodseconds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:http-probes-http-probes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:tcp-probes-tcp-probes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 416,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "concept:grpc-probes-grpc-probes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": 422,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/scheduling-group",
      "to_id": "concept:specifying-a-scheduling-group",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/scheduling-group.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/scheduling-group/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/scheduling-group",
      "to_id": "concept:behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/scheduling-group.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/scheduling-group/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/scheduling-group",
      "to_id": "concept:missing-podgroup-reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/scheduling-group.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/scheduling-group/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/scheduling-group",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/scheduling-group.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/scheduling-group/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "gloss:disruption",
      "type": "references",
      "label": "disruption",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 230,
          "line_end": null,
          "quote": "disruption"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "gloss:preemption",
      "type": "references",
      "label": "preempted",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 235,
          "line_end": null,
          "quote": "preempted"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "gloss:taint",
      "type": "references",
      "label": "taint",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 238,
          "line_end": null,
          "quote": "taint"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "gloss:api-eviction",
      "type": "references",
      "label": "eviction using the Kubernetes API",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 241,
          "line_end": null,
          "quote": "eviction using the Kubernetes API"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "gloss:node-pressure-eviction",
      "type": "references",
      "label": "node pressure eviction",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 247,
          "line_end": null,
          "quote": "node pressure eviction"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "concept:voluntary-and-involuntary-disruptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "concept:dealing-with-disruptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "concept:pod-disruption-budgets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "concept:poddisruptionbudget-example-pdb-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "concept:pod-disruption-conditions-pod-disruption-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "concept:separating-cluster-owner-and-application-owner-roles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "concept:how-to-perform-disruptive-actions-on-your-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 287,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/disruptions",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/disruptions.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/disruptions/",
          "line_start": 307,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "kube-scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 13,
          "line_end": null,
          "quote": "kube-scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "gloss:preemption",
      "type": "references",
      "label": "preempt",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 14,
          "line_end": null,
          "quote": "preempt"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:priorityclasses",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:runtimeclasses",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:pod-and-container-level-security-context-configuration-security-context",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:influencing-pod-scheduling-decisions-scheduling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:pod-overhead",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 250,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 285,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:defining-a-priorityclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:specify-pod-priority-using-a-priorityclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:built-in-priorityclasses",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:example-pod-runtimeclass-pod-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:pod-wide-securitycontext-pod-level-security-context",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:container-level-security-context-container-level-security-context",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:security-context-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:node-selectors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:node-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:pod-affinity-and-anti-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "concept:tolerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": 228,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-hostname",
      "to_id": "concept:default-pod-hostname",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-hostname.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-hostname",
      "to_id": "concept:hostname-with-pod-s-hostname-and-subdomain-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-hostname.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-hostname",
      "to_id": "concept:hostname-with-pod-s-sethostnameasfqdn-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-hostname.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-hostname",
      "to_id": "concept:hostname-with-pod-s-hostnameoverride",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-hostname.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "gloss:container",
      "type": "references",
      "label": "Containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 17,
          "line_end": null,
          "quote": "Containers"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "gloss:qos-class",
      "type": "references",
      "label": "Quality of Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 19,
          "line_end": null,
          "quote": "Quality of Service"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "concept:quality-of-service-classes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "concept:memory-qos-with-cgroup-v2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "concept:some-behavior-is-independent-of-qos-class-class-independent-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "concept:guaranteed",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "concept:burstable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "concept:besteffort",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "concept:memory-throttling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "concept:configuring-memory-reservation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "concept:system-requirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pod"
        },
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secrets",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 85,
          "line_end": null,
          "quote": "Secrets"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 97,
          "line_end": null,
          "quote": "Service"
        },
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 97,
          "line_end": null,
          "quote": "Services"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "Volume",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 113,
          "line_end": null,
          "quote": "Volume"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "gloss:garbage-collection",
      "type": "references",
      "label": "garbage collection",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 351,
          "line_end": null,
          "quote": "garbage collection"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "concept:understanding-init-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "concept:using-init-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "concept:detailed-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 267,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 358,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "concept:differences-from-regular-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "concept:differences-from-sidecar-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "concept:resource-sharing-within-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "concept:init-containers-and-linux-cgroups-cgroups",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 332,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "concept:pod-restart-reasons",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": 342,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/ephemeral-containers",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": 6,
          "line_end": null,
          "quote": "pod"
        },
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": 6,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/ephemeral-containers",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "deployments",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": 18,
          "line_end": null,
          "quote": "deployments"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/ephemeral-containers",
      "to_id": "concept:understanding-ephemeral-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/ephemeral-containers",
      "to_id": "concept:uses-for-ephemeral-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/ephemeral-containers",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/ephemeral-containers",
      "to_id": "concept:what-is-an-ephemeral-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:container",
      "type": "references",
      "label": "containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 6,
          "line_end": null,
          "quote": "containers"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 6,
          "line_end": null,
          "quote": "container"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:init-container",
      "type": "references",
      "label": "init containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": "init containers"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": "init containers"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:ephemeral-container",
      "type": "references",
      "label": "ephemeral containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 15,
          "line_end": null,
          "quote": "ephemeral containers"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 15,
          "line_end": null,
          "quote": "ephemeral containers"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 71,
          "line_end": null,
          "quote": "Deployment"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 71,
          "line_end": null,
          "quote": "Deployment"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 71,
          "line_end": null,
          "quote": "Deployment"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 71,
          "line_end": null,
          "quote": "Deployments"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:job",
      "type": "references",
      "label": "Job",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 71,
          "line_end": null,
          "quote": "Job"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 73,
          "line_end": null,
          "quote": "StatefulSet"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 73,
          "line_end": null,
          "quote": "StatefulSet"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 73,
          "line_end": null,
          "quote": "StatefulSets"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 81,
          "line_end": null,
          "quote": "controller"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 81,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 97,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "kube-scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 122,
          "line_end": null,
          "quote": "kube-scheduler"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 122,
          "line_end": null,
          "quote": "scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "DaemonSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 144,
          "line_end": null,
          "quote": "DaemonSet"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:workload",
      "type": "references",
      "label": "workload",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 160,
          "line_end": null,
          "quote": "workload"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 209,
          "line_end": null,
          "quote": "kubelet"
        },
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 209,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volumes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 314,
          "line_end": null,
          "quote": "volumes"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 402,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:sidecar-container",
      "type": "references",
      "label": "sidecar container",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 435,
          "line_end": null,
          "quote": "sidecar container"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "gloss:app-container",
      "type": "references",
      "label": "app containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 448,
          "line_end": null,
          "quote": "app containers"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:what-is-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:using-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:working-with-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:pod-update-and-replacement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 215,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:resource-sharing-and-communication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 306,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:pod-security-settings-pod-security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 341,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:resource-requests-and-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 372,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:static-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 399,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:pods-with-multiple-containers-how-pods-manage-multiple-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 414,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:container-probes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 465,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 477,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:workload-resources-for-managing-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:pod-os",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:pods-and-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:specifying-a-scheduling-group",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:pod-templates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:pod-subresources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:pod-generation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 258,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:storage-in-pods-pod-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 311,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "concept:pod-networking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": 321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 4,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 5,
          "line_end": null,
          "quote": "StatefulSet"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 9,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "DaemonSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 19,
          "line_end": null,
          "quote": "DaemonSet"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 22,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 25,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "gloss:aggregation-layer",
      "type": "references",
      "label": "aggregated APIs",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 99,
          "line_end": null,
          "quote": "aggregated APIs"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "gloss:manifest",
      "type": "references",
      "label": "manifest(s)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 616,
          "line_end": null,
          "quote": "manifest(s)"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:how-does-a-horizontalpodautoscaler-work",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:pod-readiness-and-autoscaling-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:api-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:stability-of-workload-scale-flapping",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 257,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:autoscaling-during-rolling-update",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:support-for-resource-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:scaling-on-custom-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 348,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:scaling-on-multiple-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 361,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:support-for-metrics-apis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:configurable-scaling-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 402,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:support-for-horizontalpodautoscaler-in-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 591,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:implicit-maintenance-mode-deactivation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 603,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:algorithm-details",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:key-behaviors-for-pod-readiness-pod-readiness-key-behaviors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:good-practice-for-pod-readiness-pod-readiness-good-practices",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 236,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:container-resource-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 306,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:scaling-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 414,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:stabilization-window",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 457,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:tolerance-tolerance",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 479,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:default-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 505,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:example-change-downscale-stabilization-window",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 538,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:example-limit-scale-down-rate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 549,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:example-disable-scale-down",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 580,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "concept:migrating-deployments-and-statefulsets-to-horizontal-autoscaling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": 612,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "gloss:api-resource",
      "type": "references",
      "label": "resource",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 3,
          "line_end": null,
          "quote": "resource"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 4,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 5,
          "line_end": null,
          "quote": "StatefulSet"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "gloss:infrastructure-resource",
      "type": "references",
      "label": "resource",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 6,
          "line_end": null,
          "quote": "resource"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 10,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 19,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "gloss:addons",
      "type": "references",
      "label": "add-on",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 77,
          "line_end": null,
          "quote": "add-on"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:api-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:how-does-a-verticalpodautoscaler-work",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:update-modes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:resource-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:limitrange-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:off-updatemode-off",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:initial-updatemode-initial",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:recreate-updatemode-recreate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:inplaceorrecreate-updatemode-inplaceorrecreate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:inplace-updatemode-inplace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:auto-deprecated-updatemode-auto",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 171,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "concept:controlledvalues",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": 211,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/ttlafterfinished",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": 8,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/ttlafterfinished",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": 50,
          "line_end": null,
          "quote": "selector"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/ttlafterfinished",
      "to_id": "concept:cleanup-for-finished-jobs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/ttlafterfinished",
      "to_id": "concept:caveats",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/ttlafterfinished",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/ttlafterfinished",
      "to_id": "concept:updating-ttl-for-finished-jobs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/ttlafterfinished",
      "to_id": "concept:time-skew",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "gloss:job",
      "type": "references",
      "label": "Jobs",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 5,
          "line_end": null,
          "quote": "Jobs"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 87,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "gloss:annotation",
      "type": "references",
      "label": "annotations",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 88,
          "line_end": null,
          "quote": "annotations"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "gloss:kube-controller-manager",
      "type": "references",
      "label": "kube-controller-manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 164,
          "line_end": null,
          "quote": "kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 213,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:writing-a-cronjob-spec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:cronjob-limitations-cron-job-limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:schedule-syntax",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:job-template",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:deadline-for-delayed-job-start-starting-deadline",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:concurrency-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:schedule-suspension",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:jobs-history-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:time-zones",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:unsupported-timezone-specification",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:modifying-a-cronjob",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "concept:job-creation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 53,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "gloss:toleration",
      "type": "references",
      "label": "tolerations",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 137,
          "line_end": null,
          "quote": "tolerations"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 246,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:writing-a-daemonset-spec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:how-daemon-pods-are-scheduled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:communicating-with-daemon-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 168,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:updating-a-daemonset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:alternatives-to-daemonset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 200,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:create-a-daemonset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:required-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:pod-template",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:pod-selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:running-pods-on-select-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:taints-and-tolerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:init-scripts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:bare-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:static-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 220,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "concept:deployments",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": 228,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pods"
        },
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 3,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "gloss:replica-set",
      "type": "references",
      "label": "ReplicaSets",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 4,
          "line_end": null,
          "quote": "ReplicaSets"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 6,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "gloss:watch",
      "type": "references",
      "label": "Watch",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 808,
          "line_end": null,
          "quote": "Watch"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1131,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:use-case",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:creating-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:updating-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:rolling-back-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 360,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:scaling-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 617,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:pausing-and-resuming-a-rollout-of-a-deployment-pausing-and-resuming-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 715,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:deployment-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 846,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:clean-up-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1063,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:canary-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1084,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:writing-a-deployment-spec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1351,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:pod-template-hash-label",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:rollover-aka-multiple-updates-in-flight",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 316,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:label-selector-updates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 334,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:checking-rollout-history-of-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 483,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:rolling-back-to-a-previous-revision",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 531,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:proportional-scaling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 641,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:progressing-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 851,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:complete-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 869,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:failed-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 908,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:operating-on-a-failed-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1058,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:pod-template",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 275,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:replicas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 271,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:strategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 272,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:progress-deadline-seconds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1304,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:min-ready-seconds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:terminating-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:revision-history-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1334,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "concept:paused",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": 1344,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 227,
          "line_end": null,
          "quote": "controller"
        },
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 227,
          "line_end": null,
          "quote": "controller"
        },
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 227,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "gloss:garbage-collection",
      "type": "references",
      "label": "garbage collector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 510,
          "line_end": null,
          "quote": "garbage collector"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 547,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "gloss:statefulset",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:using-statefulsets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:pod-identity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:deployment-and-scaling-guarantees",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:update-strategies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 289,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:rolling-updates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:revision-history",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 367,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:persistentvolumeclaim-retention",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 456,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 550,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:pod-selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:volume-claim-templates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:minimum-ready-seconds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:ordinal-index",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:start-ordinal",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:stable-network-id",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:stable-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 214,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:pod-name-label",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 225,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:pod-index-label",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 232,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:pod-management-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:partitioned-rolling-updates-partitions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 317,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:maximum-unavailable-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 329,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:forced-rollback",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 347,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:how-statefulsets-track-changes-using-controllerrevisions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 373,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:managing-revision-history",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 387,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "concept:replicas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": 534,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 22,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:how-a-replicaset-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:when-to-use-a-replicaset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:non-template-pod-acquisitions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:writing-a-replicaset-manifest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:working-with-replicasets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 258,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:alternatives-to-replicaset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 391,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 430,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:pod-template",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:pod-selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:replicas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:deleting-a-replicaset-and-its-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 260,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:deleting-just-a-replicaset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 277,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:terminating-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 299,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:isolating-pods-from-a-replicaset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 312,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:scaling-a-replicaset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 318,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:pod-deletion-cost",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 335,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:replicaset-as-a-horizontal-pod-autoscaler-target",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 367,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:deployment-recommended",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 393,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:bare-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 402,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 411,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:daemonset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 416,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "concept:replicationcontroller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": 423,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 194,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 255,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "gloss:preemption",
      "type": "references",
      "label": "preemption",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 549,
          "line_end": null,
          "quote": "preemption"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "gloss:api-eviction",
      "type": "references",
      "label": "API-initiated eviction",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 550,
          "line_end": null,
          "quote": "API-initiated eviction"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "gloss:taint",
      "type": "references",
      "label": "taint",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 551,
          "line_end": null,
          "quote": "taint"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:running-an-example-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:writing-a-job-spec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:integrate-with-workload-apis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 296,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:handling-pod-and-container-failures",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 389,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:success-policy-success-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 632,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:job-termination-and-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 523,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:clean-up-finished-jobs-automatically",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 794,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:job-patterns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 860,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:advanced-usage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 918,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:alternatives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1250,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1281,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:job-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 185,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:pod-template",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:pod-selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:parallel-execution-for-jobs-parallel-jobs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:completion-mode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 261,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:qualifying-criteria",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 308,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:opt-out-for-higher-level-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 367,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:cronjob-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 373,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:limitations-for-alpha-release-workload-integration-limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 379,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:pod-backoff-failure-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 431,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:backoff-limit-per-index-backoff-limit-per-index",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 463,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:pod-failure-policy-pod-failure-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 533,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:terminal-job-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 730,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:termination-of-job-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 767,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:ttl-mechanism-for-finished-jobs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 802,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:suspending-a-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:mutable-scheduling-directives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1034,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:mutable-pod-resources-for-suspended-jobs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1062,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:specifying-your-own-pod-selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1073,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:job-tracking-with-finalizers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:elastic-indexed-jobs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 385,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:delayed-creation-of-replacement-pods-pod-replacement-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1177,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:delegation-of-managing-a-job-object-to-external-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1221,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:bare-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1252,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:replication-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1259,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "concept:single-job-starts-controller-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": 1272,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/_index",
      "to_id": "gloss:workload",
      "type": "references",
      "label": "workloads",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/_index/",
          "line_start": 2,
          "line_end": null,
          "quote": "workloads"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/_index",
      "to_id": "gloss:object",
      "type": "references",
      "label": "object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/_index/",
          "line_start": 11,
          "line_end": null,
          "quote": "object"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/_index",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/_index",
      "to_id": "gloss:replication-controller",
      "type": "references",
      "label": "ReplicationController",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/_index/",
          "line_start": 23,
          "line_end": null,
          "quote": "ReplicationController"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/_index",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/_index/",
          "line_start": 36,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 125,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:how-a-replicationcontroller-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:running-an-example-replicationcontroller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:writing-a-replicationcontroller-manifest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:working-with-replicationcontrollers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:common-usage-patterns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:writing-programs-for-replication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 232,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:responsibilities-of-the-replicationcontroller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 236,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:api-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 244,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:alternatives-to-replicationcontroller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 250,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 278,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:pod-template",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:labels-on-the-replicationcontroller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:pod-selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:multiple-replicas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:deleting-a-replicationcontroller-and-its-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 172,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:deleting-only-a-replicationcontroller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:isolating-pods-from-a-replicationcontroller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 195,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:rescheduling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 201,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:scaling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 205,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:rolling-updates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 209,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:multiple-release-tracks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 219,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:using-replicationcontrollers-with-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 225,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:replicaset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:deployment-recommended",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 258,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:bare-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 262,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "concept:daemonset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": 271,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 22,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "gloss:node",
      "type": "references",
      "label": "Node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 38,
          "line_end": null,
          "quote": "Node"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Services",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 65,
          "line_end": null,
          "quote": "Services"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "gloss:rbac",
      "type": "references",
      "label": "RBAC",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 131,
          "line_end": null,
          "quote": "RBAC"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "gloss:cloud-controller-manager",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:design",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:cloud-controller-manager-functions-functions-of-the-ccm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:node-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:route-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:service-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:node-controller-authorization-node-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:route-controller-authorization-route-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:service-controller-authorization-service-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cloud-controller",
      "to_id": "concept:others-authorization-miscellaneous",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cloud-controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cloud-controller/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 3,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "gloss:cluster",
      "type": "references",
      "label": "cluster",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 4,
          "line_end": null,
          "quote": "cluster"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "gloss:certificate",
      "type": "references",
      "label": "certificate",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 23,
          "line_end": null,
          "quote": "certificate"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 29,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "gloss:kube-proxy",
      "type": "references",
      "label": "kube-proxy",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 33,
          "line_end": null,
          "quote": "kube-proxy"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 44,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "concept:node-to-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "concept:control-plane-to-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "concept:api-server-to-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "concept:api-server-to-nodes-pods-and-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "concept:ssh-tunnels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "concept:konnectivity-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/mixed-version-proxy",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API Server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 6,
          "line_end": null,
          "quote": "API Server"
        },
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 6,
          "line_end": null,
          "quote": "API Server"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/mixed-version-proxy",
      "to_id": "concept:enabling-peer-aggregated-discovery-and-mixed-version-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/mixed-version-proxy",
      "to_id": "concept:peer-aggregated-discovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/mixed-version-proxy",
      "to_id": "concept:mixed-version-proxying",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/mixed-version-proxy",
      "to_id": "concept:proxy-transport-and-authentication-between-api-servers-transport-and-authn",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/mixed-version-proxy",
      "to_id": "concept:configuration-for-peer-api-server-connectivity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/mixed-version-proxy",
      "to_id": "concept:how-it-works-under-the-hood",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/mixed-version-proxy.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/mixed-version-proxy/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/self-healing",
      "to_id": "concept:self-healing-capabilities-self-healing-capabilities",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/self-healing.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/self-healing/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/self-healing",
      "to_id": "concept:considerations-considerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/self-healing.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/self-healing/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/self-healing",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/self-healing.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/self-healing/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:workload",
      "type": "references",
      "label": "workload",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 3,
          "line_end": null,
          "quote": "workload"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:container",
      "type": "references",
      "label": "containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 4,
          "line_end": null,
          "quote": "containers"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 7,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 9,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 15,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 16,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:kube-proxy",
      "type": "references",
      "label": "kube-proxy",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 17,
          "line_end": null,
          "quote": "kube-proxy"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 24,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:object",
      "type": "references",
      "label": "object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 29,
          "line_end": null,
          "quote": "object"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:cloud-provider",
      "type": "references",
      "label": "cloud provider",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 81,
          "line_end": null,
          "quote": "cloud provider"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:taint",
      "type": "references",
      "label": "taints",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 85,
          "line_end": null,
          "quote": "taints"
        },
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 85,
          "line_end": null,
          "quote": "taints"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:label",
      "type": "references",
      "label": "Labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 97,
          "line_end": null,
          "quote": "Labels"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 124,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 186,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 56,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 265,
          "line_end": null,
          "quote": "scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:node-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:node-heartbeats",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:node-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:resource-capacity-tracking-node-capacity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 257,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:node-topology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 277,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 287,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:node-name-uniqueness",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:self-registration-of-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:manual-node-administration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "concept:rate-limits-on-eviction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": 219,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 23,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 30,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "gloss:job",
      "type": "references",
      "label": "job",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 41,
          "line_end": null,
          "quote": "job"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 46,
          "line_end": null,
          "quote": "pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 59,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "gloss:node",
      "type": "references",
      "label": "Nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 81,
          "line_end": null,
          "quote": "Nodes"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "gloss:kube-controller-manager",
      "type": "references",
      "label": "kube-controller-manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 142,
          "line_end": null,
          "quote": "kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "gloss:controller",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "concept:controller-pattern",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "concept:desired-versus-current-state-desired-vs-current",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "concept:design",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "concept:ways-of-running-controllers-running-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "concept:control-via-api-server",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/controller",
      "to_id": "concept:direct-control",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/controller.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/controller/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "gloss:node",
      "type": "references",
      "label": "Nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 11,
          "line_end": null,
          "quote": "Nodes"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 27,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "gloss:finalizer",
      "type": "references",
      "label": "finalizers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 64,
          "line_end": null,
          "quote": "finalizers"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 112,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "gloss:cadvisor",
      "type": "references",
      "label": "cadvisor",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 127,
          "line_end": null,
          "quote": "cadvisor"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "gloss:duration",
      "type": "references",
      "label": "duration",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 147,
          "line_end": null,
          "quote": "duration"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "gloss:garbage-collection",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "concept:owners-and-dependents-owners-dependents",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "concept:cascading-deletion-cascading-deletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "concept:garbage-collection-of-unused-containers-and-images-containers-images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "concept:configuring-garbage-collection-configuring-gc",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "concept:foreground-cascading-deletion-foreground-deletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "concept:background-cascading-deletion-background-deletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "concept:orphaned-dependents",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "concept:container-image-lifecycle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/garbage-collection",
      "to_id": "concept:container-garbage-collection-container-image-garbage-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/garbage-collection.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/garbage-collection/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/leases",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API Group",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 6,
          "line_end": null,
          "quote": "API Group"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/leases",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 99,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/leases",
      "to_id": "concept:node-heartbeats-node-heart-beats",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/leases",
      "to_id": "concept:leader-election",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/leases",
      "to_id": "concept:api-server-identity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/leases",
      "to_id": "concept:workloads-custom-workload",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/leases",
      "to_id": "concept:kube-controller-manager-lock-release-on-exit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cgroups",
      "to_id": "gloss:cgroup",
      "type": "references",
      "label": "control groups",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 3,
          "line_end": null,
          "quote": "control groups"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cgroups",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 6,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cgroups",
      "to_id": "concept:what-is-cgroup-v2-cgroup-v2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cgroups",
      "to_id": "concept:using-cgroup-v2-using-cgroupv2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cgroups",
      "to_id": "concept:identify-the-cgroup-version-on-linux-nodes-check-cgroup-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cgroups",
      "to_id": "concept:deprecation-of-cgroup-v1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cgroups",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cgroups",
      "to_id": "concept:requirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cgroups",
      "to_id": "concept:linux-distribution-cgroup-v2-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/cgroups",
      "to_id": "concept:migrating-to-cgroup-v2-migrating-cgroupv2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/cgroups.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/cgroups/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 29,
          "line_end": null,
          "quote": "pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:replica",
      "type": "references",
      "label": "replicas",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 30,
          "line_end": null,
          "quote": "replicas"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "daemonset",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 104,
          "line_end": null,
          "quote": "daemonset"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 105,
          "line_end": null,
          "quote": "deployment"
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:kube-apiserver",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:etcd",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:kube-scheduler",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:kube-controller-manager",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:cloud-controller-manager",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:kubelet",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:kube-proxy",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "gloss:container-runtime",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:control-plane-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:node-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:addons",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:architecture-variations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 195,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:kube-apiserver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:etcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:kube-scheduler",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:kube-controller-manager",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:cloud-controller-manager",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:kube-proxy-optional-kube-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:container-runtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:dns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:web-ui-dashboard",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:container-resource-monitoring",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:cluster-level-logging",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:network-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:control-plane-deployment-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:workload-placement-considerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 169,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:cluster-management-tools",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 179,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/_index",
      "to_id": "concept:customization-and-extensibility",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/_index.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/_index/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "gloss:operator-pattern",
      "type": "references",
      "label": "operator pattern",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 28,
          "line_end": null,
          "quote": "operator pattern"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 30,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 77,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "gloss:cncf",
      "type": "references",
      "label": "CNCF",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 124,
          "line_end": null,
          "quote": "CNCF"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "concept:motivation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "concept:operators-in-kubernetes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "concept:an-example-operator-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "concept:deploying-operators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "concept:using-an-operator-using-operators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "concept:writing-your-own-operator-writing-operator",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/operator",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/operator.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/operator/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "gloss:cluster-operator",
      "type": "references",
      "label": "cluster operators",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 7,
          "line_end": null,
          "quote": "cluster operators"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "gloss:platform-developer",
      "type": "references",
      "label": "Platform Developers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 9,
          "line_end": null,
          "quote": "Platform Developers"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "gloss:contributor",
      "type": "references",
      "label": "Contributors",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 10,
          "line_end": null,
          "quote": "Contributors"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 66,
          "line_end": null,
          "quote": "controller"
        },
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 66,
          "line_end": null,
          "quote": "controllers"
        },
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 66,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volume",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 131,
          "line_end": null,
          "quote": "volume"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "gloss:operator-pattern",
      "type": "references",
      "label": "operator pattern",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 178,
          "line_end": null,
          "quote": "operator pattern"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "gloss:csi",
      "type": "references",
      "label": "Container Storage Interface",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 245,
          "line_end": null,
          "quote": "Container Storage Interface"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:extensions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:client-extensions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:api-extensions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:api-access-extensions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:infrastructure-extensions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 235,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:scheduling-extensions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 310,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:extension-patterns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:extension-points",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:custom-resource-definitions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:api-aggregation-layer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 168,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:combining-new-apis-with-automation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:changing-built-in-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:dynamic-admission-control",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 222,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:device-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:storage-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:network-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 261,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/_index",
      "to_id": "concept:kubelet-image-credential-provider-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/_index/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/network-plugins",
      "to_id": "concept:installation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/network-plugins",
      "to_id": "concept:network-plugin-requirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/network-plugins",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 150,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/network-plugins",
      "to_id": "concept:loopback-cni",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/network-plugins",
      "to_id": "concept:support-hostport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/network-plugins",
      "to_id": "concept:support-traffic-shaping",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/network-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 5,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "daemonset",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 8,
          "line_end": null,
          "quote": "daemonset"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volume",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 205,
          "line_end": null,
          "quote": "volume"
        },
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 205,
          "line_end": null,
          "quote": "volume"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:device-plugin-registration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:device-plugin-implementation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:device-plugin-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 197,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:api-compatibility",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 211,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:monitoring-device-plugin-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 236,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:device-plugin-integration-with-the-topology-manager",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 432,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:device-plugin-examples-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 467,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 490,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:example-example-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:handling-kubelet-restarts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:device-plugin-and-unhealthy-devices",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:list-grpc-endpoint-grpc-endpoint-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 260,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:getallocatableresources-grpc-endpoint-grpc-endpoint-getallocatableresources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 350,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "concept:get-grpc-endpoint-grpc-endpoint-get",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": 412,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/_index",
      "to_id": "gloss:csi",
      "type": "references",
      "label": "Container Storage Interface",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/_index/",
          "line_start": 7,
          "line_end": null,
          "quote": "Container Storage Interface"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/_index",
      "to_id": "gloss:cni",
      "type": "references",
      "label": "CNI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/_index.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/_index/",
          "line_start": 36,
          "line_end": null,
          "quote": "CNI"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "gloss:object",
      "type": "references",
      "label": "API objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 11,
          "line_end": null,
          "quote": "API objects"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 21,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinition",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 304,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        },
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 304,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        },
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 304,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:custom-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:custom-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:should-i-add-a-custom-resource-to-my-kubernetes-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:should-i-use-a-configmap-or-a-custom-resource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:adding-custom-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:customresourcedefinitions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:api-server-aggregation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:choosing-a-method-for-adding-custom-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 177,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:preparing-to-install-a-custom-resource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:accessing-a-custom-resource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 279,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:custom-resource-field-selectors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 295,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 334,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:declarative-apis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:comparing-ease-of-use",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:advanced-features-and-flexibility",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:common-features",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 217,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:third-party-code-and-new-points-of-failure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 207,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:authentication-authorization-and-auditing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/custom-resources",
      "to_id": "concept:selectable-fields-for-custom-resources-crd-selectable-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/custom-resources.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/",
          "line_start": 308,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/apiserver-aggregation",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "kube-apiserver",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/apiserver-aggregation.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/",
          "line_start": 10,
          "line_end": null,
          "quote": "kube-apiserver"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/apiserver-aggregation",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/apiserver-aggregation.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/",
          "line_start": 26,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/apiserver-aggregation",
      "to_id": "concept:aggregation-layer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/apiserver-aggregation.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/apiserver-aggregation",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/apiserver-aggregation.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/api-extension/apiserver-aggregation",
      "to_id": "concept:response-latency",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/api-extension/apiserver-aggregation.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 8,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 62,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 63,
          "line_end": null,
          "quote": "StatefulSet"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 67,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 84,
          "line_end": null,
          "quote": "container runtime"
        },
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 84,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 289,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "gloss:static-pod",
      "type": "references",
      "label": "static Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 308,
          "line_end": null,
          "quote": "static Pods"
        },
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 308,
          "line_end": null,
          "quote": "static Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "gloss:service-account",
      "type": "references",
      "label": "service-account",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 310,
          "line_end": null,
          "quote": "service-account"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "secret",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 311,
          "line_end": null,
          "quote": "secret"
        },
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 311,
          "line_end": null,
          "quote": "Secret"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:image-names",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:updating-images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:serial-and-parallel-image-pulls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 193,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:multi-architecture-images-with-image-indexes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 235,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:using-a-private-registry",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 252,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:legacy-built-in-kubelet-credential-provider",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 560,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 575,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:image-pull-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:imagepullbackoff",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:image-pull-per-runtime-class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:maximum-parallel-image-pulls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:specifying-imagepullsecrets-on-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 280,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:configuring-nodes-to-authenticate-to-a-private-registry",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 292,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:kubelet-credential-provider-for-authenticated-image-pulls-kubelet-credential-provider",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 301,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:interpretation-of-config-json-config-json",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 317,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:pre-pulled-images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 378,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:ensure-image-pull-credential-verification-ensureimagepullcredentialverification",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 406,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:creating-a-secret-with-a-docker-config",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 459,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/images",
      "to_id": "concept:use-cases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/images.md",
          "url": "https://kubernetes.io/docs/concepts/containers/images/",
          "line_start": 527,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "gloss:containerd",
      "type": "references",
      "label": "containerd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 101,
          "line_end": null,
          "quote": "containerd"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "gloss:cri-o",
      "type": "references",
      "label": "cri-o",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 113,
          "line_end": null,
          "quote": "cri-o"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "concept:motivation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "concept:setup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "concept:usage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "concept:scheduling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "concept:1-configure-the-cri-implementation-on-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "concept:2-create-the-corresponding-runtimeclass-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "concept:cri-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "concept:pod-overhead",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-environment",
      "to_id": "concept:container-environment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-environment.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-environment/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-environment",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-environment.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-environment/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-environment",
      "to_id": "concept:container-information",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-environment.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-environment/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-environment",
      "to_id": "concept:cluster-information",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-environment.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-environment/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-lifecycle-hooks",
      "to_id": "concept:overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-lifecycle-hooks",
      "to_id": "concept:container-hooks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-lifecycle-hooks",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-lifecycle-hooks",
      "to_id": "concept:hook-handler-implementations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-lifecycle-hooks",
      "to_id": "concept:hook-handler-execution",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-lifecycle-hooks",
      "to_id": "concept:hook-delivery-guarantees",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-lifecycle-hooks",
      "to_id": "concept:debugging-hook-handlers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/_index",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/containers/_index/",
          "line_start": 14,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/_index",
      "to_id": "gloss:container-runtime",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/containers/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/_index",
      "to_id": "concept:container-images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/containers/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/_index",
      "to_id": "concept:container-runtimes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/containers/_index/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/cri",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": 7,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/cri",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": 9,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/cri",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": 10,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/cri",
      "to_id": "gloss:cri",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/cri",
      "to_id": "concept:the-api-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/cri",
      "to_id": "concept:upgrading",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/cri",
      "to_id": "concept:list-streaming-list-streaming",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/cri",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 19,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 24,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "gloss:node",
      "type": "references",
      "label": "nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 27,
          "line_end": null,
          "quote": "nodes"
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Services",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 118,
          "line_end": null,
          "quote": "Services"
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "gloss:horizontal-pod-autoscaler",
      "type": "references",
      "label": "Horizontal pod autoscaling",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 128,
          "line_end": null,
          "quote": "Horizontal pod autoscaling"
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "gloss:resource-quota",
      "type": "references",
      "label": "Resource quotas",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 129,
          "line_end": null,
          "quote": "Resource quotas"
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 293,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "gloss:containerd",
      "type": "references",
      "label": "ContainerD",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 304,
          "line_end": null,
          "quote": "ContainerD"
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:windows-nodes-in-kubernetes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:compatibility-and-limitations-limitations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:node-problem-detector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 260,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:pause-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 267,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:container-runtimes-container-runtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:windows-os-version-compatibility-windows-os-version-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:hardware-recommendations-and-considerations-windows-hardware-recommendations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 335,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:getting-help-and-troubleshooting-troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 369,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:deployment-tools",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 402,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:windows-distribution-channels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 409,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:comparison-with-linux-compatibility-linux-similarities",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:command-line-options-for-the-kubelet-kubelet-compatibility",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:api-compatibility-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:containerd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 300,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:mirantis-container-runtime-mcr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:reporting-issues-and-feature-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "concept:validating-the-windows-cluster-operability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": 391,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "gloss:taint",
      "type": "references",
      "label": "taint",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 150,
          "line_end": null,
          "quote": "taint"
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:getting-started-deploying-a-windows-workload",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:observability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:configuring-container-user",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:taints-and-tolerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:capturing-logs-from-workloads",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:using-configurable-container-usernames",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:managing-workload-identity-with-group-managed-service-accounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:ensuring-os-specific-workloads-land-on-the-appropriate-container-host",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:handling-multiple-windows-versions-in-the-same-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 212,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "concept:simplifying-with-runtimeclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/_index",
      "to_id": "gloss:node",
      "type": "references",
      "label": "nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/_index.md",
          "url": "https://kubernetes.io/docs/concepts/windows/_index/",
          "line_start": 1,
          "line_end": null,
          "quote": "nodes"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 3,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 4,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "gloss:etcd",
      "type": "references",
      "label": "etcd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 275,
          "line_end": null,
          "quote": "etcd"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:discovery-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:openapi-interface-definition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:persistence",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 272,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:api-groups-and-versioning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 277,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:api-extension",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 335,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 344,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:aggregated-discovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:unaggregated-discovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:openapi-v2",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:openapi-v3",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:protobuf-serialization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 263,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubernetes-api",
      "to_id": "concept:api-changes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubernetes-api.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubernetes-api/",
          "line_start": 304,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubectl",
      "to_id": "gloss:etcd",
      "type": "references",
      "label": "etcd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 32,
          "line_end": null,
          "quote": "etcd"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubectl",
      "to_id": "gloss:kubectl",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubectl",
      "to_id": "concept:role-of-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubectl",
      "to_id": "concept:how-kubectl-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubectl",
      "to_id": "concept:what-you-can-do-with-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubectl",
      "to_id": "concept:declarative-vs-imperative",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubectl",
      "to_id": "concept:extending-kubectl-with-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubectl",
      "to_id": "concept:version-compatibility",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/kubectl",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/kubectl.md",
          "url": "https://kubernetes.io/docs/concepts/overview/kubectl/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/components",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/components.md",
          "url": "https://kubernetes.io/docs/concepts/overview/components/",
          "line_start": 28,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/components",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Services",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/components.md",
          "url": "https://kubernetes.io/docs/concepts/overview/components/",
          "line_start": 41,
          "line_end": null,
          "quote": "Services"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/components",
      "to_id": "concept:core-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/components.md",
          "url": "https://kubernetes.io/docs/concepts/overview/components/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/components",
      "to_id": "concept:addons",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/components.md",
          "url": "https://kubernetes.io/docs/concepts/overview/components/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/components",
      "to_id": "concept:flexibility-in-architecture",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/components.md",
          "url": "https://kubernetes.io/docs/concepts/overview/components/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/components",
      "to_id": "concept:control-plane-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/components.md",
          "url": "https://kubernetes.io/docs/concepts/overview/components/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/components",
      "to_id": "concept:node-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/components.md",
          "url": "https://kubernetes.io/docs/concepts/overview/components/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/_index",
      "to_id": "concept:why-you-need-kubernetes-and-what-it-can-do-why-you-need-kubernetes-and-what-can-it-do",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/_index",
      "to_id": "concept:what-kubernetes-is-not",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/_index/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/_index",
      "to_id": "concept:historical-context-for-kubernetes-going-back-in-time",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/_index/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/_index/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/names",
      "to_id": "gloss:object",
      "type": "references",
      "label": "object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 3,
          "line_end": null,
          "quote": "object"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/names",
      "to_id": "gloss:name",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/names",
      "to_id": "gloss:uid",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/names",
      "to_id": "concept:names",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/names",
      "to_id": "concept:uids",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/names",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/names",
      "to_id": "concept:dns-subdomain-names",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/names",
      "to_id": "concept:rfc-1123-label-names-dns-label-names",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/names",
      "to_id": "concept:rfc-1035-label-names",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/names",
      "to_id": "concept:path-segment-names",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/names.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/names/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/field-selectors",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 1,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/field-selectors",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinition",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 48,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/field-selectors",
      "to_id": "concept:supported-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/field-selectors",
      "to_id": "concept:supported-operators",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/field-selectors",
      "to_id": "concept:chained-selectors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/field-selectors",
      "to_id": "concept:multiple-resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/field-selectors",
      "to_id": "concept:list-of-supported-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/field-selectors",
      "to_id": "concept:custom-resources-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/field-selectors.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/finalizers",
      "to_id": "gloss:garbage-collection",
      "type": "references",
      "label": "garbage collection",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 5,
          "line_end": null,
          "quote": "garbage collection"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/finalizers",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 6,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/finalizers",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 6,
          "line_end": null,
          "quote": "controllers"
        },
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 6,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/finalizers",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 59,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/finalizers",
      "to_id": "gloss:job",
      "type": "references",
      "label": "Job",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 65,
          "line_end": null,
          "quote": "Job"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/finalizers",
      "to_id": "gloss:finalizer",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/finalizers",
      "to_id": "concept:how-finalizers-work",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/finalizers",
      "to_id": "concept:owner-references-labels-and-finalizers-owners-labels-finalizers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/finalizers",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/finalizers.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 3,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 22,
          "line_end": null,
          "quote": "labels"
        },
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 22,
          "line_end": null,
          "quote": "label"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "concept:when-to-use-multiple-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "concept:initial-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "concept:working-with-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "concept:namespaces-and-dns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "concept:not-all-objects-are-in-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "concept:automatic-labelling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 136,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "concept:viewing-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "concept:setting-the-namespace-for-a-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "concept:setting-the-namespace-preference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/common-labels",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/common-labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
          "line_start": 39,
          "line_end": null,
          "quote": "StatefulSet"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/common-labels",
      "to_id": "concept:labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/common-labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/common-labels",
      "to_id": "concept:applications-and-instances-of-applications",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/common-labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/common-labels",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/common-labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/common-labels",
      "to_id": "concept:a-simple-stateless-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/common-labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/common-labels",
      "to_id": "concept:web-application-with-a-database",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/common-labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/annotations",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/annotations.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/",
          "line_start": 3,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/annotations",
      "to_id": "concept:attaching-metadata-to-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/annotations.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/annotations",
      "to_id": "concept:syntax-and-character-set",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/annotations.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/annotations",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/annotations.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/storage-version",
      "to_id": "concept:storage-version-to-resource-mapping",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/storage-version.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/storage-version/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/storage-version",
      "to_id": "concept:storage-versions-for-custom-resources-customresourcedefinition-storage-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/storage-version.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/storage-version/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/storage-version",
      "to_id": "concept:how-storage-versions-are-relevant-to-encryption-at-rest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/storage-version.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/storage-version/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/storage-version",
      "to_id": "concept:migrating-to-a-different-storage-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/storage-version.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/storage-version/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/owners-dependents",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 3,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/owners-dependents",
      "to_id": "gloss:replica-set",
      "type": "references",
      "label": "ReplicaSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 5,
          "line_end": null,
          "quote": "ReplicaSet"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/owners-dependents",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 10,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/owners-dependents",
      "to_id": "gloss:uid",
      "type": "references",
      "label": "UID",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 19,
          "line_end": null,
          "quote": "UID"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/owners-dependents",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 20,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/owners-dependents",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 30,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/owners-dependents",
      "to_id": "gloss:finalizer",
      "type": "references",
      "label": "Finalizers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 62,
          "line_end": null,
          "quote": "Finalizers"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/owners-dependents",
      "to_id": "concept:owner-references-in-object-specifications",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/owners-dependents",
      "to_id": "concept:ownership-and-finalizers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/owners-dependents",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/owners-dependents.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 4,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:motivation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:syntax-and-character-set",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:label-selectors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:using-labels-effectively",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 295,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:updating-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 368,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 403,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:equality-based-requirement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:set-based-requirement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:list-and-watch-filtering",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/labels",
      "to_id": "concept:set-references-in-api-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/labels.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/",
          "line_start": 232,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/object-management",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 3,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/object-management",
      "to_id": "concept:management-techniques",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/object-management",
      "to_id": "concept:imperative-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/object-management",
      "to_id": "concept:imperative-object-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/object-management",
      "to_id": "concept:declarative-object-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/object-management",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/object-management",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        },
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        },
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/object-management",
      "to_id": "concept:trade-offs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        },
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        },
        {
          "source": "concepts/overview/working-with-objects/object-management.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/object-management/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/_index",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 38,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/_index",
      "to_id": "concept:understanding-kubernetes-objects-kubernetes-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/_index",
      "to_id": "concept:server-side-field-validation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/_index",
      "to_id": "concept:object-spec-and-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/_index",
      "to_id": "concept:describing-a-kubernetes-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/_index",
      "to_id": "concept:required-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/_index.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/_index/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/limit-range",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": 8,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/limit-range",
      "to_id": "gloss:persistent-volume-claim",
      "type": "references",
      "label": "PersistentVolumeClaim",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": 14,
          "line_end": null,
          "quote": "PersistentVolumeClaim"
        },
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": 14,
          "line_end": null,
          "quote": "PersistentVolumeClaim"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/limit-range",
      "to_id": "concept:constraints-on-resource-limits-and-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/limit-range",
      "to_id": "concept:limitrange-and-admission-checks-for-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/limit-range",
      "to_id": "concept:example-resource-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/limit-range",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/limit-range.md",
          "url": "https://kubernetes.io/docs/concepts/policy/limit-range/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 9,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "gloss:infrastructure-resource",
      "type": "references",
      "label": "infrastructure resources",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 11,
          "line_end": null,
          "quote": "infrastructure resources"
        },
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 11,
          "line_end": null,
          "quote": "resource"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 53,
          "line_end": null,
          "quote": "deployment"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 89,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "gloss:api-resource",
      "type": "references",
      "label": "resource",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 201,
          "line_end": null,
          "quote": "resource"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:how-kubernetes-resourcequotas-work",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:enabling-resource-quota",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:types-of-resource-quota",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:viewing-and-setting-quotas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:quota-and-cluster-capacity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 390,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:quota-scopes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 410,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 779,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:quota-for-infrastructure-resources-compute-resource-quota",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:quota-for-extended-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:quota-for-dra-resource-claims",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:quota-for-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:quota-on-object-count",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:best-effort-pods-scope-quota-scope-best-effort",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 462,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:not-best-effort-pods-scope-quota-scope-non-best-effort",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 470,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:non-terminating-pods-scope-quota-scope-non-terminating",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 479,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:terminating-pods-scope-quota-scope-terminating",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 497,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:cross-namespace-pod-affinity-scope",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 515,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:priorityclass-scope-resource-quota-per-priorityclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 570,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/resource-quotas",
      "to_id": "concept:volumeattributesclass-scope-quota-scope-volume-attributes-class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/resource-quotas.md",
          "url": "https://kubernetes.io/docs/concepts/policy/resource-quotas/",
          "line_start": 752,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/pid-limiting",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": 7,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/pid-limiting",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": 18,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/pid-limiting",
      "to_id": "gloss:kube-proxy",
      "type": "references",
      "label": "kube-proxy",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": 19,
          "line_end": null,
          "quote": "kube-proxy"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/pid-limiting",
      "to_id": "concept:node-pid-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/pid-limiting",
      "to_id": "concept:pod-pid-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/pid-limiting",
      "to_id": "concept:pid-based-eviction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/pid-limiting",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/pid-limiting.md",
          "url": "https://kubernetes.io/docs/concepts/policy/pid-limiting/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/_index",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 12,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/_index",
      "to_id": "gloss:admission-controller",
      "type": "references",
      "label": "admission controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 16,
          "line_end": null,
          "quote": "admission controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/_index",
      "to_id": "concept:apply-policies-using-api-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/_index",
      "to_id": "concept:apply-policies-using-admission-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/_index",
      "to_id": "concept:apply-policies-using-validatingadmissionpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/_index",
      "to_id": "concept:apply-policies-using-dynamic-admission-control",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/_index",
      "to_id": "concept:apply-policies-using-kubelet-configurations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/policy/_index",
      "to_id": "concept:implementations-implementations-admission-control",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/policy/_index.md",
          "url": "https://kubernetes.io/docs/concepts/policy/_index/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 3,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "gloss:qos-class",
      "type": "references",
      "label": "QoS class",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 272,
          "line_end": null,
          "quote": "QoS class"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:operating-system-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:how-does-it-work",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:observability-for-swap-use",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:risks-and-caveats",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 172,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:good-practice-for-using-swap-in-a-kubernetes-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 280,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:swap-behavior-details",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 343,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:swap-behaviors",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:container-runtime-integration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:node-and-container-level-metric-statistics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:using-kubectl-top-show-swap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:nodes-to-report-swap-capacity-as-part-of-node-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:swap-discovery-using-node-feature-discovery-nfd-node-feature-discovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:memory-backed-volumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 177,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:evictions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 232,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:unutilized-swap-space",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 263,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:disable-swap-for-system-critical-daemons",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 282,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:protect-system-critical-daemons-for-i-o-latency",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:swap-and-control-plane-nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 304,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:use-of-a-dedicated-disk-for-swap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 310,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:swap-aware-scheduling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 320,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:selecting-storage-for-optimal-performance",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 333,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/swap-memory-management",
      "to_id": "concept:how-is-the-swap-limit-being-determined-with-limitedswap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/swap-memory-management.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/swap-memory-management/",
          "line_start": 345,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "gloss:drain",
      "type": "references",
      "label": "drained",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 64,
          "line_end": null,
          "quote": "drained"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "kube-scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 73,
          "line_end": null,
          "quote": "kube-scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "gloss:kube-controller-manager",
      "type": "references",
      "label": "kube-controller-manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 75,
          "line_end": null,
          "quote": "kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:separate-permissions-to-dra-related-apis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:dra-driver-deployment-and-maintenance",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:monitor-and-tune-components-for-higher-load-especially-in-high-scale-environments",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 183,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:use-drivers-with-seamless-upgrade-if-available",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:confirm-your-dra-driver-exposes-a-liveness-probe-and-utilize-it",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:when-draining-a-node-drain-the-dra-driver-as-late-as-possible",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:kube-controller-manager-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:kube-scheduler-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:kubelet-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 152,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/dra",
      "to_id": "concept:dra-kubeletplugin-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/dra.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/dra/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/proxies",
      "to_id": "concept:proxies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/proxies.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/proxies/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/proxies",
      "to_id": "concept:requesting-redirects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/proxies.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/proxies/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "gloss:static-pod",
      "type": "references",
      "label": "static Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 430,
          "line_end": null,
          "quote": "static Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "gloss:mirror-pod",
      "type": "references",
      "label": "mirror Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 432,
          "line_end": null,
          "quote": "mirror Pod"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:importance-of-good-webhook-design-why-good-webhook-design-matters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:identify-whether-you-use-admission-webhooks-identify-admission-webhooks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:choose-an-admission-control-mechanism-choose-admission-mechanism",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:performance-and-latency-performance-latency",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:request-filtering-request-filtering",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:mutation-scope-and-field-considerations-mutation-scope-considerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 286,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:mutating-webhook-ordering-and-idempotence-ordering-idempotence",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 441,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:mutation-testing-and-validation-mutation-testing-validation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 524,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:mutating-webhook-deployment-mutating-webhook-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 582,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:examples-of-good-implementations-example-good-implementations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 624,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 636,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:use-built-in-validation-and-defaulting-for-customresourcedefinitions-no-crd-validation-defaulting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:design-admission-webhooks-for-low-latency-design-admission-webhooks-low-latency",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:prevent-loops-caused-by-competing-controllers-prevent-loops-competing-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:set-a-small-timeout-value-small-timeout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 201,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:use-a-load-balancer-to-ensure-webhook-availability-load-balancer-webhook",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 210,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:use-a-high-availability-deployment-model-ha-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 217,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:limit-the-scope-of-each-webhook-webhook-limit-scope",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 241,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:filter-for-specific-requests-by-using-match-conditions-filter-match-conditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 261,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:match-all-versions-of-an-api-match-all-versions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:patch-only-required-fields-patch-required-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 300,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:don-t-overwrite-array-values-dont-overwrite-arrays",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 313,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:avoid-side-effects-avoid-side-effects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 333,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:avoid-self-mutations-avoid-self-mutation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 348,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:avoid-dependency-loops-avoid-dependency-loops",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 366,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:fail-open-and-validate-the-final-state-fail-open-validate-final-state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 387,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:plan-for-future-updates-to-fields-plan-future-field-updates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 409,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:prevent-your-webhook-from-triggering-itself-prevent-webhook-self-trigger",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 416,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:don-t-change-immutable-objects-dont-change-immutable-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 427,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:don-t-rely-on-mutating-webhook-invocation-order-dont-rely-webhook-order",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 452,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:ensure-that-the-mutating-webhooks-in-your-cluster-are-idempotent-ensure-mutating-webhook-idempotent",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 467,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:test-webhooks-in-staging-environments-test-in-staging-environments",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 534,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:ensure-that-mutations-don-t-violate-validations-ensure-mutations-dont-violate-validations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 543,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:test-minor-version-upgrades-to-ensure-consistent-behavior-test-minor-version-upgrades",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 552,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:validate-mutations-before-admission-validate-mutations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 563,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:install-and-enable-a-mutating-webhook-install-enable-mutating-webhook",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 593,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/admission-webhooks-good-practices",
      "to_id": "concept:limit-edit-access-to-mutating-webhooks-limit-edit-access",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/admission-webhooks-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/admission-webhooks-good-practices/",
          "line_start": 610,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/coordinated-leader-election",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/coordinated-leader-election.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/coordinated-leader-election/",
          "line_start": 6,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/coordinated-leader-election",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API Server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/coordinated-leader-election.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/coordinated-leader-election/",
          "line_start": 18,
          "line_end": null,
          "quote": "API Server"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/coordinated-leader-election",
      "to_id": "concept:enabling-coordinated-leader-election",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/coordinated-leader-election.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/coordinated-leader-election/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/coordinated-leader-election",
      "to_id": "concept:component-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/coordinated-leader-election.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/coordinated-leader-election/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/coordinated-leader-election",
      "to_id": "concept:leader-selection-for-kubernetes-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/coordinated-leader-election.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/coordinated-leader-election/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/networking",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/networking.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/networking/",
          "line_start": 7,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/networking",
      "to_id": "concept:kubernetes-ip-address-ranges",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/networking.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/networking/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/networking",
      "to_id": "concept:cluster-networking-types-cluster-network-ipfamilies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/networking.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/networking/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/networking",
      "to_id": "concept:how-to-implement-the-kubernetes-network-model",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/networking.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/networking/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/networking",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/networking.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/networking/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/kube-state-metrics",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/kube-state-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/kube-state-metrics/",
          "line_start": 5,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/kube-state-metrics",
      "to_id": "concept:example-using-metrics-from-kube-state-metrics-to-query-the-cluster-state-example-kube-state-metrics-query-1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/kube-state-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/kube-state-metrics/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/kube-state-metrics",
      "to_id": "concept:example-alerting-based-on-from-kube-state-metrics-example-kube-state-metrics-alert-1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/kube-state-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/kube-state-metrics/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "gloss:kube-controller-manager",
      "type": "references",
      "label": "kube-controller-manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 18,
          "line_end": null,
          "quote": "kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "gloss:kube-proxy",
      "type": "references",
      "label": "kube-proxy",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 19,
          "line_end": null,
          "quote": "kube-proxy"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "kube-apiserver",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 20,
          "line_end": null,
          "quote": "kube-apiserver"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "kube-scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 21,
          "line_end": null,
          "quote": "kube-scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 22,
          "line_end": null,
          "quote": "kubelet"
        },
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 22,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "gloss:rbac",
      "type": "references",
      "label": "RBAC",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 32,
          "line_end": null,
          "quote": "RBAC"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "concept:metrics-in-kubernetes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "concept:metric-lifecycle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "concept:show-hidden-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "concept:component-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "concept:disabling-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "concept:metric-cardinality-enforcement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 305,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "concept:kube-controller-manager-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "concept:kube-scheduler-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-metrics",
      "to_id": "concept:kubelet-pressure-stall-information-psi-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-metrics.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-metrics/",
          "line_start": 168,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "gloss:node",
      "type": "references",
      "label": "Nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 2,
          "line_end": null,
          "quote": "Nodes"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:node-provisioning-provisioning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:node-consolidation-consolidation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:autoscalers-autoscalers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:combine-workload-and-node-autoscaling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:related-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 250,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:pod-scheduling-constraints-provisioning-pod-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:node-constraints-imposed-by-autoscaler-configuration-provisioning-node-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:auto-provisioning-autoprovisioning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:autoscaler-implementations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:horizontal-workload-autoscaling-horizontal-workload-autoscaling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:vertical-workload-autoscaling-vertical-workload-autoscaling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:descheduler",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "concept:workload-autoscalers-based-on-cluster-size",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": 260,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 159,
          "line_end": null,
          "quote": "pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "gloss:static-pod",
      "type": "references",
      "label": "static Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 161,
          "line_end": null,
          "quote": "static Pods"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:pod-and-container-logs-basic-logging-in-kubernetes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:system-component-logs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 153,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:cluster-level-logging-architectures",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 399,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:container-log-streams",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:how-nodes-handle-container-logs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 103,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:log-rotation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:log-locations-log-location-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 165,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:using-a-node-logging-agent",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 257,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:using-a-sidecar-container-with-the-logging-agent-sidecar-container-with-logging-agent",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 275,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/logging",
      "to_id": "concept:exposing-logs-directly-from-the-application",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/logging.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/logging/",
          "line_start": 392,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 3,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "gloss:toleration",
      "type": "references",
      "label": "toleration",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 95,
          "line_end": null,
          "quote": "toleration"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 257,
          "line_end": null,
          "quote": "StatefulSet"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "concept:graceful-node-shutdown-graceful-node-shutdown",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "concept:non-graceful-node-shutdown-handling-non-graceful-node-shutdown",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "concept:enabling-graceful-node-shutdown",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "concept:configuring-graceful-node-shutdown",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "concept:pod-priority-based-graceful-node-shutdown-pod-priority-graceful-node-shutdown",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "concept:forced-storage-detach-on-timeout-storage-force-detach-on-timeout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/observability",
      "to_id": "concept:metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/observability",
      "to_id": "concept:logs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/observability",
      "to_id": "concept:traces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/observability",
      "to_id": "concept:common-observability-tools",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/observability",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 171,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/observability",
      "to_id": "concept:metrics-tools",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/observability",
      "to_id": "concept:logging-tools",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/observability",
      "to_id": "concept:tracing-tools",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/observability.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/observability/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-traces",
      "to_id": "concept:trace-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-traces",
      "to_id": "concept:component-traces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-traces",
      "to_id": "concept:stability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-traces",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-traces",
      "to_id": "concept:kube-apiserver-traces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-traces",
      "to_id": "concept:kubelet-traces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-traces.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-traces/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "kube-apiserver",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 7,
          "line_end": null,
          "quote": "kube-apiserver"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 20,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API Group",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 47,
          "line_end": null,
          "quote": "API Group"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "gloss:shuffle-sharding",
      "type": "references",
      "label": "shuffle sharding",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 183,
          "line_end": null,
          "quote": "shuffle sharding"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:enabling-disabling-api-priority-and-fairness",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:recursive-server-scenarios",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:concepts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:defaults",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 347,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:health-check-concurrency-exemption",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 471,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:observability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 494,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:good-practices-for-using-api-priority-and-fairness",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 700,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 814,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:priority-levels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:seats-occupied-by-a-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:execution-time-tweaks-for-watch-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:queuing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 165,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:exempt-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:prioritylevelconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:flowschema",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:mandatory-configuration-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 352,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:suggested-configuration-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 376,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:maintenance-of-the-mandatory-and-suggested-configuration-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 414,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 496,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:workload-modifications-good-practice-workload-modifications",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 720,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/flow-control",
      "to_id": "concept:priority-and-fairness-settings-good-practice-apf-settings",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/flow-control.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/flow-control/",
          "line_start": 752,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "gloss:kube-controller-manager",
      "type": "references",
      "label": "kube-controller-manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 203,
          "line_end": null,
          "quote": "kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "kube-apiserver",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 204,
          "line_end": null,
          "quote": "kube-apiserver"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "kube-scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 205,
          "line_end": null,
          "quote": "kube-scheduler"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 206,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 220,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "concept:klog",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "concept:log-query",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 300,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "concept:klog-output",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "concept:structured-logging",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "concept:contextual-logging",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "concept:json-log-format",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "concept:log-verbosity-level",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/system-logs",
      "to_id": "concept:log-location",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/system-logs.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/system-logs/",
          "line_start": 214,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/addons",
      "to_id": "concept:networking-and-network-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/addons",
      "to_id": "concept:service-discovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/addons",
      "to_id": "concept:visualization-amp-control",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/addons",
      "to_id": "concept:infrastructure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/addons",
      "to_id": "concept:instrumentation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/addons",
      "to_id": "concept:legacy-add-ons",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/addons.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/addons/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/_index",
      "to_id": "concept:planning-a-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/_index",
      "to_id": "concept:managing-a-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/_index",
      "to_id": "concept:securing-a-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/_index",
      "to_id": "concept:optional-cluster-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/_index",
      "to_id": "concept:securing-the-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/_index.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/_index/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/compatibility-version",
      "to_id": "concept:emulated-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/compatibility-version.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/compatibility-version/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "gloss:addons",
      "type": "references",
      "label": "addons",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 229,
          "line_end": null,
          "quote": "addons"
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:create-a-minikube-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:check-the-status-of-the-minikube-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:open-the-dashboard",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:create-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:create-a-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:enable-addons",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 331,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:conclusion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 355,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/hello-minikube",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/hello-minikube.md",
          "url": "https://kubernetes.io/docs/tutorials/hello-minikube/",
          "line_start": 359,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/_index",
      "to_id": "concept:basics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/_index",
      "to_id": "concept:configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/_index",
      "to_id": "concept:authoring-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/_index",
      "to_id": "concept:stateless-applications",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/_index",
      "to_id": "concept:stateful-applications",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/_index",
      "to_id": "concept:services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/_index",
      "to_id": "concept:security",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/_index",
      "to_id": "concept:cluster-management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/_index/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 29,
          "line_end": null,
          "quote": "Pod"
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "gloss:addons",
      "type": "references",
      "label": "addons",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 38,
          "line_end": null,
          "quote": "addons"
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "gloss:init-container",
      "type": "references",
      "label": "init containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 56,
          "line_end": null,
          "quote": "init containers"
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "concept:sidecar-containers-overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "concept:benefits-of-a-built-in-sidecar-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "concept:adopting-built-in-sidecar-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "concept:ensure-the-feature-gate-is-enabled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "concept:check-for-3rd-party-tooling-and-mutating-webhooks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "concept:automatic-injection-of-sidecars",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "gloss:persistent-volume-claim",
      "type": "references",
      "label": "PersistentVolumeClaim",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 4,
          "line_end": null,
          "quote": "PersistentVolumeClaim"
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 20,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:create-an-index-html-file-on-your-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:create-a-persistentvolume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:create-a-persistentvolumeclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:create-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        },
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 221,
          "line_end": null,
          "quote": null
        },
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 221,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:mounting-the-same-persistentvolume-in-two-places",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:access-control",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 406,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 436,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:move-the-index-html-file-on-your-node-to-a-new-folder",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 255,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:create-a-new-nginx-conf-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 277,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "concept:reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": 441,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volume",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 32,
          "line_end": null,
          "quote": "volume"
        },
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 32,
          "line_end": null,
          "quote": "volume"
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 42,
          "line_end": null,
          "quote": "selector"
        },
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 42,
          "line_end": null,
          "quote": "selector"
        },
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 42,
          "line_end": null,
          "quote": "selector"
        },
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 42,
          "line_end": null,
          "quote": "selector"
        },
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 42,
          "line_end": null,
          "quote": "selector"
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "gloss:replica-set",
      "type": "references",
      "label": "ReplicaSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 277,
          "line_end": null,
          "quote": "ReplicaSet"
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 355,
          "line_end": null,
          "quote": "Service"
        },
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 355,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "concept:update-configuration-via-a-configmap-mounted-as-a-volume-rollout-configmap-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "concept:update-environment-variables-of-a-pod-via-a-configmap-rollout-configmap-env",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "concept:update-configuration-via-a-configmap-in-a-multi-container-pod-rollout-configmap-multiple-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "concept:update-configuration-via-a-configmap-in-a-pod-possessing-a-sidecar-container-rollout-configmap-sidecar",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 425,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "concept:update-configuration-via-an-immutable-configmap-that-is-mounted-as-a-volume-rollout-configmap-immutable-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 542,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "concept:summary",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 717,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": 730,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-redis-using-configmap",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-redis-using-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-redis-using-configmap/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-redis-using-configmap",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-redis-using-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-redis-using-configmap/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-redis-using-configmap",
      "to_id": "concept:real-world-example-configuring-redis-using-a-configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-redis-using-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-redis-using-configmap/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-redis-using-configmap",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-redis-using-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-redis-using-configmap/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "gloss:containerd",
      "type": "references",
      "label": "containerd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 41,
          "line_end": null,
          "quote": "containerd"
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "gloss:cri-o",
      "type": "references",
      "label": "cri-o",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 42,
          "line_end": null,
          "quote": "cri-o"
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "concept:securing-a-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "concept:example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "concept:administration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 225,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "concept:authoring-profiles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "concept:specifying-apparmor-confinement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 288,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "concept:setting-up-nodes-with-profiles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "concept:apparmor-profile-within-security-context-apparmorprofile",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": 263,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/cluster-level-pss",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/cluster-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/cluster-level-pss/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/cluster-level-pss",
      "to_id": "concept:choose-the-right-pod-security-standard-to-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/cluster-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/cluster-level-pss/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/cluster-level-pss",
      "to_id": "concept:set-modes-versions-and-standards",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/cluster-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/cluster-level-pss/",
          "line_start": 153,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/cluster-level-pss",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/cluster-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/cluster-level-pss/",
          "line_start": 303,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/cluster-level-pss",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/cluster-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/cluster-level-pss/",
          "line_start": 314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 9,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 109,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 226,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "concept:download-example-seccomp-profiles-download-profiles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "concept:create-a-local-kubernetes-cluster-with-kind",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "concept:create-a-pod-that-uses-the-container-runtime-default-seccomp-profile",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 152,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "concept:create-a-pod-with-a-seccomp-profile-for-syscall-auditing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "concept:create-a-pod-with-a-seccomp-profile-that-causes-violation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 295,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "concept:create-a-pod-with-a-seccomp-profile-that-only-allows-necessary-syscalls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 334,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "concept:enable-the-use-of-runtimedefault-as-the-default-seccomp-profile-for-all-workloads",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 413,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": 517,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/ns-level-pss",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/ns-level-pss",
      "to_id": "concept:create-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/ns-level-pss",
      "to_id": "concept:create-a-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/ns-level-pss",
      "to_id": "concept:enable-pod-security-standards-checking-for-that-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/ns-level-pss",
      "to_id": "concept:verify-the-pod-security-standard-enforcement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/ns-level-pss",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/ns-level-pss",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/provision-swap-memory",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/provision-swap-memory.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/provision-swap-memory",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/provision-swap-memory.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/provision-swap-memory",
      "to_id": "concept:install-a-swap-enabled-cluster-with-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/provision-swap-memory.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/provision-swap-memory",
      "to_id": "concept:create-a-swap-file-and-turn-swap-on",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/provision-swap-memory.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/provision-swap-memory",
      "to_id": "concept:set-up-kubelet-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/provision-swap-memory.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespaces",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": 2,
          "line_end": null,
          "quote": "namespaces"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": 31,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Services",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": 31,
          "line_end": null,
          "quote": "Services"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployments",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": 31,
          "line_end": null,
          "quote": "Deployments"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "to_id": "concept:prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "to_id": "concept:understand-the-default-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "to_id": "concept:create-new-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "to_id": "concept:create-pods-in-each-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 202,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:what-are-declarative-admission-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:enforcement-through-validation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:modifying-resources-when-they-are-created-or-changed-mutation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 358,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:api-types-for-admission-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:policy-elements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:cel-expressions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:policy-actions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:test-the-policy-test-admission-policy-validation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 177,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:existing-resources-aren-t-affected-limitation-admission-policy-validation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 196,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:test-the-policy-test-admission-policy-mutation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 244,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:use-a-parameter-resource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 285,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/admission-policies",
      "to_id": "concept:change-the-parameter",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/admission-policies.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/admission-policies/",
          "line_start": 349,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 11,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 35,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "(CRI)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 36,
          "line_end": null,
          "quote": "(CRI)"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "gloss:cni",
      "type": "references",
      "label": "Container Networking Interface (CNI)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 38,
          "line_end": null,
          "quote": "Container Networking Interface (CNI)"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 501,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "Secret",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 502,
          "line_end": null,
          "quote": "Secret"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:prepare-the-system",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:download-install-and-configure-the-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:run-a-pod-in-the-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 374,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:where-to-look-for-more-details",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 443,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 457,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:conclusion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 493,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 505,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:swap-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:enable-ipv4-packet-forwarding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:install-a-container-runtime-container-runtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:set-up-cri-o-cri-o-setup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:install-network-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:download-and-set-up-the-kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 235,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:find-out-information-about-the-kubelet-and-the-pod-find-out-information",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 404,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:kubelet",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:container-runtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 472,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/kubelet-standalone",
      "to_id": "concept:network-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/kubelet-standalone.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/kubelet-standalone/",
          "line_start": 485,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "gloss:dra",
      "type": "references",
      "label": "Dynamic Resource Allocation (DRA)",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 21,
          "line_end": null,
          "quote": "Dynamic Resource Allocation (DRA)"
        },
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 21,
          "line_end": null,
          "quote": "Dynamic Resource Allocation (DRA)"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "gloss:device",
      "type": "references",
      "label": "devices",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 24,
          "line_end": null,
          "quote": "devices"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "gloss:deviceclass",
      "type": "references",
      "label": "DeviceClasses",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 36,
          "line_end": null,
          "quote": "DeviceClasses"
        },
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 36,
          "line_end": null,
          "quote": "DeviceClasses"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "gloss:resourceslice",
      "type": "references",
      "label": "ResourceSlices",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 37,
          "line_end": null,
          "quote": "ResourceSlices"
        },
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 37,
          "line_end": null,
          "quote": "ResourceSlices"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "gloss:resourceclaim",
      "type": "references",
      "label": "ResourceClaims",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 38,
          "line_end": null,
          "quote": "ResourceClaims"
        },
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 38,
          "line_end": null,
          "quote": "ResourceClaims"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "gloss:resourceclaimtemplate",
      "type": "references",
      "label": "ResourceClaimTemplates",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 98,
          "line_end": null,
          "quote": "ResourceClaimTemplates"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "daemonset",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 120,
          "line_end": null,
          "quote": "daemonset"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selectors",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 122,
          "line_end": null,
          "quote": "selectors"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "gloss:priority-class",
      "type": "references",
      "label": "priority-class",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 198,
          "line_end": null,
          "quote": "priority-class"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "gloss:cel",
      "type": "references",
      "label": "cel",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 265,
          "line_end": null,
          "quote": "cel"
        },
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 265,
          "line_end": null,
          "quote": "cel"
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:explore-the-initial-cluster-state-explore-initial-state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:install-an-example-dra-driver-install-example-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:claim-resources-and-deploy-a-pod-claim-resources-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 260,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:delete-a-pod-that-has-a-claim-delete-pod-claim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 431,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 483,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 495,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:prepare-your-cluster-for-driver-installation-prepare-cluster-driver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:deploy-the-dra-driver-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:verify-the-dra-driver-installation-verify-driver-install",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:create-the-resourceclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 274,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:create-the-pod-that-references-that-resourceclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 293,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:explore-the-dra-state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "concept:observe-the-dra-state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": 450,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/_index",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/_index/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/_index",
      "to_id": "concept:what-can-kubernetes-do-for-you",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/_index/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/_index",
      "to_id": "concept:kubernetes-basics-modules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/_index/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/_index/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/scale/scale-intro",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/scale/scale-intro",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/scale/scale-intro",
      "to_id": "concept:scaling-an-application",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/scale/scale-intro",
      "to_id": "concept:scaling-overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/scale/scale-intro",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/scale/scale-intro",
      "to_id": "concept:scaling-a-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 82,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/scale/scale-intro",
      "to_id": "concept:load-balancing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 150,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/scale/scale-intro",
      "to_id": "concept:scale-down",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/scale-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/scale-intro/",
          "line_start": 209,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/update/update-intro",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/update/update-intro",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/update/update-intro",
      "to_id": "concept:updating-an-application",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/update/update-intro",
      "to_id": "concept:rolling-updates-overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/update/update-intro",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 212,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/update/update-intro",
      "to_id": "concept:update-the-version-of-the-app",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/update/update-intro",
      "to_id": "concept:verify-an-update",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/update/update-intro",
      "to_id": "concept:roll-back-an-update",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/update/update-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/create-cluster/cluster-intro",
      "to_id": "gloss:containerd",
      "type": "references",
      "label": "containerd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": 66,
          "line_end": null,
          "quote": "containerd"
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/create-cluster/cluster-intro",
      "to_id": "gloss:cri-o",
      "type": "references",
      "label": "cri-o",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": 67,
          "line_end": null,
          "quote": "cri-o"
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/create-cluster/cluster-intro",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/create-cluster/cluster-intro",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/create-cluster/cluster-intro",
      "to_id": "concept:kubernetes-clusters",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/create-cluster/cluster-intro",
      "to_id": "concept:create-a-minikube-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/create-cluster/cluster-intro",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/create-cluster/cluster-intro",
      "to_id": "concept:cluster-diagram",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/cluster-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/create-cluster/_index",
      "to_id": "gloss:cluster",
      "type": "references",
      "label": "cluster",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/create-cluster/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/_index/",
          "line_start": 1,
          "line_end": null,
          "quote": "cluster"
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:kubernetes-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:nodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:troubleshooting-with-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:pods-overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:nodes-overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:check-application-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:show-the-app-in-the-terminal",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "concept:executing-commands-on-the-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/expose/expose-intro",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/expose/expose-intro",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/expose/expose-intro",
      "to_id": "concept:overview-of-kubernetes-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/expose/expose-intro",
      "to_id": "concept:services-and-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/expose/expose-intro",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 253,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/expose/expose-intro",
      "to_id": "concept:step-1-creating-a-new-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/expose/expose-intro",
      "to_id": "concept:step-2-using-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/expose/expose-intro",
      "to_id": "concept:step-3-deleting-a-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": 220,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/deploy-app/deploy-intro",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/deploy-app/deploy-intro",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/deploy-app/deploy-intro",
      "to_id": "concept:kubernetes-deployments",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/deploy-app/deploy-intro",
      "to_id": "concept:deploying-your-first-app-on-kubernetes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/deploy-app/deploy-intro",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/deploy-app/deploy-intro",
      "to_id": "concept:kubectl-basics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/deploy-app/deploy-intro",
      "to_id": "concept:deploy-an-app",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 95,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/deploy-app/deploy-intro",
      "to_id": "concept:view-the-app",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSets",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 3,
          "line_end": null,
          "quote": "StatefulSets"
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "gloss:watch",
      "type": "references",
      "label": "watch",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 67,
          "line_end": null,
          "quote": "watch"
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 163,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "gloss:persistent-volume-claim",
      "type": "references",
      "label": "PersistentVolumeClaims",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 334,
          "line_end": null,
          "quote": "PersistentVolumeClaims"
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "gloss:persistent-volume",
      "type": "references",
      "label": "PersistentVolumes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 336,
          "line_end": null,
          "quote": "PersistentVolumes"
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:creating-a-statefulset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:pods-in-a-statefulset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:scaling-a-statefulset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 374,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:updating-statefulsets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 557,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:deleting-statefulsets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 909,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:pod-management-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 1153,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 1246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:ordered-pod-creation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:examining-the-pod-s-ordinal-index",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:using-stable-network-identities",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:writing-to-stable-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:scaling-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 429,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:scaling-down",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 486,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:ordered-pod-termination",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 530,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:rollingupdate-rolling-update",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 568,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:ondelete-on-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 890,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:non-cascading-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 919,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:cascading-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 1043,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:orderedready-pod-management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 1162,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "concept:parallel-pod-management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": 1178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "to_id": "concept:create-persistentvolumeclaims-and-persistentvolumes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "to_id": "concept:create-a-kustomization-yaml",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "to_id": "concept:add-resource-configs-for-mysql-and-wordpress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "to_id": "concept:apply-and-verify",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 247,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "to_id": "concept:add-a-secret-generator",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 26,
          "line_end": null,
          "quote": "Service"
        },
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 26,
          "line_end": null,
          "quote": "Services"
        },
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 26,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 30,
          "line_end": null,
          "quote": "Pods"
        },
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 30,
          "line_end": null,
          "quote": "Pods"
        },
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 30,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:creating-a-headless-service-for-cassandra-creating-a-cassandra-headless-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:using-a-statefulset-to-create-a-cassandra-ring",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:validating-the-cassandra-statefulset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:modifying-the-cassandra-statefulset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 179,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:cassandra-container-environment-variables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 257,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 275,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:additional-minikube-setup-instructions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "concept:validating-optional-validating",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:creating-a-zookeeper-ensemble",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:ensuring-consistent-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 441,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:managing-the-zookeeper-process",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 598,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:tolerating-node-failure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 816,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:surviving-maintenance",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 871,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 1140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:zookeeper",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:facilitating-leader-election",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:achieving-consensus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 197,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:sanity-testing-the-ensemble",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:providing-durable-storage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 291,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:configuring-logging",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 485,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:configuring-a-non-privileged-user",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 550,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:updating-the-ensemble",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 608,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:handling-process-failure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 670,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:testing-for-liveness",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 723,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/zookeeper",
      "to_id": "concept:testing-for-readiness",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/zookeeper.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/",
          "line_start": 787,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/pods-and-endpoint-termination-flow",
      "to_id": "concept:termination-process-for-pods-and-their-endpoints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/pods-and-endpoint-termination-flow.md",
          "url": "https://kubernetes.io/docs/tutorials/services/pods-and-endpoint-termination-flow/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/pods-and-endpoint-termination-flow",
      "to_id": "concept:example-flow-with-endpoint-termination",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/pods-and-endpoint-termination-flow.md",
          "url": "https://kubernetes.io/docs/tutorials/services/pods-and-endpoint-termination-flow/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/pods-and-endpoint-termination-flow",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/pods-and-endpoint-termination-flow.md",
          "url": "https://kubernetes.io/docs/tutorials/services/pods-and-endpoint-termination-flow/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 29,
          "line_end": null,
          "quote": "pod"
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 32,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 353,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "concept:source-ip-for-services-with-type-clusterip",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "concept:source-ip-for-services-with-type-nodeport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "concept:source-ip-for-services-with-type-loadbalancer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "concept:cross-platform-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 369,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 396,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 413,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "concept:terminology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/source-ip",
      "to_id": "concept:prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/source-ip.md",
          "url": "https://kubernetes.io/docs/tutorials/services/source-ip/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "gloss:endpoint-slice",
      "type": "references",
      "label": "EndpointSlices",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 105,
          "line_end": null,
          "quote": "EndpointSlices"
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 108,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "concept:the-kubernetes-model-for-connecting-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 3,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "concept:exposing-pods-to-the-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "concept:creating-a-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "concept:accessing-the-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "concept:securing-the-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 251,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "concept:exposing-the-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 433,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 510,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "concept:environment-variables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 162,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "concept:dns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:start-up-the-redis-database",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:set-up-and-expose-the-guestbook-frontend",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:scale-the-web-frontend",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 313,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 367,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 402,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:creating-the-redis-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:creating-the-redis-leader-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:set-up-redis-followers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 107,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:creating-the-redis-follower-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:creating-the-guestbook-frontend-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:creating-the-frontend-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 221,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:viewing-the-frontend-service-via-kubectl-port-forward",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/guestbook",
      "to_id": "concept:viewing-the-frontend-service-via-loadbalancer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/guestbook.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/guestbook/",
          "line_start": 287,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/expose-external-ip-address",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/expose-external-ip-address.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
          "line_start": 34,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/expose-external-ip-address",
      "to_id": "gloss:replica-set",
      "type": "references",
      "label": "ReplicaSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/expose-external-ip-address.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
          "line_start": 36,
          "line_end": null,
          "quote": "ReplicaSet"
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/expose-external-ip-address",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/expose-external-ip-address.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
          "line_start": 38,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/expose-external-ip-address",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/expose-external-ip-address.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/expose-external-ip-address",
      "to_id": "concept:heading-objectives",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/expose-external-ip-address.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/expose-external-ip-address",
      "to_id": "concept:creating-a-service-for-an-application-running-in-five-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/expose-external-ip-address.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/expose-external-ip-address",
      "to_id": "concept:heading-cleanup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/expose-external-ip-address.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateless-application/expose-external-ip-address",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateless-application/expose-external-ip-address.md",
          "url": "https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/",
          "line_start": 171,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/_index",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 109,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:reference/_index",
      "to_id": "concept:api-reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/_index",
      "to_id": "concept:officially-supported-client-libraries",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/_index",
      "to_id": "concept:cli",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/_index",
      "to_id": "concept:components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/_index",
      "to_id": "concept:config-apis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/_index",
      "to_id": "concept:config-api-for-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/_index",
      "to_id": "concept:external-apis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/_index",
      "to_id": "concept:design-docs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/_index",
      "to_id": "concept:encodings",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/_index.md",
          "url": "https://kubernetes.io/docs/reference/_index/",
          "line_start": 107,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/encodings/kyaml",
      "to_id": "concept:getting-started-with-kyaml",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/encodings/kyaml.md",
          "url": "https://kubernetes.io/docs/reference/encodings/kyaml/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/encodings/kyaml",
      "to_id": "concept:basic-structure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/encodings/kyaml.md",
          "url": "https://kubernetes.io/docs/reference/encodings/kyaml/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/_index",
      "to_id": "gloss:kubernetes-api",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:clusterrolebinding-clusterrolebinding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:clusterrolebindinglist-clusterrolebindinglist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 248,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 331,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 424,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 544,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 594,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 686,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": 791,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:rolebinding-rolebinding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:rolebindinglist-rolebindinglist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 354,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 452,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 585,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 640,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 745,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 837,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 947,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": 1052,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:role-role",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:rolelist-rolelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 169,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 262,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 350,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 448,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 581,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 636,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 741,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 833,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 943,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": 1048,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:clusterrole-clusterrole",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:clusterrolelist-clusterrolelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:aggregationrule-aggregationrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 177,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 265,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 348,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 441,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 561,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 611,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 703,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": 808,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:storageversion-storageversion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:storageversionspec-storageversionspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:storageversionstatus-storageversionstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:storageversionlist-storageversionlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:serverstorageversion-serverstorageversion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:storageversioncondition-storageversioncondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 179,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 259,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 347,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 430,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 523,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 643,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 693,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 785,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 890,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 982,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 1070,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": 1120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:flowschema-flowschema",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:flowschemaspec-flowschemaspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:flowschemastatus-flowschemastatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:flowschemalist-flowschemalist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:flowdistinguishermethod-flowdistinguishermethod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:flowschemacondition-flowschemacondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:groupsubject-groupsubject",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:nonresourcepolicyrule-nonresourcepolicyrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:policyruleswithsubjects-policyruleswithsubjects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:prioritylevelconfigurationreference-prioritylevelconfigurationreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 238,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:resourcepolicyrule-resourcepolicyrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 255,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:serviceaccountsubject-serviceaccountsubject",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 288,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:subject-subject",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:usersubject-usersubject",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 338,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 356,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 361,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 436,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 524,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 607,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 700,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 820,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 870,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 962,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 1067,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 1159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 1247,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": 1297,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:prioritylevelconfiguration-prioritylevelconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:prioritylevelconfigurationspec-prioritylevelconfigurationspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:prioritylevelconfigurationstatus-prioritylevelconfigurationstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:prioritylevelconfigurationlist-prioritylevelconfigurationlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:exemptprioritylevelconfiguration-exemptprioritylevelconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:limitresponse-limitresponse",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:limitedprioritylevelconfiguration-limitedprioritylevelconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:prioritylevelconfigurationcondition-prioritylevelconfigurationcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:queuingconfiguration-queuingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 253,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 258,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 333,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 421,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 504,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 597,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 717,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 767,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 859,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 964,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 1056,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 1144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": 1194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:node-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodespec-nodespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodestatus-nodestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodelist-nodelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:attachedvolume-attachedvolume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:configmapnodeconfigsource-configmapnodeconfigsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 210,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:containerimage-containerimage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:daemonendpoint-daemonendpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodeaddress-nodeaddress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 281,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodecondition-nodecondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodeconfigsource-nodeconfigsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 339,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodeconfigstatus-nodeconfigstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 356,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodedaemonendpoints-nodedaemonendpoints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 385,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodefeatures-nodefeatures",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 402,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:noderuntimehandler-noderuntimehandler",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 419,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:noderuntimehandlerfeatures-noderuntimehandlerfeatures",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 440,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodeswapstatus-nodeswapstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 461,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:nodesysteminfo-nodesysteminfo",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 478,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:taint-taint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 535,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 565,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 570,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 645,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 733,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 816,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 909,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1029,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1079,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1171,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1368,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1456,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1506,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:post-create-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1589,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:post-create-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1639,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:delete-delete-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1694,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:delete-delete-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1744,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:get-get-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1799,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:get-get-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1849,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:head-head-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1904,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:head-head-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 1954,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:put-replace-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 2009,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "concept:put-replace-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": 2059,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:namespace-namespace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:namespacespec-namespacespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:namespacestatus-namespacestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:namespacelist-namespacelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:namespacecondition-namespacecondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 402,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 495,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 545,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 637,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 742,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 834,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 922,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": 972,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:limitrange-limitrange",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:limitrangespec-limitrangespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:limitrangelist-limitrangelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:limitrangeitem-limitrangeitem",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 223,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 316,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 404,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 502,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 635,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 690,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 795,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 887,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 997,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": 1102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:serviceaccount-serviceaccount",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:serviceaccountlist-serviceaccountlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 177,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 358,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 456,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 589,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 644,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 749,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 841,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 951,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": 1056,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:podtemplate-podtemplate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:podtemplatespec-podtemplatespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:podtemplatelist-podtemplatelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 283,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 371,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 469,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 602,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 762,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 854,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 964,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": 1069,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:persistentvolume-persistentvolume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:persistentvolumespec-persistentvolumespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:persistentvolumestatus-persistentvolumestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:persistentvolumelist-persistentvolumelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:awselasticblockstorevolumesource-awselasticblockstorevolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 245,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:azurediskvolumesource-azurediskvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:azurefilepersistentvolumesource-azurefilepersistentvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 313,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:csipersistentvolumesource-csipersistentvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 342,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:cephfspersistentvolumesource-cephfspersistentvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 395,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:cinderpersistentvolumesource-cinderpersistentvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 432,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:fcvolumesource-fcvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 461,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:flexpersistentvolumesource-flexpersistentvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 494,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:flockervolumesource-flockervolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 527,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:gcepersistentdiskvolumesource-gcepersistentdiskvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 548,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:glusterfspersistentvolumesource-glusterfspersistentvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 579,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:hostpathvolumesource-hostpathvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 608,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:iscsipersistentvolumesource-iscsipersistentvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 629,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:localvolumesource-localvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 686,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:nfsvolumesource-nfsvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 707,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:photonpersistentdiskvolumesource-photonpersistentdiskvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 732,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:portworxvolumesource-portworxvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 753,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:quobytevolumesource-quobytevolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 778,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:rbdpersistentvolumesource-rbdpersistentvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 815,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:scaleiopersistentvolumesource-scaleiopersistentvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 860,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:secretreference-secretreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 913,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:storageospersistentvolumesource-storageospersistentvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 934,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:volumenodeaffinity-volumenodeaffinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 967,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:vspherevirtualdiskvolumesource-vspherevirtualdiskvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 984,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1014,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1019,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1094,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1265,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1358,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1478,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1528,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1620,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1725,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1817,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1905,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": 1955,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:configmap-configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:configmaplist-configmaplist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 177,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 358,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 456,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 589,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 644,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 749,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 841,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 951,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": 1056,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:secret-secret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:secretlist-secretlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 93,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 181,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 274,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 362,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 460,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 593,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 648,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 753,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 845,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 955,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": 1060,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:pod-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podspec-podspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podstatus-podstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podlist-podlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 328,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:affinity-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 357,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:apparmorprofile-apparmorprofile",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:azurefilevolumesource-azurefilevolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 403,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:csivolumesource-csivolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 428,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:capabilities-capabilities",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 461,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:cephfsvolumesource-cephfsvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 482,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:cindervolumesource-cindervolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 519,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:clustertrustbundleprojection-clustertrustbundleprojection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 548,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:configmapenvsource-configmapenvsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 581,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:configmapkeyselector-configmapkeyselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 604,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:configmapprojection-configmapprojection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 629,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:configmapvolumesource-configmapvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 656,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:container-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 687,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:containerextendedresourcerequest-containerextendedresourcerequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 800,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:containerport-containerport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 825,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:containerresizepolicy-containerresizepolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 858,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:containerrestartrule-containerrestartrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 879,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:containerrestartruleonexitcodes-containerrestartruleonexitcodes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 900,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:containerstate-containerstate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 921,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:containerstaterunning-containerstaterunning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 946,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:containerstateterminated-containerstateterminated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 963,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:containerstatewaiting-containerstatewaiting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1004,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:containeruser-containeruser",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1025,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:downwardapiprojection-downwardapiprojection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1042,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:downwardapivolumefile-downwardapivolumefile",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1059,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:downwardapivolumesource-downwardapivolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1088,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:emptydirvolumesource-emptydirvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1109,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:envfromsource-envfromsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:envvar-envvar",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:envvarsource-envvarsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:ephemeralcontainer-ephemeralcontainer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:ephemeralvolumesource-ephemeralvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1332,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:execaction-execaction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1349,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:filekeyselector-filekeyselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1366,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:flexvolumesource-flexvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1395,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:grpcaction-grpcaction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1428,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:gitrepovolumesource-gitrepovolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1449,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:glusterfsvolumesource-glusterfsvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1476,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:httpgetaction-httpgetaction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1501,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:httpheader-httpheader",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1534,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:hostalias-hostalias",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1555,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:hostip-hostip",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1576,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:iscsivolumesource-iscsivolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1593,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:imagevolumesource-imagevolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1650,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:imagevolumestatus-imagevolumestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1671,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:keytopath-keytopath",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1688,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:lifecycle-lifecycle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1713,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:lifecyclehandler-lifecyclehandler",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1738,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:linuxcontaineruser-linuxcontaineruser",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1767,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:nodeaffinity-nodeaffinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1792,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:nodeallocatableresourceclaimstatus-nodeallocatableresourceclaimstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1813,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:objectfieldselector-objectfieldselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1838,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:persistentvolumeclaimtemplate-persistentvolumeclaimtemplate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1859,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:persistentvolumeclaimvolumesource-persistentvolumeclaimvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1880,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podaffinity-podaffinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1901,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podaffinityterm-podaffinityterm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1922,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podantiaffinity-podantiaffinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1959,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podcertificateprojection-podcertificateprojection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 1980,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podcondition-podcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2021,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:poddnsconfig-poddnsconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2062,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:poddnsconfigoption-poddnsconfigoption",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2087,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podextendedresourceclaimstatus-podextendedresourceclaimstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podip-podip",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podos-podos",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podreadinessgate-podreadinessgate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podresourceclaim-podresourceclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podschedulinggate-podschedulinggate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2209,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podschedulinggroup-podschedulinggroup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2226,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:podsecuritycontext-podsecuritycontext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:preferredschedulingterm-preferredschedulingterm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2308,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:probe-probe",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2329,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:projectedvolumesource-projectedvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:rbdvolumesource-rbdvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2403,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:resourceclaim-resourceclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2448,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:resourcefieldselector-resourcefieldselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2469,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:resourcehealth-resourcehealth",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2494,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:resourcerequirements-resourcerequirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2519,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:resourcestatus-resourcestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2544,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:selinuxoptions-selinuxoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2565,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:scaleiovolumesource-scaleiovolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2594,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:seccompprofile-seccompprofile",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2647,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:secretenvsource-secretenvsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2668,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:secretkeyselector-secretkeyselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2691,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:secretprojection-secretprojection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2716,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:secretvolumesource-secretvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2743,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:securitycontext-securitycontext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2774,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:serviceaccounttokenprojection-serviceaccounttokenprojection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2835,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:sleepaction-sleepaction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2860,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:storageosvolumesource-storageosvolumesource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2877,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:sysctl-sysctl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2910,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:tcpsocketaction-tcpsocketaction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2931,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:topologyspreadconstraint-topologyspreadconstraint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2952,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:volume-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 2997,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:volumedevice-volumedevice",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:volumemount-volumemount",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:volumeprojection-volumeprojection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3196,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:weightedpodaffinityterm-weightedpodaffinityterm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3233,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:windowssecuritycontextoptions-windowssecuritycontextoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3284,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3289,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:post-create-eviction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3377,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3470,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3563,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3651,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3749,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3882,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 3937,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4042,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4244,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4349,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4441,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4534,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4589,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-read-resize",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4677,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:patch-patch-resize",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4732,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:put-replace-resize",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4825,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:patch-patch-ephemeralcontainers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 4913,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-read-ephemeralcontainers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5006,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:put-replace-ephemeralcontainers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5061,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:post-create-connect-portforward",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:post-create-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5204,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:post-create-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5259,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:delete-delete-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:delete-delete-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5374,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-get-connect-portforward",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5434,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-get-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5489,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-get-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5544,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:head-head-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5604,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:head-head-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5659,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:put-replace-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5719,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:put-replace-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5774,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-read-log",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5834,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-get-connect-exec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 5934,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:post-create-connect-exec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 6014,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:get-get-connect-attach",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 6094,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "concept:post-create-connect-attach",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": 6169,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:replicationcontroller-replicationcontroller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:replicationcontrollerspec-replicationcontrollerspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:replicationcontrollerstatus-replicationcontrollerstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:replicationcontrollerlist-replicationcontrollerlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:replicationcontrollercondition-replicationcontrollercondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 179,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 272,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 365,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 453,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 551,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 684,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 739,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 844,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 936,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 1046,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 1151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 1243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 1336,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 1391,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:get-read-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 1479,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:put-replace-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 1534,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "concept:patch-patch-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": 1622,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:resourcequota-resourcequota",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:resourcequotaspec-resourcequotaspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:resourcequotastatus-resourcequotastatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:resourcequotalist-resourcequotalist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:scopeselector-scopeselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:scopedresourceselectorrequirement-scopedresourceselectorrequirement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 168,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 261,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 354,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 442,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 540,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 728,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 833,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 925,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 1035,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 1140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 1232,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 1325,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": 1380,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:endpoints-endpoints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:endpointslist-endpointslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:endpointaddress-endpointaddress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:endpointport-endpointport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:endpointsubset-endpointsubset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 280,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 373,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 461,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 559,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 692,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 747,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 852,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 944,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 1054,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": 1159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:persistentvolumeclaim-persistentvolumeclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:persistentvolumeclaimspec-persistentvolumeclaimspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:persistentvolumeclaimstatus-persistentvolumeclaimstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:persistentvolumeclaimlist-persistentvolumeclaimlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:modifyvolumestatus-modifyvolumestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:persistentvolumeclaimcondition-persistentvolumeclaimcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:typedobjectreference-typedobjectreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:volumeresourcerequirements-volumeresourcerequirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 260,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 282,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 287,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 375,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 468,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 556,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 654,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 787,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 842,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 947,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 1039,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 1149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 1254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 1346,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 1439,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": 1494,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:service-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:servicespec-servicespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:servicestatus-servicestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:servicelist-servicelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:clientipconfig-clientipconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 193,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:loadbalanceringress-loadbalanceringress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 210,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:loadbalancerstatus-loadbalancerstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:portstatus-portstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:serviceport-serviceport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 281,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:sessionaffinityconfig-sessionaffinityconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 318,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 336,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 341,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 429,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 522,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 610,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 708,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 841,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 896,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1001,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1093,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1308,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1400,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1493,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1548,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:post-create-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1636,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:post-create-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1691,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:delete-delete-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1751,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:delete-delete-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1806,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:get-get-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1866,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:get-get-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1921,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:head-head-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 1981,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:head-head-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 2036,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:put-replace-connect-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 2096,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "concept:put-replace-connect-proxy-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": 2151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:event-event",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:eventlist-eventlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:eventseries-eventseries",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 335,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 423,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 521,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 654,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 709,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 814,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 906,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 1016,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": 1121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/component-status-v1",
      "to_id": "concept:componentstatus-componentstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/component-status-v1",
      "to_id": "concept:componentstatuslist-componentstatuslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/component-status-v1",
      "to_id": "concept:componentcondition-componentcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/component-status-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/component-status-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/component-status-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:leasecandidate-leasecandidate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:leasecandidatespec-leasecandidatespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:leasecandidatelist-leasecandidatelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 299,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 387,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 485,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 618,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 673,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 778,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 870,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 980,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": 1085,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:lease-lease",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:leasespec-leasespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:leaselist-leaselist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 210,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 303,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 391,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 489,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 622,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 677,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 782,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 874,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 984,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": 1089,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:podgroup-podgroup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:podgroupspec-podgroupspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:podgroupstatus-podgroupstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:podgrouplist-podgrouplist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:basicschedulingpolicy-basicschedulingpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:gangschedulingpolicy-gangschedulingpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:podgroupresourceclaim-podgroupresourceclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:podgroupschedulingconstraints-podgroupschedulingconstraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 193,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:podgroupschedulingpolicy-podgroupschedulingpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 210,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:podgrouptemplatereference-podgrouptemplatereference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:topologyconstraint-topologyconstraint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 248,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:workloadpodgrouptemplatereference-workloadpodgrouptemplatereference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 265,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 287,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 292,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 380,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 473,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 561,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 659,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 792,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 847,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 952,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 1044,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 1154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 1259,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 1351,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 1444,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": 1499,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:workload-workload",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:workloadspec-workloadspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:workloadlist-workloadlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:podgrouptemplate-podgrouptemplate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 324,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 412,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 510,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 643,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 698,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 803,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 895,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 1005,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": 1110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:priorityclass-priorityclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:priorityclasslist-priorityclasslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 93,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 168,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 339,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 432,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 552,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 602,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 694,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": 799,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:networkpolicy-networkpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:networkpolicyspec-networkpolicyspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:networkpolicylist-networkpolicylist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:ipblock-ipblock",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:networkpolicyegressrule-networkpolicyegressrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:networkpolicyingressrule-networkpolicyingressrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:networkpolicypeer-networkpolicypeer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:networkpolicyport-networkpolicyport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 218,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 223,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 311,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 404,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 492,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 590,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 723,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 778,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 883,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 975,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 1085,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": 1190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:servicecidr-servicecidr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:servicecidrspec-servicecidrspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:servicecidrstatus-servicecidrstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:servicecidrlist-servicecidrlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 282,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 365,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 458,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 578,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 628,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 720,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 825,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 917,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 1005,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": 1055,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:ipaddress-ipaddress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:ipaddressspec-ipaddressspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:ipaddresslist-ipaddresslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:parentreference-parentreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 373,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 466,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 586,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 636,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 728,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": 833,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:ingressclass-ingressclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:ingressclassspec-ingressclassspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:ingressclasslist-ingressclasslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:ingressclassparametersreference-ingressclassparametersreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 210,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 298,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 381,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 474,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 594,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 644,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 736,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": 841,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingress-ingress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingressspec-ingressspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingressstatus-ingressstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingresslist-ingresslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:httpingresspath-httpingresspath",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:httpingressrulevalue-httpingressrulevalue",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 150,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingressbackend-ingressbackend",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingressloadbalanceringress-ingressloadbalanceringress",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingressloadbalancerstatus-ingressloadbalancerstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingressportstatus-ingressportstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 230,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingressrule-ingressrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 255,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingressservicebackend-ingressservicebackend",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:ingresstls-ingresstls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 297,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:servicebackendport-servicebackendport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 318,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 340,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 345,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 433,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 526,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 614,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 712,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 845,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 900,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 1005,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 1097,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 1207,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 1312,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 1404,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 1497,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": 1552,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:endpointslice-endpointslice",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:endpointslicelist-endpointslicelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:endpoint-endpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:endpointconditions-endpointconditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:endpointhints-endpointhints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 153,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:endpointport-endpointport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:fornode-fornode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:forzone-forzone",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 220,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 238,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 331,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 424,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 512,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 610,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 743,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 798,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 903,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 995,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 1105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": 1210,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:podcertificaterequest-podcertificaterequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:podcertificaterequestspec-podcertificaterequestspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:podcertificaterequeststatus-podcertificaterequeststatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:podcertificaterequestlist-podcertificaterequestlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 181,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 362,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 450,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 548,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 681,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 736,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 841,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 933,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 1043,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 1148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 1240,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 1333,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": 1388,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:clustertrustbundle-clustertrustbundle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:clustertrustbundlespec-clustertrustbundlespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:clustertrustbundlelist-clustertrustbundlelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 181,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 352,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 445,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 565,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 615,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 707,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": 812,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:certificatesigningrequest-certificatesigningrequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:certificatesigningrequestspec-certificatesigningrequestspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:certificatesigningrequeststatus-certificatesigningrequeststatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:certificatesigningrequestlist-certificatesigningrequestlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:certificatesigningrequestcondition-certificatesigningrequestcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 357,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 440,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 533,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 653,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 703,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 795,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 900,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 992,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 1080,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": 1130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:csistoragecapacity-csistoragecapacity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:csistoragecapacitylist-csistoragecapacitylist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 96,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 282,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 370,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 468,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 601,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 656,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 761,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 853,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 963,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": 1068,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:volumeattributesclass-volumeattributesclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:volumeattributesclasslist-volumeattributesclasslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 248,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 331,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 424,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 544,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 594,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 686,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": 791,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:csinode-csinode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:csinodespec-csinodespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:csinodelist-csinodelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:csinodedriver-csinodedriver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:volumenoderesources-volumenoderesources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 219,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 307,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 390,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 483,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 603,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 653,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 745,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": 850,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:storageclass-storageclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:storageclasslist-storageclasslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:topologyselectorlabelrequirement-topologyselectorlabelrequirement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:topologyselectorterm-topologyselectorterm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 220,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 308,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 391,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 484,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 604,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 654,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 746,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": 851,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:volumeattachment-volumeattachment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:volumeattachmentspec-volumeattachmentspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:volumeattachmentstatus-volumeattachmentstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:volumeattachmentlist-volumeattachmentlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:volumeattachmentsource-volumeattachmentsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:volumeerror-volumeerror",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 262,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 350,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 433,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 526,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 646,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 696,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 788,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 893,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 985,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 1073,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": 1123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:csidriver-csidriver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:csidriverspec-csidriverspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:csidriverlist-csidriverlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 103,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:tokenrequest-tokenrequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 322,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 405,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 498,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 618,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 668,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 760,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": 865,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:job-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:jobspec-jobspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:jobstatus-jobstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:joblist-joblist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:jobcondition-jobcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:podfailurepolicy-podfailurepolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 250,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:podfailurepolicyonexitcodesrequirement-podfailurepolicyonexitcodesrequirement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 267,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:podfailurepolicyonpodconditionspattern-podfailurepolicyonpodconditionspattern",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 292,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:podfailurepolicyrule-podfailurepolicyrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 313,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:successpolicy-successpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 338,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:successpolicyrule-successpolicyrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 355,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:uncountedterminatedpods-uncountedterminatedpods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 376,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 398,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 403,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 491,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 584,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 672,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 770,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 903,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 958,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 1063,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 1155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 1265,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 1370,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 1462,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 1555,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": 1610,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:cronjob-cronjob",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:cronjobspec-cronjobspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:cronjobstatus-cronjobstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 95,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:cronjoblist-cronjoblist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:jobtemplatespec-jobtemplatespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 171,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 357,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 445,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 543,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 676,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 731,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 836,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 928,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 1038,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 1143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 1235,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 1328,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": 1383,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:validatingwebhookconfiguration-validatingwebhookconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:validatingwebhookconfigurationlist-validatingwebhookconfigurationlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:validatingwebhook-validatingwebhook",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 301,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 384,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 477,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 597,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 647,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 739,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": 844,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:mutatingadmissionpolicy-mutatingadmissionpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:mutatingadmissionpolicyspec-mutatingadmissionpolicyspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:mutatingadmissionpolicylist-mutatingadmissionpolicylist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:applyconfiguration-applyconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:jsonpatch-jsonpatch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:mutation-mutation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 150,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 181,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 344,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 427,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 520,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 640,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 690,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 782,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": 887,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:validatingadmissionpolicy-validatingadmissionpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:validatingadmissionpolicyspec-validatingadmissionpolicyspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:validatingadmissionpolicystatus-validatingadmissionpolicystatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:validatingadmissionpolicylist-validatingadmissionpolicylist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:auditannotation-auditannotation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:expressionwarning-expressionwarning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:typechecking-typechecking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:validation-validation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 204,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 402,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 485,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 578,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 698,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 748,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 840,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 945,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 1037,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 1125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": 1175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:mutatingadmissionpolicybinding-mutatingadmissionpolicybinding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:mutatingadmissionpolicybindingspec-mutatingadmissionpolicybindingspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:mutatingadmissionpolicybindinglist-mutatingadmissionpolicybindinglist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 185,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 273,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 356,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 449,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 569,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 619,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 711,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": 816,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:validatingadmissionpolicybinding-validatingadmissionpolicybinding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:validatingadmissionpolicybindingspec-validatingadmissionpolicybindingspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:validatingadmissionpolicybindinglist-validatingadmissionpolicybindinglist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 109,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 277,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 360,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 453,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 573,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 623,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 715,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": 820,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:mutatingwebhookconfiguration-mutatingwebhookconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:mutatingwebhookconfigurationlist-mutatingwebhookconfigurationlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:mutatingwebhook-mutatingwebhook",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 217,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 305,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 388,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 481,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 601,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 651,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 743,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": 848,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:apiservice-apiservice",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:apiservicespec-apiservicespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:apiservicestatus-apiservicestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:apiservicelist-apiservicelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:apiservicecondition-apiservicecondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:servicereference-servicereference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 170,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 196,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 201,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 364,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 447,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 540,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 660,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 710,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 802,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 907,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 999,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 1087,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": 1137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:runtimeclass-runtimeclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:runtimeclasslist-runtimeclasslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:overhead-overhead",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:scheduling-scheduling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 202,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 373,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 466,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 586,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 636,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 728,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": 833,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:event-event",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:eventlist-eventlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:eventseries-eventseries",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 335,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 423,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 521,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 654,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 709,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 814,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 906,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 1016,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": 1121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:horizontalpodautoscaler-horizontalpodautoscaler",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:horizontalpodautoscalerspec-horizontalpodautoscalerspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:horizontalpodautoscalerstatus-horizontalpodautoscalerstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:horizontalpodautoscalerlist-horizontalpodautoscalerlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:containerresourcemetricsource-containerresourcemetricsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:containerresourcemetricstatus-containerresourcemetricstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:crossversionobjectreference-crossversionobjectreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:externalmetricsource-externalmetricsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:externalmetricstatus-externalmetricstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 245,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:hpascalingpolicy-hpascalingpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:hpascalingrules-hpascalingrules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 291,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:horizontalpodautoscalerbehavior-horizontalpodautoscalerbehavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 324,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:horizontalpodautoscalercondition-horizontalpodautoscalercondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 345,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:metricidentifier-metricidentifier",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 378,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:metricspec-metricspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 399,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:metricstatus-metricstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 436,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:metrictarget-metrictarget",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 473,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:metricvaluestatus-metricvaluestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 502,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:objectmetricsource-objectmetricsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 527,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:objectmetricstatus-objectmetricstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 552,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:podsmetricsource-podsmetricsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 577,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:podsmetricstatus-podsmetricstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 598,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:resourcemetricsource-resourcemetricsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 619,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:resourcemetricstatus-resourcemetricstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 640,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 662,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 667,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 755,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 848,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 936,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 1034,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 1167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 1222,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 1327,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 1419,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 1529,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 1634,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 1726,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 1819,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": 1874,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:resourcepoolstatusrequest-resourcepoolstatusrequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:resourcepoolstatusrequestspec-resourcepoolstatusrequestspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:resourcepoolstatusrequeststatus-resourcepoolstatusrequeststatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:resourcepoolstatusrequestlist-resourcepoolstatusrequestlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:poolstatus-poolstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 183,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 263,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 351,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 434,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 527,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 647,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 697,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 789,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 894,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 986,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 1074,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": 1124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:resourceslice-resourceslice",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:resourceslicespec-resourceslicespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:resourceslicelist-resourceslicelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:capacityrequestpolicy-capacityrequestpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:capacityrequestpolicyrange-capacityrequestpolicyrange",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:counter-counter",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:counterset-counterset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 204,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:device-device",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:deviceattribute-deviceattribute",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 292,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:devicecapacity-devicecapacity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 337,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:devicecounterconsumption-devicecounterconsumption",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 358,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:devicetaint-devicetaint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 379,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:nodeallocatableresourcemapping-nodeallocatableresourcemapping",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 408,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:nodeselectorrequirement-nodeselectorrequirement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 429,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:resourcepool-resourcepool",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 454,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 480,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 485,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 560,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 648,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 731,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 824,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 944,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 994,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 1086,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": 1191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:deviceclass-deviceclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:deviceclassspec-deviceclassspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:deviceclasslist-deviceclasslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:celdeviceselector-celdeviceselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:deviceclassconfiguration-deviceclassconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:deviceselector-deviceselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:opaquedeviceconfiguration-opaquedeviceconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 253,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 341,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 424,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 517,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 637,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 687,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 779,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": 884,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:resourceclaimtemplate-resourceclaimtemplate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:resourceclaimtemplatespec-resourceclaimtemplatespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:resourceclaimtemplatelist-resourceclaimtemplatelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 102,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 283,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 371,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 469,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 602,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 762,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 854,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 964,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": 1069,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:resourceclaim-resourceclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:resourceclaimspec-resourceclaimspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:resourceclaimstatus-resourceclaimstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:resourceclaimlist-resourceclaimlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:allocateddevicestatus-allocateddevicestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:allocationresult-allocationresult",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:capacityrequirements-capacityrequirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:deviceallocationconfiguration-deviceallocationconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:deviceallocationresult-deviceallocationresult",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 231,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:deviceclaim-deviceclaim",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 252,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:deviceclaimconfiguration-deviceclaimconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 277,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:deviceconstraint-deviceconstraint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 298,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:devicerequest-devicerequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 323,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:devicerequestallocationresult-devicerequestallocationresult",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 348,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:devicesubrequest-devicesubrequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 401,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:devicetoleration-devicetoleration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 444,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:exactdevicerequest-exactdevicerequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 477,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:networkdevicedata-networkdevicedata",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 518,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:resourceclaimconsumerreference-resourceclaimconsumerreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 543,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 573,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 578,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 666,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 759,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 847,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 945,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 1078,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 1133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 1238,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 1330,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 1440,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 1545,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 1637,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 1730,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": 1785,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:devicetaintrule-devicetaintrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:devicetaintrulespec-devicetaintrulespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:devicetaintrulestatus-devicetaintrulestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:devicetaintrulelist-devicetaintrulelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:devicetaintselector-devicetaintselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 223,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 311,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 394,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 487,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 607,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 657,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 749,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 854,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 946,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 1034,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": 1084,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/field-selector-requirement-v1-meta",
      "to_id": "concept:fieldselectorrequirement-fieldselectorrequirement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/field-selector-requirement-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/field-selector-requirement-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/subject-v1-rbac",
      "to_id": "concept:subject-subject",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-v1-rbac/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta",
      "to_id": "concept:groupversionfordiscovery-groupversionfordiscovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/typed-local-object-reference-v1",
      "to_id": "concept:typedlocalobjectreference-typedlocalobjectreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/typed-local-object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/typed-local-object-reference-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/status-v1-meta",
      "to_id": "concept:status-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/param-ref-v1-admissionregistration",
      "to_id": "concept:paramref-paramref",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/param-ref-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/param-ref-v1-admissionregistration/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/non-resource-rule-v1-authorization",
      "to_id": "concept:nonresourcerule-nonresourcerule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/non-resource-rule-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/non-resource-rule-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/user-info-v1-authentication",
      "to_id": "concept:userinfo-userinfo",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/user-info-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/user-info-v1-authentication/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/resource-rule-v1-authorization",
      "to_id": "concept:resourcerule-resourcerule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/resource-rule-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/resource-rule-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/toleration-v1",
      "to_id": "concept:toleration-toleration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/toleration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/toleration-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/role-ref-v1-rbac",
      "to_id": "concept:roleref-roleref",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/role-ref-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/role-ref-v1-rbac/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization",
      "to_id": "concept:localsubjectaccessreview-localsubjectaccessreview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization",
      "to_id": "concept:labelselectorattributes-labelselectorattributes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/event-source-v1",
      "to_id": "concept:eventsource-eventsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/event-source-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/event-source-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/api-resource-v1-meta",
      "to_id": "concept:apiresource-apiresource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-resource-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-resource-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/api-resource-v1-meta",
      "to_id": "concept:apiresourcelist-apiresourcelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-resource-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-resource-v1-meta/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/resource-attributes-v1-authorization",
      "to_id": "concept:resourceattributes-resourceattributes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/resource-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/resource-attributes-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/status-cause-v1-meta",
      "to_id": "concept:statuscause-statuscause",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-cause-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-cause-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/condition-v1-meta",
      "to_id": "concept:condition-condition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/condition-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/condition-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/match-condition-v1-admissionregistration",
      "to_id": "concept:matchcondition-matchcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/match-condition-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/match-condition-v1-admissionregistration/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/patch-v1-meta",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/patch-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/patch-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/eviction-v1-policy",
      "to_id": "concept:eviction-eviction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/eviction-v1-policy.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/eviction-v1-policy/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/node-selector-v1",
      "to_id": "concept:nodeselector-nodeselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/node-selector-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/node-selector-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/quantity-resource",
      "to_id": "concept:quantity-quantity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/quantity-resource.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/quantity-resource/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/basic-device-v1beta1-resource",
      "to_id": "concept:basicdevice-basicdevice",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/basic-device-v1beta1-resource.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/basic-device-v1beta1-resource/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/preconditions-v1-meta",
      "to_id": "concept:preconditions-preconditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/preconditions-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/preconditions-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization",
      "to_id": "concept:selfsubjectrulesreview-selfsubjectrulesreview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization",
      "to_id": "concept:selfsubjectrulesreviewspec-selfsubjectrulesreviewspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration",
      "to_id": "concept:namedrulewithoperations-namedrulewithoperations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration",
      "to_id": "concept:rulewithoperations-rulewithoperations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/node-selector-term-v1",
      "to_id": "concept:nodeselectorterm-nodeselectorterm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/node-selector-term-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/node-selector-term-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/object-reference-v1",
      "to_id": "concept:objectreference-objectreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/object-reference-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization",
      "to_id": "concept:fieldselectorattributes-fieldselectorattributes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/subject-access-review-v1-authorization",
      "to_id": "concept:subjectaccessreview-subjectaccessreview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-access-review-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/subject-access-review-v1-authorization",
      "to_id": "concept:subjectaccessreviewspec-subjectaccessreviewspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-access-review-v1-authorization/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/subject-access-review-v1-authorization",
      "to_id": "concept:subjectaccessreviewstatus-subjectaccessreviewstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-access-review-v1-authorization/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/policy-rule-v1-rbac",
      "to_id": "concept:policyrule-policyrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/policy-rule-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/policy-rule-v1-rbac/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization",
      "to_id": "concept:nonresourceattributes-nonresourceattributes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/managed-fields-entry-v1-meta",
      "to_id": "concept:managedfieldsentry-managedfieldsentry",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/managed-fields-entry-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/managed-fields-entry-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/param-kind-v1-admissionregistration",
      "to_id": "concept:paramkind-paramkind",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/param-kind-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/param-kind-v1-admissionregistration/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta",
      "to_id": "concept:serveraddressbyclientcidr-serveraddressbyclientcidr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/group-resource-v1-meta",
      "to_id": "concept:groupresource-groupresource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/group-resource-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/group-resource-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/scale-v1-autoscaling",
      "to_id": "concept:scale-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/scale-v1-autoscaling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/scale-v1-autoscaling/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/scale-v1-autoscaling",
      "to_id": "concept:scalespec-scalespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/scale-v1-autoscaling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/scale-v1-autoscaling/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/scale-v1-autoscaling",
      "to_id": "concept:scalestatus-scalestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/scale-v1-autoscaling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/scale-v1-autoscaling/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/delete-options-v1-meta",
      "to_id": "concept:deleteoptions-deleteoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/delete-options-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/delete-options-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/label-selector-requirement-v1-meta",
      "to_id": "concept:labelselectorrequirement-labelselectorrequirement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-requirement-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-requirement-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/local-object-reference-v1",
      "to_id": "concept:localobjectreference-localobjectreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/local-object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/local-object-reference-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/owner-reference-v1-meta",
      "to_id": "concept:ownerreference-ownerreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/owner-reference-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/owner-reference-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/time-v1-meta",
      "to_id": "concept:time-time",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/time-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/time-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/micro-time-v1-meta",
      "to_id": "concept:microtime-microtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/micro-time-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/micro-time-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration",
      "to_id": "concept:webhookclientconfig-webhookclientconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/token-review-v1-authentication",
      "to_id": "concept:tokenreview-tokenreview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/token-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/token-review-v1-authentication/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/token-review-v1-authentication",
      "to_id": "concept:tokenreviewspec-tokenreviewspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/token-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/token-review-v1-authentication/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/token-review-v1-authentication",
      "to_id": "concept:tokenreviewstatus-tokenreviewstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/token-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/token-review-v1-authentication/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/watch-event-v1-meta",
      "to_id": "concept:watchevent-watchevent",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/watch-event-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/watch-event-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/api-group-v1-meta",
      "to_id": "concept:apigroup-apigroup",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-group-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-group-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/api-group-v1-meta",
      "to_id": "concept:apigrouplist-apigrouplist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-group-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-group-v1-meta/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/service-reference-v1-admissionregistration",
      "to_id": "concept:servicereference-servicereference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/service-reference-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/service-reference-v1-admissionregistration/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/fields-v1-v1-meta",
      "to_id": "concept:fieldsv1-fieldsv1",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/fields-v1-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/fields-v1-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/object-meta-v1-meta",
      "to_id": "concept:objectmeta-objectmeta",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/object-meta-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/object-meta-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/binding-v1",
      "to_id": "concept:binding-binding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/binding-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/list-meta-v1-meta",
      "to_id": "concept:listmeta-listmeta",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/list-meta-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/list-meta-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/label-selector-v1-meta",
      "to_id": "concept:labelselector-labelselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/self-subject-review-v1-authentication",
      "to_id": "concept:selfsubjectreview-selfsubjectreview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-review-v1-authentication/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/self-subject-review-v1-authentication",
      "to_id": "concept:selfsubjectreviewstatus-selfsubjectreviewstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-review-v1-authentication/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization",
      "to_id": "concept:selfsubjectaccessreview-selfsubjectaccessreview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization",
      "to_id": "concept:selfsubjectaccessreviewspec-selfsubjectaccessreviewspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/variable-v1-admissionregistration",
      "to_id": "concept:variable-variable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/variable-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/variable-v1-admissionregistration/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/api-versions-v1-meta",
      "to_id": "concept:apiversions-apiversions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-versions-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-versions-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling",
      "to_id": "concept:typedlocalobjectreference-typedlocalobjectreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization",
      "to_id": "concept:subjectrulesreviewstatus-subjectrulesreviewstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/status-details-v1-meta",
      "to_id": "concept:statusdetails-statusdetails",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-details-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-details-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/shard-info-v1-meta",
      "to_id": "concept:shardinfo-shardinfo",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/shard-info-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/shard-info-v1-meta/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/match-resources-v1-admissionregistration",
      "to_id": "concept:matchresources-matchresources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/match-resources-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/match-resources-v1-admissionregistration/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:storageversionmigration-storageversionmigration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:storageversionmigrationspec-storageversionmigrationspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:storageversionmigrationstatus-storageversionmigrationstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:storageversionmigrationlist-storageversionmigrationlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 286,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 369,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 462,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 582,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 632,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 724,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 829,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 921,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 1009,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": 1059,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:daemonset-daemonset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:daemonsetspec-daemonsetspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:daemonsetstatus-daemonsetstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:daemonsetlist-daemonsetlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 136,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:daemonsetcondition-daemonsetcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 165,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:daemonsetupdatestrategy-daemonsetupdatestrategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 228,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 233,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 414,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 502,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 600,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 733,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 788,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 893,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 985,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 1095,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 1200,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 1292,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 1385,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": 1440,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:replicaset-replicaset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:replicasetspec-replicasetspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:replicasetstatus-replicasetstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:replicasetlist-replicasetlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:replicasetcondition-replicasetcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 183,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 369,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 457,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 555,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 688,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 743,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 848,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 940,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 1050,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 1155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 1247,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 1340,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 1395,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:get-read-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 1483,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:put-replace-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 1538,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "concept:patch-patch-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": 1626,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:statefulset-statefulset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:statefulsetspec-statefulsetspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:statefulsetstatus-statefulsetstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:statefulsetlist-statefulsetlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:rollingupdatestatefulsetstrategy-rollingupdatestatefulsetstrategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 193,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:statefulsetcondition-statefulsetcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 214,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:statefulsetordinals-statefulsetordinals",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 247,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:statefulsetpersistentvolumeclaimretentionpolicy-statefulsetpersistentvolumeclaimretentionpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:statefulsetupdatestrategy-statefulsetupdatestrategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 285,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 307,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 312,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 400,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 493,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 581,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 679,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 812,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 867,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 972,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 1064,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 1174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 1279,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 1371,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 1464,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 1519,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:get-read-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 1607,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:put-replace-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 1662,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "concept:patch-patch-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": 1750,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:controllerrevision-controllerrevision",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:controllerrevisionlist-controllerrevisionlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 354,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 452,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 585,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 640,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 745,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 837,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 947,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": 1052,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:deployment-deployment",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:deploymentspec-deploymentspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:deploymentstatus-deploymentstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:deploymentlist-deploymentlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:deploymentcondition-deploymentcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 232,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 320,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 413,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 501,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 599,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 732,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 787,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 892,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 984,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 1094,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 1199,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 1291,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 1384,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 1439,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:get-read-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 1527,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:put-replace-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 1582,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "concept:patch-patch-scale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": 1670,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcedefinition-customresourcedefinition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcedefinitionspec-customresourcedefinitionspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcedefinitionstatus-customresourcedefinitionstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcedefinitionlist-customresourcedefinitionlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcecolumndefinition-customresourcecolumndefinition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourceconversion-customresourceconversion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcedefinitioncondition-customresourcedefinitioncondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcedefinitionnames-customresourcedefinitionnames",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 240,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcedefinitionversion-customresourcedefinitionversion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 277,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcesubresourcescale-customresourcesubresourcescale",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 326,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcesubresourcestatus-customresourcesubresourcestatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 351,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcesubresources-customresourcesubresources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 359,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:customresourcevalidation-customresourcevalidation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 380,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:externaldocumentation-externaldocumentation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 397,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:json-json",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 418,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:jsonschemaprops-jsonschemaprops",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 426,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:jsonschemapropsorarray-jsonschemapropsorarray",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 615,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:jsonschemapropsorbool-jsonschemapropsorbool",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 623,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:selectablefield-selectablefield",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 631,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:servicereference-servicereference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 648,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:validationrule-validationrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 677,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:webhookclientconfig-webhookclientconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 714,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:webhookconversion-webhookconversion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 739,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 761,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 766,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 841,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 929,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 1012,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 1105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 1225,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 1275,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 1367,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 1472,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 1564,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 1652,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": 1702,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:poddisruptionbudget-poddisruptionbudget",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:poddisruptionbudgetspec-poddisruptionbudgetspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:poddisruptionbudgetstatus-poddisruptionbudgetstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:poddisruptionbudgetlist-poddisruptionbudgetlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 150,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:post-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:patch-patch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:put-replace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 336,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:delete-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 424,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:delete-delete-collection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 522,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:get-read",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 655,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:get-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 710,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:get-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 815,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:get-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 907,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:get-watch-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 1017,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:get-watch-list-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 1122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:patch-patch-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 1214,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:get-read-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 1307,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "concept:put-replace-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": 1362,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:k8s-io-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:k8s-io-removed-release",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:pod-security-kubernetes-io-exempt",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:pod-security-kubernetes-io-enforce-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:pod-security-kubernetes-io-audit-violations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:audit-k8s-io-truncated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:apiserver-latency-k8s-io-etcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:apiserver-latency-k8s-io-decode-response-object",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:apiserver-latency-k8s-io-apf-queue-wait",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 95,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:authorization-k8s-io-decision",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 104,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:authorization-k8s-io-reason",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:missing-san-invalid-cert-kubernetes-io-hostname",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:insecure-sha1-invalid-cert-kubernetes-io-hostname",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/audit-annotations",
      "to_id": "concept:validation-policy-admission-k8s-io-validation-failure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/audit-annotations.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/audit-annotations/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinition",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 135,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 673,
          "line_end": null,
          "quote": "control plane"
        },
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 673,
          "line_end": null,
          "quote": "control plane"
        },
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 673,
          "line_end": null,
          "quote": "control plane"
        },
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 673,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 678,
          "line_end": null,
          "quote": "selector"
        },
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 678,
          "line_end": null,
          "quote": "selectors"
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "gloss:mirror-pod",
      "type": "references",
      "label": "mirror Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 718,
          "line_end": null,
          "quote": "mirror Pod"
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "gloss:service",
      "type": "references",
      "label": "service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 815,
          "line_end": null,
          "quote": "service"
        },
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 815,
          "line_end": null,
          "quote": "service"
        },
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 815,
          "line_end": null,
          "quote": "service"
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1071,
          "line_end": null,
          "quote": "controller"
        },
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1071,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "gloss:label",
      "type": "references",
      "label": "label",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1323,
          "line_end": null,
          "quote": "label"
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "gloss:name",
      "type": "references",
      "label": "name",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1366,
          "line_end": null,
          "quote": "name"
        },
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1366,
          "line_end": null,
          "quote": "name"
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "gloss:uid",
      "type": "references",
      "label": "unique ID",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1390,
          "line_end": null,
          "quote": "unique ID"
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "gloss:manifest",
      "type": "references",
      "label": "manifest",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2610,
          "line_end": null,
          "quote": "manifest"
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:labels-annotations-and-taints-used-on-api-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:annotations-used-for-audit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2786,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2800,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:apf-kubernetes-io-autoupdate-spec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:app-kubernetes-io-component",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:app-kubernetes-io-created-by-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:app-kubernetes-io-instance",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:app-kubernetes-io-managed-by",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:app-kubernetes-io-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:app-kubernetes-io-part-of",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:app-kubernetes-io-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:applyset-kubernetes-io-additional-namespaces-alpha-applyset-kubernetes-io-additional-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:applyset-kubernetes-io-contains-group-kinds-alpha-applyset-kubernetes-io-contains-group-kinds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:applyset-kubernetes-io-contains-group-resources-deprecated-applyset-kubernetes-io-contains-group-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:applyset-kubernetes-io-id-alpha-applyset-kubernetes-io-id",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:applyset-kubernetes-io-is-parent-type-alpha-applyset-kubernetes-io-is-parent-type",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:applyset-kubernetes-io-part-of-alpha-applyset-kubernetes-io-part-of",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:applyset-kubernetes-io-tooling-alpha-applyset-kubernetes-io-tooling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 244,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:apps-kubernetes-io-pod-index-beta-apps-kubernetes-io-pod-index",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 263,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:resource-kubernetes-io-pod-claim-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 279,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:cluster-autoscaler-kubernetes-io-safe-to-evict",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 294,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:config-kubernetes-io-local-config",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 308,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:container-apparmor-security-beta-kubernetes-io-deprecated-container-apparmor-security-beta-kubernetes-io",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 330,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:deployment-kubernetes-io-desired-replicas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 346,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:deployment-kubernetes-io-max-replicas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 362,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:deployment-kubernetes-io-revision",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 379,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:deployment-kubernetes-io-revision-history",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 398,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:internal-config-kubernetes-io-reserved-prefix-internal-config-kubernetes-io-reserved-wildcard",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 415,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:internal-config-kubernetes-io-path",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 432,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:internal-config-kubernetes-io-index",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 450,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-bind-result",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 469,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-filter-result",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 479,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-finalscore-result",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 494,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-permit-result",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 510,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-permit-result-timeout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 520,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-postfilter-result",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 530,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-prebind-result",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 540,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-prefilter-result",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 550,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-prefilter-result-status",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 560,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-prescore-result",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 575,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-reserve-result",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 590,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-result-history",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 600,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-score-result",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 610,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-scheduler-simulator-sigs-k8s-io-selected-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 623,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-arch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 633,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-os",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 644,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-metadata-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 665,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-limit-ranger",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 680,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-config-hash",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 697,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-config-mirror",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 710,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-config-source",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 726,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-config-seen",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 739,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:addonmanager-kubernetes-io-mode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 750,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:beta-kubernetes-io-arch-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 772,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:beta-kubernetes-io-os-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 778,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kube-aggregator-kubernetes-io-automanaged-kube-aggregator-kubernetesio-automanaged",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 784,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-alpha-kubernetes-io-tolerate-unready-endpoints-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 806,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:autoscaling-alpha-kubernetes-io-behavior-deprecated-autoscaling-alpha-kubernetes-io-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 818,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-hostname-kubernetesiohostname",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 828,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-change-cause-change-cause",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 843,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-description-description",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 855,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-enforce-mountable-secrets-deprecated-enforce-mountable-secrets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 865,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-alpha-kubernetes-io-ttl-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 896,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-exclude-from-external-load-balancers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 912,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:controller-kubernetes-io-pod-deletion-cost-pod-deletion-cost",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 928,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:cluster-autoscaler-kubernetes-io-enable-ds-eviction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 940,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-ingress-bandwidth",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 961,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-egress-bandwidth",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 984,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:beta-kubernetes-io-instance-type-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1006,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-instance-type-nodekubernetesioinstance-type",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1015,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:failure-domain-beta-kubernetes-io-region-deprecated-failure-domainbetakubernetesioregion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1030,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:failure-domain-beta-kubernetes-io-zone-deprecated-failure-domainbetakubernetesiozone",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1039,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:pv-kubernetes-io-bind-completed-pv-kubernetesiobind-completed",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1048,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:pv-kubernetes-io-bound-by-controller-pv-kubernetesioboundby-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1061,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:pv-kubernetes-io-provisioned-by-pv-kubernetesiodynamically-provisioned",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1076,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:pv-kubernetes-io-migrated-to-pv-kubernetesio-migratedto",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1088,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:statefulset-kubernetes-io-pod-name-statefulsetkubernetesiopod-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:scheduler-alpha-kubernetes-io-node-selector-schedulerkubernetesnode-selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:topology-kubernetes-io-region-topologykubernetesioregion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:topology-kubernetes-io-zone-topologykubernetesiozone",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1136,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:volume-alpha-kubernetes-io-node-affinity-deprecated-volume-alpha-kubernetes-io-node-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1201,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:volume-beta-kubernetes-io-storage-provisioner-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1214,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:volume-beta-kubernetes-io-storage-class-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1225,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:volume-beta-kubernetes-io-mount-options-deprecated-mount-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:volume-kubernetes-io-storage-provisioner-volume-kubernetes-io-storage-provisioner",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1255,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:volume-kubernetes-io-selected-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1265,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:volumes-kubernetes-io-controller-managed-attach-detach",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1274,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-windows-build-nodekubernetesiowindows-build",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1286,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:storage-alpha-kubernetes-io-migrated-plugins-storagealphakubernetesiomigrated-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1299,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-kubernetes-io-headless-servicekubernetesioheadless",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-kubernetes-io-topology-aware-hints-deprecated-servicekubernetesiotopology-aware-hints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1329,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-kubernetes-io-topology-mode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1336,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-service-name-kubernetesioservice-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1355,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-service-account-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1370,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-service-account-uid",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-legacy-token-last-used",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1394,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-legacy-token-invalid-since",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1410,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:endpoints-kubernetes-io-managed-by-deprecated-endpoints-kubernetes-io-managed-by",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1425,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:endpointslice-kubernetes-io-managed-by-endpointslicekubernetesiomanaged-by",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1442,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:endpointslice-kubernetes-io-skip-mirror-endpointslicekubernetesioskip-mirror",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1456,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-kubernetes-io-service-proxy-name-servicekubernetesioservice-proxy-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1467,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:experimental-windows-kubernetes-io-isolation-type-deprecated-experimental-windows-kubernetes-io-isolation-type",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1481,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:gateway-networking-k8s-io-generator",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1496,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:ingressclass-kubernetes-io-is-default-class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1510,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-ingress-class-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1521,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-cluster-service-deprecated-kubernetes-io-cluster-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1531,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:storageclass-kubernetes-io-is-default-class",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1544,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:alpha-kubernetes-io-provided-node-ip-alpha-alpha-kubernetes-io-provided-node-ip",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1555,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:batch-kubernetes-io-job-completion-index",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1570,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:batch-kubernetes-io-cronjob-scheduled-timestamp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1585,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:cronjob-kubernetes-io-instantiate-cronjob-kubernetes-io-instantiate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1598,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubectl-kubernetes-io-default-container",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1610,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubectl-kubernetes-io-default-logs-container-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1620,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubectl-kubernetes-io-last-applied-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1636,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubectl-kubernetes-io-restartedat-kubectl-k8s-io-restart-at",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1652,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:endpoints-kubernetes-io-over-capacity-deprecated-endpoints-kubernetes-io-over-capacity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1671,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:endpoints-kubernetes-io-last-change-trigger-time-deprecated-endpoints-kubernetes-io-last-change-trigger-time",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1694,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:control-plane-alpha-kubernetes-io-leader-deprecated-control-plane-alpha-kubernetes-io-leader",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1712,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:batch-kubernetes-io-job-tracking-deprecated-batch-kubernetes-io-job-tracking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1734,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:job-name-deprecated-job-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1747,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:controller-uid-deprecated-controller-uid",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1760,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:batch-kubernetes-io-job-name-batchkubernetesio-job-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1773,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:batch-kubernetes-io-controller-uid-batchkubernetesio-controller-uid",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1785,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:scheduler-alpha-kubernetes-io-defaulttolerations-scheduleralphakubernetesio-defaulttolerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1797,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:scheduler-alpha-kubernetes-io-tolerationswhitelist-schedulerkubernetestolerations-whitelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1809,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:scheduler-alpha-kubernetes-io-preferavoidpods-deprecated-scheduleralphakubernetesio-preferavoidpods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1824,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-not-ready",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1834,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-unreachable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1845,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-unschedulable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1856,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-memory-pressure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1866,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-disk-pressure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1878,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-network-unavailable",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1891,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-pid-pressure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1903,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-kubernetes-io-out-of-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1916,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-cloudprovider-kubernetes-io-uninitialized",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1935,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-cloudprovider-kubernetes-io-shutdown",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1947,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:feature-node-kubernetes-io",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1958,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:nfd-node-kubernetes-io-master-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1972,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:nfd-node-kubernetes-io-worker-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1985,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:nfd-node-kubernetes-io-feature-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 1997,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:nfd-node-kubernetes-io-extended-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2009,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:nfd-node-kubernetes-io-node-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2022,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-access-log-emit-interval-beta-service-beta-kubernetes-io-aws-load-balancer-access-log-emit-interval",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2041,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-access-log-enabled-beta-service-beta-kubernetes-io-aws-load-balancer-access-log-enabled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2052,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-access-log-s3-bucket-name-beta-service-beta-kubernetes-io-aws-load-balancer-access-log-s3-bucket-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2062,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-access-log-s3-bucket-prefix-beta-service-beta-kubernetes-io-aws-load-balancer-access-log-s3-bucket-prefix",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2072,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-additional-resource-tags-beta-service-beta-kubernetes-io-aws-load-balancer-additional-resource-tags",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2082,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-alpn-policy-beta-service-beta-kubernetes-io-aws-load-balancer-alpn-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2092,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-attributes-beta-service-beta-kubernetes-io-aws-load-balancer-attributes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2103,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-backend-protocol-beta-service-beta-kubernetes-io-aws-load-balancer-backend-protocol",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-connection-draining-enabled-beta-service-beta-kubernetes-io-aws-load-balancer-connection-draining-enabled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-connection-draining-timeout-beta-service-beta-kubernetes-io-aws-load-balancer-connection-draining-timeout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-ip-address-type-beta-service-beta-kubernetes-io-aws-load-balancer-ip-address-type",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-connection-idle-timeout-beta-service-beta-kubernetes-io-aws-load-balancer-connection-idle-timeout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-cross-zone-load-balancing-enabled-beta-service-beta-kubernetes-io-aws-load-balancer-cross-zone-load-balancing-enabled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-eip-allocations-beta-service-beta-kubernetes-io-aws-load-balancer-eip-allocations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-extra-security-groups-beta-service-beta-kubernetes-io-aws-load-balancer-extra-security-groups",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2193,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-healthy-threshold-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-healthy-threshold",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-interval-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-interval",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2214,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-path-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-papth",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-port-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-port",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-protocol-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-protocol",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2244,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-timeout-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-timeout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-healthcheck-unhealthy-threshold-beta-service-beta-kubernetes-io-aws-load-balancer-healthcheck-unhealthy-threshold",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2265,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-internal-beta-service-beta-kubernetes-io-aws-load-balancer-internal",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-manage-backend-security-group-rules-beta-service-beta-kubernetes-io-aws-load-balancer-manage-backend-security-group-rules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2289,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-name-beta-service-beta-kubernetes-io-aws-load-balancer-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2300,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-nlb-target-type-beta-service-beta-kubernetes-io-aws-load-balancer-nlb-target-type",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2315,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-private-ipv4-addresses-beta-service-beta-kubernetes-io-aws-load-balancer-private-ipv4-addresses",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2326,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-proxy-protocol-beta-service-beta-kubernetes-io-aws-load-balancer-proxy-protocol",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2337,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-scheme-beta-service-beta-kubernetes-io-aws-load-balancer-scheme",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2348,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-security-groups-deprecated-service-beta-kubernetes-io-aws-load-balancer-security-groups",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2359,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-load-balancer-source-ranges-deprecated-service-beta-kubernetes-io-load-balancer-source-ranges",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2379,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-ssl-cert-beta-service-beta-kubernetes-io-aws-load-balancer-ssl-cert",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2388,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-ssl-negotiation-policy-beta-service-beta-kubernetes-io-aws-load-balancer-ssl-negotiation-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2401,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-ssl-ports-beta-service-beta-kubernetes-io-aws-load-balancer-ssl-ports",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2409,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-subnets-beta-service-beta-kubernetes-io-aws-load-balancer-subnets",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2418,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-target-group-attributes-beta-service-beta-kubernetes-io-aws-load-balancer-target-group-attributes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2427,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-target-node-labels-beta-service-beta-kubernetes-io-aws-target-node-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2438,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-aws-load-balancer-type-beta-service-beta-kubernetes-io-aws-load-balancer-type",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2445,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:service-beta-kubernetes-io-azure-load-balancer-disable-tcp-reset-deprecated-service-beta-kubernetes-azure-load-balancer-disble-tcp-reset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2477,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:pod-security-kubernetes-io-enforce",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2496,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:pod-security-kubernetes-io-enforce-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2512,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:pod-security-kubernetes-io-audit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2528,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:pod-security-kubernetes-io-audit-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2545,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:pod-security-kubernetes-io-warn",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2561,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:pod-security-kubernetes-io-warn-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2580,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:rbac-authorization-kubernetes-io-autoupdate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2597,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubernetes-io-psp-deprecated-kubernetes-io-psp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2613,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:seccomp-security-alpha-kubernetes-io-pod-non-functional-seccomp-security-alpha-kubernetes-io-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2629,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:container-seccomp-security-alpha-kubernetes-io-name-non-functional-container-seccomp-security-alpha-kubernetes-io",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2639,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:snapshot-storage-kubernetes-io-allow-volume-mode-change",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2649,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:scheduler-alpha-kubernetes-io-critical-pod-deprecated",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2665,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:jobset-sigs-k8s-io-jobset-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2681,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:jobset-sigs-k8s-io-replicatedjob-replicas",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2692,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:jobset-sigs-k8s-io-replicatedjob-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2702,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:jobset-sigs-k8s-io-job-index",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2712,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:jobset-sigs-k8s-io-job-key",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2722,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:alpha-jobset-sigs-k8s-io-exclusive-topology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2733,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:alpha-jobset-sigs-k8s-io-node-selector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2745,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:alpha-jobset-sigs-k8s-io-namespaced-job",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2755,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:alpha-jobset-sigs-k8s-io-no-schedule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2763,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:jobset-sigs-k8s-io-coordinator",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2775,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubeadm-alpha-kubernetes-io-cri-socket-deprecated-kubeadm-alpha-kubernetes-io-cri-socket",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2802,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubeadm-kubernetes-io-etcd-advertise-client-urls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2815,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubeadm-kubernetes-io-kube-apiserver-advertise-address-endpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2827,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:kubeadm-kubernetes-io-component-config-hash",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2838,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-role-kubernetes-io-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2850,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-role-kubernetes-io",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2865,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-role-kubernetes-io-control-plane-node-role-kubernetes-io-control-plane-taint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2881,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:node-role-kubernetes-io-master-deprecated-node-role-kubernetes-io-master-taint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2900,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "concept:resource-kubernetes-io-admin-access-resource-kubernetes-io-admin-access",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": 2913,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/tools/_index",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "CRI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 9,
          "line_end": null,
          "quote": "CRI"
        }
      ]
    },
    {
      "from_id": "page:reference/tools/_index",
      "to_id": "gloss:job",
      "type": "references",
      "label": "Job",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 70,
          "line_end": null,
          "quote": "Job"
        }
      ]
    },
    {
      "from_id": "page:reference/tools/_index",
      "to_id": "concept:crictl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/tools/_index",
      "to_id": "concept:dashboard",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/tools/_index",
      "to_id": "concept:headlamp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/tools/_index",
      "to_id": "concept:helm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/tools/_index",
      "to_id": "concept:kind",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/tools/_index",
      "to_id": "concept:kompose",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/tools/_index",
      "to_id": "concept:kui",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/tools/_index",
      "to_id": "concept:minikube",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/tools/_index.md",
          "url": "https://kubernetes.io/docs/reference/tools/_index/",
          "line_start": 74,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/custom-metrics.v1beta2",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/custom-metrics.v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/custom-metrics.v1beta2",
      "to_id": "concept:metriclistoptions-custom-metrics-k8s-io-v1beta2-metriclistoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/custom-metrics.v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/custom-metrics.v1beta2",
      "to_id": "concept:metricvalue-custom-metrics-k8s-io-v1beta2-metricvalue",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/custom-metrics.v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/custom-metrics.v1beta2",
      "to_id": "concept:metricvaluelist-custom-metrics-k8s-io-v1beta2-metricvaluelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/custom-metrics.v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/custom-metrics.v1beta2",
      "to_id": "concept:metricidentifier-custom-metrics-k8s-io-v1beta2-metricidentifier",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/custom-metrics.v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/external-api/custom-metrics.v1beta2/",
          "line_start": 136,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/metrics.v1beta1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/metrics.v1beta1",
      "to_id": "concept:nodemetrics-metrics-k8s-io-v1beta1-nodemetrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/metrics.v1beta1",
      "to_id": "concept:nodemetricslist-metrics-k8s-io-v1beta1-nodemetricslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/metrics.v1beta1",
      "to_id": "concept:podmetrics-metrics-k8s-io-v1beta1-podmetrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/metrics.v1beta1",
      "to_id": "concept:podmetricslist-metrics-k8s-io-v1beta1-podmetricslist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/metrics.v1beta1",
      "to_id": "concept:containermetrics-metrics-k8s-io-v1beta1-containermetrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/metrics.v1beta1/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/external-metrics.v1beta1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/external-metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/external-metrics.v1beta1/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/external-metrics.v1beta1",
      "to_id": "concept:externalmetricvalue-external-metrics-k8s-io-v1beta1-externalmetricvalue",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/external-metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/external-metrics.v1beta1/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/external-api/external-metrics.v1beta1",
      "to_id": "concept:externalmetricvaluelist-external-metrics-k8s-io-v1beta1-externalmetricvaluelist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/external-api/external-metrics.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/external-api/external-metrics.v1beta1/",
          "line_start": 74,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/policies",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/policies.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/policies/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/config",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "kube-scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 11,
          "line_end": null,
          "quote": "kube-scheduler"
        },
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 11,
          "line_end": null,
          "quote": "kube-scheduler"
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/config",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volumes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 147,
          "line_end": null,
          "quote": "volumes"
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/config",
      "to_id": "concept:profiles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/config",
      "to_id": "concept:scheduler-configuration-migrations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 428,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/config",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 477,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/config",
      "to_id": "concept:extension-points",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/config",
      "to_id": "concept:scheduling-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/config",
      "to_id": "concept:multiple-profiles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 196,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/config",
      "to_id": "concept:plugins-that-apply-to-multiple-extension-points-multipoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/config.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/config/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 2,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "gloss:cluster",
      "type": "references",
      "label": "cluster",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 3,
          "line_end": null,
          "quote": "cluster"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Services",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 8,
          "line_end": null,
          "quote": "Services"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 12,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "gloss:endpoint-slice",
      "type": "references",
      "label": "EndpointSlice",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 13,
          "line_end": null,
          "quote": "EndpointSlice"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 14,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "Pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 50,
          "line_end": null,
          "quote": "Pods"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 138,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API Server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 431,
          "line_end": null,
          "quote": "API Server"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "gloss:etcd",
      "type": "references",
      "label": "etcd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 436,
          "line_end": null,
          "quote": "etcd"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:proxy-modes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:session-affinity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 388,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:ip-address-assignment-to-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 409,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:traffic-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 587,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:traffic-distribution-control-traffic-distribution",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 699,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 792,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:iptables-proxy-mode-proxy-mode-iptables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:ipvs-proxy-mode-proxy-mode-ipvs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:nftables-proxy-mode-proxy-mode-nftables",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 285,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:kernelspace-proxy-mode-proxy-mode-kernelspace",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 357,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:session-stickiness-timeout",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 399,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:avoiding-collisions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 420,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:ip-address-allocation-tracking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 433,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:ip-address-ranges-for-service-virtual-ip-addresses-service-ip-static-sub-range",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 573,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:internal-traffic-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 592,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:external-traffic-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 602,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:traffic-to-terminating-endpoints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 674,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:comparison-with-service-kubernetes-io-topology-mode-auto",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 726,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:interaction-with-traffic-policies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 751,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "concept:considerations-for-using-traffic-distribution-control",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": 770,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/ports-and-protocols",
      "to_id": "concept:control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/ports-and-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/ports-and-protocols/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/ports-and-protocols",
      "to_id": "concept:worker-node-s-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/ports-and-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/ports-and-protocols/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "gloss:service",
      "type": "references",
      "label": "Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 2,
          "line_end": null,
          "quote": "Service"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "gloss:annotation",
      "type": "references",
      "label": "annotation",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 63,
          "line_end": null,
          "quote": "annotation"
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "concept:supported-protocols-protocol-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "concept:special-cases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "concept:sctp-protocol-sctp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "concept:tcp-protocol-tcp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "concept:udp-protocol-udp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "concept:http-protocol-http-special",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "concept:proxy-protocol-protocol-proxy-special",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "concept:tls-protocol-tls-special",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": 103,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 255,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:bootstraptoken-bootstraptoken",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 265,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:bootstraptokenstring-bootstraptokenstring",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 332,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:clusterconfiguration-kubeadm-k8s-io-v1beta3-clusterconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 367,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:initconfiguration-kubeadm-k8s-io-v1beta3-initconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 488,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:joinconfiguration-kubeadm-k8s-io-v1beta3-joinconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 565,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:apiendpoint-kubeadm-k8s-io-v1beta3-apiendpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 633,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:apiserver-kubeadm-k8s-io-v1beta3-apiserver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 669,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:bootstraptokendiscovery-kubeadm-k8s-io-v1beta3-bootstraptokendiscovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 709,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:controlplanecomponent-kubeadm-k8s-io-v1beta3-controlplanecomponent",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 765,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:dns-kubeadm-k8s-io-v1beta3-dns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 802,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:discovery-kubeadm-k8s-io-v1beta3-discovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 828,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:etcd-kubeadm-k8s-io-v1beta3-etcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 881,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:externaletcd-kubeadm-k8s-io-v1beta3-externaletcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 916,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:filediscovery-kubeadm-k8s-io-v1beta3-filediscovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 967,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:hostpathmount-kubeadm-k8s-io-v1beta3-hostpathmount",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 995,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:imagemeta-kubeadm-k8s-io-v1beta3-imagemeta",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 1049,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:joincontrolplane-kubeadm-k8s-io-v1beta3-joincontrolplane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 1088,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:localetcd-kubeadm-k8s-io-v1beta3-localetcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 1126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:networking-kubeadm-k8s-io-v1beta3-networking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 1187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:noderegistrationoptions-kubeadm-k8s-io-v1beta3-noderegistrationoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 1227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta3",
      "to_id": "concept:patches-kubeadm-k8s-io-v1beta3-patches",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta3.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/",
          "line_start": 1311,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:event-audit-k8s-io-v1-event",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:eventlist-audit-k8s-io-v1-eventlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:policy-audit-k8s-io-v1-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 204,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:policylist-audit-k8s-io-v1-policylist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:authenticationmetadata-audit-k8s-io-v1-authenticationmetadata",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 294,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:groupresources-audit-k8s-io-v1-groupresources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:level-audit-k8s-io-v1-level",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 374,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:objectreference-audit-k8s-io-v1-objectreference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 390,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:policyrule-audit-k8s-io-v1-policyrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 460,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-audit.v1",
      "to_id": "concept:stage-audit-k8s-io-v1-stage",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-audit.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-audit.v1/",
          "line_start": 566,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/client-authentication.v1beta1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/client-authentication.v1beta1",
      "to_id": "concept:execcredential-client-authentication-k8s-io-v1beta1-execcredential",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/client-authentication.v1beta1",
      "to_id": "concept:cluster-client-authentication-k8s-io-v1beta1-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/client-authentication.v1beta1",
      "to_id": "concept:execcredentialspec-client-authentication-k8s-io-v1beta1-execcredentialspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/client-authentication.v1beta1",
      "to_id": "concept:execcredentialstatus-client-authentication-k8s-io-v1beta1-execcredentialstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1beta1/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:formatoptions-formatoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:jsonoptions-jsonoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:logformatfactory-logformatfactory",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:loggingconfiguration-loggingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:loggingoptions-loggingoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:outputroutingoptions-outputroutingoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:textoptions-textoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 218,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:timeormetaduration-timeormetaduration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 243,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:tracingconfiguration-tracingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 277,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:vmoduleconfiguration-vmoduleconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:verbositylevel-verbositylevel",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 329,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:credentialproviderconfig-kubelet-config-k8s-io-v1beta1-credentialproviderconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 345,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:imagepullintent-kubelet-config-k8s-io-v1beta1-imagepullintent",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 376,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:imagepulledrecord-kubelet-config-k8s-io-v1beta1-imagepulledrecord",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 403,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:kubeletconfiguration-kubelet-config-k8s-io-v1beta1-kubeletconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 456,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:serializednodeconfigsource-kubelet-config-k8s-io-v1beta1-serializednodeconfigsource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 1812,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:crashloopbackoffconfig-kubelet-config-k8s-io-v1beta1-crashloopbackoffconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 1839,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:credentialprovider-kubelet-config-k8s-io-v1beta1-credentialprovider",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 1865,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:execenvvar-kubelet-config-k8s-io-v1beta1-execenvvar",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 1960,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:imagepullcredentials-kubelet-config-k8s-io-v1beta1-imagepullcredentials",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 1992,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:imagepullcredentialsverificationpolicy-kubelet-config-k8s-io-v1beta1-imagepullcredentialsverificationpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2036,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:imagepullsecret-kubelet-config-k8s-io-v1beta1-imagepullsecret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2051,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:imagepullserviceaccount-kubelet-config-k8s-io-v1beta1-imagepullserviceaccount",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2097,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:kubeletanonymousauthentication-kubelet-config-k8s-io-v1beta1-kubeletanonymousauthentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:kubeletauthentication-kubelet-config-k8s-io-v1beta1-kubeletauthentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:kubeletauthorization-kubelet-config-k8s-io-v1beta1-kubeletauthorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2201,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:kubeletauthorizationmode-kubelet-config-k8s-io-v1beta1-kubeletauthorizationmode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:kubeletwebhookauthentication-kubelet-config-k8s-io-v1beta1-kubeletwebhookauthentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:kubeletwebhookauthorization-kubelet-config-k8s-io-v1beta1-kubeletwebhookauthorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2278,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:kubeletx509authentication-kubelet-config-k8s-io-v1beta1-kubeletx509authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2311,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:memoryreservation-kubelet-config-k8s-io-v1beta1-memoryreservation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2338,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:memoryreservationpolicy-kubelet-config-k8s-io-v1beta1-memoryreservationpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2369,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:memoryswapconfiguration-kubelet-config-k8s-io-v1beta1-memoryswapconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2383,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:resourcechangedetectionstrategy-kubelet-config-k8s-io-v1beta1-resourcechangedetectionstrategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2409,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:shutdowngraceperiodbypodpriority-kubelet-config-k8s-io-v1beta1-shutdowngraceperiodbypodpriority",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2424,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1beta1",
      "to_id": "concept:usernamespaces-kubelet-config-k8s-io-v1beta1-usernamespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/",
          "line_start": 2457,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-webhookadmission.v1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-webhookadmission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-webhookadmission.v1/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-webhookadmission.v1",
      "to_id": "concept:webhookadmission-apiserver-config-k8s-io-v1-webhookadmission",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-webhookadmission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-webhookadmission.v1/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:config-config",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:authinfo-authinfo",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:authproviderconfig-authproviderconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 211,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:cluster-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:context-context",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 326,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:execconfig-execconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 373,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:execenvvar-execenvvar",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 460,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:execinteractivemode-execinteractivemode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 492,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:namedauthinfo-namedauthinfo",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 506,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:namedcluster-namedcluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 539,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:namedcontext-namedcontext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 572,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:namedextension-namedextension",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 605,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeconfig.v1",
      "to_id": "concept:preferences-preferences",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeconfig.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/",
          "line_start": 646,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/client-authentication.v1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/client-authentication.v1",
      "to_id": "concept:execcredential-client-authentication-k8s-io-v1-execcredential",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/client-authentication.v1",
      "to_id": "concept:cluster-client-authentication-k8s-io-v1-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/client-authentication.v1",
      "to_id": "concept:execcredentialspec-client-authentication-k8s-io-v1-execcredentialspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/client-authentication.v1",
      "to_id": "concept:execcredentialstatus-client-authentication-k8s-io-v1-execcredentialstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/client-authentication.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/client-authentication.v1/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:clientconnectionconfiguration-clientconnectionconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:debuggingconfiguration-debuggingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:leaderelectionconfiguration-leaderelectionconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 107,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:defaultpreemptionargs-kubescheduler-config-k8s-io-v1-defaultpreemptionargs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:dynamicresourcesargs-kubescheduler-config-k8s-io-v1-dynamicresourcesargs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:interpodaffinityargs-kubescheduler-config-k8s-io-v1-interpodaffinityargs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:kubeschedulerconfiguration-kubescheduler-config-k8s-io-v1-kubeschedulerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 353,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:nodeaffinityargs-kubescheduler-config-k8s-io-v1-nodeaffinityargs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 461,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:noderesourcesbalancedallocationargs-kubescheduler-config-k8s-io-v1-noderesourcesbalancedallocationargs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 491,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:noderesourcesfitargs-kubescheduler-config-k8s-io-v1-noderesourcesfitargs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 516,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:podtopologyspreadargs-kubescheduler-config-k8s-io-v1-podtopologyspreadargs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 560,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:volumebindingargs-kubescheduler-config-k8s-io-v1-volumebindingargs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 604,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:extender-kubescheduler-config-k8s-io-v1-extender",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 650,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:extendermanagedresource-kubescheduler-config-k8s-io-v1-extendermanagedresource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 770,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:extendertlsconfig-kubescheduler-config-k8s-io-v1-extendertlsconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 805,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:kubeschedulerprofile-kubescheduler-config-k8s-io-v1-kubeschedulerprofile",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 885,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:plugin-kubescheduler-config-k8s-io-v1-plugin",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 951,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:pluginconfig-kubescheduler-config-k8s-io-v1-pluginconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 984,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:pluginset-kubescheduler-config-k8s-io-v1-pluginset",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 1019,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:plugins-kubescheduler-config-k8s-io-v1-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 1057,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:podtopologyspreadconstraintsdefaulting-kubescheduler-config-k8s-io-v1-podtopologyspreadconstraintsdefaulting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 1203,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:requestedtocapacityratioparam-kubescheduler-config-k8s-io-v1-requestedtocapacityratioparam",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 1218,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:resourcespec-kubescheduler-config-k8s-io-v1-resourcespec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 1244,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:scoringstrategy-kubescheduler-config-k8s-io-v1-scoringstrategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 1279,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:scoringstrategytype-kubescheduler-config-k8s-io-v1-scoringstrategytype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 1322,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-scheduler-config.v1",
      "to_id": "concept:utilizationshapepoint-kubescheduler-config-k8s-io-v1-utilizationshapepoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-scheduler-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/",
          "line_start": 1336,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-credentialprovider.v1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-credentialprovider.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-credentialprovider.v1",
      "to_id": "concept:credentialproviderrequest-credentialprovider-kubelet-k8s-io-v1-credentialproviderrequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-credentialprovider.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-credentialprovider.v1",
      "to_id": "concept:credentialproviderresponse-credentialprovider-kubelet-k8s-io-v1-credentialproviderresponse",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-credentialprovider.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-credentialprovider.v1",
      "to_id": "concept:authconfig-credentialprovider-kubelet-k8s-io-v1-authconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-credentialprovider.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-credentialprovider.v1",
      "to_id": "concept:plugincachekeytype-credentialprovider-kubelet-k8s-io-v1-plugincachekeytype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-credentialprovider.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-credentialprovider.v1/",
          "line_start": 169,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:tracingconfiguration-tracingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:authenticationconfiguration-apiserver-k8s-io-v1beta1-authenticationconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:authorizationconfiguration-apiserver-k8s-io-v1beta1-authorizationconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:egressselectorconfiguration-apiserver-k8s-io-v1beta1-egressselectorconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:tracingconfiguration-apiserver-k8s-io-v1beta1-tracingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:anonymousauthcondition-apiserver-k8s-io-v1beta1-anonymousauthcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:anonymousauthconfig-apiserver-k8s-io-v1beta1-anonymousauthconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 209,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:audiencematchpolicytype-apiserver-k8s-io-v1beta1-audiencematchpolicytype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:authorizerconfiguration-apiserver-k8s-io-v1beta1-authorizerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:claimmappings-apiserver-k8s-io-v1beta1-claimmappings",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 303,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:claimorexpression-apiserver-k8s-io-v1beta1-claimorexpression",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 396,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:claimvalidationrule-apiserver-k8s-io-v1beta1-claimvalidationrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 439,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:connection-apiserver-k8s-io-v1beta1-connection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 505,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:egressselection-apiserver-k8s-io-v1beta1-egressselection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 539,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:egressselectortype-apiserver-k8s-io-v1beta1-egressselectortype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 574,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:extramapping-apiserver-k8s-io-v1beta1-extramapping",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 588,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:issuer-apiserver-k8s-io-v1beta1-issuer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 636,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:jwtauthenticator-apiserver-k8s-io-v1beta1-jwtauthenticator",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 755,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:prefixedclaimorexpression-apiserver-k8s-io-v1beta1-prefixedclaimorexpression",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 805,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:protocoltype-apiserver-k8s-io-v1beta1-protocoltype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 856,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:tcptransport-apiserver-k8s-io-v1beta1-tcptransport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 870,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:tlsconfig-apiserver-k8s-io-v1beta1-tlsconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 904,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:transport-apiserver-k8s-io-v1beta1-transport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 958,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:udstransport-apiserver-k8s-io-v1beta1-udstransport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 994,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:uservalidationrule-apiserver-k8s-io-v1beta1-uservalidationrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 1021,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:webhookconfiguration-apiserver-k8s-io-v1beta1-webhookconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 1063,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:webhookconnectioninfo-apiserver-k8s-io-v1beta1-webhookconnectioninfo",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 1193,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1beta1",
      "to_id": "concept:webhookmatchcondition-apiserver-k8s-io-v1beta1-webhookmatchcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1beta1/",
          "line_start": 1233,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1",
      "to_id": "concept:credentialproviderconfig-kubelet-config-k8s-io-v1-credentialproviderconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1",
      "to_id": "concept:credentialprovider-kubelet-config-k8s-io-v1-credentialprovider",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1",
      "to_id": "concept:execenvvar-kubelet-config-k8s-io-v1-execenvvar",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1",
      "to_id": "concept:serviceaccounttokenattributes-kubelet-config-k8s-io-v1-serviceaccounttokenattributes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1",
      "to_id": "concept:serviceaccounttokencachetype-kubelet-config-k8s-io-v1-serviceaccounttokencachetype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1alpha1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1alpha1",
      "to_id": "concept:credentialproviderconfig-kubelet-config-k8s-io-v1alpha1-credentialproviderconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1alpha1",
      "to_id": "concept:imagepullintent-kubelet-config-k8s-io-v1alpha1-imagepullintent",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1alpha1",
      "to_id": "concept:imagepulledrecord-kubelet-config-k8s-io-v1alpha1-imagepulledrecord",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1alpha1",
      "to_id": "concept:credentialprovider-kubelet-config-k8s-io-v1alpha1-credentialprovider",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1alpha1",
      "to_id": "concept:execenvvar-kubelet-config-k8s-io-v1alpha1-execenvvar",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 215,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1alpha1",
      "to_id": "concept:imagepullcredentials-kubelet-config-k8s-io-v1alpha1-imagepullcredentials",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 247,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1alpha1",
      "to_id": "concept:imagepullsecret-kubelet-config-k8s-io-v1alpha1-imagepullsecret",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 291,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubelet-config.v1alpha1",
      "to_id": "concept:imagepullserviceaccount-kubelet-config-k8s-io-v1alpha1-imagepullserviceaccount",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubelet-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubelet-config.v1alpha1/",
          "line_start": 337,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-eventratelimit.v1alpha1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-eventratelimit.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-eventratelimit.v1alpha1",
      "to_id": "concept:configuration-eventratelimit-admission-k8s-io-v1alpha1-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-eventratelimit.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-eventratelimit.v1alpha1",
      "to_id": "concept:limit-eventratelimit-admission-k8s-io-v1alpha1-limit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-eventratelimit.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-eventratelimit.v1alpha1",
      "to_id": "concept:limittype-eventratelimit-admission-k8s-io-v1alpha1-limittype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-eventratelimit.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:clientconnectionconfiguration-clientconnectionconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:debuggingconfiguration-debuggingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:leaderelectionconfiguration-leaderelectionconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:nodecontrollerconfiguration-nodecontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:servicecontrollerconfiguration-servicecontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 227,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:cloudcontrollermanagerconfiguration-cloudcontrollermanager-config-k8s-io-v1alpha1-cloudcontrollermanagerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 258,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:cloudproviderconfiguration-cloudcontrollermanager-config-k8s-io-v1alpha1-cloudproviderconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:kubecloudsharedconfiguration-cloudcontrollermanager-config-k8s-io-v1alpha1-kubecloudsharedconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 354,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:webhookconfiguration-cloudcontrollermanager-config-k8s-io-v1alpha1-webhookconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 466,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:leadermigrationconfiguration-controllermanager-config-k8s-io-v1alpha1-leadermigrationconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 499,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:controllerleaderconfiguration-controllermanager-config-k8s-io-v1alpha1-controllerleaderconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 544,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:genericcontrollermanagerconfiguration-controllermanager-config-k8s-io-v1alpha1-genericcontrollermanagerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 580,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:kubecontrollermanagerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-kubecontrollermanagerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 679,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:attachdetachcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-attachdetachcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 937,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:csrsigningconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-csrsigningconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 982,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:csrsigningcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-csrsigningcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1017,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:cronjobcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-cronjobcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1088,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:daemonsetcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-daemonsetcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:deploymentcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-deploymentcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:deprecatedcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-deprecatedcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1172,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:devicetaintevictioncontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-devicetaintevictioncontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1185,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:endpointcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-endpointcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:endpointslicecontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-endpointslicecontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1250,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:endpointslicemirroringcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-endpointslicemirroringcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1297,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:ephemeralvolumecontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-ephemeralvolumecontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1346,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:garbagecollectorcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-garbagecollectorcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1374,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:groupresource-kubecontrollermanager-config-k8s-io-v1alpha1-groupresource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1417,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:hpacontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-hpacontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1450,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:jobcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-jobcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1519,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:legacysatokencleanerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-legacysatokencleanerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1547,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:namespacecontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-namespacecontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1574,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:nodeipamcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-nodeipamcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1609,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:nodelifecyclecontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-nodelifecyclecontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1663,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:persistentvolumebindercontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-persistentvolumebindercontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1737,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:persistentvolumerecyclerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-persistentvolumerecyclerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1772,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:podgccontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-podgccontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1850,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:replicasetcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-replicasetcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1878,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:replicationcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-replicationcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1906,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:resourceclaimcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-resourceclaimcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1934,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:resourcequotacontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-resourcequotacontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1962,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:sacontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-sacontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 1998,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:statefulsetcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-statefulsetcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 2041,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:ttlafterfinishedcontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-ttlafterfinishedcontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 2069,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:validatingadmissionpolicystatuscontrollerconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-validatingadmissionpolicystatuscontrollerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 2096,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-controller-manager-config.v1alpha1",
      "to_id": "concept:volumeconfiguration-kubecontrollermanager-config-k8s-io-v1alpha1-volumeconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-controller-manager-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-controller-manager-config.v1alpha1/",
          "line_start": 2125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:formatoptions-formatoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:jsonoptions-jsonoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:logformatfactory-logformatfactory",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:loggingconfiguration-loggingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:loggingoptions-loggingoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:outputroutingoptions-outputroutingoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:textoptions-textoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:timeormetaduration-timeormetaduration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 241,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:vmoduleconfiguration-vmoduleconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 275,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:verbositylevel-verbositylevel",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:clientconnectionconfiguration-clientconnectionconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 308,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:debuggingconfiguration-debuggingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 368,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:leaderelectionconfiguration-leaderelectionconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 404,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:kubeproxyconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxyconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 491,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:detectlocalconfiguration-kubeproxy-config-k8s-io-v1alpha1-detectlocalconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 703,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:kubeproxyconntrackconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxyconntrackconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 740,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:kubeproxyiptablesconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxyiptablesconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 820,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:kubeproxyipvsconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxyipvsconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 885,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:kubeproxynftablesconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxynftablesconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 970,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:kubeproxywinkernelconfiguration-kubeproxy-config-k8s-io-v1alpha1-kubeproxywinkernelconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 1024,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:localmode-kubeproxy-config-k8s-io-v1alpha1-localmode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 1084,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kube-proxy-config.v1alpha1",
      "to_id": "concept:proxymode-kubeproxy-config-k8s-io-v1alpha1-proxymode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kube-proxy-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/",
          "line_start": 1098,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-admission.v1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-admission.v1",
      "to_id": "concept:admissionreview-admission-k8s-io-v1-admissionreview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-admission.v1",
      "to_id": "concept:admissionrequest-admission-k8s-io-v1-admissionrequest",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-admission.v1",
      "to_id": "concept:admissionresponse-admission-k8s-io-v1-admissionresponse",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-admission.v1",
      "to_id": "concept:operation-admission-k8s-io-v1-operation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 265,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-admission.v1",
      "to_id": "concept:patchtype-admission-k8s-io-v1-patchtype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-admission.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-admission.v1/",
          "line_start": 279,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:tracingconfiguration-tracingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:admissionconfiguration-apiserver-k8s-io-v1alpha1-admissionconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:authenticationconfiguration-apiserver-k8s-io-v1alpha1-authenticationconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:authorizationconfiguration-apiserver-k8s-io-v1alpha1-authorizationconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:egressselectorconfiguration-apiserver-k8s-io-v1alpha1-egressselectorconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:tracingconfiguration-apiserver-k8s-io-v1alpha1-tracingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 181,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:admissionpluginconfiguration-apiserver-k8s-io-v1alpha1-admissionpluginconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 206,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:anonymousauthcondition-apiserver-k8s-io-v1alpha1-anonymousauthcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 249,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:anonymousauthconfig-apiserver-k8s-io-v1alpha1-anonymousauthconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:audiencematchpolicytype-apiserver-k8s-io-v1alpha1-audiencematchpolicytype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:authorizerconfiguration-apiserver-k8s-io-v1alpha1-authorizerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 323,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:claimmappings-apiserver-k8s-io-v1alpha1-claimmappings",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 370,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:claimorexpression-apiserver-k8s-io-v1alpha1-claimorexpression",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 463,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:claimvalidationrule-apiserver-k8s-io-v1alpha1-claimvalidationrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 506,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:connection-apiserver-k8s-io-v1alpha1-connection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 572,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:egressselection-apiserver-k8s-io-v1alpha1-egressselection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 606,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:egressselectortype-apiserver-k8s-io-v1alpha1-egressselectortype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 641,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:extramapping-apiserver-k8s-io-v1alpha1-extramapping",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 655,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:issuer-apiserver-k8s-io-v1alpha1-issuer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 703,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:jwtauthenticator-apiserver-k8s-io-v1alpha1-jwtauthenticator",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 822,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:prefixedclaimorexpression-apiserver-k8s-io-v1alpha1-prefixedclaimorexpression",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 872,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:protocoltype-apiserver-k8s-io-v1alpha1-protocoltype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 923,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:tcptransport-apiserver-k8s-io-v1alpha1-tcptransport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 937,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:tlsconfig-apiserver-k8s-io-v1alpha1-tlsconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 971,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:transport-apiserver-k8s-io-v1alpha1-transport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 1025,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:udstransport-apiserver-k8s-io-v1alpha1-udstransport",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 1061,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:uservalidationrule-apiserver-k8s-io-v1alpha1-uservalidationrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 1088,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:webhookconfiguration-apiserver-k8s-io-v1alpha1-webhookconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 1130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:webhookconnectioninfo-apiserver-k8s-io-v1alpha1-webhookconnectioninfo",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 1260,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1alpha1",
      "to_id": "concept:webhookmatchcondition-apiserver-k8s-io-v1alpha1-webhookmatchcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1alpha1/",
          "line_start": 1300,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/imagepolicy.v1alpha1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/imagepolicy.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/imagepolicy.v1alpha1",
      "to_id": "concept:imagereview-imagepolicy-k8s-io-v1alpha1-imagereview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/imagepolicy.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/imagepolicy.v1alpha1",
      "to_id": "concept:imagereviewcontainerspec-imagepolicy-k8s-io-v1alpha1-imagereviewcontainerspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/imagepolicy.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/imagepolicy.v1alpha1",
      "to_id": "concept:imagereviewspec-imagepolicy-k8s-io-v1alpha1-imagereviewspec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/imagepolicy.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/imagepolicy.v1alpha1",
      "to_id": "concept:imagereviewstatus-imagepolicy-k8s-io-v1alpha1-imagereviewstatus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/imagepolicy.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/imagepolicy.v1alpha1/",
          "line_start": 115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 4,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:tracingconfiguration-tracingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:admissionconfiguration-apiserver-config-k8s-io-v1-admissionconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:authenticationconfiguration-apiserver-config-k8s-io-v1-authenticationconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:authorizationconfiguration-apiserver-config-k8s-io-v1-authorizationconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:encryptionconfiguration-apiserver-config-k8s-io-v1-encryptionconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:tracingconfiguration-apiserver-config-k8s-io-v1-tracingconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:aesconfiguration-apiserver-config-k8s-io-v1-aesconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 249,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:admissionpluginconfiguration-apiserver-config-k8s-io-v1-admissionpluginconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:anonymousauthcondition-apiserver-config-k8s-io-v1-anonymousauthcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:anonymousauthconfig-apiserver-config-k8s-io-v1-anonymousauthconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 346,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:audiencematchpolicytype-apiserver-config-k8s-io-v1-audiencematchpolicytype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 379,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:authorizerconfiguration-apiserver-config-k8s-io-v1-authorizerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 393,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:claimmappings-apiserver-config-k8s-io-v1-claimmappings",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 440,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:claimorexpression-apiserver-config-k8s-io-v1-claimorexpression",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 533,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:claimvalidationrule-apiserver-config-k8s-io-v1-claimvalidationrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 576,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:egressselectortype-apiserver-config-k8s-io-v1-egressselectortype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 642,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:extramapping-apiserver-config-k8s-io-v1-extramapping",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 656,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:identityconfiguration-apiserver-config-k8s-io-v1-identityconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 704,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:issuer-apiserver-config-k8s-io-v1-issuer",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 717,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:jwtauthenticator-apiserver-config-k8s-io-v1-jwtauthenticator",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 836,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:kmsconfiguration-apiserver-config-k8s-io-v1-kmsconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 886,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:key-apiserver-config-k8s-io-v1-key",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 941,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:prefixedclaimorexpression-apiserver-config-k8s-io-v1-prefixedclaimorexpression",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 976,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:providerconfiguration-apiserver-config-k8s-io-v1-providerconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 1027,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:resourceconfiguration-apiserver-config-k8s-io-v1-resourceconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 1081,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:secretboxconfiguration-apiserver-config-k8s-io-v1-secretboxconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 1119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:uservalidationrule-apiserver-config-k8s-io-v1-uservalidationrule",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 1146,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:webhookconfiguration-apiserver-config-k8s-io-v1-webhookconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 1188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:webhookconnectioninfo-apiserver-config-k8s-io-v1-webhookconnectioninfo",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 1318,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-config.v1",
      "to_id": "concept:webhookmatchcondition-apiserver-config-k8s-io-v1-webhookmatchcondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-config.v1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-config.v1/",
          "line_start": 1358,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1alpha1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1alpha1",
      "to_id": "concept:preference-kubectl-config-k8s-io-v1alpha1-preference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1alpha1",
      "to_id": "concept:aliasoverride-kubectl-config-k8s-io-v1alpha1-aliasoverride",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1alpha1",
      "to_id": "concept:commanddefaults-kubectl-config-k8s-io-v1alpha1-commanddefaults",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1alpha1",
      "to_id": "concept:commandoptiondefault-kubectl-config-k8s-io-v1alpha1-commandoptiondefault",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1alpha1/",
          "line_start": 174,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 350,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:bootstraptoken-bootstraptoken",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 362,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:bootstraptokenstring-bootstraptokenstring",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 431,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:clusterconfiguration-kubeadm-k8s-io-v1beta4-clusterconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 466,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:initconfiguration-kubeadm-k8s-io-v1beta4-initconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 619,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:joinconfiguration-kubeadm-k8s-io-v1beta4-joinconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 711,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:resetconfiguration-kubeadm-k8s-io-v1beta4-resetconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 793,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:upgradeconfiguration-kubeadm-k8s-io-v1beta4-upgradeconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 886,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:apiendpoint-kubeadm-k8s-io-v1beta4-apiendpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 939,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:apiserver-kubeadm-k8s-io-v1beta4-apiserver",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 975,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:arg-kubeadm-k8s-io-v1beta4-arg",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1008,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:bootstraptokendiscovery-kubeadm-k8s-io-v1beta4-bootstraptokendiscovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1045,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:controlplanecomponent-kubeadm-k8s-io-v1beta4-controlplanecomponent",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:dns-kubeadm-k8s-io-v1beta4-dns",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1148,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:discovery-kubeadm-k8s-io-v1beta4-discovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1181,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:encryptionalgorithmtype-kubeadm-k8s-io-v1beta4-encryptionalgorithmtype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1226,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:envvar-kubeadm-k8s-io-v1beta4-envvar",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1240,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:etcd-kubeadm-k8s-io-v1beta4-etcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1267,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:externaletcd-kubeadm-k8s-io-v1beta4-externaletcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:filediscovery-kubeadm-k8s-io-v1beta4-filediscovery",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1370,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:hostpathmount-kubeadm-k8s-io-v1beta4-hostpathmount",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1398,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:imagemeta-kubeadm-k8s-io-v1beta4-imagemeta",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1452,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:joincontrolplane-kubeadm-k8s-io-v1beta4-joincontrolplane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1491,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:localetcd-kubeadm-k8s-io-v1beta4-localetcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1528,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:networking-kubeadm-k8s-io-v1beta4-networking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1601,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:noderegistrationoptions-kubeadm-k8s-io-v1beta4-noderegistrationoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1641,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:patches-kubeadm-k8s-io-v1beta4-patches",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1734,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:proxy-kubeadm-k8s-io-v1beta4-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1775,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:timeouts-kubeadm-k8s-io-v1beta4-timeouts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1801,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:upgradeapplyconfiguration-kubeadm-k8s-io-v1beta4-upgradeapplyconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 1888,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:upgradediffconfiguration-kubeadm-k8s-io-v1beta4-upgradediffconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 2009,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:upgradenodeconfiguration-kubeadm-k8s-io-v1beta4-upgradenodeconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 2042,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kubeadm-config.v1beta4",
      "to_id": "concept:upgradeplanconfiguration-kubeadm-k8s-io-v1beta4-upgradeplanconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kubeadm-config.v1beta4.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta4/",
          "line_start": 2124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1beta1",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1beta1",
      "to_id": "concept:preference-kubectl-config-k8s-io-v1beta1-preference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1beta1",
      "to_id": "concept:aliasoverride-kubectl-config-k8s-io-v1beta1-aliasoverride",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1beta1",
      "to_id": "concept:allowlistentry-kubectl-config-k8s-io-v1beta1-allowlistentry",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 172,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1beta1",
      "to_id": "concept:commanddefaults-kubectl-config-k8s-io-v1beta1-commanddefaults",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 220,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1beta1",
      "to_id": "concept:commandoptiondefault-kubectl-config-k8s-io-v1beta1-commandoptiondefault",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/kuberc.v1beta1",
      "to_id": "concept:credentialpluginpolicy-kubectl-config-k8s-io-v1beta1-credentialpluginpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/kuberc.v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/kuberc.v1beta1/",
          "line_start": 291,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/slis",
      "to_id": "concept:sli-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/slis.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/slis/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/slis",
      "to_id": "concept:using-this-data",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/slis.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/slis/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/cri-pod-container-metrics",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "Container Runtime Interface",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/cri-pod-container-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/cri-pod-container-metrics/",
          "line_start": 8,
          "line_end": null,
          "quote": "Container Runtime Interface"
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/cri-pod-container-metrics",
      "to_id": "concept:cri-pod-container-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/cri-pod-container-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/cri-pod-container-metrics/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/zpages",
      "to_id": "concept:z-pages",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/zpages.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/zpages/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/zpages",
      "to_id": "concept:statusz",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/zpages.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/zpages/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/zpages",
      "to_id": "concept:flagz",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/zpages.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/zpages/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/node-metrics",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "Container Runtime Interface",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/node-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/node-metrics/",
          "line_start": 34,
          "line_end": null,
          "quote": "Container Runtime Interface"
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/node-metrics",
      "to_id": "concept:summary-metrics-api-source-summary-api-source",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/node-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/node-metrics/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/node-metrics",
      "to_id": "concept:pressure-stall-information-psi-psi",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/node-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/node-metrics/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/node-metrics",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/node-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/node-metrics/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/node-metrics",
      "to_id": "concept:requirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/node-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/node-metrics/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/metrics",
      "to_id": "concept:metrics-v1-36",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/metrics/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/metrics",
      "to_id": "concept:list-of-stable-kubernetes-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/metrics/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/metrics",
      "to_id": "concept:list-of-beta-kubernetes-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/metrics/",
          "line_start": 274,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/metrics",
      "to_id": "concept:list-of-alpha-kubernetes-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/metrics/",
          "line_start": 533,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/understand-psi-metrics",
      "to_id": "concept:understanding-psi-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/understand-psi-metrics",
      "to_id": "concept:example-scenarios",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/understand-psi-metrics",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 259,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/understand-psi-metrics",
      "to_id": "concept:requirements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/understand-psi-metrics",
      "to_id": "concept:generating-cpu-pressure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/understand-psi-metrics",
      "to_id": "concept:generating-memory-pressure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/understand-psi-metrics",
      "to_id": "concept:generating-i-o-pressure",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": 210,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/native-histograms",
      "to_id": "concept:before-you-begin",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/native-histograms",
      "to_id": "concept:what-are-native-histograms",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/native-histograms",
      "to_id": "concept:how-it-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/native-histograms",
      "to_id": "concept:enabling-native-histograms",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/native-histograms",
      "to_id": "concept:migrating-dashboards-and-alerts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/native-histograms",
      "to_id": "concept:disabling-native-histograms",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 162,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/native-histograms",
      "to_id": "concept:troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/native-histograms",
      "to_id": "concept:references",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 212,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/native-histograms",
      "to_id": "concept:step-1-enable-the-kubernetes-feature-gate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/native-histograms",
      "to_id": "concept:step-2-configure-prometheus",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/native-histograms.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/native-histograms/",
          "line_start": 100,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-alpha",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-alpha.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-alpha/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 225,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 316,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 418,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:init-workflow-init-workflow",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:using-init-phases-with-kubeadm-init-phases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:using-kubeadm-init-with-a-configuration-file-config-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:using-kubeadm-init-with-feature-gates-feature-gates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:adding-kube-proxy-parameters-kube-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:passing-custom-flags-to-control-plane-components-control-plane-flags",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:running-kubeadm-without-an-internet-connection-without-internet-connection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 270,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:using-custom-images-custom-images",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 286,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:uploading-control-plane-certificates-to-the-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:certificate-management-with-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 350,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:managing-the-kubeadm-drop-in-file-for-the-kubelet-kubelet-drop-in",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 357,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:use-kubeadm-with-cri-runtimes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 366,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:setting-the-node-name",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 371,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init",
      "to_id": "concept:automating-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/",
          "line_start": 381,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "gloss:addons",
      "type": "references",
      "label": "addons",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 693,
          "line_end": null,
          "quote": "addons"
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:core-design-principles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:constants-and-well-known-values-and-paths",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:the-kubeadm-configuration-file-format",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:kubeadm-init-workflow-internal-design",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:kubeadm-join-phases-internal-design",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 541,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:tls-bootstrap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 304,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:kubeadm-upgrade-workflow-internal-design",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 630,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:kubeadm-reset-workflow-internal-design",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 697,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:preflight-checks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        },
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:generate-the-necessary-certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:generate-kubeconfig-files-for-control-plane-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 194,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:generate-static-pod-manifests-for-control-plane-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:generate-static-pod-manifest-for-local-etcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:wait-for-the-control-plane-to-come-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 402,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:save-the-kubeadm-clusterconfiguration-in-a-configmap-for-later-reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 410,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:mark-the-node-as-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 424,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:configure-tls-bootstrapping-for-node-joining",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 435,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:install-addons",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 511,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:discovery-cluster-info",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 564,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:kubeadm-upgrade-plan",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 641,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:kubeadm-upgrade-diff",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 641,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:kubeadm-upgrade-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 633,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/implementation-details",
      "to_id": "concept:kubeadm-upgrade-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/implementation-details.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/implementation-details/",
          "line_start": 634,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade",
      "to_id": "concept:kubeadm-upgrade-guidance",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade",
      "to_id": "concept:kubeadm-upgrade-plan-cmd-upgrade-plan",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade",
      "to_id": "concept:kubeadm-upgrade-apply-cmd-upgrade-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade",
      "to_id": "concept:kubeadm-upgrade-diff-cmd-upgrade-diff",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade",
      "to_id": "concept:kubeadm-upgrade-node-cmd-upgrade-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-preflight-cmd-phase-preflight",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-certs-cmd-phase-certs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-kubeconfig-cmd-phase-kubeconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-etcd-cmd-phase-etcd",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-control-plane-cmd-phase-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-kubelet-start-cmd-phase-kubelet-start",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-wait-control-plane-cmd-phase-wait-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-upload-config-cmd-phase-upload-config",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-upload-certs-cmd-phase-upload-certs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-mark-control-plane-cmd-phase-mark-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-bootstrap-token-cmd-phase-bootstrap-token",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        },
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-kubelet-finalize-cmd-phase-kubelet-finalize-all",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-addon-cmd-phase-addon",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:kubeadm-init-phase-show-join-command-cmd-phase-show-join-command",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-init-phase",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-init-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init-phase/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join-phase",
      "to_id": "concept:kubeadm-join-phase-cmd-join-phase",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join-phase",
      "to_id": "concept:kubeadm-join-phase-preflight-cmd-join-phase-preflight",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join-phase",
      "to_id": "concept:kubeadm-join-phase-control-plane-prepare-cmd-join-phase-control-plane-prepare",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join-phase",
      "to_id": "concept:kubeadm-join-phase-kubelet-start-cmd-join-phase-kubelet-start",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join-phase",
      "to_id": "concept:kubeadm-join-phase-etcd-join-cmd-join-phase-etcd-join",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join-phase",
      "to_id": "concept:kubeadm-join-phase-control-plane-join-cmd-join-phase-control-plane-join",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join-phase",
      "to_id": "concept:kubeadm-join-phase-wait-control-plane-cmd-join-wait-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join-phase",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join-phase/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-token",
      "to_id": "concept:kubeadm-token-create-cmd-token-create",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-token",
      "to_id": "concept:kubeadm-token-delete-cmd-token-delete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-token",
      "to_id": "concept:kubeadm-token-generate-cmd-token-generate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-token",
      "to_id": "concept:kubeadm-token-list-cmd-token-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-token",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset-phase",
      "to_id": "concept:kubeadm-reset-phase-cmd-reset-phase",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset-phase",
      "to_id": "concept:kubeadm-reset-phase-preflight-cmd-reset-phase-preflight",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset-phase",
      "to_id": "concept:kubeadm-reset-phase-remove-etcd-member-cmd-reset-phase-remove-etcd-member",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset-phase",
      "to_id": "concept:kubeadm-reset-phase-cleanup-node-cmd-reset-phase-cleanup-node",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset-phase",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset-phase/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade-phase",
      "to_id": "concept:kubeadm-upgrade-apply-phase-cmd-apply-phase",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade-phase/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade-phase",
      "to_id": "concept:kubeadm-upgrade-node-phase-cmd-node-phase",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade-phase/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-upgrade-phase",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-upgrade-phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade-phase/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join",
      "to_id": "concept:the-join-workflow-join-workflow",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join",
      "to_id": "concept:using-join-phases-with-kubeadm-join-phases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join",
      "to_id": "concept:discovering-what-cluster-ca-to-trust",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join",
      "to_id": "concept:securing-your-installation-even-more-securing-more",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 195,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-join",
      "to_id": "concept:using-kubeadm-join-with-a-configuration-file-config-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/",
          "line_start": 293,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-kubeconfig",
      "to_id": "concept:kubeadm-kubeconfig-cmd-kubeconfig",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-kubeconfig/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-kubeconfig",
      "to_id": "concept:kubeadm-kubeconfig-user-cmd-kubeconfig-user",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-kubeconfig/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-certs",
      "to_id": "concept:kubeadm-certs-cmd-certs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-certs",
      "to_id": "concept:kubeadm-certs-renew-cmd-certs-renew",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-certs",
      "to_id": "concept:kubeadm-certs-certificate-key-cmd-certs-certificate-key",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-certs",
      "to_id": "concept:kubeadm-certs-check-expiration-cmd-certs-check-expiration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-certs",
      "to_id": "concept:kubeadm-certs-generate-csr-cmd-certs-generate-csr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-certs",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-certs/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-config",
      "to_id": "concept:kubeadm-config-print-cmd-config-print",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-config",
      "to_id": "concept:kubeadm-config-print-init-defaults-cmd-config-print-init-defaults",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-config",
      "to_id": "concept:kubeadm-config-print-join-defaults-cmd-config-print-join-defaults",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-config",
      "to_id": "concept:kubeadm-config-migrate-cmd-config-migrate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-config",
      "to_id": "concept:kubeadm-config-validate-cmd-config-validate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-config",
      "to_id": "concept:kubeadm-config-images-list-cmd-config-images-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-config",
      "to_id": "concept:kubeadm-config-images-pull-cmd-config-images-pull",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-config",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-config/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset",
      "to_id": "concept:reset-workflow-reset-workflow",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset",
      "to_id": "concept:cleanup-of-external-etcd-members",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset",
      "to_id": "concept:cleanup-of-cni-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset",
      "to_id": "concept:cleanup-of-network-traffic-rules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset",
      "to_id": "concept:cleanup-of-home-kube",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/kubeadm-reset",
      "to_id": "concept:graceful-kube-apiserver-shutdown",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/kubeadm-reset.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/_index",
      "to_id": "concept:how-to-install",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/_index/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/_index/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/kubeadm_kubeconfig_user/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_kubeconfig/_index/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_super-admin.conf/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_generate-csr/",
          "line_start": 77,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-peer/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-healthcheck-client/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_etcd-server/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_admin.conf/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_check-expiration/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_controller-manager.conf/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-etcd-client/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_scheduler.conf/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_all/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_apiserver-kubelet-client/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_renew_front-proxy-client/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/kubeadm_certs_certificate-key/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/_index",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/_index",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_certs/_index",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_certs/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_certs/_index/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_coredns/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_kube-proxy/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_all/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubelet/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config_kubeadm/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon_all/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_diff/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_preflight/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_control-plane/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_post-upgrade/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_plan/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_addon/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply/",
          "line_start": 150,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_bootstrap-token/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_upload-config/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/_index/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_apply_phase_kubelet-config/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubeadm/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_all/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config_kubelet/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-certs/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_preflight/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-start/",
          "line_start": 94,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_sa/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_all/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-ca/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_all/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-healthcheck-client/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_scheduler/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_upload-config/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_ca/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_all/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-kubelet-client/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_all/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize_enable-client-cert-rotation/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_bootstrap-token/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-peer/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_all/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_scheduler/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_show-join-command/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_apiserver/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_admin/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_coredns/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-ca/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane_controller-manager/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_mark-control-plane/",
          "line_start": 74,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubelet-finalize/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_etcd_local/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_control-plane/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_apiserver-etcd-client/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_front-proxy-client/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_addon_kube-proxy/",
          "line_start": 115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_controller-manager/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/_index",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/_index",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/_index/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/_index",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/_index/",
          "line_start": 255,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_kubelet/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_wait-control-plane/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_kubeconfig_super-admin/",
          "line_start": 99,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_init/kubeadm_init_phase_certs_etcd-server/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_upgrade-defaults/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_reset-defaults/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_list/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_images_pull/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_join-defaults/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_validate/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_migrate/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/_index",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/_index/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/_index",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/_index/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/_index",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/_index/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_config/kubeadm_config_print_init-defaults/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-start/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_certs/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_all/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_kubelet-wait-bootstrap/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_all/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-join_mark-control-plane/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_control-plane/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_download-certs/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_etcd-join/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_preflight/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_control-plane-prepare_kubeconfig/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/_index",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/_index/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/_index",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/_index/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/_index",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/_index/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_join/kubeadm_join_phase_wait-control-plane/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_list/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_create/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_delete/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/kubeadm_token_generate/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/_index",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/_index/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/_index",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/_index/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_token/_index",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_token/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_token/_index/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_version/_index",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_version/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_version/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_version/_index",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_version/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_version/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_version/_index",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_version/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_version/_index/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_remove-etcd-member/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node/",
          "line_start": 71,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_preflight/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/_index",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/_index",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/_index/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/_index",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/_index/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_completion/_index",
      "to_id": "concept:synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_completion/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_completion/_index",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_completion/_index/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_completion/_index",
      "to_id": "concept:options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_completion/_index/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_completion/_index",
      "to_id": "concept:options-inherited-from-parent-commands",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_completion/_index/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/kube-apiserver",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-apiserver.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/kube-apiserver",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-apiserver.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/",
          "line_start": 25,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/kube-controller-manager",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-controller-manager/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/kube-controller-manager",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-controller-manager.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-controller-manager/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/kube-proxy",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/kube-proxy",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/kubelet",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kubelet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/kubelet",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kubelet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/kube-scheduler",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-scheduler/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/kube-scheduler",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/kube-scheduler.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/kube-scheduler/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates-removed/index",
      "to_id": "concept:descriptions-for-removed-feature-gates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates-removed/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates-removed/index/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates-removed/index",
      "to_id": "concept:feature-gates-that-are-removed",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates-removed/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates-removed/index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/HPAContainerMetrics",
      "to_id": "gloss:horizontal-pod-autoscaler",
      "type": "references",
      "label": "HorizontalPodAutoscalers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HPAContainerMetrics.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HPAContainerMetrics/",
          "line_start": 1,
          "line_end": null,
          "quote": "HorizontalPodAutoscalers"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/KubeletCgroupDriverFromCRI",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "CRI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletCgroupDriverFromCRI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletCgroupDriverFromCRI/",
          "line_start": 2,
          "line_end": null,
          "quote": "CRI"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation",
      "to_id": "gloss:annotation",
      "type": "references",
      "label": "annotation",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation/",
          "line_start": 2,
          "line_end": null,
          "quote": "annotation"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace",
      "to_id": "gloss:userns",
      "type": "references",
      "label": "user namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace/",
          "line_start": 2,
          "line_end": null,
          "quote": "user namespace"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volumes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes/",
          "line_start": 5,
          "line_end": null,
          "quote": "volumes"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CronJobControllerV2",
      "to_id": "gloss:cronjob",
      "type": "references",
      "label": "CronJob",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CronJobControllerV2.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobControllerV2/",
          "line_start": 2,
          "line_end": null,
          "quote": "CronJob"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource",
      "to_id": "gloss:persistent-volume-claim",
      "type": "references",
      "label": "PVC",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource/",
          "line_start": 2,
          "line_end": null,
          "quote": "PVC"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RetryGenerateName",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RetryGenerateName.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RetryGenerateName/",
          "line_start": 2,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinition",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors/",
          "line_start": 2,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RootCAConfigMap",
      "to_id": "gloss:configmap",
      "type": "references",
      "label": "ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RootCAConfigMap.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RootCAConfigMap/",
          "line_start": 2,
          "line_end": null,
          "quote": "ConfigMap"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName",
      "to_id": "gloss:label",
      "type": "references",
      "label": "label",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName/",
          "line_start": 2,
          "line_end": null,
          "quote": "label"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/index",
      "to_id": "concept:overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/index",
      "to_id": "concept:how-to-enable-feature-gates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/index",
      "to_id": "concept:feature-gates-in-kubernetes-v-skew-currentversion-list-of-gates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/index",
      "to_id": "concept:using-a-feature",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/index",
      "to_id": "concept:list-of-feature-gates-feature-gates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/index",
      "to_id": "concept:feature-gates-for-alpha-or-beta-features",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/index",
      "to_id": "concept:feature-gates-for-graduated-or-deprecated-features",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/index",
      "to_id": "concept:feature-stages",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/index.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/index/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DisableCPUQuotaWithExclusiveCPUs",
      "to_id": "gloss:qos-class",
      "type": "references",
      "label": "QoS class",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DisableCPUQuotaWithExclusiveCPUs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableCPUQuotaWithExclusiveCPUs/",
          "line_start": 3,
          "line_end": null,
          "quote": "QoS class"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EphemeralContainers",
      "to_id": "gloss:ephemeral-container",
      "type": "references",
      "label": "ephemeral containers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EphemeralContainers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EphemeralContainers/",
          "line_start": 2,
          "line_end": null,
          "quote": "ephemeral containers"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodHostIPs",
      "to_id": "gloss:downward-api",
      "type": "references",
      "label": "downward API",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodHostIPs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodHostIPs/",
          "line_start": 1,
          "line_end": null,
          "quote": "downward API"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EventedPLEG",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EventedPLEG.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EventedPLEG/",
          "line_start": 2,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EventedPLEG",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "CRI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EventedPLEG.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EventedPLEG/",
          "line_start": 3,
          "line_end": null,
          "quote": "CRI"
        }
      ]
    },
    {
      "from_id": "page:reference/debug-cluster/flow-control",
      "to_id": "concept:diagnostics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/debug-cluster/flow-control.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/debug-cluster/flow-control",
      "to_id": "concept:debug-endpoints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/debug-cluster/flow-control.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/debug-cluster/flow-control",
      "to_id": "concept:debug-logging",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/debug-cluster/flow-control.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
          "line_start": 143,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/debug-cluster/flow-control",
      "to_id": "concept:response-headers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/debug-cluster/flow-control.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/debug-cluster/flow-control",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/debug-cluster/flow-control.md",
          "url": "https://kubernetes.io/docs/reference/debug-cluster/flow-control/",
          "line_start": 172,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 3,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 4,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 21,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 26,
          "line_end": null,
          "quote": "scheduler"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:endpoint-slice",
      "type": "references",
      "label": "EndpointSlices",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 36,
          "line_end": null,
          "quote": "EndpointSlices"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:garbage-collection",
      "type": "references",
      "label": "garbage collection",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 52,
          "line_end": null,
          "quote": "garbage collection"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 64,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:taint",
      "type": "references",
      "label": "taints",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 65,
          "line_end": null,
          "quote": "taints"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:containerd",
      "type": "references",
      "label": "containerd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 88,
          "line_end": null,
          "quote": "containerd"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:init-container",
      "type": "references",
      "label": "init container",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 105,
          "line_end": null,
          "quote": "init container"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:drain",
      "type": "references",
      "label": "draining",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 136,
          "line_end": null,
          "quote": "draining"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:deployment",
      "type": "references",
      "label": "Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 148,
          "line_end": null,
          "quote": "Deployment"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:statefulset",
      "type": "references",
      "label": "StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 149,
          "line_end": null,
          "quote": "StatefulSet"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "gloss:daemonset",
      "type": "references",
      "label": "DaemonSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 150,
          "line_end": null,
          "quote": "DaemonSet"
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "concept:impact-of-a-kubelet-restart",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "concept:impact-of-a-container-runtime-restart",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "concept:impact-of-a-node-reboot",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/device-plugin-api-versions",
      "to_id": "concept:compatibility-matrix",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/device-plugin-api-versions.md",
          "url": "https://kubernetes.io/docs/reference/node/device-plugin-api-versions/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/systemd-watchdog",
      "to_id": "concept:configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/systemd-watchdog.md",
          "url": "https://kubernetes.io/docs/reference/node/systemd-watchdog/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/systemd-watchdog",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/systemd-watchdog.md",
          "url": "https://kubernetes.io/docs/reference/node/systemd-watchdog/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/systemd-watchdog",
      "to_id": "concept:example-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/systemd-watchdog.md",
          "url": "https://kubernetes.io/docs/reference/node/systemd-watchdog/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-status",
      "to_id": "gloss:toleration",
      "type": "references",
      "label": "tolerations",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 80,
          "line_end": null,
          "quote": "tolerations"
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-status",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 135,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-status",
      "to_id": "concept:node-status-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-status",
      "to_id": "concept:addresses",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-status",
      "to_id": "concept:conditions-condition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-status",
      "to_id": "concept:capacity-and-allocatable-capacity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-status",
      "to_id": "concept:info",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-status",
      "to_id": "concept:declared-features-declaredfeatures",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-status",
      "to_id": "concept:heartbeats",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-pod-info-grpc-api",
      "to_id": "concept:endpoint-endpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-pod-info-grpc-api",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-pod-info-grpc-api",
      "to_id": "concept:api-definition-api-definition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-pod-info-grpc-api",
      "to_id": "concept:field-selection-field-selection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-pod-info-grpc-api",
      "to_id": "concept:reliability-and-availability-reliability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-pod-info-grpc-api",
      "to_id": "concept:listpods-list-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-pod-info-grpc-api",
      "to_id": "concept:watchpods-watch-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-pod-info-grpc-api",
      "to_id": "concept:getpod-get-pod",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-sync-loop",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "Container Runtime Interface",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-sync-loop.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-sync-loop/",
          "line_start": 16,
          "line_end": null,
          "quote": "Container Runtime Interface"
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-config-directory-merging",
      "to_id": "concept:structure-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-config-directory-merging.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-config-directory-merging/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-config-directory-merging",
      "to_id": "concept:lists",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-config-directory-merging.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-config-directory-merging/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-config-directory-merging",
      "to_id": "concept:maps-including-nested-structures",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-config-directory-merging.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-config-directory-merging/",
          "line_start": 93,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kernel-version-requirements",
      "to_id": "concept:pod-sysctls",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kernel-version-requirements",
      "to_id": "concept:version-2-control-groups",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kernel-version-requirements",
      "to_id": "concept:pressure-stall-information-psi-requirements-psi",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kernel-version-requirements",
      "to_id": "concept:other-kernel-requirements-requirements-other",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kernel-version-requirements",
      "to_id": "concept:linux-kernel-long-term-maintenance",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kernel-version-requirements",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 89,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kernel-version-requirements",
      "to_id": "concept:kube-proxy-nftables-proxy-mode",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kernel-version-requirements.md",
          "url": "https://kubernetes.io/docs/reference/node/kernel-version-requirements/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-labels",
      "to_id": "gloss:node",
      "type": "references",
      "label": "nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-labels.md",
          "url": "https://kubernetes.io/docs/reference/node/node-labels/",
          "line_start": 1,
          "line_end": null,
          "quote": "nodes"
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-labels",
      "to_id": "gloss:label",
      "type": "references",
      "label": "labels",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-labels.md",
          "url": "https://kubernetes.io/docs/reference/node/node-labels/",
          "line_start": 2,
          "line_end": null,
          "quote": "labels"
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-labels",
      "to_id": "concept:preset-labels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-labels.md",
          "url": "https://kubernetes.io/docs/reference/node/node-labels/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-labels",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-labels.md",
          "url": "https://kubernetes.io/docs/reference/node/node-labels/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/seccomp",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 7,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:reference/node/seccomp",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 14,
          "line_end": null,
          "quote": "pod"
        }
      ]
    },
    {
      "from_id": "page:reference/node/seccomp",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 47,
          "line_end": null,
          "quote": "container runtime"
        },
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 47,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:reference/node/seccomp",
      "to_id": "gloss:cri-o",
      "type": "references",
      "label": "CRI-O",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 52,
          "line_end": null,
          "quote": "CRI-O"
        }
      ]
    },
    {
      "from_id": "page:reference/node/seccomp",
      "to_id": "gloss:containerd",
      "type": "references",
      "label": "containerd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 53,
          "line_end": null,
          "quote": "containerd"
        }
      ]
    },
    {
      "from_id": "page:reference/node/seccomp",
      "to_id": "concept:seccomp-fields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/seccomp",
      "to_id": "concept:further-reading",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 142,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/seccomp",
      "to_id": "concept:localhost-profiles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/seccomp.md",
          "url": "https://kubernetes.io/docs/reference/node/seccomp/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 1,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "gloss:node",
      "type": "references",
      "label": "node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 2,
          "line_end": null,
          "quote": "node"
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "gloss:control-plane",
      "type": "references",
      "label": "control plane",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 12,
          "line_end": null,
          "quote": "control plane"
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "gloss:container-runtime",
      "type": "references",
      "label": "container runtime",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 14,
          "line_end": null,
          "quote": "container runtime"
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:security-profiles-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:locking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 187,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 200,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:kubelet-configuration-files",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:manifests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:systemd-unit-settings",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:checkpoint-files-for-resource-managers-resource-managers-state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:checkpoint-file-for-device-manager-device-manager-state",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:pod-resource-checkpoints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:container-runtime",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:device-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:pod-resources-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:dra-csi-and-device-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:graceful-node-shutdown",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 151,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:image-pull-records",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 158,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:seccomp",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 177,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-files",
      "to_id": "concept:apparmor",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-files.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-files/",
          "line_start": 182,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-checkpoint-api",
      "to_id": "gloss:cri",
      "type": "references",
      "label": "CRI",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-checkpoint-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/",
          "line_start": 32,
          "line_end": null,
          "quote": "CRI"
        },
        {
          "source": "reference/node/kubelet-checkpoint-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/",
          "line_start": 32,
          "line_end": null,
          "quote": "CRI"
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-checkpoint-api",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-checkpoint-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/",
          "line_start": 51,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-checkpoint-api",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-checkpoint-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/",
          "line_start": 55,
          "line_end": null,
          "quote": "pod"
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-checkpoint-api",
      "to_id": "gloss:container",
      "type": "references",
      "label": "container",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-checkpoint-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/",
          "line_start": 59,
          "line_end": null,
          "quote": "container"
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-checkpoint-api",
      "to_id": "concept:operations-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-checkpoint-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-checkpoint-api",
      "to_id": "concept:post-checkpoint-the-specified-container-post-checkpoint",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-checkpoint-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/topics-on-dockershim-and-cri-compatible-runtimes",
      "to_id": "concept:kubernetes-project",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/topics-on-dockershim-and-cri-compatible-runtimes.md",
          "url": "https://kubernetes.io/docs/reference/node/topics-on-dockershim-and-cri-compatible-runtimes/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/topics-on-dockershim-and-cri-compatible-runtimes",
      "to_id": "concept:external-sources-third-party",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/topics-on-dockershim-and-cri-compatible-runtimes.md",
          "url": "https://kubernetes.io/docs/reference/node/topics-on-dockershim-and-cri-compatible-runtimes/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/issues-security/security",
      "to_id": "concept:security-announcements",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/issues-security/security",
      "to_id": "concept:report-a-vulnerability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/issues-security/security",
      "to_id": "concept:security-vulnerability-response",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/issues-security/security",
      "to_id": "concept:public-disclosure-timing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/issues-security/security",
      "to_id": "concept:when-should-i-report-a-vulnerability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/issues-security/security",
      "to_id": "concept:when-should-i-not-report-a-vulnerability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:kubectl-autocomplete",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:kubectl-context-and-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:kubectl-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:creating-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:viewing-and-finding-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:updating-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 260,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:patching-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 290,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:editing-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 312,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:scaling-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:deleting-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 330,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:interacting-with-running-pods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 342,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:copying-files-and-directories-to-and-from-containers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 369,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:interacting-with-deployments-and-services",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 388,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:interacting-with-nodes-and-cluster",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 400,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 491,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:bash",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:zsh",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:fish",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:a-note-on-all-namespaces",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 419,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:formatting-output",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 438,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/quick-reference",
      "to_id": "concept:kubectl-output-verbosity-and-debugging",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/quick-reference.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/quick-reference/",
          "line_start": 474,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/conventions",
      "to_id": "concept:using-kubectl-in-reusable-scripts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/conventions",
      "to_id": "concept:subresources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/conventions",
      "to_id": "concept:best-practices",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/conventions",
      "to_id": "concept:kubectl-run",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/conventions",
      "to_id": "concept:kubectl-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/conventions",
      "to_id": "concept:kubectl-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/conventions.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/conventions/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/jsonpath",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/jsonpath.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/jsonpath/",
          "line_start": 2,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/jsonpath",
      "to_id": "concept:functions-in-kubernetes-jsonpath-functions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/jsonpath.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/jsonpath/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/jsonpath",
      "to_id": "concept:using-jsonpath-expressions-with-kubectl-use-with-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/jsonpath.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/jsonpath/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/jsonpath",
      "to_id": "concept:regular-expressions-in-jsonpath",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/jsonpath.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/jsonpath/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kubectl",
      "to_id": "gloss:kubectl",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kubectl",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kubectl/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kubectl",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kubectl/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kubectl",
      "to_id": "concept:heading-envvars",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kubectl/",
          "line_start": 324,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kubectl",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kubectl/",
          "line_start": 391,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/introduction",
      "to_id": "concept:command-families",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/introduction",
      "to_id": "concept:declarative-application-management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/introduction",
      "to_id": "concept:printing-state-about-workloads",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/introduction",
      "to_id": "concept:debugging-workloads",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 39,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/introduction",
      "to_id": "concept:cluster-management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/introduction",
      "to_id": "concept:porcelain",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/introduction.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/introduction/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "gloss:kubectl",
      "type": "references",
      "label": "kubectl",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 4,
          "line_end": null,
          "quote": "kubectl"
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:aliases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 5,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:defaults",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 18,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:credential-plugin-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:suggested-defaults",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 321,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:disable-kuberc",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 364,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:prependargs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:appendargs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 87,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:credentialpluginpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:credentialpluginallowlist",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:example-credential-plugin-policy-example",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/kuberc",
      "to_id": "concept:managing-credential-plugin-policy-with-kubectl-kuberc-set",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/kuberc.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/kuberc/",
          "line_start": 292,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/docker-cli-to-kubectl",
      "to_id": "concept:docker-run",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/docker-cli-to-kubectl",
      "to_id": "concept:docker-ps",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/docker-cli-to-kubectl",
      "to_id": "concept:docker-attach",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 93,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/docker-cli-to-kubectl",
      "to_id": "concept:docker-exec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/docker-cli-to-kubectl",
      "to_id": "concept:docker-logs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 185,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/docker-cli-to-kubectl",
      "to_id": "concept:docker-stop-and-docker-rm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 222,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/docker-cli-to-kubectl",
      "to_id": "concept:docker-login",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 283,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/docker-cli-to-kubectl",
      "to_id": "concept:docker-version",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 287,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/docker-cli-to-kubectl",
      "to_id": "concept:docker-info",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/docker-cli-to-kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "gloss:kubectl",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "concept:syntax",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "concept:in-cluster-authentication-and-namespace-overrides",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "concept:operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 118,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "concept:resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "concept:output-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 236,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "concept:examples-common-operations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 355,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "concept:examples-creating-and-using-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 469,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 572,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "concept:formatting-output",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/_index",
      "to_id": "concept:sorting-list-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/_index/",
          "line_start": 335,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl/",
          "line_start": 283,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_attach/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_attach/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_attach/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_attach/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_attach/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_attach/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_attach/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_attach/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_attach/_index/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_attach/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_attach/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_attach/_index/",
          "line_start": 103,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_attach/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_attach/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_attach/_index/",
          "line_start": 355,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_subject",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_subject.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_subject/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_subject",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_subject.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_subject/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_subject",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_subject.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_subject/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_subject",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_subject.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_subject/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_subject",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_subject.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_subject/",
          "line_start": 406,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_selector",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_selector.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_selector/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_selector",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_selector.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_selector/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_selector",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_selector.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_selector/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_selector",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_selector.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_selector/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_selector",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_selector.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_selector/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_env",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_env.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_env/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_env",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_env.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_env/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_env",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_env.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_env/",
          "line_start": 68,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_env",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_env.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_env/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_env",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_env.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_env/",
          "line_start": 481,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount/",
          "line_start": 386,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_resources",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_resources.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_resources/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_resources",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_resources.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_resources/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_resources",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_resources.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_resources/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_resources",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_resources.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_resources/",
          "line_start": 168,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_resources",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_resources.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_resources/",
          "line_start": 420,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_image",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_image.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_image/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_image",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_image.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_image/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_image",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_image.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_image/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_image",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_image.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_image/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_image",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_image.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_image/",
          "line_start": 399,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/_index/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/_index/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/_index/",
          "line_start": 297,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_run/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_run/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_run/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_run/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_run/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_run/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_run/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_run/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_run/_index/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_run/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_run/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_run/_index/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_run/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_run/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_run/_index/",
          "line_start": 571,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_debug/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_debug/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_debug/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_debug/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_debug/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_debug/_index/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_debug/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_debug/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_debug/_index/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_debug/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_debug/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_debug/_index/",
          "line_start": 251,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_debug/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_debug/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_debug/_index/",
          "line_start": 496,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_api-resources/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-resources/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-resources/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_api-resources/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-resources/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-resources/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_api-resources/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-resources/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-resources/_index/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_api-resources/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-resources/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-resources/_index/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_api-resources/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-resources/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-resources/_index/",
          "line_start": 380,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_expose/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_expose/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_expose/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_expose/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_expose/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_expose/_index/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_expose/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_expose/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_expose/_index/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_expose/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_expose/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_expose/_index/",
          "line_start": 235,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_expose/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_expose/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_expose/_index/",
          "line_start": 487,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_annotate/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_annotate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_annotate/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_annotate/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_annotate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_annotate/_index/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_annotate/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_annotate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_annotate/_index/",
          "line_start": 52,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_annotate/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_annotate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_annotate/_index/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_annotate/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_annotate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_annotate/_index/",
          "line_start": 444,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump/",
          "line_start": 369,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/_index/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/_index/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/_index/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_explain/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_explain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_explain/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_explain/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_explain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_explain/_index/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_explain/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_explain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_explain/_index/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_explain/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_explain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_explain/_index/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_explain/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_explain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_explain/_index/",
          "line_start": 343,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_describe/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_describe/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_describe/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_describe/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_describe/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_describe/_index/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_describe/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_describe/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_describe/_index/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_describe/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_describe/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_describe/_index/",
          "line_start": 123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_describe/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_describe/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_describe/_index/",
          "line_start": 375,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_edit/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_edit/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_edit/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_edit/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_edit/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_edit/_index/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_edit/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_edit/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_edit/_index/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_edit/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_edit/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_edit/_index/",
          "line_start": 165,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_edit/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_edit/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_edit/_index/",
          "line_start": 417,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_events/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_events/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_events/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_events/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_events/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_events/_index/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_events/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_events/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_events/_index/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_events/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_events/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_events/_index/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_events/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_events/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_events/_index/",
          "line_start": 386,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_logs/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_logs/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_logs/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_logs/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_logs/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_logs/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_logs/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_logs/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_logs/_index/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_logs/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_logs/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_logs/_index/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_logs/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_logs/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_logs/_index/",
          "line_start": 465,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_autoscale/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_autoscale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_autoscale/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_autoscale/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_autoscale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_autoscale/_index/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_autoscale/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_autoscale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_autoscale/_index/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_autoscale/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_autoscale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_autoscale/_index/",
          "line_start": 166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_autoscale/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_autoscale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_autoscale/_index/",
          "line_start": 418,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_options/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_options/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_options/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_options/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_options/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_options/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_options/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_options/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_options/_index/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_options/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_options/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_options/_index/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_options/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_options/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_options/_index/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_namespace",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_namespace.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_namespace/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_namespace",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_namespace.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_namespace/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_namespace",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_namespace.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_namespace/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_namespace",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_namespace.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_namespace/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_namespace",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_namespace.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_namespace/",
          "line_start": 358,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_token",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_token.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_token/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_token",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_token.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_token/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_token",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_token.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_token/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_token",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_token.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_token/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_token",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_token.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_token/",
          "line_start": 380,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_ingress",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_ingress.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_ingress/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_ingress",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_ingress.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_ingress/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_ingress",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_ingress.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_ingress/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_ingress",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_ingress.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_ingress/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_ingress",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_ingress.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_ingress/",
          "line_start": 419,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_deployment",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_deployment.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_deployment/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_deployment",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_deployment.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_deployment/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_deployment",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_deployment.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_deployment/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_deployment",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_deployment.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_deployment/",
          "line_start": 139,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_deployment",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_deployment.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_deployment/",
          "line_start": 391,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer/",
          "line_start": 365,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname/",
          "line_start": 122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname/",
          "line_start": 374,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret/",
          "line_start": 301,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass/",
          "line_start": 392,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget/",
          "line_start": 132,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget/",
          "line_start": 384,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_configmap",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_configmap.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_configmap/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_configmap",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_configmap.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_configmap/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_configmap",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_configmap.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_configmap/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_configmap",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_configmap.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_configmap/",
          "line_start": 149,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_configmap",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_configmap.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_configmap/",
          "line_start": 401,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service/",
          "line_start": 295,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding/",
          "line_start": 134,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding/",
          "line_start": 379,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic/",
          "line_start": 159,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic/",
          "line_start": 411,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_quota",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_quota.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_quota/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_quota",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_quota.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_quota/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_quota",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_quota.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_quota/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_quota",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_quota.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_quota/",
          "line_start": 123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_quota",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_quota.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_quota/",
          "line_start": 375,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls/",
          "line_start": 129,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls/",
          "line_start": 381,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_cronjob",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_cronjob.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_cronjob/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_cronjob",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_cronjob.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_cronjob/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_cronjob",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_cronjob.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_cronjob/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_cronjob",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_cronjob.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_cronjob/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_cronjob",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_cronjob.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_cronjob/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_job",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_job.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_job/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_job",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_job.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_job/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_job",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_job.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_job/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_job",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_job.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_job/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_job",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_job.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_job/",
          "line_start": 378,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip/",
          "line_start": 123,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip/",
          "line_start": 375,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_role",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_role.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_role/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_role",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_role.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_role/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_role",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_role.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_role/",
          "line_start": 38,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_role",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_role.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_role/",
          "line_start": 136,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_role",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_role.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_role/",
          "line_start": 388,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding/",
          "line_start": 144,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding/",
          "line_start": 389,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry/",
          "line_start": 162,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry/",
          "line_start": 414,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport/",
          "line_start": 120,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport/",
          "line_start": 372,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount/",
          "line_start": 358,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole/",
          "line_start": 156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole/",
          "line_start": 408,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/_index/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/_index/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/_index/",
          "line_start": 163,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/_index/",
          "line_start": 415,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_api-versions/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-versions/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-versions/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_api-versions/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-versions/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-versions/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_api-versions/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-versions/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-versions/_index/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_api-versions/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-versions/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-versions/_index/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_api-versions/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_api-versions/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_api-versions/_index/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_exec/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_exec/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_exec/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_exec/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_exec/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_exec/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_exec/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_exec/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_exec/_index/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_exec/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_exec/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_exec/_index/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_exec/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_exec/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_exec/_index/",
          "line_start": 364,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_patch/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_patch/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_patch/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_patch/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_patch/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_patch/_index/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_patch/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_patch/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_patch/_index/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_patch/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_patch/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_patch/_index/",
          "line_start": 167,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_patch/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_patch/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_patch/_index/",
          "line_start": 419,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_drain/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_drain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_drain/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_drain/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_drain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_drain/_index/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_drain/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_drain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_drain/_index/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_drain/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_drain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_drain/_index/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_drain/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_drain/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_drain/_index/",
          "line_start": 390,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_label/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_label/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_label/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_label/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_label/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_label/_index/",
          "line_start": 27,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_label/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_label/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_label/_index/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_label/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_label/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_label/_index/",
          "line_start": 190,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_label/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_label/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_label/_index/",
          "line_start": 442,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami/",
          "line_start": 85,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_whoami/",
          "line_start": 337,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_reconcile/",
          "line_start": 380,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i/",
          "line_start": 112,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/kubectl_auth_can-i/",
          "line_start": 364,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/_index/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_auth/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_auth/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_auth/_index/",
          "line_start": 295,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cp/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cp/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cp/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cp/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cp/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cp/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cp/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cp/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cp/_index/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cp/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cp/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cp/_index/",
          "line_start": 93,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cp/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cp/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cp/_index/",
          "line_start": 345,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_port-forward/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_port-forward/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_port-forward/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_port-forward/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_port-forward/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_port-forward/_index/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_port-forward/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_port-forward/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_port-forward/_index/",
          "line_start": 51,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_port-forward/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_port-forward/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_port-forward/_index/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_port-forward/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_port-forward/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_port-forward/_index/",
          "line_start": 338,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_replace/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_replace/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_replace/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_replace/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_replace/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_replace/_index/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_replace/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_replace/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_replace/_index/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_replace/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_replace/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_replace/_index/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_replace/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_replace/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_replace/_index/",
          "line_start": 441,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_get/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_get/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_get/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_get/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_get/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_get/_index/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_get/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_get/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_get/_index/",
          "line_start": 74,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_get/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_get/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_get/_index/",
          "line_start": 256,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_get/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_get/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_get/_index/",
          "line_start": 508,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_diff/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_diff/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_diff/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_diff/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_diff/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_diff/_index/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_diff/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_diff/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_diff/_index/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_diff/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_diff/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_diff/_index/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_diff/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_diff/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_diff/_index/",
          "line_start": 399,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_view/",
          "line_start": 336,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set/",
          "line_start": 141,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/kubectl_kuberc_set/",
          "line_start": 386,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/_index/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/_index/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/_index/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kuberc/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kuberc/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kuberc/_index/",
          "line_start": 310,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_delete/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_delete/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_delete/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_delete/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_delete/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_delete/_index/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_delete/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_delete/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_delete/_index/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_delete/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_delete/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_delete/_index/",
          "line_start": 213,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_delete/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_delete/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_delete/_index/",
          "line_start": 465,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve/",
          "line_start": 110,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_approve/",
          "line_start": 362,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/kubectl_certificate_deny/",
          "line_start": 360,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/_index/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_certificate/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_certificate/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_certificate/_index/",
          "line_start": 295,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cordon/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cordon/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cordon/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cordon/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cordon/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cordon/_index/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cordon/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cordon/_index/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cordon/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cordon/_index/",
          "line_start": 316,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-users",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-users.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-users/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-users",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-users.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-users/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-users",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-users.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-users/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-users",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-users.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-users/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-users",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-users.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-users/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_unset",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_unset.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_unset/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_unset",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_unset.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_unset/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_unset",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_unset.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_unset/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_unset",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_unset.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_unset/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_unset",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_unset.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_unset/",
          "line_start": 307,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-user",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-user.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-user/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-user",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-user.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-user/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-user",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-user.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-user/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-user",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-user.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-user/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-user",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-user.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-user/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-cluster/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-context",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-context/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-context",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-context/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-context",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-context/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-context",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-context/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_delete-context",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_delete-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_delete-context/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts/",
          "line_start": 67,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-contexts/",
          "line_start": 319,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_current-context",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_current-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_current-context/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_current-context",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_current-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_current-context/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_current-context",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_current-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_current-context/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_current-context",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_current-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_current-context/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_current-context",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_current-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_current-context/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials/",
          "line_start": 73,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials/",
          "line_start": 192,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-credentials/",
          "line_start": 409,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-cluster/",
          "line_start": 330,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-context",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-context/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-context",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-context/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-context",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-context/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-context",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-context/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set-context",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set-context/",
          "line_start": 311,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_set",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_set.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_set/",
          "line_start": 324,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_use-context",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_use-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_use-context/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_use-context",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_use-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_use-context/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_use-context",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_use-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_use-context/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_use-context",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_use-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_use-context/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_use-context",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_use-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_use-context/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_rename-context",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_rename-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_rename-context/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_rename-context",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_rename-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_rename-context/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_rename-context",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_rename-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_rename-context/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_rename-context",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_rename-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_rename-context/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_rename-context",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_rename-context.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_rename-context/",
          "line_start": 308,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_get-clusters/",
          "line_start": 302,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/_index/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/_index/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/_index/",
          "line_start": 301,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_view",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_view/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_view",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_view/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_view",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_view/",
          "line_start": 37,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_view",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_view/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_config/kubectl_config_view",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_config/kubectl_config_view.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_config/kubectl_config_view/",
          "line_start": 366,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_uncordon/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_uncordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_uncordon/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_uncordon/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_uncordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_uncordon/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_uncordon/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_uncordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_uncordon/_index/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_uncordon/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_uncordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_uncordon/_index/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_uncordon/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_uncordon/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_uncordon/_index/",
          "line_start": 316,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_proxy/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_proxy/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_proxy/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_proxy/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_proxy/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_proxy/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_proxy/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_proxy/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_proxy/_index/",
          "line_start": 48,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_proxy/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_proxy/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_proxy/_index/",
          "line_start": 160,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_proxy/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_proxy/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_proxy/_index/",
          "line_start": 412,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_pod",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_pod.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_pod/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_pod",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_pod.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_pod/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_pod",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_pod.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_pod/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_pod",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_pod.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_pod/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_pod",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_pod.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_pod/",
          "line_start": 378,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_node",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_node.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_node/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_node",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_node.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_node/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_node",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_node.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_node/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_node",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_node.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_node/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_node",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_node.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_node/",
          "line_start": 349,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/_index/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/_index/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/_index/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_scale/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_scale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_scale/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_scale/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_scale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_scale/_index/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_scale/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_scale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_scale/_index/",
          "line_start": 45,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_scale/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_scale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_scale/_index/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_scale/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_scale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_scale/_index/",
          "line_start": 416,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list/",
          "line_start": 62,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/kubectl_plugin_list/",
          "line_start": 314,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_plugin/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_plugin/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/_index/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_plugin/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/_index/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_plugin/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/_index/",
          "line_start": 57,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_plugin/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_plugin/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_plugin/_index/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_wait/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_wait/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_wait/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_wait/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_wait/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_wait/_index/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_wait/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_wait/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_wait/_index/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_wait/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_wait/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_wait/_index/",
          "line_start": 175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_wait/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_wait/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_wait/_index/",
          "line_start": 427,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_taint/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_taint/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_taint/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_taint/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_taint/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_taint/_index/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_taint/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_taint/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_taint/_index/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_taint/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_taint/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_taint/_index/",
          "line_start": 140,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_taint/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_taint/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_taint/_index/",
          "line_start": 392,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_completion/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_completion/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_completion/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_completion/_index/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_completion/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_completion/_index/",
          "line_start": 86,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_completion/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_completion/_index/",
          "line_start": 107,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_completion/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_completion/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_completion/_index/",
          "line_start": 359,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo/",
          "line_start": 126,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_undo/",
          "line_start": 378,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume/",
          "line_start": 115,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_resume/",
          "line_start": 367,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart/",
          "line_start": 124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_restart/",
          "line_start": 376,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status/",
          "line_start": 353,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause/",
          "line_start": 117,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_pause/",
          "line_start": 369,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/_index/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/_index/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/_index/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/_index/",
          "line_start": 317,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_history/",
          "line_start": 368,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_set-last-applied/",
          "line_start": 357,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied/",
          "line_start": 131,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_edit-last-applied/",
          "line_start": 383,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/kubectl_apply_view-last-applied/",
          "line_start": 349,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/_index/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/_index/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/_index/",
          "line_start": 238,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_apply/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_apply/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_apply/_index/",
          "line_start": 490,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_version/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_version/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_version/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_version/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_version/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_version/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_version/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_version/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_version/_index/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_version/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_version/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_version/_index/",
          "line_start": 64,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_version/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_version/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_version/_index/",
          "line_start": 316,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kustomize/_index",
      "to_id": "concept:heading-synopsis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kustomize/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kustomize/_index/",
          "line_start": 13,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kustomize/_index",
      "to_id": "concept:heading-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kustomize/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kustomize/_index/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kustomize/_index",
      "to_id": "concept:heading-options",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kustomize/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kustomize/_index/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kustomize/_index",
      "to_id": "concept:heading-parentoptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kustomize/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kustomize/_index/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_kustomize/_index",
      "to_id": "concept:heading-seealso",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_kustomize/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_kustomize/_index/",
          "line_start": 399,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "gloss:kubelet",
      "type": "references",
      "label": "kubelet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 217,
          "line_end": null,
          "quote": "kubelet"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:users-in-kubernetes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:authentication-strategies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 43,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:anonymous-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:authentication-methods",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:external-integrations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:user-impersonation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1259,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:authentication-configuration-api-server-authn-config",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1264,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:client-go-credential-plugins",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1445,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:api-access-to-authentication-information-for-a-client-self-subject-review",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1824,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 2040,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:anonymous-authenticator-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:x-509-client-certificates-x509-client-certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:bootstrap-tokens",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 124,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:service-account-tokens",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 125,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:json-web-token-authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 376,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:webhook-token-authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:authenticating-reverse-proxy-authenticating-proxy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1156,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:static-token-file-integration-static-token-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1226,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:configuration-via-command-line-arguments-api-server-authn-config-cli",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1272,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:configuration-via-configuration-file-api-server-authn-config-file",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1411,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:example-use-case",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1462,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 84,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:input-and-output-formats",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1646,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:http-access-to-authentication-information-self-subject-review-http-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 1844,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authentication",
      "to_id": "concept:cli-access-to-authentication-information-self-subject-review-cli",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authentication.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authentication/",
          "line_start": 2022,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/abac",
      "to_id": "concept:policy-file-format",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/abac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/abac/",
          "line_start": 6,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/abac",
      "to_id": "concept:authorization-algorithm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/abac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/abac/",
          "line_start": 56,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/abac",
      "to_id": "concept:kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/abac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/abac/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/abac",
      "to_id": "concept:examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/abac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/abac/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/abac",
      "to_id": "concept:a-quick-note-on-service-accounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/abac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/abac/",
          "line_start": 133,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/bootstrap-tokens",
      "to_id": "concept:bootstrap-tokens-overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/bootstrap-tokens",
      "to_id": "concept:token-format",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/bootstrap-tokens",
      "to_id": "concept:enabling-bootstrap-token-authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/bootstrap-tokens",
      "to_id": "concept:bootstrap-token-secret-format",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 61,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/bootstrap-tokens",
      "to_id": "concept:token-management-with-kubeadm",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/bootstrap-tokens",
      "to_id": "concept:configmap-signing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/bootstrap-tokens.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/user-impersonation",
      "to_id": "concept:constrained-impersonation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 165,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/user-impersonation",
      "to_id": "concept:auditing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 517,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/user-impersonation",
      "to_id": "concept:metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 561,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/user-impersonation",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 581,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/user-impersonation",
      "to_id": "concept:understanding-constrained-impersonation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 181,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/user-impersonation",
      "to_id": "concept:impersonation-modes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/user-impersonation",
      "to_id": "concept:configuring-constrained-impersonation-with-rbac",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 232,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/user-impersonation",
      "to_id": "concept:using-constrained-impersonation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 491,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/user-impersonation",
      "to_id": "concept:working-with-impersonate-verb",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/user-impersonation.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/user-impersonation/",
          "line_start": 508,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API Group",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 56,
          "line_end": null,
          "quote": "API Group"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 356,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:authorization-verdicts-determine-whether-a-request-is-allowed-or-denied",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:request-attributes-used-in-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:authorization-context",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:authorization-modes-authorization-modules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:privilege-escalation-via-workload-creation-or-edits-privilege-escalation-via-pod-creation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 350,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:checking-api-access",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 386,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 488,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:request-verbs-and-authorization-determine-the-request-verb",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 58,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:the-system-masters-group",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:authorization-mode-configuration-choice-of-authz-config",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:configuring-the-api-server-using-an-authorization-config-file-using-configuration-file-for-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 169,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:command-line-authorization-mode-configuration-using-flags-for-your-authorization-module",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 325,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/authorization",
      "to_id": "concept:escalation-paths-escalation-paths",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/authorization.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/authorization/",
          "line_start": 364,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/node",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 59,
          "line_end": null,
          "quote": "API server"
        },
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 59,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/node",
      "to_id": "concept:overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/node",
      "to_id": "concept:service-account-token-audience-restriction-service-account-token-audience-restriction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 83,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/node",
      "to_id": "concept:migration-considerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 176,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/node",
      "to_id": "concept:allowing-additional-audiences-with-rbac-allowing-additional-audiences",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 103,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/node",
      "to_id": "concept:kubelets-outside-the-system-nodes-group",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/node",
      "to_id": "concept:kubelets-with-undifferentiated-usernames",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": 185,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "gloss:volume",
      "type": "references",
      "label": "volume",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 404,
          "line_end": null,
          "quote": "volume"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:heading-prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:user-accounts-versus-service-accounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:bound-service-account-tokens",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 55,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:bound-service-account-token-volume-mechanism-bound-service-account-token-volume",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 219,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:manual-secret-management-for-serviceaccounts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 274,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:auto-generated-legacy-serviceaccount-token-clean-up-auto-generated-legacy-serviceaccount-token-clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 299,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:control-plane-details",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 355,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:create-additional-api-tokens-create-token",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 516,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:delete-invalidate-a-serviceaccount-token-delete-token",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 572,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:external-serviceaccount-token-signing-and-key-management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 625,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:clean-up",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 743,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 751,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:additional-metadata-in-pod-bound-tokens",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 76,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:verifying-and-inspecting-private-claims",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 88,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:serviceaccount-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 357,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:token-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 362,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:serviceaccount-admission-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:legacy-serviceaccount-token-tracking-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 414,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:legacy-serviceaccount-token-cleaner",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 423,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:tokenrequest-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:delete-invalidate-a-long-lived-legacy-serviceaccount-token-delete-legacy-token",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 574,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:delete-invalidate-a-short-lived-serviceaccount-token-delete-short-lived",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 614,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:metadata",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 647,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:fetchkeys",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 671,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "concept:sign",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": 381,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 239,
          "line_end": null,
          "quote": "selector"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:what-is-validating-admission-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:what-resources-make-a-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:getting-started-with-validating-admission-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 49,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:api-kinds-exempt-from-admission-validation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 560,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:creating-a-validatingadmissionpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 54,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:parameter-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:failure-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 304,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:validation-expression",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 318,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:matching-requests-matchconditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:audit-annotations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 404,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:message-expression",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 437,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:type-checking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 465,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/validating-admission-policy",
      "to_id": "concept:variable-composition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/validating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/",
          "line_start": 524,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/mutating-admission-policy",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinition",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": 39,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/mutating-admission-policy",
      "to_id": "concept:what-are-mutatingadmissionpolicies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/mutating-admission-policy",
      "to_id": "concept:what-resources-make-a-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": 29,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/mutating-admission-policy",
      "to_id": "concept:getting-started-with-mutatingadmissionpolicies",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": 60,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/mutating-admission-policy",
      "to_id": "concept:api-kinds-exempt-from-mutating-admission",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/mutating-admission-policy",
      "to_id": "concept:create-a-mutatingadmissionpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/mutating-admission-policy.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/mutating-admission-policy/",
          "line_start": 66,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/webhook",
      "to_id": "concept:configuration-file-format",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/webhook.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/webhook/",
          "line_start": 9,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/webhook",
      "to_id": "concept:request-payloads",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/webhook.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/webhook/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-authn-authz",
      "to_id": "concept:overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-authn-authz.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-authn-authz/",
          "line_start": 1,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-authn-authz",
      "to_id": "concept:kubelet-authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-authn-authz.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-authn-authz/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-authn-authz",
      "to_id": "concept:kubelet-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-authn-authz.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-authn-authz/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-authn-authz",
      "to_id": "concept:fine-grained-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-authn-authz.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-authn-authz/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "gloss:etcd",
      "type": "references",
      "label": "etcd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 10,
          "line_end": null,
          "quote": "etcd"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:why-use-manifest-based-admission-control",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:supported-resource-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 47,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:configuring-manifest-based-admission-control-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 69,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:writing-manifest-files-manifest-files",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:examples-examples",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 145,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:evaluation-order",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 191,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:file-watching-and-dynamic-reloading-dynamic-reloading",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 204,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:observability-observability",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 237,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:high-availability-considerations-ha-considerations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 268,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:upgrade-and-downgrade-upgrade-downgrade",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 285,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:troubleshooting-troubleshooting",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 303,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 315,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:admissionconfiguration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 16,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:configuration-types",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 95,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:naming-convention-naming",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:restrictions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 127,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:protecting-api-based-admission-resources-protecting-admission-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 147,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:enforcing-a-validatingadmissionpolicy-from-disk",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 162,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:configuring-a-validatingwebhookconfiguration-from-disk",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 173,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:using-the-list-format",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 185,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/manifest-admission-control",
      "to_id": "concept:audit-annotations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/manifest-admission-control.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/manifest-admission-control/",
          "line_start": 260,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 17,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "gloss:taint",
      "type": "references",
      "label": "taints",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 870,
          "line_end": null,
          "quote": "taints"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:what-are-they",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 14,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:why-do-i-need-them",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:how-do-i-turn-on-an-admission-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 79,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:how-do-i-turn-off-an-admission-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 97,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:which-plugins-are-enabled-by-default",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 105,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:what-does-each-admission-controller-do",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 119,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:is-there-a-recommended-set-of-admission-controllers-to-use",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 900,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:admission-control-extension-points",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 34,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:admission-control-phases",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:alwaysadmit-alwaysadmit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 121,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:alwaysdeny-alwaysdeny",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 130,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:alwayspullimages-alwayspullimages",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:certificateapproval-certificateapproval",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 150,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:certificatesigning-certificatesigning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:certificatesubjectrestriction-certificatesubjectrestriction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 172,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:defaultingressclass-defaultingressclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:defaultstorageclass-defaultstorageclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:defaulttolerationseconds-defaulttolerationseconds",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 218,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:denyserviceexternalips",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 229,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:eventratelimit-eventratelimit",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 246,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:extendedresourcetoleration-extendedresourcetoleration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 296,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:imagepolicywebhook-imagepolicywebhook",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 309,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:limitpodhardantiaffinitytopology-limitpodhardantiaffinitytopology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 481,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:limitranger-limitranger",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 490,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:mutatingadmissionwebhook-mutatingadmissionwebhook",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 505,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:namespaceautoprovision-namespaceautoprovision",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 535,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:namespaceexists-namespaceexists",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 545,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:namespacelifecycle-namespacelifecycle",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 552,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:nodedeclaredfeaturevalidator-nodedeclaredfeaturevalidator",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 565,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:noderestriction-noderestriction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 582,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:ownerreferencespermissionenforcement-ownerreferencespermissionenforcement",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 625,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:persistentvolumeclaimresize-persistentvolumeclaimresize",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 635,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:podnodeselector-podnodeselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 666,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:podsecurity-podsecurity",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 734,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:podtolerationrestriction-podtolerationrestriction",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 750,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:podtopologylabels-podtopologylabels",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 784,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:priority-priority",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 807,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:resourcequota-resourcequota",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 815,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:runtimeclass-runtimeclass",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 827,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:serviceaccount-serviceaccount",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 842,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:storageobjectinuseprotection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 116,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:taintnodesbycondition-taintnodesbycondition",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 866,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:validatingadmissionpolicy-validatingadmissionpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 875,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/admission-controllers",
      "to_id": "concept:validatingadmissionwebhook-validatingadmissionwebhook",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/",
          "line_start": 883,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:api-group",
      "type": "references",
      "label": "API group",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 8,
          "line_end": null,
          "quote": "API group"
        },
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 8,
          "line_end": null,
          "quote": "API Group"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 11,
          "line_end": null,
          "quote": "API server"
        },
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 11,
          "line_end": null,
          "quote": "API server"
        },
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 11,
          "line_end": null,
          "quote": "kube-apiserver"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 34,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 49,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:pod",
      "type": "references",
      "label": "pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 68,
          "line_end": null,
          "quote": "pods"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:node",
      "type": "references",
      "label": "nodes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 77,
          "line_end": null,
          "quote": "nodes"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:secret",
      "type": "references",
      "label": "secrets",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 85,
          "line_end": null,
          "quote": "secrets"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selector",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 250,
          "line_end": null,
          "quote": "selector"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinitions",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 307,
          "line_end": null,
          "quote": "CustomResourceDefinitions"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:service-account",
      "type": "references",
      "label": "ServiceAccounts",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 433,
          "line_end": null,
          "quote": "ServiceAccounts"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:kube-scheduler",
      "type": "references",
      "label": "scheduler",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 704,
          "line_end": null,
          "quote": "scheduler"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:kube-controller-manager",
      "type": "references",
      "label": "controller manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 714,
          "line_end": null,
          "quote": "controller manager"
        },
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 714,
          "line_end": null,
          "quote": "controller manager"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:kube-proxy",
      "type": "references",
      "label": "kube-proxy",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 730,
          "line_end": null,
          "quote": "kube-proxy"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 800,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:api-objects-api-overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 30,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:default-roles-and-role-bindings",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 541,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:privilege-escalation-prevention-and-bootstrapping",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 837,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:command-line-utilities",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 911,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:serviceaccount-permissions-service-account-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 1063,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:write-access-for-endpointslices-write-access-for-endpoints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 1166,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:upgrading-from-abac",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 1184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:role-and-clusterrole",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:rolebinding-and-clusterrolebinding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 93,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:referring-to-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 157,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:aggregated-clusterroles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 245,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:referring-to-subjects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 429,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:auto-reconciliation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 554,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:api-discovery-roles-discovery-roles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 567,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:user-facing-roles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 615,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:core-component-roles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 689,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:other-component-roles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 735,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:roles-for-built-in-controllers-controller-roles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 797,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:restrictions-on-role-creation-or-update",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 842,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:restrictions-on-role-binding-creation-or-update",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 862,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:kubectl-create-role",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 913,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:kubectl-create-clusterrole",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 947,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:kubectl-create-rolebinding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 987,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:kubectl-create-clusterrolebinding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 1009,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:kubectl-auth-reconcile-kubectl-auth-reconcile",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 1031,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:parallel-authorizers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 1197,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/rbac",
      "to_id": "concept:permissive-rbac-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/rbac.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/rbac/",
          "line_start": 1219,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "gloss:certificate",
      "type": "references",
      "label": "certificates",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 6,
          "line_end": null,
          "quote": "certificates"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controller",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 37,
          "line_end": null,
          "quote": "controller"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "gloss:kube-controller-manager",
      "type": "references",
      "label": "kube-controller-manager",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 142,
          "line_end": null,
          "quote": "kube-controller-manager"
        },
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 142,
          "line_end": null,
          "quote": "kube-controller-manager"
        },
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 142,
          "line_end": null,
          "quote": "kube-controller-manager"
        },
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 142,
          "line_end": null,
          "quote": "kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "gloss:san",
      "type": "references",
      "label": "SANs",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 199,
          "line_end": null,
          "quote": "SANs"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "gloss:operator-pattern",
      "type": "references",
      "label": "operator",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 284,
          "line_end": null,
          "quote": "operator"
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:certificate-signing-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:signers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 92,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:signing",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:approval-or-rejection-approval-rejection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 249,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:api-based-signers-signer-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 325,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:podcertificaterequests-pod-certificate-requests",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 379,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:cluster-trust-bundles-cluster-trust-bundles",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 486,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 599,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:request-signing-process",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 23,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:certificate-signing-authorization-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 63,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:kubernetes-signers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:custom-signers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:control-plane-signer-signer-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 234,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:control-plane-automated-approval-approval-rejection-control-plane",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 254,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:approval-or-rejection-using-kubectl-approval-rejection-kubectl",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 262,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:approval-or-rejection-using-the-kubernetes-api-approval-rejection-api-client",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 280,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:common-properties-and-validation-ctb-common",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 505,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:signer-linked-clustertrustbundles-ctb-signer-linked",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 533,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:signer-unlinked-clustertrustbundles-ctb-signer-unlinked",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 567,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/certificate-signing-requests",
      "to_id": "concept:accessing-clustertrustbundles-from-pods-ctb-projection",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/certificate-signing-requests.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/",
          "line_start": 592,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:what-are-admission-webhooks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 8,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:experimenting-with-admission-webhooks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 24,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:webhook-request-and-response",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:webhook-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 466,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:monitoring-admission-webhooks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 999,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:best-practices-and-warnings",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 1161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:prerequisites",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:write-an-admission-webhook-server",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 41,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:deploy-the-admission-webhook-service",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 59,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:configure-admission-webhooks-on-the-fly",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 70,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:authenticate-api-servers-authenticate-apiservers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 131,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 218,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:response",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 353,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:matching-requests-rules",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 487,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:matching-requests-objectselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 562,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:matching-requests-namespaceselector",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 597,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:matching-requests-matchpolicy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 652,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:matching-requests-matchconditions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 704,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:contacting-the-webhook",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 796,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:side-effects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 869,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:timeouts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 902,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:reinvocation-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 925,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:failure-policy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 966,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:mutating-webhook-auditing-annotations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 1010,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/extensible-admission-controllers",
      "to_id": "concept:admission-webhook-metrics",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/extensible-admission-controllers.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/",
          "line_start": 1122,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/psp-to-pod-security-standards",
      "to_id": "concept:podsecuritypolicy-spec",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/psp-to-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/psp-to-pod-security-standards/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/psp-to-pod-security-standards",
      "to_id": "concept:podsecuritypolicy-annotations",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/psp-to-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/psp-to-pod-security-standards/",
          "line_start": 224,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:initialization-process",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 74,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:certificate-authority",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:kube-apiserver-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 98,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:kube-controller-manager-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 223,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:kubelet-configuration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 329,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:other-authenticating-components",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 460,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:kubectl-approval",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 476,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:bootstrap-initialization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 50,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:recognizing-client-certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 106,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:initial-bootstrap-authentication",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 114,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:authorize-kubelet-to-create-csr",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 196,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:access-to-key-and-certificate",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 239,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:approval",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 267,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:client-and-serving-certificates",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 398,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/kubelet-tls-bootstrapping",
      "to_id": "concept:certificate-rotation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/kubelet-tls-bootstrapping.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/",
          "line_start": 415,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 34,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "gloss:name",
      "type": "references",
      "label": "name",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 47,
          "line_end": null,
          "quote": "name"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "gloss:namespace",
      "type": "references",
      "label": "namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 51,
          "line_end": null,
          "quote": "namespace"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinitions",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 338,
          "line_end": null,
          "quote": "CustomResourceDefinitions"
        },
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 338,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        },
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 338,
          "line_end": null,
          "quote": "CustomResourceDefinitions"
        },
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 338,
          "line_end": null,
          "quote": "CRDs"
        },
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 338,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "gloss:aggregation-layer",
      "type": "references",
      "label": "aggregation layer",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 340,
          "line_end": null,
          "quote": "aggregation layer"
        },
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 340,
          "line_end": null,
          "quote": "aggregation layer"
        },
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 340,
          "line_end": null,
          "quote": "aggregation layer"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "gloss:selector",
      "type": "references",
      "label": "selectors",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 819,
          "line_end": null,
          "quote": "selectors"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "gloss:admission-controller",
      "type": "references",
      "label": "admission controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1302,
          "line_end": null,
          "quote": "admission controllers"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "gloss:rbac",
      "type": "references",
      "label": "RBAC",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1355,
          "line_end": null,
          "quote": "RBAC"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "gloss:watch",
      "type": "defines",
      "label": "",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:kubernetes-api-terminology-standard-api-terminology",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:resource-uris",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 81,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:http-media-types-alternate-representations-of-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 128,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:efficient-detection-of-changes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 75,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:streaming-lists",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 488,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:sharded-list-and-watch-sharded-list-and-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 544,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:response-compression",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 681,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:retrieving-large-results-sets-in-chunks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 711,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:collections",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 827,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:table-fetches",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 917,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:metadata-only-fetches",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1011,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:resource-deletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1098,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:single-resource-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1175,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:field-validation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1188,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:dry-run",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1276,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:updates-to-existing-resources-patch-and-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1367,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:resource-versions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1504,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:object-names",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 44,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:api-verbs",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:json-resource-encoding-json-encoding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 154,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:yaml-resource-encoding-yaml-encoding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 197,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:kubernetes-protobuf-encoding-protobuf-encoding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 242,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:cbor-resource-encoding-cbor-encoding",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 350,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:watch-bookmarks-watch-bookmarks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 457,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:example-example-streaming-lists",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 514,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:the-shardselector-field",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 562,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:using-sharded-list-and-watch-in-controllers-sharded-list-and-watch-controllers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 593,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:shard-information-in-responses",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 643,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:detecting-server-support",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 670,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:force-deletion",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1135,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:validation-for-unrecognized-or-duplicate-fields-setting-the-field-validation-level",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1212,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:make-a-dry-run-request",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1287,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:generated-values",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1333,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:dry-run-authorization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1348,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:choosing-an-update-mechanism-update-mechanism-choose",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1441,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:resourceversion-fields-in-metadata-resourceversion-in-metadata",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1557,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:resourceversion-parameters-in-query-strings-the-resourceversion-parameter",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1569,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:semantics-for-get-and-list",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1579,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:semantics-for-watch",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1699,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:410-gone-responses",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1748,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/api-concepts",
      "to_id": "concept:unavailable-resource-versions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/api-concepts.md",
          "url": "https://kubernetes.io/docs/reference/using-api/api-concepts/",
          "line_start": 1760,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:deprecating-parts-of-the-api",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 11,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:deprecating-a-flag-or-cli",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 317,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:deprecating-a-feature-or-behavior",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 356,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:deprecating-a-metric",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 442,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:exceptions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 483,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:rest-resources-aka-api-objects",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 31,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:fields-of-rest-resources",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 32,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:enumerated-or-constant-values",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:component-config-structures",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:future-work",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 312,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-policy",
      "to_id": "concept:deprecation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-policy.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-policy/",
          "line_start": 386,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:removed-apis-by-release",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 10,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:what-to-do",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 366,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:v1-32",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 12,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:v1-29",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 20,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:v1-27",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 40,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:v1-26",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 33,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:v1-25",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 72,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:v1-22",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 155,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:v1-16",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 164,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:test-with-deprecated-apis-disabled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 368,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:locate-use-of-deprecated-apis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 379,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/deprecation-guide",
      "to_id": "concept:migrate-to-non-deprecated-apis",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/deprecation-guide.md",
          "url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
          "line_start": 384,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/client-libraries",
      "to_id": "concept:officially-supported-kubernetes-client-libraries",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/client-libraries.md",
          "url": "https://kubernetes.io/docs/reference/using-api/client-libraries/",
          "line_start": 17,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/client-libraries",
      "to_id": "concept:community-maintained-client-libraries",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/client-libraries.md",
          "url": "https://kubernetes.io/docs/reference/using-api/client-libraries/",
          "line_start": 35,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "gloss:controller",
      "type": "references",
      "label": "controllers",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 12,
          "line_end": null,
          "quote": "controllers"
        },
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 12,
          "line_end": null,
          "quote": "controllers"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "gloss:object",
      "type": "references",
      "label": "objects",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 14,
          "line_end": null,
          "quote": "objects"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "gloss:CustomResourceDefinition",
      "type": "references",
      "label": "CustomResourceDefinition",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 285,
          "line_end": null,
          "quote": "CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "gloss:rbac",
      "type": "references",
      "label": "RBAC",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 570,
          "line_end": null,
          "quote": "RBAC"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:field-management",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 28,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:serialization",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 178,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:operations-in-scope-for-field-management-apply-and-update",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 208,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:merge-strategy",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 266,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:custom-resources-and-server-side-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 304,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:using-server-side-apply-in-a-controller",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 367,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:transferring-ownership",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 382,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:comparison-with-client-side-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 22,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:migration-between-client-side-and-server-side-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 505,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:api-implementation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 556,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:clearing-managedfields",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 574,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 623,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:example-ssa-example-configmap",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:conflicts",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:field-managers-managers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 165,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:compatibility-across-topology-changes",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 316,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:transferring-ownership-between-managers",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 468,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:upgrading-from-client-side-apply-to-server-side-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 507,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:downgrading-from-server-side-apply-to-client-side-apply",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 538,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/server-side-apply",
      "to_id": "concept:access-control-and-permissions-rbac-and-permissions",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/server-side-apply.md",
          "url": "https://kubernetes.io/docs/reference/using-api/server-side-apply/",
          "line_start": 567,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 8,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:language-overview",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 15,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:cel-options-language-features-and-libraries",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 101,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:kubernetes-cel-libraries",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 288,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:type-checking",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 1098,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:type-system-integration",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 1137,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:escaping",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 1255,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:resource-constraints",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 1332,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:kubernetes-list-library",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 171,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:kubernetes-regex-library",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 180,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:kubernetes-url-library",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 189,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:kubernetes-ip-address-library",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 198,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:kubernetes-cidr-library",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 207,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:kubernetes-authorizer-library",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 217,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:kubernetes-format-library",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 244,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:kubernetes-quantity-library",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 226,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:kubernetes-semver-library",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 235,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:runtime-cost-budget",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 1357,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/cel",
      "to_id": "concept:estimated-cost-limits",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/cel.md",
          "url": "https://kubernetes.io/docs/reference/using-api/cel/",
          "line_start": 1374,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/health-checks",
      "to_id": "gloss:kube-apiserver",
      "type": "references",
      "label": "API server",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/health-checks.md",
          "url": "https://kubernetes.io/docs/reference/using-api/health-checks/",
          "line_start": 2,
          "line_end": null,
          "quote": "API server"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/health-checks",
      "to_id": "concept:api-endpoints-for-health",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/health-checks.md",
          "url": "https://kubernetes.io/docs/reference/using-api/health-checks/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/health-checks",
      "to_id": "concept:individual-health-checks",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/health-checks.md",
          "url": "https://kubernetes.io/docs/reference/using-api/health-checks/",
          "line_start": 90,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/_index",
      "to_id": "gloss:etcd",
      "type": "references",
      "label": "etcd",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/using-api/_index/",
          "line_start": 111,
          "line_end": null,
          "quote": "etcd"
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/_index",
      "to_id": "concept:api-versioning",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/using-api/_index/",
          "line_start": 21,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/_index",
      "to_id": "concept:api-groups",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/using-api/_index/",
          "line_start": 74,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/_index",
      "to_id": "concept:enabling-or-disabling-api-groups-enabling-or-disabling",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/using-api/_index/",
          "line_start": 91,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/_index",
      "to_id": "concept:persistence",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/using-api/_index/",
          "line_start": 108,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/_index",
      "to_id": "concept:heading-whatsnext",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/_index.md",
          "url": "https://kubernetes.io/docs/reference/using-api/_index/",
          "line_start": 113,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:disabling-declarativevalidationbeta-opt-out",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 26,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:considerations-for-downgrade-and-rollback",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 36,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:declarative-validation-tag-reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 42,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:tag-reference",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 78,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:tag-catalog-catalog",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-alpha-tag-alpha",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 80,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-beta-tag-beta",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 111,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-eachkey-tag-eachkey",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 138,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-eachval-tag-eachval",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 161,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-enum-tag-enum",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 184,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-forbidden-tag-forbidden",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 216,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-format-tag-format",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 235,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-ifdisabled-tag-ifdisabled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 269,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-ifenabled-tag-ifenabled",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 296,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-issubresource-tag-issubresource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 323,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-item-tag-item",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 381,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-listmapkey-tag-listmapkey",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 422,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-listtype-tag-listtype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 451,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-maxitems-tag-maxitems",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 480,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-maxlength-tag-maxlength",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 503,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-minimum-tag-minimum",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 526,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-neq-tag-neq",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 549,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-opaquetype-tag-opaquetype",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 581,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-optional-tag-optional",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 602,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-required-tag-required",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 621,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-subfield-tag-subfield",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 640,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-supportssubresource-tag-supportssubresource",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 671,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-uniondiscriminator-tag-uniondiscriminator",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 704,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-unionmember-tag-unionmember",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 748,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "concept:k8s-zerooroneofmember-tag-zerooroneofmember",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": 782,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:doc-contributor-tools/linkchecker/README",
      "to_id": "concept:how-the-tool-works",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": 7,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:doc-contributor-tools/linkchecker/README",
      "to_id": "concept:what-it-does-and-doesn-t-check",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": 19,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:doc-contributor-tools/linkchecker/README",
      "to_id": "concept:prerequisites-and-installation",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": 46,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:doc-contributor-tools/linkchecker/README",
      "to_id": "concept:running-the-link-checker",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": 53,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:doc-contributor-tools/linkchecker/README",
      "to_id": "concept:understanding-the-output",
      "type": "part_of",
      "label": "describes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "doc-contributor-tools/linkchecker/README.md",
          "url": "https://kubernetes.io/docs/doc-contributor-tools/linkchecker/README/",
          "line_start": 65,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/endpoints",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/endpoints"
        }
      ]
    },
    {
      "from_id": "apipath:delete /api/v1/namespaces/{namespace}/endpoints",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/namespaces/{namespace}/endpoints",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints"
        }
      ]
    },
    {
      "from_id": "apipath:post /api/v1/namespaces/{namespace}/endpoints",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints"
        }
      ]
    },
    {
      "from_id": "apipath:delete /api/v1/namespaces/{namespace}/endpoints/{name}",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints/{name}"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/namespaces/{namespace}/endpoints/{name}",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints/{name}"
        }
      ]
    },
    {
      "from_id": "apipath:patch /api/v1/namespaces/{namespace}/endpoints/{name}",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints/{name}"
        }
      ]
    },
    {
      "from_id": "apipath:put /api/v1/namespaces/{namespace}/endpoints/{name}",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/endpoints/{name}"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:post /api/v1/namespaces/{namespace}/pods/{name}/binding",
      "to_id": "api:Binding",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/binding"
        }
      ]
    },
    {
      "from_id": "apipath:post /api/v1/namespaces/{namespace}/pods/{name}/eviction",
      "to_id": "api:Eviction",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/eviction"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/namespaces/{namespace}/pods/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /api/v1/namespaces/{namespace}/pods/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /api/v1/namespaces/{namespace}/pods/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/pods/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:patch /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:put /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /api/v1/namespaces/{namespace}/resourcequotas/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/resourcequotas/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/namespaces/{namespace}/services/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /api/v1/namespaces/{namespace}/services/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /api/v1/namespaces/{namespace}/services/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{namespace}/services/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/namespaces/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /api/v1/namespaces/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /api/v1/namespaces/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/namespaces/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/nodes/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /api/v1/nodes/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /api/v1/nodes/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/nodes/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/persistentvolumes/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /api/v1/persistentvolumes/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /api/v1/persistentvolumes/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/persistentvolumes/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/watch/endpoints",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/endpoints"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/watch/namespaces/{namespace}/endpoints",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/endpoints"
        }
      ]
    },
    {
      "from_id": "apipath:get /api/v1/watch/namespaces/{namespace}/endpoints/{name}",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/api/v1/watch/namespaces/{namespace}/endpoints/{name}"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/apiregistration.k8s.io/v1/apiservices/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apiregistration.k8s.io/v1/apiservices/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale",
      "to_id": "api:Scale",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/certificates.k8s.io/v1beta1/namespaces/{namespace}/podcertificaterequests/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/internal.apiserver.k8s.io/v1alpha1/storageversions/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/networking.k8s.io/v1/servicecidrs/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/networking.k8s.io/v1/servicecidrs/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/networking.k8s.io/v1/servicecidrs/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/networking.k8s.io/v1/servicecidrs/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/node.k8s.io/",
      "to_id": "api:Node",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/node.k8s.io/"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/resource.k8s.io/v1/devicetaintrules/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/devicetaintrules/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/devicetaintrules/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta1/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/devicetaintrules/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/resource.k8s.io/v1beta2/namespaces/{namespace}/resourceclaims/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/scheduling.k8s.io/",
      "to_id": "api:Scheduling",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/compositepodgroups/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/scheduling.k8s.io/v1alpha3/namespaces/{namespace}/podgroups/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/storage.k8s.io/v1/volumeattachments/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/storage.k8s.io/v1/volumeattachments/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/storage.k8s.io/v1/volumeattachments/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storage.k8s.io/v1/volumeattachments/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1/storageversionmigrations/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:get /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:patch /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status"
        }
      ]
    },
    {
      "from_id": "apipath:put /apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status",
      "to_id": "api:Status",
      "type": "related_to",
      "label": "exposes API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "/apis/storagemigration.k8s.io/v1beta1/storageversionmigrations/{name}/status"
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-stateful-set",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/delete-stateful-set",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/delete-stateful-set.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/horizontal-pod-autoscale-walkthrough",
      "to_id": "api:HorizontalPodAutoscaler",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/horizontal-pod-autoscale-walkthrough.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/update-deployment-rolling",
      "to_id": "api:Deployment",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/update-deployment-rolling.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/update-deployment-rolling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/scale-deployment",
      "to_id": "api:Deployment",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/scale-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/scale-deployment/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/run-stateless-application-deployment",
      "to_id": "api:Deployment",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/run-stateless-application-deployment.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/force-delete-stateful-set-pod",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/force-delete-stateful-set-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/run-application/access-api-from-pod",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/run-application/access-api-from-pod.md",
          "url": "https://kubernetes.io/docs/tasks/run-application/access-api-from-pod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-kubernetes-objects/update-api-object-kubectl-patch",
      "to_id": "api:Patch",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-kubernetes-objects/update-api-object-kubectl-patch.md",
          "url": "https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/extend-service-ip-ranges",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/extend-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/extend-service-ip-ranges/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/customize-hosts-file-for-pods",
      "to_id": "api:HostAlias",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/customize-hosts-file-for-pods.md",
          "url": "https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/network/reconfigure-default-service-ip-ranges",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/network/reconfigure-default-service-ip-ranges.md",
          "url": "https://kubernetes.io/docs/tasks/network/reconfigure-default-service-ip-ranges/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/user-namespaces",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/user-namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/user-namespaces/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/quality-service-pod",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/quality-service-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-projected-volume-storage",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-projected-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-projected-volume-storage/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-service-account",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-service-account.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-gmsa",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-gmsa.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-gmsa/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-volume-storage",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-volume-storage.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/migrate-from-psp",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/migrate-from-psp.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/migrate-from-psp/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-memory-resource",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-memory-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/attach-handler-lifecycle-event",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/attach-handler-lifecycle-event.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/image-volumes",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/image-volumes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/image-volumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/create-hostprocess-pod",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/create-hostprocess-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/create-hostprocess-pod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-configmap",
      "to_id": "api:ConfigMap",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-configmap.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-container-resources",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-container-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes-using-node-affinity",
      "to_id": "api:Affinity",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes-using-node-affinity.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-cpu-resource",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-cpu-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-liveness-readiness-startup-probes",
      "to_id": "api:Probe",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-liveness-readiness-startup-probes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/enforce-standards-namespace-labels",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-namespace-labels.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-pod-initialization",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-pod-initialization.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/extended-resource",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/extended-resource.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/extended-resource/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/static-pod",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/static-pod.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/enforce-standards-admission-controller",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/enforce-standards-admission-controller.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-admission-controller/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/security-context",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/security-context.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pods-nodes",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pods-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/resize-pod-resources",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/resize-pod-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/resize-pod-resources/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/configure-runasusername",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/configure-runasusername.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/configure-runasusername/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/share-process-namespace",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/share-process-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/_index",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/_index.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-pod-level-resources",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-pod-level-resources.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-pod-level-resources/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/access-dra-device-metadata",
      "to_id": "api:Device",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/access-dra-device-metadata.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/access-dra-device-metadata/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/allocate-devices-dra",
      "to_id": "api:Device",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/allocate-devices-dra.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/allocate-devices-dra/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configure-pod-container/assign-resources/_index",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configure-pod-container/assign-resources/_index.md",
          "url": "https://kubernetes.io/docs/tasks/configure-pod-container/assign-resources/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-access-mode-readwriteoncepod",
      "to_id": "api:PersistentVolume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-access-mode-readwriteoncepod.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-access-mode-readwriteoncepod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/safely-drain-node",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/safely-drain-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/node-overprovisioning",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/node-overprovisioning.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/node-overprovisioning/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-horizontal-autoscaling",
      "to_id": "api:Scale",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-horizontal-autoscaling.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-horizontal-autoscaling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/extended-resource-node",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/extended-resource-node.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/extended-resource-node/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/coredns",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/coredns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/coredns/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/namespaces",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/namespaces.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/namespaces/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/nodelocaldns",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/nodelocaldns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubelet-in-userns",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubelet-in-userns.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubelet-in-userns/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/dns-custom-nameservers",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/dns-custom-nameservers.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/memory-manager",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/memory-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/switch-to-evented-pleg",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/switch-to-evented-pleg.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/switch-to-evented-pleg/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/topology-manager",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/topology-manager.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-default-storage-class",
      "to_id": "api:StorageClass",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-default-storage-class.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/sysctl-cluster",
      "to_id": "api:Sysctl",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/sysctl-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/change-pv-reclaim-policy",
      "to_id": "api:PersistentVolume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/change-pv-reclaim-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/cpu-management-policies",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/cpu-management-policies.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-constraint-namespace",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-default-namespace",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/quota-pod-namespace",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/quota-pod-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-pod-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/cpu-constraint-namespace",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/cpu-constraint-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/manage-resources/memory-default-namespace",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/manage-resources/memory-default-namespace.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/romana-network-policy",
      "to_id": "api:NetworkPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/romana-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/calico-network-policy",
      "to_id": "api:NetworkPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/calico-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/kube-router-network-policy",
      "to_id": "api:NetworkPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/kube-router-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/kube-router-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/weave-network-policy",
      "to_id": "api:NetworkPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/weave-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/cilium-network-policy",
      "to_id": "api:NetworkPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/cilium-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/network-policy-provider/antrea-network-policy",
      "to_id": "api:NetworkPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/network-policy-provider/antrea-network-policy.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/antrea-network-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-linux-nodes",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-linux-nodes",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-linux-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-linux-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/adding-windows-nodes",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/adding-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/administer-cluster/kubeadm/upgrading-windows-nodes",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/administer-cluster/kubeadm/upgrading-windows-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/service-access-application-cluster",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/service-access-application-cluster.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/list-all-running-container-images",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/list-all-running-container-images.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/list-all-running-container-images/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/connecting-frontend-backend",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/connecting-frontend-backend.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/connecting-frontend-backend/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/access-cluster-services",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/access-cluster-services.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster-services/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/access-application-cluster/communicate-containers-same-pod-shared-volume",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/access-application-cluster/communicate-containers-same-pod-shared-volume.md",
          "url": "https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/tls/certificate-issue-client-csr",
      "to_id": "api:CertificateSigningRequest",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/tls/certificate-issue-client-csr.md",
          "url": "https://kubernetes.io/docs/tasks/tls/certificate-issue-client-csr/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/setup-konnectivity",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/setup-konnectivity.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/setup-konnectivity/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning",
      "to_id": "api:CustomResourceDefinition",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/extend-kubernetes/custom-resources/custom-resource-definitions",
      "to_id": "api:CustomResourceDefinition",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/extend-kubernetes/custom-resources/custom-resource-definitions.md",
          "url": "https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/automated-tasks-with-cron-jobs",
      "to_id": "api:CronJob",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/automated-tasks-with-cron-jobs.md",
          "url": "https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/pod-failure-policy",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/pod-failure-policy.md",
          "url": "https://kubernetes.io/docs/tasks/job/pod-failure-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/indexed-parallel-processing-static",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/indexed-parallel-processing-static.md",
          "url": "https://kubernetes.io/docs/tasks/job/indexed-parallel-processing-static/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/job-with-pod-to-pod-communication",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/job-with-pod-to-pod-communication.md",
          "url": "https://kubernetes.io/docs/tasks/job/job-with-pod-to-pod-communication/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/job/_index",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/job/_index.md",
          "url": "https://kubernetes.io/docs/tasks/job/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kustomize",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kustomize.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kustomize/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-config-file",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-config-file.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-config-file/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/managing-secret-using-kubectl",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/managing-secret-using-kubectl.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/configmap-secret/_index",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/configmap-secret/_index.md",
          "url": "https://kubernetes.io/docs/tasks/configmap-secret/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-command-argument-container",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-command-argument-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/distribute-credentials-secure",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/distribute-credentials-secure.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-container",
      "to_id": "api:Variable",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-container.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/downward-api-volume-expose-pod-information",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/downward-api-volume-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-interdependent-environment-variables",
      "to_id": "api:Variable",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-interdependent-environment-variables.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-interdependent-environment-variables/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/define-environment-variable-via-file",
      "to_id": "api:Variable",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/define-environment-variable-via-file.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-via-file/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/inject-data-application/environment-variable-expose-pod-information",
      "to_id": "api:Variable",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/inject-data-application/environment-variable-expose-pod-information.md",
          "url": "https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/create-daemon-set",
      "to_id": "api:DaemonSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/create-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/create-daemon-set/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/pods-some-nodes",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/pods-some-nodes.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/update-daemon-set",
      "to_id": "api:DaemonSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/update-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/manage-daemon/rollback-daemon-set",
      "to_id": "api:DaemonSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/manage-daemon/rollback-daemon-set.md",
          "url": "https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-running-pod",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-running-pod.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/get-shell-running-container",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/get-shell-running-container.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/get-shell-running-container/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-pods",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-pods.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-pods/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-statefulset",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-statefulset.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-statefulset/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-init-containers",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-init-containers.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-init-containers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/determine-reason-pod-failure",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/determine-reason-pod-failure.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/determine-reason-pod-failure/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-application/debug-service",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-application/debug-service.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-application/debug-service/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/crictl",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/crictl.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/monitor-node-health",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/monitor-node-health.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/monitor-node-health/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/local-debugging",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/local-debugging.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/local-debugging/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tasks/debug/debug-cluster/kubectl-node-debug",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tasks/debug/debug-cluster/kubectl-node-debug.md",
          "url": "https://kubernetes.io/docs/tasks/debug/debug-cluster/kubectl-node-debug/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/container-runtimes",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/container-runtimes.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/container-runtimes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/production-environment/tools/_index",
      "to_id": "api:Deployment",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/production-environment/tools/_index.md",
          "url": "https://kubernetes.io/docs/setup/production-environment/tools/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/enforcing-pod-security-standards",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/enforcing-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/enforcing-pod-security-standards/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:setup/best-practices/node-conformance",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "setup/best-practices/node-conformance.md",
          "url": "https://kubernetes.io/docs/setup/best-practices/node-conformance/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/configmap",
      "to_id": "api:ConfigMap",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/configmap.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/configmap/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/secret",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/secret.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/secret/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/manage-resources-containers",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/manage-resources-containers.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/configuration/windows-resource-management",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/configuration/windows-resource-management.md",
          "url": "https://kubernetes.io/docs/concepts/configuration/windows-resource-management/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-kernel-security-constraints",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-kernel-security-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-kernel-security-constraints/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/rbac-good-practices",
      "to_id": "api:Role",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/rbac-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/rbac-good-practices/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/service-accounts",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/service-accounts.md",
          "url": "https://kubernetes.io/docs/concepts/security/service-accounts/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/secrets-good-practices",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/secrets-good-practices.md",
          "url": "https://kubernetes.io/docs/concepts/security/secrets-good-practices/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-admission",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-admission.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-admission/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-standards",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-standards.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-standards/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/pod-security-policy",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/pod-security-policy.md",
          "url": "https://kubernetes.io/docs/concepts/security/pod-security-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/linux-security",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/linux-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/linux-security/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/security/windows-security",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/security/windows-security.md",
          "url": "https://kubernetes.io/docs/concepts/security/windows-security/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-declared-features",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-declared-features.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-declared-features/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/assign-pod-node",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/assign-pod-node.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/scheduling-framework",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/scheduling-framework.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-scheduling-readiness",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-scheduling-readiness.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-scheduling-readiness/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/node-pressure-eviction",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/node-pressure-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-priority-preemption",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-priority-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-aware-scheduling",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-aware-scheduling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/gang-scheduling",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/gang-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/gang-scheduling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/pod-overhead",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/pod-overhead.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/pod-overhead/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/workload-aware-preemption",
      "to_id": "api:Workload",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/workload-aware-preemption.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/workload-aware-preemption/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/podgroup-scheduling",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/podgroup-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/podgroup-scheduling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/api-eviction",
      "to_id": "api:Eviction",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/api-eviction.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/taint-and-toleration",
      "to_id": "api:Taint",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/taint-and-toleration.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/topology-spread-constraints",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/topology-spread-constraints.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/scheduling-eviction/_index",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/scheduling-eviction/_index.md",
          "url": "https://kubernetes.io/docs/concepts/scheduling-eviction/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/ephemeral-volumes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/ephemeral-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-populators-and-data-sources",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-populators-and-data-sources.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-populators-and-data-sources/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/projected-volumes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/projected-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/projected-volumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshots",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshots.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshots/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-pvc-datasource",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-pvc-datasource.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-snapshot-classes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-snapshot-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-snapshot-classes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/persistent-volumes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/persistent-volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/persistent-volumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/storage-limits",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/storage-limits.md",
          "url": "https://kubernetes.io/docs/concepts/storage/storage-limits/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volumes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volumes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/dynamic-provisioning",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/dynamic-provisioning.md",
          "url": "https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-attributes-classes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-attributes-classes.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/storage/volume-health-monitoring",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/storage/volume-health-monitoring.md",
          "url": "https://kubernetes.io/docs/concepts/storage/volume-health-monitoring/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/endpoint-slices",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/endpoint-slices.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service-traffic-policy",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service-traffic-policy.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service-traffic-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress-controllers",
      "to_id": "api:Ingress",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress-controllers.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/cluster-ip-allocation",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/cluster-ip-allocation.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/cluster-ip-allocation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/service",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/service/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/ingress",
      "to_id": "api:Ingress",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/ingress.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/ingress/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/_index",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/_index.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/services-networking/dns-pod-service",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/services-networking/dns-pod-service.md",
          "url": "https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/management",
      "to_id": "api:Workload",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/management.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/management/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling",
      "to_id": "api:Workload",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/_index",
      "to_id": "api:Workload",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/policies",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/policies.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/policies/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/topology-aware-scheduling",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/topology-aware-scheduling.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/topology-aware-scheduling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/disruption-and-priority",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/disruption-and-priority.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/disruption-and-priority/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/workload-api/_index",
      "to_id": "api:Workload",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/workload-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/workload-api/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/lifecycle",
      "to_id": "api:Lifecycle",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/lifecycle/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/podgroup-api/_index",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/podgroup-api/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/podgroup-api/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/user-namespaces",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/user-namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/sidecar-containers",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/sidecar-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-condition",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-condition.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-condition/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/static-pods",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/static-pods.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/static-pods/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-lifecycle",
      "to_id": "api:Lifecycle",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-lifecycle.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/probes",
      "to_id": "api:Probe",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/probes.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/probes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/scheduling-group",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/scheduling-group.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/scheduling-group/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/advanced-pod-config",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/advanced-pod-config.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/advanced-pod-config/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-hostname",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-hostname.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-hostname/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/pod-qos",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/pod-qos.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/pod-qos/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/init-containers",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/init-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/init-containers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/ephemeral-containers",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/ephemeral-containers.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/pods/_index",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/pods/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/pods/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/horizontal-pod-autoscale",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/horizontal-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/horizontal-pod-autoscale/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/autoscaling/vertical-pod-autoscale",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/autoscaling/vertical-pod-autoscale.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/autoscaling/vertical-pod-autoscale/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/ttlafterfinished",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/ttlafterfinished.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/cron-jobs",
      "to_id": "api:CronJob",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/cron-jobs.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/daemonset",
      "to_id": "api:DaemonSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/daemonset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/deployment",
      "to_id": "api:Deployment",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/deployment.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/deployment/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/statefulset",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/statefulset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicaset",
      "to_id": "api:ReplicaSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicaset.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/job",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/job.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/job/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/_index",
      "to_id": "api:Workload",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/workloads/controllers/replicationcontroller",
      "to_id": "api:ReplicationController",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/workloads/controllers/replicationcontroller.md",
          "url": "https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/control-plane-node-communication",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/control-plane-node-communication.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/nodes",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/nodes.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/nodes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/architecture/leases",
      "to_id": "api:Lease",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/architecture/leases.md",
          "url": "https://kubernetes.io/docs/concepts/architecture/leases/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/extend-kubernetes/compute-storage-net/device-plugins",
      "to_id": "api:Device",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/extend-kubernetes/compute-storage-net/device-plugins.md",
          "url": "https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/runtime-class",
      "to_id": "api:Time",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/runtime-class.md",
          "url": "https://kubernetes.io/docs/concepts/containers/runtime-class/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-environment",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-environment.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-environment/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/container-lifecycle-hooks",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/container-lifecycle-hooks.md",
          "url": "https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/_index",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/_index.md",
          "url": "https://kubernetes.io/docs/concepts/containers/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/containers/cri",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/containers/cri.md",
          "url": "https://kubernetes.io/docs/concepts/containers/cri/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/intro",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/intro.md",
          "url": "https://kubernetes.io/docs/concepts/windows/intro/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/windows/user-guide",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/windows/user-guide.md",
          "url": "https://kubernetes.io/docs/concepts/windows/user-guide/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/overview/working-with-objects/namespaces",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/overview/working-with-objects/namespaces.md",
          "url": "https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-autoscaling",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-autoscaling.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-autoscaling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:concepts/cluster-administration/node-shutdown",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "concepts/cluster-administration/node-shutdown.md",
          "url": "https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/pod-sidecar-containers",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/pod-sidecar-containers.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/pod-sidecar-containers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-persistent-volume-storage",
      "to_id": "api:PersistentVolume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-persistent-volume-storage.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-persistent-volume-storage/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/updating-configuration-via-a-configmap",
      "to_id": "api:ConfigMap",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/updating-configuration-via-a-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/updating-configuration-via-a-configmap/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/configuration/configure-redis-using-configmap",
      "to_id": "api:ConfigMap",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/configuration/configure-redis-using-configmap.md",
          "url": "https://kubernetes.io/docs/tutorials/configuration/configure-redis-using-configmap/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/apparmor",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/apparmor.md",
          "url": "https://kubernetes.io/docs/tutorials/security/apparmor/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/cluster-level-pss",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/cluster-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/cluster-level-pss/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/seccomp",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/seccomp.md",
          "url": "https://kubernetes.io/docs/tutorials/security/seccomp/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/security/ns-level-pss",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/security/ns-level-pss.md",
          "url": "https://kubernetes.io/docs/tutorials/security/ns-level-pss/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/provision-swap-memory",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/provision-swap-memory.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/namespaces-walkthrough",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/namespaces-walkthrough.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/cluster-management/install-use-dra",
      "to_id": "api:Device",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/cluster-management/install-use-dra.md",
          "url": "https://kubernetes.io/docs/tutorials/cluster-management/install-use-dra/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/scale/_index",
      "to_id": "api:Scale",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/scale/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/scale/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/explore/explore-intro",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/explore/explore-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/expose/expose-intro",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/expose/expose-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/kubernetes-basics/deploy-app/deploy-intro",
      "to_id": "api:Deployment",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/kubernetes-basics/deploy-app/deploy-intro.md",
          "url": "https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/basic-stateful-set",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/basic-stateful-set.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/mysql-wordpress-persistent-volume",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/mysql-wordpress-persistent-volume.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/stateful-application/cassandra",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/stateful-application/cassandra.md",
          "url": "https://kubernetes.io/docs/tutorials/stateful-application/cassandra/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/pods-and-endpoint-termination-flow",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/pods-and-endpoint-termination-flow.md",
          "url": "https://kubernetes.io/docs/tutorials/services/pods-and-endpoint-termination-flow/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/connect-applications-service",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/connect-applications-service.md",
          "url": "https://kubernetes.io/docs/tutorials/services/connect-applications-service/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:tutorials/services/_index",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "tutorials/services/_index.md",
          "url": "https://kubernetes.io/docs/tutorials/services/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-binding-v1",
      "to_id": "api:Binding",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-binding-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-binding-v1",
      "to_id": "api:Binding",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-binding-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/role-v1",
      "to_id": "api:Role",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/role-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/rbac/cluster-role-v1",
      "to_id": "api:ClusterRole",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/rbac/cluster-role-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/rbac/cluster-role-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1",
      "to_id": "api:StorageVersion",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiserverinternal/storage-version-v1alpha1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/flow-schema-v1",
      "to_id": "api:FlowSchema",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/flow-schema-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/flow-schema-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/flowcontrol/priority-level-configuration-v1",
      "to_id": "api:PriorityLevelConfiguration",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/flowcontrol/priority-level-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/flowcontrol/priority-level-configuration-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/node-v1",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/node-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/namespace-v1",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/namespace-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/namespace-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/limit-range-v1",
      "to_id": "api:LimitRange",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/limit-range-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/limit-range-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-account-v1",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-account-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-account-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-template-v1",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-template-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-v1",
      "to_id": "api:PersistentVolume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/config-map-v1",
      "to_id": "api:ConfigMap",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/config-map-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/config-map-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/secret-v1",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/secret-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/secret-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/pod-v1",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/pod-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/pod-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/replication-controller-v1",
      "to_id": "api:ReplicationController",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/replication-controller-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/replication-controller-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/resource-quota-v1",
      "to_id": "api:ResourceQuota",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/resource-quota-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/resource-quota-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/endpoints-v1",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/endpoints-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/endpoints-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/persistent-volume-claim-v1",
      "to_id": "api:PersistentVolume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/persistent-volume-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/persistent-volume-claim-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/service-v1",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/service-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/event-v1",
      "to_id": "api:Event",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/event-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/core/component-status-v1",
      "to_id": "api:ComponentStatus",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/core/component-status-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/core/component-status-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-candidate-v1beta1",
      "to_id": "api:Lease",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-candidate-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-candidate-v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/coordination/lease-v1",
      "to_id": "api:Lease",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/coordination/lease-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/coordination/lease-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/pod-group-v1alpha2",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/pod-group-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/pod-group-v1alpha2/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/workload-v1alpha2",
      "to_id": "api:Workload",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/workload-v1alpha2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/workload-v1alpha2/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/priority-class-v1",
      "to_id": "api:PriorityClass",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/priority-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/priority-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/scheduling/_index",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/scheduling/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/scheduling/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/network-policy-v1",
      "to_id": "api:NetworkPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/network-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/network-policy-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/service-cidr-v1",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/service-cidr-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/service-cidr-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ip-address-v1",
      "to_id": "api:IPAddress",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ip-address-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ip-address-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-class-v1",
      "to_id": "api:Ingress",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/networking/ingress-v1",
      "to_id": "api:Ingress",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/networking/ingress-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/networking/ingress-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/discovery/endpoint-slice-v1",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/discovery/endpoint-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/discovery/endpoint-slice-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/pod-certificate-request-v1beta1",
      "to_id": "api:PodCertificateRequest",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/pod-certificate-request-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/pod-certificate-request-v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1",
      "to_id": "api:ClusterTrustBundle",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/cluster-trust-bundle-v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/certificates/certificate-signing-request-v1",
      "to_id": "api:CertificateSigningRequest",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/certificates/certificate-signing-request-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/certificates/certificate-signing-request-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-storage-capacity-v1",
      "to_id": "api:CSIStorageCapacity",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-storage-capacity-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attributes-class-v1",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attributes-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attributes-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-node-v1",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-node-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-node-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/storage-class-v1",
      "to_id": "api:StorageClass",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/storage-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/storage-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/volume-attachment-v1",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/volume-attachment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/volume-attachment-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storage/csi-driver-v1",
      "to_id": "api:CSIDriver",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storage/csi-driver-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-driver-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/job-v1",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/job-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/batch/cron-job-v1",
      "to_id": "api:CronJob",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/batch/cron-job-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/batch/cron-job-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1",
      "to_id": "api:ValidatingWebhook",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-webhook-configuration-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1",
      "to_id": "api:MutatingAdmissionPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-v1",
      "to_id": "api:ValidatingAdmissionPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1",
      "to_id": "api:MutatingAdmissionPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-admission-policy-binding-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1",
      "to_id": "api:ValidatingAdmissionPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/validating-admission-policy-binding-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1",
      "to_id": "api:MutatingWebhook",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/admissionregistration/mutating-webhook-configuration-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiregistration/api-service-v1",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiregistration/api-service-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiregistration/api-service-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/runtime-class-v1",
      "to_id": "api:RuntimeClass",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/runtime-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/runtime-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/node/_index",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/node/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/node/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/event-v1",
      "to_id": "api:Event",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/event-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/event-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/events/_index",
      "to_id": "api:Event",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/events/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/events/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2",
      "to_id": "api:HorizontalPodAutoscaler",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/autoscaling/horizontal-pod-autoscaler-v2/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3",
      "to_id": "api:ResourcePool",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-pool-status-request-v1alpha3/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-slice-v1",
      "to_id": "api:ResourceSlice",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-slice-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-slice-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-class-v1",
      "to_id": "api:Device",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-class-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-class-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-template-v1",
      "to_id": "api:ResourceClaim",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-template-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-template-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/resource-claim-v1",
      "to_id": "api:ResourceClaim",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/resource-claim-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/resource-claim-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/resource/device-taint-rule-v1beta2",
      "to_id": "api:Taint",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/resource/device-taint-rule-v1beta2.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/resource/device-taint-rule-v1beta2/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/field-selector-requirement-v1-meta",
      "to_id": "api:FieldSelectorRequirement",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/field-selector-requirement-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/field-selector-requirement-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/subject-v1-rbac",
      "to_id": "api:Subject",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-v1-rbac/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta",
      "to_id": "api:GroupVersionForDiscovery",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/group-version-for-discovery-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/typed-local-object-reference-v1",
      "to_id": "api:LocalObjectReference",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/typed-local-object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/typed-local-object-reference-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/status-v1-meta",
      "to_id": "api:Status",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/param-ref-v1-admissionregistration",
      "to_id": "api:ParamRef",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/param-ref-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/param-ref-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/non-resource-rule-v1-authorization",
      "to_id": "api:NonResourceRule",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/non-resource-rule-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/non-resource-rule-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/user-info-v1-authentication",
      "to_id": "api:UserInfo",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/user-info-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/user-info-v1-authentication/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/resource-rule-v1-authorization",
      "to_id": "api:ResourceRule",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/resource-rule-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/resource-rule-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/toleration-v1",
      "to_id": "api:Toleration",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/toleration-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/toleration-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/role-ref-v1-rbac",
      "to_id": "api:Role",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/role-ref-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/role-ref-v1-rbac/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization",
      "to_id": "api:LocalSubjectAccessReview",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/local-subject-access-review-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization",
      "to_id": "api:LabelSelectorAttributes",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-attributes-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/event-source-v1",
      "to_id": "api:Event",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/event-source-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/event-source-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/api-resource-v1-meta",
      "to_id": "api:APIResource",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-resource-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-resource-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/resource-attributes-v1-authorization",
      "to_id": "api:ResourceAttributes",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/resource-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/resource-attributes-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/status-cause-v1-meta",
      "to_id": "api:Status",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-cause-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-cause-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/condition-v1-meta",
      "to_id": "api:Condition",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/condition-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/condition-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/match-condition-v1-admissionregistration",
      "to_id": "api:MatchCondition",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/match-condition-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/match-condition-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/patch-v1-meta",
      "to_id": "api:Patch",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/patch-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/patch-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/eviction-v1-policy",
      "to_id": "api:Eviction",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/eviction-v1-policy.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/eviction-v1-policy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/node-selector-v1",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/node-selector-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/node-selector-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/quantity-resource",
      "to_id": "api:Quantity",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/quantity-resource.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/quantity-resource/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/basic-device-v1beta1-resource",
      "to_id": "api:Device",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/basic-device-v1beta1-resource.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/basic-device-v1beta1-resource/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/preconditions-v1-meta",
      "to_id": "api:Condition",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/preconditions-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/preconditions-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization",
      "to_id": "api:SelfSubjectRulesReview",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-rules-review-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration",
      "to_id": "api:NamedRuleWithOperations",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/named-rule-with-operations-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration",
      "to_id": "api:RuleWithOperations",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/rule-with-operations-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/node-selector-term-v1",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/node-selector-term-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/node-selector-term-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/object-reference-v1",
      "to_id": "api:ObjectReference",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/object-reference-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization",
      "to_id": "api:FieldSelectorAttributes",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/field-selector-attributes-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/subject-access-review-v1-authorization",
      "to_id": "api:SubjectAccessReview",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-access-review-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/policy-rule-v1-rbac",
      "to_id": "api:PolicyRule",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/policy-rule-v1-rbac.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/policy-rule-v1-rbac/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization",
      "to_id": "api:NonResourceAttributes",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/non-resource-attributes-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/managed-fields-entry-v1-meta",
      "to_id": "api:ManagedFieldsEntry",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/managed-fields-entry-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/managed-fields-entry-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/param-kind-v1-admissionregistration",
      "to_id": "api:ParamKind",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/param-kind-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/param-kind-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta",
      "to_id": "api:ServerAddressByClientCIDR",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/server-address-by-client-cidr-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/group-resource-v1-meta",
      "to_id": "api:GroupResource",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/group-resource-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/group-resource-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/scale-v1-autoscaling",
      "to_id": "api:Scale",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/scale-v1-autoscaling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/scale-v1-autoscaling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/delete-options-v1-meta",
      "to_id": "api:DeleteOptions",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/delete-options-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/delete-options-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/label-selector-requirement-v1-meta",
      "to_id": "api:LabelSelector",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-requirement-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-requirement-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/local-object-reference-v1",
      "to_id": "api:LocalObjectReference",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/local-object-reference-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/local-object-reference-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/owner-reference-v1-meta",
      "to_id": "api:OwnerReference",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/owner-reference-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/owner-reference-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/time-v1-meta",
      "to_id": "api:Time",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/time-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/time-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/micro-time-v1-meta",
      "to_id": "api:MicroTime",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/micro-time-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/micro-time-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration",
      "to_id": "api:WebhookClientConfig",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/webhook-client-config-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/token-review-v1-authentication",
      "to_id": "api:TokenReview",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/token-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/token-review-v1-authentication/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/watch-event-v1-meta",
      "to_id": "api:Event",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/watch-event-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/watch-event-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/api-group-v1-meta",
      "to_id": "api:APIGroup",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-group-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-group-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/service-reference-v1-admissionregistration",
      "to_id": "api:ServiceReference",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/service-reference-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/service-reference-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/fields-v1-v1-meta",
      "to_id": "api:FieldsV1",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/fields-v1-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/fields-v1-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/object-meta-v1-meta",
      "to_id": "api:ObjectMeta",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/object-meta-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/object-meta-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/binding-v1",
      "to_id": "api:Binding",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/binding-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/binding-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/list-meta-v1-meta",
      "to_id": "api:ListMeta",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/list-meta-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/list-meta-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/label-selector-v1-meta",
      "to_id": "api:LabelSelector",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/label-selector-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/label-selector-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/self-subject-review-v1-authentication",
      "to_id": "api:SelfSubjectReview",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-review-v1-authentication.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-review-v1-authentication/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization",
      "to_id": "api:SelfSubjectAccessReview",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/self-subject-access-review-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/variable-v1-admissionregistration",
      "to_id": "api:Variable",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/variable-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/variable-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/api-versions-v1-meta",
      "to_id": "api:APIVersions",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/api-versions-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/api-versions-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling",
      "to_id": "api:LocalObjectReference",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/typed-local-object-reference-v1alpha2-scheduling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization",
      "to_id": "api:SubjectRulesReviewStatus",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/subject-rules-review-status-v1-authorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/status-details-v1-meta",
      "to_id": "api:Status",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/status-details-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/status-details-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/shard-info-v1-meta",
      "to_id": "api:ShardInfo",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/shard-info-v1-meta.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/shard-info-v1-meta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/definitions/match-resources-v1-admissionregistration",
      "to_id": "api:MatchResources",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/definitions/match-resources-v1-admissionregistration.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/definitions/match-resources-v1-admissionregistration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1",
      "to_id": "api:StorageVersion",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/storagemigration/storage-version-migration-v1beta1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/daemon-set-v1",
      "to_id": "api:DaemonSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/daemon-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/replica-set-v1",
      "to_id": "api:ReplicaSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/replica-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/replica-set-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/stateful-set-v1",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/stateful-set-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/stateful-set-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/controller-revision-v1",
      "to_id": "api:ControllerRevision",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/controller-revision-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/controller-revision-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apps/deployment-v1",
      "to_id": "api:Deployment",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apps/deployment-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apps/deployment-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/apiextensions/custom-resource-definition-v1",
      "to_id": "api:CustomResourceDefinition",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/apiextensions/custom-resource-definition-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/apiextensions/custom-resource-definition-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubernetes-api/policy/pod-disruption-budget-v1",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubernetes-api/policy/pod-disruption-budget-v1.md",
          "url": "https://kubernetes.io/docs/reference/kubernetes-api/policy/pod-disruption-budget-v1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/labels-annotations-taints/_index",
      "to_id": "api:Taint",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/labels-annotations-taints/_index.md",
          "url": "https://kubernetes.io/docs/reference/labels-annotations-taints/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/policies",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/policies.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/policies/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/scheduling/_index",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/scheduling/_index.md",
          "url": "https://kubernetes.io/docs/reference/scheduling/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/virtual-ips",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/virtual-ips.md",
          "url": "https://kubernetes.io/docs/reference/networking/virtual-ips/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/networking/service-protocols",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/networking/service-protocols.md",
          "url": "https://kubernetes.io/docs/reference/networking/service-protocols/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/config-api/apiserver-eventratelimit.v1alpha1",
      "to_id": "api:Event",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/config-api/apiserver-eventratelimit.v1alpha1.md",
          "url": "https://kubernetes.io/docs/reference/config-api/apiserver-eventratelimit.v1alpha1/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/cri-pod-container-metrics",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/cri-pod-container-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/cri-pod-container-metrics/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/node-metrics",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/node-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/node-metrics/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/instrumentation/understand-psi-metrics",
      "to_id": "api:Info",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/instrumentation/understand-psi-metrics.md",
          "url": "https://kubernetes.io/docs/reference/instrumentation/understand-psi-metrics/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_all/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_preflight/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_control-plane/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_post-upgrade/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_kubelet-config/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_coredns/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade/kubeadm_upgrade_node_phase_addon_kube-proxy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node.md",
          "url": "https://kubernetes.io/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset/kubeadm_reset_phase_cleanup-node/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/InOrderInformers",
      "to_id": "api:Info",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InOrderInformers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InOrderInformers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ElasticIndexedJob",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ElasticIndexedJob.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ElasticIndexedJob/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceSubresources",
      "to_id": "api:CustomResourceSubresources",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceSubresources.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceSubresources/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DisableNodeKubeProxyVersion",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DisableNodeKubeProxyVersion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DisableNodeKubeProxyVersion/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/IndexedJob",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/IndexedJob.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IndexedJob/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/KubeletPodResources",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletPodResources.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResources/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountNodeAudienceRestriction",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountNodeAudienceRestriction.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountNodeAudienceRestriction/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ChangeContainerStatusOnKubeletRestart",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ChangeContainerStatusOnKubeletRestart.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ChangeContainerStatusOnKubeletRestart/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceTrafficDistribution",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceTrafficDistribution.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceTrafficDistribution/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NodeLease",
      "to_id": "api:Lease",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeLease.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeLease/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ProbeTerminationGracePeriod",
      "to_id": "api:Probe",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ProbeTerminationGracePeriod.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ProbeTerminationGracePeriod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DRAResourceClaimDeviceStatus",
      "to_id": "api:ResourceClaim",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAResourceClaimDeviceStatus.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAResourceClaimDeviceStatus/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/GangScheduling",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GangScheduling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GangScheduling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ClusterTrustBundle",
      "to_id": "api:ClusterTrustBundle",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ClusterTrustBundle.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ClusterTrustBundle/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ClearingNominatedNodeNameAfterBinding",
      "to_id": "api:Binding",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ClearingNominatedNodeNameAfterBinding.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ClearingNominatedNodeNameAfterBinding/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSIBlockVolume",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIBlockVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIBlockVolume/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PersistentVolumeLastPhaseTransitionTime",
      "to_id": "api:PersistentVolume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PersistentVolumeLastPhaseTransitionTime.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PersistentVolumeLastPhaseTransitionTime/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/JobPodFailurePolicy",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobPodFailurePolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobPodFailurePolicy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CRIContainerLogRotation",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CRIContainerLogRotation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CRIContainerLogRotation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodLifecycleSleepActionAllowZero",
      "to_id": "api:Lifecycle",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodLifecycleSleepActionAllowZero.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLifecycleSleepActionAllowZero/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/GitRepoVolumeDriver",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GitRepoVolumeDriver.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GitRepoVolumeDriver/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ImmutableEphemeralVolumes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ImmutableEphemeralVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImmutableEphemeralVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/SkipReadOnlyValidationGCE",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SkipReadOnlyValidationGCE.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SkipReadOnlyValidationGCE/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/HPAContainerMetrics",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HPAContainerMetrics.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HPAContainerMetrics/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PDBUnhealthyPodEvictionPolicy",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PDBUnhealthyPodEvictionPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PDBUnhealthyPodEvictionPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ImageVolumeWithDigest",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ImageVolumeWithDigest.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImageVolumeWithDigest/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StorageVersionAPI",
      "to_id": "api:StorageVersion",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StorageVersionAPI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageVersionAPI/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenCleanUp",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenCleanUp.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenCleanUp/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenTracking",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenTracking.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenTracking/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/HyperVContainer",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HyperVContainer.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HyperVContainer/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodHasNetworkCondition",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodHasNetworkCondition.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodHasNetworkCondition/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/KubeletPodResourcesDynamicResources",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletPodResourcesDynamicResources.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResourcesDynamicResources/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AdmissionWebhookMatchConditions",
      "to_id": "api:MatchCondition",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AdmissionWebhookMatchConditions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AdmissionWebhookMatchConditions/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/GenericWorkload",
      "to_id": "api:Workload",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GenericWorkload.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GenericWorkload/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AuthorizePodWebsocketUpgradeCreatePermission",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AuthorizePodWebsocketUpgradeCreatePermission.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AuthorizePodWebsocketUpgradeCreatePermission/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RestartAllContainersOnContainerExits",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RestartAllContainersOnContainerExits.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RestartAllContainersOnContainerExits/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation",
      "to_id": "api:CronJob",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobsScheduledAnnotation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ScheduleDaemonSetPods",
      "to_id": "api:DaemonSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ScheduleDaemonSetPods.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ScheduleDaemonSetPods/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NominatedNodeNameForExpectation",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NominatedNodeNameForExpectation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NominatedNodeNameForExpectation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodInfoAPI",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodInfoAPI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodInfoAPI/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpreadSelectorMerge",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpreadSelectorMerge.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpreadSelectorMerge/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StorageVersionHash",
      "to_id": "api:StorageVersion",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StorageVersionHash.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageVersionHash/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletInUserNamespace/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CronJobTimeZone",
      "to_id": "api:CronJob",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CronJobTimeZone.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobTimeZone/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/UserNamespacesStatelessPodsSupport",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UserNamespacesStatelessPodsSupport.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesStatelessPodsSupport/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/UserNamespacesPodSecurityStandards",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UserNamespacesPodSecurityStandards.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesPodSecurityStandards/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AllowDNSOnlyNodeCSR",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowDNSOnlyNodeCSR.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowDNSOnlyNodeCSR/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSIPersistentVolume",
      "to_id": "api:PersistentVolume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIPersistentVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIPersistentVolume/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MinDomainsInPodTopologySpread",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MinDomainsInPodTopologySpread.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MinDomainsInPodTopologySpread/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DevicePlugins",
      "to_id": "api:Device",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DevicePlugins.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DevicePlugins/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MaxUnavailableStatefulSet",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MaxUnavailableStatefulSet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MaxUnavailableStatefulSet/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RecoverVolumeExpansionFailure",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RecoverVolumeExpansionFailure.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RecoverVolumeExpansionFailure/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenNoAutoGeneration",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenNoAutoGeneration.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyServiceAccountTokenNoAutoGeneration/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NewVolumeManagerReconstruction",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NewVolumeManagerReconstruction.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NewVolumeManagerReconstruction/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodLevelResourceManagers",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodLevelResourceManagers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLevelResourceManagers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodLevelResources",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodLevelResources.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLevelResources/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveMemory",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveMemory.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveMemory/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ExecProbeTimeout",
      "to_id": "api:Probe",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExecProbeTimeout.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExecProbeTimeout/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/JobManagedBy",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobManagedBy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobManagedBy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReadOnlyAPIDataVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StrictIPCIDRValidation",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StrictIPCIDRValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StrictIPCIDRValidation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyDaemonset",
      "to_id": "api:DaemonSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyDaemonset.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyDaemonset/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodLifecycleSleepAction",
      "to_id": "api:Lifecycle",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodLifecycleSleepAction.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLifecycleSleepAction/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StatefulSetStartOrdinal",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StatefulSetStartOrdinal.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StatefulSetStartOrdinal/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EndpointSliceProxying",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EndpointSliceProxying.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSliceProxying/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/InformerResourceVersion",
      "to_id": "api:Info",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InformerResourceVersion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InformerResourceVersion/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/TaintBasedEvictions",
      "to_id": "api:Taint",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TaintBasedEvictions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TaintBasedEvictions/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MutableSchedulingDirectivesForSuspendedJobs",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MutableSchedulingDirectivesForSuspendedJobs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutableSchedulingDirectivesForSuspendedJobs/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/BoundServiceAccountTokenVolume",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/BoundServiceAccountTokenVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BoundServiceAccountTokenVolume/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MountContainers",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MountContainers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MountContainers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StatefulSetMinReadySeconds",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StatefulSetMinReadySeconds.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StatefulSetMinReadySeconds/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NetworkPolicyEndPort",
      "to_id": "api:NetworkPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NetworkPolicyEndPort.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NetworkPolicyEndPort/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/WindowsCPUAndMemoryAffinity",
      "to_id": "api:Affinity",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsCPUAndMemoryAffinity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsCPUAndMemoryAffinity/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ExperimentalHostUserNamespaceDefaulting",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExperimentalHostUserNamespaceDefaulting.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExperimentalHostUserNamespaceDefaulting/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/JobPodReplacementPolicy",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobPodReplacementPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobPodReplacementPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CustomPodDNS",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomPodDNS.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomPodDNS/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveCPUs",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveCPUs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingExclusiveCPUs/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceValidationExpressions",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceValidationExpressions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceValidationExpressions/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/GracefulNodeShutdown",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GracefulNodeShutdown.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GracefulNodeShutdown/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/VolumeSnapshotDataSource",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeSnapshotDataSource.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeSnapshotDataSource/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceValidation",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceValidation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/SecurityContextDeny",
      "to_id": "api:SecurityContext",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SecurityContextDeny.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SecurityContextDeny/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSIInlineVolume",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIInlineVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIInlineVolume/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CronJobControllerV2",
      "to_id": "api:CronJob",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CronJobControllerV2.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CronJobControllerV2/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MutatingAdmissionPolicy",
      "to_id": "api:MutatingAdmissionPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MutatingAdmissionPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutatingAdmissionPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceIPStaticSubrange",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceIPStaticSubrange.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceIPStaticSubrange/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StorageNamespaceIndex",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StorageNamespaceIndex.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageNamespaceIndex/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSIVolumeHealth",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIVolumeHealth.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIVolumeHealth/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ControllerManagerReleaseLeaderElectionLockOnExit",
      "to_id": "api:Lease",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ControllerManagerReleaseLeaderElectionLockOnExit.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ControllerManagerReleaseLeaderElectionLockOnExit/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/TokenRequest",
      "to_id": "api:TokenRequest",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TokenRequest.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TokenRequest/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DefaultHostNetworkHostPortsInPodTemplates",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DefaultHostNetworkHostPortsInPodTemplates.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DefaultHostNetworkHostPortsInPodTemplates/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DeploymentReplicaSetTerminatingReplicas",
      "to_id": "api:Deployment",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DeploymentReplicaSetTerminatingReplicas.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeploymentReplicaSetTerminatingReplicas/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/IdentifyPodOS",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/IdentifyPodOS.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IdentifyPodOS/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSIDriverRegistry",
      "to_id": "api:CSIDriver",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIDriverRegistry.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIDriverRegistry/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RelaxedServiceNameValidation",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RelaxedServiceNameValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RelaxedServiceNameValidation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DevicePluginCDIDevices",
      "to_id": "api:Device",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DevicePluginCDIDevices.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DevicePluginCDIDevices/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NodeLogQuery",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeLogQuery.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeLogQuery/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountIssuerDiscovery",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountIssuerDiscovery.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountIssuerDiscovery/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/SuspendJob",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SuspendJob.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SuspendJob/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ContainerCheckpoint",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ContainerCheckpoint.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContainerCheckpoint/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodTopologyLabelsAdmission",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodTopologyLabelsAdmission.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodTopologyLabelsAdmission/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/WorkloadAwarePreemption",
      "to_id": "api:Workload",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WorkloadAwarePreemption.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WorkloadAwarePreemption/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AllowServiceLBStatusOnNonLB",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowServiceLBStatusOnNonLB.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowServiceLBStatusOnNonLB/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DeclarativeValidationTakeover",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DeclarativeValidationTakeover.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidationTakeover/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/OrderedNamespaceDeletion",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/OrderedNamespaceDeletion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/OrderedNamespaceDeletion/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AnyVolumeDataSource/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodSecurity",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodSecurity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodSecurity/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/HugepageAwareEviction",
      "to_id": "api:Eviction",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HugepageAwareEviction.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HugepageAwareEviction/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyStatefulSet",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyStatefulSet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyStatefulSet/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ExpandPersistentVolumes",
      "to_id": "api:PersistentVolume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExpandPersistentVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandPersistentVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CrossNamespaceVolumeDataSource",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CrossNamespaceVolumeDataSource.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CrossNamespaceVolumeDataSource/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ExpandCSIVolumes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExpandCSIVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandCSIVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NodeOutOfServiceVolumeDetach",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeOutOfServiceVolumeDetach.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeOutOfServiceVolumeDetach/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DRAResourcePoolStatus",
      "to_id": "api:ResourcePool",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAResourcePoolStatus.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAResourcePoolStatus/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ResourceHealthStatus",
      "to_id": "api:ResourceHealth",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ResourceHealthStatus.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ResourceHealthStatus/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSINodeExpandSecret",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSINodeExpandSecret.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSINodeExpandSecret/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EndpointSliceTerminatingCondition",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EndpointSliceTerminatingCondition.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSliceTerminatingCondition/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors",
      "to_id": "api:ResourceFieldSelector",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceFieldSelectors/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSINodeInfo",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSINodeInfo.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSINodeInfo/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/UserNamespacesSupport",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UserNamespacesSupport.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesSupport/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodAffinityNamespaceSelector",
      "to_id": "api:Affinity",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodAffinityNamespaceSelector.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodAffinityNamespaceSelector/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MutablePVNodeAffinity",
      "to_id": "api:Affinity",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MutablePVNodeAffinity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutablePVNodeAffinity/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodAndContainerStatsFromCRI",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodAndContainerStatsFromCRI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodAndContainerStatsFromCRI/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBinding",
      "to_id": "api:Binding",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBinding.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBinding/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/SeparateTaintEvictionController",
      "to_id": "api:Taint",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SeparateTaintEvictionController.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SeparateTaintEvictionController/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/VolumeSubpath",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeSubpath.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeSubpath/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/VolumeSubpathEnvExpansion",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeSubpathEnvExpansion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeSubpathEnvExpansion/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodIndexLabel",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodIndexLabel.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodIndexLabel/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodReadinessGates",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodReadinessGates.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodReadinessGates/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ContainerStopSignals",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ContainerStopSignals.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContainerStopSignals/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/InPlacePodLevelResourcesVerticalScaling",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InPlacePodLevelResourcesVerticalScaling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodLevelResourcesVerticalScaling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PreferNominatedNode",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PreferNominatedNode.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PreferNominatedNode/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NodeDisruptionExclusion",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeDisruptionExclusion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeDisruptionExclusion/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RootCAConfigMap",
      "to_id": "api:ConfigMap",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RootCAConfigMap.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RootCAConfigMap/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AllowExtTrafficLocalEndpoints",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowExtTrafficLocalEndpoints.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowExtTrafficLocalEndpoints/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/SidecarContainers",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SidecarContainers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SidecarContainers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingAllocatedStatus",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingAllocatedStatus.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScalingAllocatedStatus/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/GenericEphemeralVolume",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GenericEphemeralVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GenericEphemeralVolume/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NodeSwap",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeSwap.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeSwap/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodPriority",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodPriority.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodPriority/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/VolumeCapacityPriority",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeCapacityPriority.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeCapacityPriority/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/JobTrackingWithFinalizers",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobTrackingWithFinalizers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobTrackingWithFinalizers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DRAResourceClaimGranularStatusAuthorization",
      "to_id": "api:ResourceClaim",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAResourceClaimGranularStatusAuthorization.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAResourceClaimGranularStatusAuthorization/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NodeDeclaredFeatures",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeDeclaredFeatures.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeDeclaredFeatures/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DRAWorkloadResourceClaims",
      "to_id": "api:ResourceClaim",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAWorkloadResourceClaims.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAWorkloadResourceClaims/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StatefulSetAutoDeletePVC",
      "to_id": "api:StatefulSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StatefulSetAutoDeletePVC.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StatefulSetAutoDeletePVC/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DeclarativeValidation",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DeclarativeValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/VolumeScheduling",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeScheduling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeScheduling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RuntimeClass",
      "to_id": "api:RuntimeClass",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RuntimeClass.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RuntimeClass/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/BalanceAttachedNodeVolumes",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/BalanceAttachedNodeVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BalanceAttachedNodeVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DaemonSetUpdateSurge",
      "to_id": "api:DaemonSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DaemonSetUpdateSurge.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DaemonSetUpdateSurge/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/KubeletEnsureSecretPulledImages",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletEnsureSecretPulledImages.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletEnsureSecretPulledImages/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/GracefulNodeShutdownBasedOnPodPriority",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GracefulNodeShutdownBasedOnPodPriority.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GracefulNodeShutdownBasedOnPodPriority/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ExperimentalCriticalPodAnnotation",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExperimentalCriticalPodAnnotation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExperimentalCriticalPodAnnotation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGetAllocatable",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGetAllocatable.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGetAllocatable/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodCertificateRequest",
      "to_id": "api:PodCertificateRequest",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodCertificateRequest.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodCertificateRequest/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodDisruptionConditions",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodDisruptionConditions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodDisruptionConditions/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodDeletionCost",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodDeletionCost.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodDeletionCost/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/LegacyNodeRoleBehavior",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LegacyNodeRoleBehavior.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LegacyNodeRoleBehavior/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScaling",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScaling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/InPlacePodVerticalScaling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceInternalTrafficPolicy",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceInternalTrafficPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceInternalTrafficPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/WindowsGracefulNodeShutdown",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsGracefulNodeShutdown.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsGracefulNodeShutdown/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ResourceQuotaScopeSelectors",
      "to_id": "api:ResourceQuota",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ResourceQuotaScopeSelectors.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ResourceQuotaScopeSelectors/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RetroactiveDefaultStorageClass",
      "to_id": "api:StorageClass",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RetroactiveDefaultStorageClass.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RetroactiveDefaultStorageClass/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StartupProbe",
      "to_id": "api:Probe",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StartupProbe.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StartupProbe/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NamespaceDefaultLabelName/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ExternalServiceAccountTokenSigner",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExternalServiceAccountTokenSigner.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExternalServiceAccountTokenSigner/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceNodeExclusion",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceNodeExclusion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceNodeExclusion/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ComponentStatusz",
      "to_id": "api:ComponentStatus",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ComponentStatusz.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ComponentStatusz/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountTokenPodNodeInfo",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenPodNodeInfo.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenPodNodeInfo/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EnableAggregatedDiscoveryTimeout",
      "to_id": "api:Time",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EnableAggregatedDiscoveryTimeout.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EnableAggregatedDiscoveryTimeout/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSIStorageCapacity",
      "to_id": "api:CSIStorageCapacity",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIStorageCapacity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIStorageCapacity/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NetworkPolicyStatus",
      "to_id": "api:NetworkPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NetworkPolicyStatus.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NetworkPolicyStatus/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodReadyToStartContainersCondition",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodReadyToStartContainersCondition.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodReadyToStartContainersCondition/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerClass",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerClass.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerClass/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DRADeviceTaints",
      "to_id": "api:Taint",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRADeviceTaints.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRADeviceTaints/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodDisruptionBudget",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodDisruptionBudget.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodDisruptionBudget/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RelaxedDNSSearchValidation",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RelaxedDNSSearchValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RelaxedDNSSearchValidation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AffinityInAnnotations",
      "to_id": "api:Affinity",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AffinityInAnnotations.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AffinityInAnnotations/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/WindowsHostProcessContainers",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsHostProcessContainers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsHostProcessContainers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/VolumeLimitScaling",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeLimitScaling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeLimitScaling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/JobReadyPods",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobReadyPods.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobReadyPods/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StorageVersionMigrator",
      "to_id": "api:StorageVersion",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StorageVersionMigrator.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StorageVersionMigrator/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/JobBackoffLimitPerIndex",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobBackoffLimitPerIndex.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobBackoffLimitPerIndex/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/NodeInclusionPolicyInPodTopologySpread",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/NodeInclusionPolicyInPodTopologySpread.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/NodeInclusionPolicyInPodTopologySpread/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceTopology",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceTopology.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceTopology/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceAppProtocol",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAppProtocol.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAppProtocol/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EndpointSliceNodeName",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EndpointSliceNodeName.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSliceNodeName/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/LogarithmicScaleDown",
      "to_id": "api:Scale",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/LogarithmicScaleDown.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/LogarithmicScaleDown/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MultiCIDRServiceAllocator",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MultiCIDRServiceAllocator.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MultiCIDRServiceAllocator/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MutablePodResourcesForSuspendedJobs",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MutablePodResourcesForSuspendedJobs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutablePodResourcesForSuspendedJobs/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RelaxedEnvironmentVariableValidation",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RelaxedEnvironmentVariableValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RelaxedEnvironmentVariableValidation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CloudDualStackNodeIPs",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CloudDualStackNodeIPs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CloudDualStackNodeIPs/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DynamicVolumeProvisioning",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DynamicVolumeProvisioning.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicVolumeProvisioning/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/BlockVolume",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/BlockVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/BlockVolume/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodShareProcessNamespace",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodShareProcessNamespace.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodShareProcessNamespace/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DeclarativeValidationBeta",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DeclarativeValidationBeta.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DeclarativeValidationBeta/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodOverhead",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodOverhead.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodOverhead/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DynamicProvisioningScheduling",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DynamicProvisioningScheduling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DynamicProvisioningScheduling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountTokenJTI",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenJTI.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenJTI/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MixedProtocolLBService",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MixedProtocolLBService.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MixedProtocolLBService/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ExpandInUsePersistentVolumes",
      "to_id": "api:PersistentVolume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ExpandInUsePersistentVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ExpandInUsePersistentVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EvenPodsSpread",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EvenPodsSpread.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EvenPodsSpread/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodAffinity",
      "to_id": "api:Affinity",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodAffinity.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodAffinity/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBindingValidation",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBindingValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceAccountTokenNodeBindingValidation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/VolumePVCDataSource",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumePVCDataSource.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumePVCDataSource/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DRASchedulerFilterTimeout",
      "to_id": "api:Time",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRASchedulerFilterTimeout.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRASchedulerFilterTimeout/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StableLoadBalancerNodeSet",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StableLoadBalancerNodeSet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StableLoadBalancerNodeSet/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/GRPCContainerProbe",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/GRPCContainerProbe.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/GRPCContainerProbe/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpread",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpread.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MatchLabelKeysInPodTopologySpread/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ContainerRestartRules",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ContainerRestartRules.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ContainerRestartRules/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/UserNamespacesHostNetworkSupport",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/UserNamespacesHostNetworkSupport.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/UserNamespacesHostNetworkSupport/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSIServiceAccountToken",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIServiceAccountToken.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIServiceAccountToken/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EphemeralContainers",
      "to_id": "api:Container",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EphemeralContainers.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EphemeralContainers/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodLogsQuerySplitStreams",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodLogsQuerySplitStreams.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodLogsQuerySplitStreams/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ImageVolume",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ImageVolume.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ImageVolume/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyReplicaSet",
      "to_id": "api:ReplicaSet",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyReplicaSet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyReplicaSet/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/WorkloadWithJob",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WorkloadWithJob.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WorkloadWithJob/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PreventStaticPodAPIReferences",
      "to_id": "api:Event",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PreventStaticPodAPIReferences.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PreventStaticPodAPIReferences/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CRDValidationRatcheting",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CRDValidationRatcheting.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CRDValidationRatcheting/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/APISelfSubjectReview",
      "to_id": "api:SelfSubjectReview",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/APISelfSubjectReview.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/APISelfSubjectReview/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodSchedulingReadiness",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodSchedulingReadiness.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodSchedulingReadiness/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/RuntimeClassInImageCriApi",
      "to_id": "api:RuntimeClass",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/RuntimeClassInImageCriApi.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/RuntimeClassInImageCriApi/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/JobMutableNodeSchedulingDirectives",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobMutableNodeSchedulingDirectives.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobMutableNodeSchedulingDirectives/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DRADeviceTaintRules",
      "to_id": "api:Taint",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRADeviceTaintRules.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRADeviceTaintRules/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodHostIPs",
      "to_id": "api:HostIP",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodHostIPs.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodHostIPs/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/SizeMemoryBackedVolumes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SizeMemoryBackedVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SizeMemoryBackedVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/TaintNodesByCondition",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TaintNodesByCondition.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TaintNodesByCondition/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/KubeletServiceAccountTokenForCredentialProviders",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletServiceAccountTokenForCredentialProviders.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletServiceAccountTokenForCredentialProviders/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DelegateFSGroupToCSIDriver",
      "to_id": "api:CSIDriver",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DelegateFSGroupToCSIDriver.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DelegateFSGroupToCSIDriver/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EventedPLEG",
      "to_id": "api:Event",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EventedPLEG.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EventedPLEG/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyJob",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyJob.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StaleControllerConsistencyJob/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ClusterTrustBundleProjection",
      "to_id": "api:ClusterTrustBundle",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ClusterTrustBundleProjection.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ClusterTrustBundleProjection/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AuthorizeNodeWithSelectors",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AuthorizeNodeWithSelectors.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AuthorizeNodeWithSelectors/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PodObservedGenerationTracking",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PodObservedGenerationTracking.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PodObservedGenerationTracking/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DRANodeAllocatableResources",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRANodeAllocatableResources.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRANodeAllocatableResources/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/EndpointSlice",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/EndpointSlice.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/EndpointSlice/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/HPAScaleToZero",
      "to_id": "api:Scale",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/HPAScaleToZero.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/HPAScaleToZero/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ProxyTerminatingEndpoints",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ProxyTerminatingEndpoints.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ProxyTerminatingEndpoints/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ValidatingAdmissionPolicy",
      "to_id": "api:ValidatingAdmissionPolicy",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ValidatingAdmissionPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ValidatingAdmissionPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/VolumeAttributesClass",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/VolumeAttributesClass.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/VolumeAttributesClass/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/TokenRequestProjection",
      "to_id": "api:TokenRequest",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TokenRequestProjection.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TokenRequestProjection/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DRAPartitionableDevices",
      "to_id": "api:Device",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRAPartitionableDevices.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRAPartitionableDevices/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/SELinuxMountReadWriteOncePod",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SELinuxMountReadWriteOncePod.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SELinuxMountReadWriteOncePod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceNodePortStaticSubrange",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceNodePortStaticSubrange.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceNodePortStaticSubrange/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/TaintTolerationComparisonOperators",
      "to_id": "api:Taint",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TaintTolerationComparisonOperators.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TaintTolerationComparisonOperators/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGet",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGet.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeletPodResourcesGet/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/JobSuccessPolicy",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/JobSuccessPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/JobSuccessPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PersistentVolumeClaimUnusedSinceTime",
      "to_id": "api:PersistentVolume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PersistentVolumeClaimUnusedSinceTime.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PersistentVolumeClaimUnusedSinceTime/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/IngressClassNamespacedParams",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/IngressClassNamespacedParams.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/IngressClassNamespacedParams/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AllowInsecureKubeletCertificateSigningRequests",
      "to_id": "api:CertificateSigningRequest",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AllowInsecureKubeletCertificateSigningRequests.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AllowInsecureKubeletCertificateSigningRequests/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/Sysctls",
      "to_id": "api:Sysctl",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/Sysctls.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/Sysctls/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/WindowsEndpointSliceProxying",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/WindowsEndpointSliceProxying.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/WindowsEndpointSliceProxying/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerFinalizer",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerFinalizer.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceLoadBalancerFinalizer/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ReadWriteOncePod",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ReadWriteOncePod.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ReadWriteOncePod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/TokenRequestServiceAccountUIDValidation",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TokenRequestServiceAccountUIDValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TokenRequestServiceAccountUIDValidation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CustomResourceWebhookConversion",
      "to_id": "api:WebhookConversion",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CustomResourceWebhookConversion.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CustomResourceWebhookConversion/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DefaultPodTopologySpread",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DefaultPodTopologySpread.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DefaultPodTopologySpread/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AggregatedDiscoveryEndpoint",
      "to_id": "api:Endpoint",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AggregatedDiscoveryEndpoint.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AggregatedDiscoveryEndpoint/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/SupportPodPidsLimit",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SupportPodPidsLimit.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SupportPodPidsLimit/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/PersistentLocalVolumes",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/PersistentLocalVolumes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/PersistentLocalVolumes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServiceLBNodePortControl",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServiceLBNodePortControl.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServiceLBNodePortControl/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/KubeProxyDrainingTerminatingNodes",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/KubeProxyDrainingTerminatingNodes.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/KubeProxyDrainingTerminatingNodes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToJSON",
      "to_id": "api:JSON",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToJSON.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/StreamingCollectionEncodingToJSON/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSIVolumeFSGroupPolicy",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIVolumeFSGroupPolicy.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIVolumeFSGroupPolicy/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/CSIServiceAccountTokenSecrets",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/CSIServiceAccountTokenSecrets.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/CSIServiceAccountTokenSecrets/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/TopologyAwareWorkloadScheduling",
      "to_id": "api:Scheduling",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/TopologyAwareWorkloadScheduling.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/TopologyAwareWorkloadScheduling/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/SupportNodePidsLimit",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/SupportNodePidsLimit.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/SupportNodePidsLimit/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/MutableCSINodeAllocatableCount",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/MutableCSINodeAllocatableCount.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/MutableCSINodeAllocatableCount/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AttachVolumeLimit",
      "to_id": "api:Volume",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AttachVolumeLimit.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AttachVolumeLimit/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/AnonymousAuthConfigurableEndpoints",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/AnonymousAuthConfigurableEndpoints.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/AnonymousAuthConfigurableEndpoints/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/ServerSideFieldValidation",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/ServerSideFieldValidation.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ServerSideFieldValidation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/command-line-tools-reference/feature-gates/DRADeviceBindingConditions",
      "to_id": "api:Binding",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/command-line-tools-reference/feature-gates/DRADeviceBindingConditions.md",
          "url": "https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/DRADeviceBindingConditions/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/what-happens-on-restart",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/what-happens-on-restart.md",
          "url": "https://kubernetes.io/docs/reference/node/what-happens-on-restart/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/device-plugin-api-versions",
      "to_id": "api:Device",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/device-plugin-api-versions.md",
          "url": "https://kubernetes.io/docs/reference/node/device-plugin-api-versions/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-status",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-status.md",
          "url": "https://kubernetes.io/docs/reference/node/node-status/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/kubelet-pod-info-grpc-api",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/kubelet-pod-info-grpc-api.md",
          "url": "https://kubernetes.io/docs/reference/node/kubelet-pod-info-grpc-api/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/node-labels",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/node-labels.md",
          "url": "https://kubernetes.io/docs/reference/node/node-labels/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/topics-on-dockershim-and-cri-compatible-runtimes",
      "to_id": "api:Time",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/topics-on-dockershim-and-cri-compatible-runtimes.md",
          "url": "https://kubernetes.io/docs/reference/node/topics-on-dockershim-and-cri-compatible-runtimes/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/swap-behavior",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/swap-behavior.md",
          "url": "https://kubernetes.io/docs/reference/node/swap-behavior/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/node/_index",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/node/_index.md",
          "url": "https://kubernetes.io/docs/reference/node/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/issues-security/security",
      "to_id": "api:Info",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/issues-security/security.md",
          "url": "https://kubernetes.io/docs/reference/issues-security/security/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/jsonpath",
      "to_id": "api:JSON",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/jsonpath.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/jsonpath/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_subject",
      "to_id": "api:Subject",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_subject.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_subject/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_set/kubectl_set_serviceaccount/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump",
      "to_id": "api:Info",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/kubectl_cluster-info_dump/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_cluster-info/_index",
      "to_id": "api:Info",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_cluster-info/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_cluster-info/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_events/_index",
      "to_id": "api:Event",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_events/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_events/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_autoscale/_index",
      "to_id": "api:Scale",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_autoscale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_autoscale/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_namespace",
      "to_id": "api:Namespace",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_namespace.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_namespace/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_ingress",
      "to_id": "api:Ingress",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_ingress.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_ingress/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_deployment",
      "to_id": "api:Deployment",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_deployment.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_deployment/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_loadbalancer/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_externalname/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass",
      "to_id": "api:PriorityClass",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_priorityclass/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_poddisruptionbudget/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_configmap",
      "to_id": "api:ConfigMap",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_configmap.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_configmap/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding",
      "to_id": "api:Binding",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrolebinding/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_generic/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_cronjob",
      "to_id": "api:CronJob",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_cronjob.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_cronjob/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_job",
      "to_id": "api:Job",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_job.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_job/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_clusterip/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_role",
      "to_id": "api:Role",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_role.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_role/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding",
      "to_id": "api:Binding",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_rolebinding/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry",
      "to_id": "api:Secret",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_docker-registry/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_service_nodeport/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_serviceaccount/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole",
      "to_id": "api:ClusterRole",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_clusterrole/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_patch/_index",
      "to_id": "api:Patch",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_patch/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_patch/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_pod",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_pod.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_pod/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_top/kubectl_top_node",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_top/kubectl_top_node.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_top/kubectl_top_node/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_scale/_index",
      "to_id": "api:Scale",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_scale/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_scale/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_taint/_index",
      "to_id": "api:Taint",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_taint/_index.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_taint/_index/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status",
      "to_id": "api:Status",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status.md",
          "url": "https://kubernetes.io/docs/reference/kubectl/generated/kubectl_rollout/kubectl_rollout_status/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/node",
      "to_id": "api:Node",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/node.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/node/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/service-accounts-admin",
      "to_id": "api:Service",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/service-accounts-admin.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/access-authn-authz/psp-to-pod-security-standards",
      "to_id": "api:Pod",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/access-authn-authz/psp-to-pod-security-standards.md",
          "url": "https://kubernetes.io/docs/reference/access-authn-authz/psp-to-pod-security-standards/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/health-checks",
      "to_id": "api:Endpoints",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/health-checks.md",
          "url": "https://kubernetes.io/docs/reference/using-api/health-checks/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "page:reference/using-api/declarative-validation",
      "to_id": "api:Validation",
      "type": "api_for",
      "label": "documents API object",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "reference/using-api/declarative-validation.md",
          "url": "https://kubernetes.io/docs/reference/using-api/declarative-validation/",
          "line_start": null,
          "line_end": null,
          "quote": null
        }
      ]
    },
    {
      "from_id": "api:Pod",
      "to_id": "api:ReplicaSet",
      "type": "owns",
      "label": "ReplicaSet owns/manages Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "owner references: ReplicaSet manages Pod lifecycle"
        }
      ]
    },
    {
      "from_id": "api:ReplicaSet",
      "to_id": "api:Deployment",
      "type": "owns",
      "label": "Deployment owns/manages ReplicaSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "owner references: Deployment manages ReplicaSet lifecycle"
        }
      ]
    },
    {
      "from_id": "api:Pod",
      "to_id": "api:StatefulSet",
      "type": "owns",
      "label": "StatefulSet owns/manages Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "owner references: StatefulSet manages Pod lifecycle"
        }
      ]
    },
    {
      "from_id": "api:Pod",
      "to_id": "api:DaemonSet",
      "type": "owns",
      "label": "DaemonSet owns/manages Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "owner references: DaemonSet manages Pod lifecycle"
        }
      ]
    },
    {
      "from_id": "api:Pod",
      "to_id": "api:Job",
      "type": "owns",
      "label": "Job owns/manages Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "owner references: Job manages Pod lifecycle"
        }
      ]
    },
    {
      "from_id": "api:Job",
      "to_id": "api:CronJob",
      "type": "owns",
      "label": "CronJob owns/manages Job",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "owner references: CronJob manages Job lifecycle"
        }
      ]
    },
    {
      "from_id": "api:Pod",
      "to_id": "api:Node",
      "type": "owns",
      "label": "Node owns/manages Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "owner references: Node manages Pod lifecycle"
        }
      ]
    },
    {
      "from_id": "api:Service",
      "to_id": "api:Endpoints",
      "type": "owns",
      "label": "Endpoints owns/manages Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "owner references: Endpoints manages Service lifecycle"
        }
      ]
    },
    {
      "from_id": "api:Ingress",
      "to_id": "api:Service",
      "type": "owns",
      "label": "Service owns/manages Ingress",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "owner references: Service manages Ingress lifecycle"
        }
      ]
    },
    {
      "from_id": "api:Deployment",
      "to_id": "api:ReplicaSet",
      "type": "owns",
      "label": "ReplicaSet owns/manages Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "owner references: ReplicaSet manages Deployment lifecycle"
        }
      ]
    },
    {
      "from_id": "api:MatchResources",
      "to_id": "api:NamedRuleWithOperations",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.NamedRuleWithOperations"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.NamedRuleWithOperations"
        }
      ]
    },
    {
      "from_id": "api:MatchResources",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicy",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicy",
      "to_id": "api:MutatingAdmissionPolicySpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicySpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicySpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MutatingAdmissionPolicySpec"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicyBinding",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicyBinding",
      "to_id": "api:MutatingAdmissionPolicyBindingSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicyBindingSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicyBindingSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MutatingAdmissionPolicyBindingSpec"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicyBindingList",
      "to_id": "api:MutatingAdmissionPolicyBinding",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicyBinding"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicyBinding"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MutatingAdmissionPolicyBinding"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicyBindingList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicyBindingSpec",
      "to_id": "api:MatchResources",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MatchResources"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MatchResources"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MatchResources"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicyBindingSpec",
      "to_id": "api:ParamRef",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ParamRef"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.ParamRef"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.ParamRef"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicyList",
      "to_id": "api:MutatingAdmissionPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingAdmissionPolicy"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicy"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MutatingAdmissionPolicy"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicyList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicySpec",
      "to_id": "api:Mutation",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.Mutation"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.Mutation"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.Mutation"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicySpec",
      "to_id": "api:MatchCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MatchCondition"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MatchCondition"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MatchCondition"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicySpec",
      "to_id": "api:ParamKind",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ParamKind"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.ParamKind"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.ParamKind"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicySpec",
      "to_id": "api:Variable",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.Variable"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.Variable"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.Variable"
        }
      ]
    },
    {
      "from_id": "api:MutatingAdmissionPolicySpec",
      "to_id": "api:MatchResources",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MatchResources"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.MatchResources"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.MatchResources"
        }
      ]
    },
    {
      "from_id": "api:MutatingWebhook",
      "to_id": "api:MatchCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MatchCondition"
        }
      ]
    },
    {
      "from_id": "api:MutatingWebhook",
      "to_id": "api:RuleWithOperations",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.RuleWithOperations"
        }
      ]
    },
    {
      "from_id": "api:MutatingWebhook",
      "to_id": "api:WebhookClientConfig",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.WebhookClientConfig"
        }
      ]
    },
    {
      "from_id": "api:MutatingWebhook",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:MutatingWebhookConfiguration",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:MutatingWebhookConfiguration",
      "to_id": "api:MutatingWebhook",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingWebhook"
        }
      ]
    },
    {
      "from_id": "api:MutatingWebhookConfigurationList",
      "to_id": "api:MutatingWebhookConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MutatingWebhookConfiguration"
        }
      ]
    },
    {
      "from_id": "api:MutatingWebhookConfigurationList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:Mutation",
      "to_id": "api:JSONPatch",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.JSONPatch"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.JSONPatch"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.JSONPatch"
        }
      ]
    },
    {
      "from_id": "api:Mutation",
      "to_id": "api:ApplyConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ApplyConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1alpha1.ApplyConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1beta1.ApplyConfiguration"
        }
      ]
    },
    {
      "from_id": "api:ParamRef",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:TypeChecking",
      "to_id": "api:ExpressionWarning",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ExpressionWarning"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicy",
      "to_id": "api:ValidatingAdmissionPolicySpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicySpec"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicy",
      "to_id": "api:ValidatingAdmissionPolicyStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyStatus"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicy",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicyBinding",
      "to_id": "api:ValidatingAdmissionPolicyBindingSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyBindingSpec"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicyBinding",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicyBindingList",
      "to_id": "api:ValidatingAdmissionPolicyBinding",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyBinding"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicyBindingList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicyBindingSpec",
      "to_id": "api:MatchResources",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MatchResources"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicyBindingSpec",
      "to_id": "api:ParamRef",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ParamRef"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicyList",
      "to_id": "api:ValidatingAdmissionPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicy"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicyList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicySpec",
      "to_id": "api:MatchCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MatchCondition"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicySpec",
      "to_id": "api:Validation",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.Validation"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicySpec",
      "to_id": "api:ParamKind",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ParamKind"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicySpec",
      "to_id": "api:Variable",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.Variable"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicySpec",
      "to_id": "api:MatchResources",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MatchResources"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicySpec",
      "to_id": "api:AuditAnnotation",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.AuditAnnotation"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicyStatus",
      "to_id": "api:TypeChecking",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.TypeChecking"
        }
      ]
    },
    {
      "from_id": "api:ValidatingAdmissionPolicyStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:ValidatingWebhook",
      "to_id": "api:MatchCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.MatchCondition"
        }
      ]
    },
    {
      "from_id": "api:ValidatingWebhook",
      "to_id": "api:RuleWithOperations",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.RuleWithOperations"
        }
      ]
    },
    {
      "from_id": "api:ValidatingWebhook",
      "to_id": "api:WebhookClientConfig",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.WebhookClientConfig"
        }
      ]
    },
    {
      "from_id": "api:ValidatingWebhook",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:ValidatingWebhookConfiguration",
      "to_id": "api:ValidatingWebhook",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingWebhook"
        }
      ]
    },
    {
      "from_id": "api:ValidatingWebhookConfiguration",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ValidatingWebhookConfigurationList",
      "to_id": "api:ValidatingWebhookConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfiguration"
        }
      ]
    },
    {
      "from_id": "api:ValidatingWebhookConfigurationList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:WebhookClientConfig",
      "to_id": "api:ServiceReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.admissionregistration.v1.ServiceReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ServiceReference"
        }
      ]
    },
    {
      "from_id": "api:StorageVersion",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:StorageVersion",
      "to_id": "api:StorageVersionStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionStatus"
        }
      ]
    },
    {
      "from_id": "api:StorageVersion",
      "to_id": "api:StorageVersionSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionSpec"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionList",
      "to_id": "api:StorageVersion",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersion"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionStatus",
      "to_id": "api:StorageVersionCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionCondition"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionStatus",
      "to_id": "api:ServerStorageVersion",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apiserverinternal.v1alpha1.ServerStorageVersion"
        }
      ]
    },
    {
      "from_id": "api:ControllerRevision",
      "to_id": "api:RawExtension",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.runtime.RawExtension"
        }
      ]
    },
    {
      "from_id": "api:ControllerRevision",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ControllerRevisionList",
      "to_id": "api:ControllerRevision",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ControllerRevision"
        }
      ]
    },
    {
      "from_id": "api:ControllerRevisionList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:DaemonSet",
      "to_id": "api:DaemonSetStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSetStatus"
        }
      ]
    },
    {
      "from_id": "api:DaemonSet",
      "to_id": "api:DaemonSetSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSetSpec"
        }
      ]
    },
    {
      "from_id": "api:DaemonSet",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:DaemonSetCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:DaemonSetList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:DaemonSetList",
      "to_id": "api:DaemonSet",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSet"
        }
      ]
    },
    {
      "from_id": "api:DaemonSetSpec",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:DaemonSetSpec",
      "to_id": "api:DaemonSetUpdateStrategy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSetUpdateStrategy"
        }
      ]
    },
    {
      "from_id": "api:DaemonSetSpec",
      "to_id": "api:PodTemplateSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplateSpec"
        }
      ]
    },
    {
      "from_id": "api:DaemonSetStatus",
      "to_id": "api:DaemonSetCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DaemonSetCondition"
        }
      ]
    },
    {
      "from_id": "api:DaemonSetUpdateStrategy",
      "to_id": "api:RollingUpdateDaemonSet",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.RollingUpdateDaemonSet"
        }
      ]
    },
    {
      "from_id": "api:Deployment",
      "to_id": "api:DeploymentSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DeploymentSpec"
        }
      ]
    },
    {
      "from_id": "api:Deployment",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Deployment",
      "to_id": "api:DeploymentStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DeploymentStatus"
        }
      ]
    },
    {
      "from_id": "api:DeploymentCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:DeploymentList",
      "to_id": "api:Deployment",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.Deployment"
        }
      ]
    },
    {
      "from_id": "api:DeploymentList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:DeploymentSpec",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:DeploymentSpec",
      "to_id": "api:DeploymentStrategy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DeploymentStrategy"
        }
      ]
    },
    {
      "from_id": "api:DeploymentSpec",
      "to_id": "api:PodTemplateSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplateSpec"
        }
      ]
    },
    {
      "from_id": "api:DeploymentStatus",
      "to_id": "api:DeploymentCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.DeploymentCondition"
        }
      ]
    },
    {
      "from_id": "api:DeploymentStrategy",
      "to_id": "api:RollingUpdateDeployment",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.RollingUpdateDeployment"
        }
      ]
    },
    {
      "from_id": "api:ReplicaSet",
      "to_id": "api:ReplicaSetStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ReplicaSetStatus"
        }
      ]
    },
    {
      "from_id": "api:ReplicaSet",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ReplicaSet",
      "to_id": "api:ReplicaSetSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ReplicaSetSpec"
        }
      ]
    },
    {
      "from_id": "api:ReplicaSetCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:ReplicaSetList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ReplicaSetList",
      "to_id": "api:ReplicaSet",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ReplicaSet"
        }
      ]
    },
    {
      "from_id": "api:ReplicaSetSpec",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:ReplicaSetSpec",
      "to_id": "api:PodTemplateSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplateSpec"
        }
      ]
    },
    {
      "from_id": "api:ReplicaSetStatus",
      "to_id": "api:ReplicaSetCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.ReplicaSetCondition"
        }
      ]
    },
    {
      "from_id": "api:RollingUpdateDaemonSet",
      "to_id": "api:IntOrString",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.util.intstr.IntOrString"
        }
      ]
    },
    {
      "from_id": "api:RollingUpdateDeployment",
      "to_id": "api:IntOrString",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.util.intstr.IntOrString"
        }
      ]
    },
    {
      "from_id": "api:RollingUpdateStatefulSetStrategy",
      "to_id": "api:IntOrString",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.util.intstr.IntOrString"
        }
      ]
    },
    {
      "from_id": "api:StatefulSet",
      "to_id": "api:StatefulSetStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetStatus"
        }
      ]
    },
    {
      "from_id": "api:StatefulSet",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:StatefulSet",
      "to_id": "api:StatefulSetSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetSpec"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetList",
      "to_id": "api:StatefulSet",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSet"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetSpec",
      "to_id": "api:StatefulSetUpdateStrategy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetUpdateStrategy"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetSpec",
      "to_id": "api:StatefulSetOrdinals",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetOrdinals"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetSpec",
      "to_id": "api:PersistentVolumeClaim",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaim"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetSpec",
      "to_id": "api:StatefulSetPersistentVolumeClaimRetentionPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetPersistentVolumeClaimRetentionPolicy"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetSpec",
      "to_id": "api:PodTemplateSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplateSpec"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetSpec",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetStatus",
      "to_id": "api:StatefulSetCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.StatefulSetCondition"
        }
      ]
    },
    {
      "from_id": "api:StatefulSetUpdateStrategy",
      "to_id": "api:RollingUpdateStatefulSetStrategy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.apps.v1.RollingUpdateStatefulSetStrategy"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectReview",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectReview",
      "to_id": "api:SelfSubjectReviewStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.SelfSubjectReviewStatus"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectReviewStatus",
      "to_id": "api:UserInfo",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.UserInfo"
        }
      ]
    },
    {
      "from_id": "api:TokenRequest",
      "to_id": "api:TokenRequestSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.TokenRequestSpec"
        }
      ]
    },
    {
      "from_id": "api:TokenRequest",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:TokenRequest",
      "to_id": "api:TokenRequestStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.TokenRequestStatus"
        }
      ]
    },
    {
      "from_id": "api:TokenRequestSpec",
      "to_id": "api:BoundObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.BoundObjectReference"
        }
      ]
    },
    {
      "from_id": "api:TokenRequestStatus",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:TokenReview",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:TokenReview",
      "to_id": "api:TokenReviewStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.TokenReviewStatus"
        }
      ]
    },
    {
      "from_id": "api:TokenReview",
      "to_id": "api:TokenReviewSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.TokenReviewSpec"
        }
      ]
    },
    {
      "from_id": "api:TokenReviewStatus",
      "to_id": "api:UserInfo",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authentication.v1.UserInfo"
        }
      ]
    },
    {
      "from_id": "api:FieldSelectorAttributes",
      "to_id": "api:FieldSelectorRequirement",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.FieldSelectorRequirement"
        }
      ]
    },
    {
      "from_id": "api:LabelSelectorAttributes",
      "to_id": "api:LabelSelectorRequirement",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelectorRequirement"
        }
      ]
    },
    {
      "from_id": "api:LocalSubjectAccessReview",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:LocalSubjectAccessReview",
      "to_id": "api:SubjectAccessReviewSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SubjectAccessReviewSpec"
        }
      ]
    },
    {
      "from_id": "api:LocalSubjectAccessReview",
      "to_id": "api:SubjectAccessReviewStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SubjectAccessReviewStatus"
        }
      ]
    },
    {
      "from_id": "api:ResourceAttributes",
      "to_id": "api:FieldSelectorAttributes",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.FieldSelectorAttributes"
        }
      ]
    },
    {
      "from_id": "api:ResourceAttributes",
      "to_id": "api:LabelSelectorAttributes",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.LabelSelectorAttributes"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectAccessReview",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectAccessReview",
      "to_id": "api:SelfSubjectAccessReviewSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SelfSubjectAccessReviewSpec"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectAccessReview",
      "to_id": "api:SubjectAccessReviewStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SubjectAccessReviewStatus"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectAccessReviewSpec",
      "to_id": "api:NonResourceAttributes",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.NonResourceAttributes"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectAccessReviewSpec",
      "to_id": "api:ResourceAttributes",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.ResourceAttributes"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectRulesReview",
      "to_id": "api:SubjectRulesReviewStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SubjectRulesReviewStatus"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectRulesReview",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:SelfSubjectRulesReview",
      "to_id": "api:SelfSubjectRulesReviewSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SelfSubjectRulesReviewSpec"
        }
      ]
    },
    {
      "from_id": "api:SubjectAccessReview",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:SubjectAccessReview",
      "to_id": "api:SubjectAccessReviewSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SubjectAccessReviewSpec"
        }
      ]
    },
    {
      "from_id": "api:SubjectAccessReview",
      "to_id": "api:SubjectAccessReviewStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.SubjectAccessReviewStatus"
        }
      ]
    },
    {
      "from_id": "api:SubjectAccessReviewSpec",
      "to_id": "api:NonResourceAttributes",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.NonResourceAttributes"
        }
      ]
    },
    {
      "from_id": "api:SubjectAccessReviewSpec",
      "to_id": "api:ResourceAttributes",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.ResourceAttributes"
        }
      ]
    },
    {
      "from_id": "api:SubjectRulesReviewStatus",
      "to_id": "api:ResourceRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.ResourceRule"
        }
      ]
    },
    {
      "from_id": "api:SubjectRulesReviewStatus",
      "to_id": "api:NonResourceRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.authorization.v1.NonResourceRule"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscaler",
      "to_id": "api:HorizontalPodAutoscalerStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerStatus"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscaler",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscaler",
      "to_id": "api:HorizontalPodAutoscalerSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerSpec"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscalerList",
      "to_id": "api:HorizontalPodAutoscaler",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.HorizontalPodAutoscaler"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscaler"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscalerList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscalerSpec",
      "to_id": "api:CrossVersionObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.CrossVersionObjectReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.CrossVersionObjectReference"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscalerStatus",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:Scale",
      "to_id": "api:ScaleStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.ScaleStatus"
        }
      ]
    },
    {
      "from_id": "api:Scale",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Scale",
      "to_id": "api:ScaleSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v1.ScaleSpec"
        }
      ]
    },
    {
      "from_id": "api:ContainerResourceMetricSource",
      "to_id": "api:MetricTarget",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricTarget"
        }
      ]
    },
    {
      "from_id": "api:ContainerResourceMetricStatus",
      "to_id": "api:MetricValueStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricValueStatus"
        }
      ]
    },
    {
      "from_id": "api:ExternalMetricSource",
      "to_id": "api:MetricTarget",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricTarget"
        }
      ]
    },
    {
      "from_id": "api:ExternalMetricSource",
      "to_id": "api:MetricIdentifier",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricIdentifier"
        }
      ]
    },
    {
      "from_id": "api:ExternalMetricStatus",
      "to_id": "api:MetricValueStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricValueStatus"
        }
      ]
    },
    {
      "from_id": "api:ExternalMetricStatus",
      "to_id": "api:MetricIdentifier",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricIdentifier"
        }
      ]
    },
    {
      "from_id": "api:HPAScalingRules",
      "to_id": "api:HPAScalingPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HPAScalingPolicy"
        }
      ]
    },
    {
      "from_id": "api:HPAScalingRules",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscalerBehavior",
      "to_id": "api:HPAScalingRules",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HPAScalingRules"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscalerCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscalerSpec",
      "to_id": "api:MetricSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricSpec"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscalerSpec",
      "to_id": "api:HorizontalPodAutoscalerBehavior",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerBehavior"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscalerStatus",
      "to_id": "api:HorizontalPodAutoscalerCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerCondition"
        }
      ]
    },
    {
      "from_id": "api:HorizontalPodAutoscalerStatus",
      "to_id": "api:MetricStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricStatus"
        }
      ]
    },
    {
      "from_id": "api:MetricIdentifier",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:MetricSpec",
      "to_id": "api:ExternalMetricSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ExternalMetricSource"
        }
      ]
    },
    {
      "from_id": "api:MetricSpec",
      "to_id": "api:PodsMetricSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.PodsMetricSource"
        }
      ]
    },
    {
      "from_id": "api:MetricSpec",
      "to_id": "api:ContainerResourceMetricSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ContainerResourceMetricSource"
        }
      ]
    },
    {
      "from_id": "api:MetricSpec",
      "to_id": "api:ObjectMetricSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ObjectMetricSource"
        }
      ]
    },
    {
      "from_id": "api:MetricSpec",
      "to_id": "api:ResourceMetricSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ResourceMetricSource"
        }
      ]
    },
    {
      "from_id": "api:MetricStatus",
      "to_id": "api:ObjectMetricStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ObjectMetricStatus"
        }
      ]
    },
    {
      "from_id": "api:MetricStatus",
      "to_id": "api:ContainerResourceMetricStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ContainerResourceMetricStatus"
        }
      ]
    },
    {
      "from_id": "api:MetricStatus",
      "to_id": "api:ResourceMetricStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ResourceMetricStatus"
        }
      ]
    },
    {
      "from_id": "api:MetricStatus",
      "to_id": "api:PodsMetricStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.PodsMetricStatus"
        }
      ]
    },
    {
      "from_id": "api:MetricStatus",
      "to_id": "api:ExternalMetricStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.ExternalMetricStatus"
        }
      ]
    },
    {
      "from_id": "api:MetricTarget",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:MetricValueStatus",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:ObjectMetricSource",
      "to_id": "api:CrossVersionObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.CrossVersionObjectReference"
        }
      ]
    },
    {
      "from_id": "api:ObjectMetricSource",
      "to_id": "api:MetricTarget",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricTarget"
        }
      ]
    },
    {
      "from_id": "api:ObjectMetricSource",
      "to_id": "api:MetricIdentifier",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricIdentifier"
        }
      ]
    },
    {
      "from_id": "api:ObjectMetricStatus",
      "to_id": "api:MetricValueStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricValueStatus"
        }
      ]
    },
    {
      "from_id": "api:ObjectMetricStatus",
      "to_id": "api:CrossVersionObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.CrossVersionObjectReference"
        }
      ]
    },
    {
      "from_id": "api:ObjectMetricStatus",
      "to_id": "api:MetricIdentifier",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricIdentifier"
        }
      ]
    },
    {
      "from_id": "api:PodsMetricSource",
      "to_id": "api:MetricTarget",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricTarget"
        }
      ]
    },
    {
      "from_id": "api:PodsMetricSource",
      "to_id": "api:MetricIdentifier",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricIdentifier"
        }
      ]
    },
    {
      "from_id": "api:PodsMetricStatus",
      "to_id": "api:MetricValueStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricValueStatus"
        }
      ]
    },
    {
      "from_id": "api:PodsMetricStatus",
      "to_id": "api:MetricIdentifier",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricIdentifier"
        }
      ]
    },
    {
      "from_id": "api:ResourceMetricSource",
      "to_id": "api:MetricTarget",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricTarget"
        }
      ]
    },
    {
      "from_id": "api:ResourceMetricStatus",
      "to_id": "api:MetricValueStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.autoscaling.v2.MetricValueStatus"
        }
      ]
    },
    {
      "from_id": "api:CronJob",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:CronJob",
      "to_id": "api:CronJobSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.CronJobSpec"
        }
      ]
    },
    {
      "from_id": "api:CronJob",
      "to_id": "api:CronJobStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.CronJobStatus"
        }
      ]
    },
    {
      "from_id": "api:CronJobList",
      "to_id": "api:CronJob",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.CronJob"
        }
      ]
    },
    {
      "from_id": "api:CronJobList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:CronJobSpec",
      "to_id": "api:JobTemplateSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.JobTemplateSpec"
        }
      ]
    },
    {
      "from_id": "api:CronJobStatus",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:CronJobStatus",
      "to_id": "api:ObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectReference"
        }
      ]
    },
    {
      "from_id": "api:Job",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Job",
      "to_id": "api:JobStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.JobStatus"
        }
      ]
    },
    {
      "from_id": "api:Job",
      "to_id": "api:JobSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.JobSpec"
        }
      ]
    },
    {
      "from_id": "api:JobCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:JobList",
      "to_id": "api:Job",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.Job"
        }
      ]
    },
    {
      "from_id": "api:JobList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:JobSpec",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:JobSpec",
      "to_id": "api:PodFailurePolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.PodFailurePolicy"
        }
      ]
    },
    {
      "from_id": "api:JobSpec",
      "to_id": "api:SuccessPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.SuccessPolicy"
        }
      ]
    },
    {
      "from_id": "api:JobSpec",
      "to_id": "api:PodTemplateSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplateSpec"
        }
      ]
    },
    {
      "from_id": "api:JobStatus",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:JobStatus",
      "to_id": "api:JobCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.JobCondition"
        }
      ]
    },
    {
      "from_id": "api:JobStatus",
      "to_id": "api:UncountedTerminatedPods",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.UncountedTerminatedPods"
        }
      ]
    },
    {
      "from_id": "api:JobTemplateSpec",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:JobTemplateSpec",
      "to_id": "api:JobSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.JobSpec"
        }
      ]
    },
    {
      "from_id": "api:PodFailurePolicy",
      "to_id": "api:PodFailurePolicyRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.PodFailurePolicyRule"
        }
      ]
    },
    {
      "from_id": "api:PodFailurePolicyRule",
      "to_id": "api:PodFailurePolicyOnPodConditionsPattern",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.PodFailurePolicyOnPodConditionsPattern"
        }
      ]
    },
    {
      "from_id": "api:PodFailurePolicyRule",
      "to_id": "api:PodFailurePolicyOnExitCodesRequirement",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.PodFailurePolicyOnExitCodesRequirement"
        }
      ]
    },
    {
      "from_id": "api:SuccessPolicy",
      "to_id": "api:SuccessPolicyRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.batch.v1.SuccessPolicyRule"
        }
      ]
    },
    {
      "from_id": "api:CertificateSigningRequest",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:CertificateSigningRequest",
      "to_id": "api:CertificateSigningRequestStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.CertificateSigningRequestStatus"
        }
      ]
    },
    {
      "from_id": "api:CertificateSigningRequest",
      "to_id": "api:CertificateSigningRequestSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.CertificateSigningRequestSpec"
        }
      ]
    },
    {
      "from_id": "api:CertificateSigningRequestCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:CertificateSigningRequestList",
      "to_id": "api:CertificateSigningRequest",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.CertificateSigningRequest"
        }
      ]
    },
    {
      "from_id": "api:CertificateSigningRequestList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:CertificateSigningRequestStatus",
      "to_id": "api:CertificateSigningRequestCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.CertificateSigningRequestCondition"
        }
      ]
    },
    {
      "from_id": "api:ClusterTrustBundle",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ClusterTrustBundle",
      "to_id": "api:ClusterTrustBundleSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.ClusterTrustBundleSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.ClusterTrustBundleSpec"
        }
      ]
    },
    {
      "from_id": "api:ClusterTrustBundleList",
      "to_id": "api:ClusterTrustBundle",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1.ClusterTrustBundle"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.ClusterTrustBundle"
        }
      ]
    },
    {
      "from_id": "api:ClusterTrustBundleList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:PodCertificateRequest",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:PodCertificateRequest",
      "to_id": "api:PodCertificateRequestStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.PodCertificateRequestStatus"
        }
      ]
    },
    {
      "from_id": "api:PodCertificateRequest",
      "to_id": "api:PodCertificateRequestSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.PodCertificateRequestSpec"
        }
      ]
    },
    {
      "from_id": "api:PodCertificateRequestList",
      "to_id": "api:PodCertificateRequest",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.certificates.v1beta1.PodCertificateRequest"
        }
      ]
    },
    {
      "from_id": "api:PodCertificateRequestList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:PodCertificateRequestStatus",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:PodCertificateRequestStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:Lease",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Lease",
      "to_id": "api:LeaseSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1.LeaseSpec"
        }
      ]
    },
    {
      "from_id": "api:LeaseList",
      "to_id": "api:Lease",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1.Lease"
        }
      ]
    },
    {
      "from_id": "api:LeaseList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:LeaseSpec",
      "to_id": "api:MicroTime",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.MicroTime"
        }
      ]
    },
    {
      "from_id": "api:LeaseCandidate",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:LeaseCandidate",
      "to_id": "api:LeaseCandidateSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1alpha2.LeaseCandidateSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1beta1.LeaseCandidateSpec"
        }
      ]
    },
    {
      "from_id": "api:LeaseCandidateList",
      "to_id": "api:LeaseCandidate",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1alpha2.LeaseCandidate"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.coordination.v1beta1.LeaseCandidate"
        }
      ]
    },
    {
      "from_id": "api:LeaseCandidateList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:LeaseCandidateSpec",
      "to_id": "api:MicroTime",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.MicroTime"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.MicroTime"
        }
      ]
    },
    {
      "from_id": "api:Affinity",
      "to_id": "api:PodAffinity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodAffinity"
        }
      ]
    },
    {
      "from_id": "api:Affinity",
      "to_id": "api:PodAntiAffinity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodAntiAffinity"
        }
      ]
    },
    {
      "from_id": "api:Affinity",
      "to_id": "api:NodeAffinity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeAffinity"
        }
      ]
    },
    {
      "from_id": "api:Binding",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Binding",
      "to_id": "api:ObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectReference"
        }
      ]
    },
    {
      "from_id": "api:CSIPersistentVolumeSource",
      "to_id": "api:SecretReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretReference"
        }
      ]
    },
    {
      "from_id": "api:CSIVolumeSource",
      "to_id": "api:LocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:CephFSPersistentVolumeSource",
      "to_id": "api:SecretReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretReference"
        }
      ]
    },
    {
      "from_id": "api:CephFSVolumeSource",
      "to_id": "api:LocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:CinderPersistentVolumeSource",
      "to_id": "api:SecretReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretReference"
        }
      ]
    },
    {
      "from_id": "api:CinderVolumeSource",
      "to_id": "api:LocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:ClusterTrustBundleProjection",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:ComponentStatus",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ComponentStatus",
      "to_id": "api:ComponentCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ComponentCondition"
        }
      ]
    },
    {
      "from_id": "api:ComponentStatusList",
      "to_id": "api:ComponentStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ComponentStatus"
        }
      ]
    },
    {
      "from_id": "api:ComponentStatusList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ConfigMap",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ConfigMapList",
      "to_id": "api:ConfigMap",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMap"
        }
      ]
    },
    {
      "from_id": "api:ConfigMapList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ConfigMapProjection",
      "to_id": "api:KeyToPath",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.KeyToPath"
        }
      ]
    },
    {
      "from_id": "api:ConfigMapVolumeSource",
      "to_id": "api:KeyToPath",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.KeyToPath"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:Probe",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Probe"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:ContainerPort",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerPort"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:EnvVar",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EnvVar"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:ContainerResizePolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerResizePolicy"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:ResourceRequirements",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceRequirements"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:ContainerRestartRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerRestartRule"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:Lifecycle",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Lifecycle"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:VolumeDevice",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeDevice"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:SecurityContext",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecurityContext"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:EnvFromSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EnvFromSource"
        }
      ]
    },
    {
      "from_id": "api:Container",
      "to_id": "api:VolumeMount",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeMount"
        }
      ]
    },
    {
      "from_id": "api:ContainerRestartRule",
      "to_id": "api:ContainerRestartRuleOnExitCodes",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerRestartRuleOnExitCodes"
        }
      ]
    },
    {
      "from_id": "api:ContainerState",
      "to_id": "api:ContainerStateTerminated",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerStateTerminated"
        }
      ]
    },
    {
      "from_id": "api:ContainerState",
      "to_id": "api:ContainerStateRunning",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerStateRunning"
        }
      ]
    },
    {
      "from_id": "api:ContainerState",
      "to_id": "api:ContainerStateWaiting",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerStateWaiting"
        }
      ]
    },
    {
      "from_id": "api:ContainerStateRunning",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:ContainerStateTerminated",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:ContainerStatus",
      "to_id": "api:ContainerState",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerState"
        }
      ]
    },
    {
      "from_id": "api:ContainerStatus",
      "to_id": "api:ResourceStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceStatus"
        }
      ]
    },
    {
      "from_id": "api:ContainerStatus",
      "to_id": "api:ResourceRequirements",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceRequirements"
        }
      ]
    },
    {
      "from_id": "api:ContainerStatus",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:ContainerStatus",
      "to_id": "api:VolumeMountStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeMountStatus"
        }
      ]
    },
    {
      "from_id": "api:ContainerStatus",
      "to_id": "api:ContainerUser",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerUser"
        }
      ]
    },
    {
      "from_id": "api:ContainerUser",
      "to_id": "api:LinuxContainerUser",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LinuxContainerUser"
        }
      ]
    },
    {
      "from_id": "api:DownwardAPIProjection",
      "to_id": "api:DownwardAPIVolumeFile",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.DownwardAPIVolumeFile"
        }
      ]
    },
    {
      "from_id": "api:DownwardAPIVolumeFile",
      "to_id": "api:ResourceFieldSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceFieldSelector"
        }
      ]
    },
    {
      "from_id": "api:DownwardAPIVolumeFile",
      "to_id": "api:ObjectFieldSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectFieldSelector"
        }
      ]
    },
    {
      "from_id": "api:DownwardAPIVolumeSource",
      "to_id": "api:DownwardAPIVolumeFile",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.DownwardAPIVolumeFile"
        }
      ]
    },
    {
      "from_id": "api:EmptyDirVolumeSource",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:EndpointAddress",
      "to_id": "api:ObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectReference"
        }
      ]
    },
    {
      "from_id": "api:EndpointSubset",
      "to_id": "api:EndpointAddress",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EndpointAddress"
        }
      ]
    },
    {
      "from_id": "api:EndpointSubset",
      "to_id": "api:EndpointPort",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EndpointPort"
        }
      ]
    },
    {
      "from_id": "api:Endpoints",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Endpoints",
      "to_id": "api:EndpointSubset",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EndpointSubset"
        }
      ]
    },
    {
      "from_id": "api:EndpointsList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:EndpointsList",
      "to_id": "api:Endpoints",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Endpoints"
        }
      ]
    },
    {
      "from_id": "api:EnvFromSource",
      "to_id": "api:ConfigMapEnvSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapEnvSource"
        }
      ]
    },
    {
      "from_id": "api:EnvFromSource",
      "to_id": "api:SecretEnvSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretEnvSource"
        }
      ]
    },
    {
      "from_id": "api:EnvVar",
      "to_id": "api:EnvVarSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EnvVarSource"
        }
      ]
    },
    {
      "from_id": "api:EnvVarSource",
      "to_id": "api:ResourceFieldSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceFieldSelector"
        }
      ]
    },
    {
      "from_id": "api:EnvVarSource",
      "to_id": "api:FileKeySelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FileKeySelector"
        }
      ]
    },
    {
      "from_id": "api:EnvVarSource",
      "to_id": "api:ObjectFieldSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectFieldSelector"
        }
      ]
    },
    {
      "from_id": "api:EnvVarSource",
      "to_id": "api:SecretKeySelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretKeySelector"
        }
      ]
    },
    {
      "from_id": "api:EnvVarSource",
      "to_id": "api:ConfigMapKeySelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapKeySelector"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:Probe",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Probe"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:ContainerPort",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerPort"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:EnvVar",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EnvVar"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:ContainerResizePolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerResizePolicy"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:ResourceRequirements",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceRequirements"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:ContainerRestartRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerRestartRule"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:Lifecycle",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Lifecycle"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:VolumeDevice",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeDevice"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:SecurityContext",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecurityContext"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:EnvFromSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EnvFromSource"
        }
      ]
    },
    {
      "from_id": "api:EphemeralContainer",
      "to_id": "api:VolumeMount",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeMount"
        }
      ]
    },
    {
      "from_id": "api:EphemeralVolumeSource",
      "to_id": "api:PersistentVolumeClaimTemplate",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimTemplate"
        }
      ]
    },
    {
      "from_id": "api:Event",
      "to_id": "api:EventSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EventSource"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EventSource"
        }
      ]
    },
    {
      "from_id": "api:Event",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Event",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:Event",
      "to_id": "api:EventSeries",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EventSeries"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.events.v1.EventSeries"
        }
      ]
    },
    {
      "from_id": "api:Event",
      "to_id": "api:MicroTime",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.MicroTime"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.MicroTime"
        }
      ]
    },
    {
      "from_id": "api:Event",
      "to_id": "api:ObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectReference"
        }
      ]
    },
    {
      "from_id": "api:EventList",
      "to_id": "api:Event",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Event"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.events.v1.Event"
        }
      ]
    },
    {
      "from_id": "api:EventList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:EventSeries",
      "to_id": "api:MicroTime",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.MicroTime"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.MicroTime"
        }
      ]
    },
    {
      "from_id": "api:FlexPersistentVolumeSource",
      "to_id": "api:SecretReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretReference"
        }
      ]
    },
    {
      "from_id": "api:FlexVolumeSource",
      "to_id": "api:LocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:HTTPGetAction",
      "to_id": "api:IntOrString",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.util.intstr.IntOrString"
        }
      ]
    },
    {
      "from_id": "api:HTTPGetAction",
      "to_id": "api:HTTPHeader",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HTTPHeader"
        }
      ]
    },
    {
      "from_id": "api:ISCSIPersistentVolumeSource",
      "to_id": "api:SecretReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretReference"
        }
      ]
    },
    {
      "from_id": "api:ISCSIVolumeSource",
      "to_id": "api:LocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:Lifecycle",
      "to_id": "api:LifecycleHandler",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LifecycleHandler"
        }
      ]
    },
    {
      "from_id": "api:LifecycleHandler",
      "to_id": "api:HTTPGetAction",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HTTPGetAction"
        }
      ]
    },
    {
      "from_id": "api:LifecycleHandler",
      "to_id": "api:ExecAction",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ExecAction"
        }
      ]
    },
    {
      "from_id": "api:LifecycleHandler",
      "to_id": "api:SleepAction",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SleepAction"
        }
      ]
    },
    {
      "from_id": "api:LifecycleHandler",
      "to_id": "api:TCPSocketAction",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TCPSocketAction"
        }
      ]
    },
    {
      "from_id": "api:LimitRange",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:LimitRange",
      "to_id": "api:LimitRangeSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LimitRangeSpec"
        }
      ]
    },
    {
      "from_id": "api:LimitRangeItem",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:LimitRangeList",
      "to_id": "api:LimitRange",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LimitRange"
        }
      ]
    },
    {
      "from_id": "api:LimitRangeList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:LimitRangeSpec",
      "to_id": "api:LimitRangeItem",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LimitRangeItem"
        }
      ]
    },
    {
      "from_id": "api:LoadBalancerIngress",
      "to_id": "api:PortStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PortStatus"
        }
      ]
    },
    {
      "from_id": "api:LoadBalancerStatus",
      "to_id": "api:LoadBalancerIngress",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LoadBalancerIngress"
        }
      ]
    },
    {
      "from_id": "api:Namespace",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Namespace",
      "to_id": "api:NamespaceSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NamespaceSpec"
        }
      ]
    },
    {
      "from_id": "api:Namespace",
      "to_id": "api:NamespaceStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NamespaceStatus"
        }
      ]
    },
    {
      "from_id": "api:NamespaceCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:NamespaceList",
      "to_id": "api:Namespace",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Namespace"
        }
      ]
    },
    {
      "from_id": "api:NamespaceList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:NamespaceStatus",
      "to_id": "api:NamespaceCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NamespaceCondition"
        }
      ]
    },
    {
      "from_id": "api:Node",
      "to_id": "api:NodeSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSpec"
        }
      ]
    },
    {
      "from_id": "api:Node",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Node",
      "to_id": "api:NodeStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeStatus"
        }
      ]
    },
    {
      "from_id": "api:NodeAffinity",
      "to_id": "api:PreferredSchedulingTerm",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PreferredSchedulingTerm"
        }
      ]
    },
    {
      "from_id": "api:NodeAffinity",
      "to_id": "api:NodeSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        }
      ]
    },
    {
      "from_id": "api:NodeAllocatableResourceClaimStatus",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:NodeCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:NodeConfigSource",
      "to_id": "api:ConfigMapNodeConfigSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapNodeConfigSource"
        }
      ]
    },
    {
      "from_id": "api:NodeConfigStatus",
      "to_id": "api:NodeConfigSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeConfigSource"
        }
      ]
    },
    {
      "from_id": "api:NodeDaemonEndpoints",
      "to_id": "api:DaemonEndpoint",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.DaemonEndpoint"
        }
      ]
    },
    {
      "from_id": "api:NodeList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:NodeList",
      "to_id": "api:Node",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Node"
        }
      ]
    },
    {
      "from_id": "api:NodeRuntimeHandler",
      "to_id": "api:NodeRuntimeHandlerFeatures",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeRuntimeHandlerFeatures"
        }
      ]
    },
    {
      "from_id": "api:NodeSelector",
      "to_id": "api:NodeSelectorTerm",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelectorTerm"
        }
      ]
    },
    {
      "from_id": "api:NodeSelectorTerm",
      "to_id": "api:NodeSelectorRequirement",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelectorRequirement"
        }
      ]
    },
    {
      "from_id": "api:NodeSpec",
      "to_id": "api:Taint",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Taint"
        }
      ]
    },
    {
      "from_id": "api:NodeSpec",
      "to_id": "api:NodeConfigSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeConfigSource"
        }
      ]
    },
    {
      "from_id": "api:NodeStatus",
      "to_id": "api:ContainerImage",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerImage"
        }
      ]
    },
    {
      "from_id": "api:NodeStatus",
      "to_id": "api:NodeConfigStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeConfigStatus"
        }
      ]
    },
    {
      "from_id": "api:NodeStatus",
      "to_id": "api:NodeDaemonEndpoints",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeDaemonEndpoints"
        }
      ]
    },
    {
      "from_id": "api:NodeStatus",
      "to_id": "api:NodeSystemInfo",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSystemInfo"
        }
      ]
    },
    {
      "from_id": "api:NodeStatus",
      "to_id": "api:AttachedVolume",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AttachedVolume"
        }
      ]
    },
    {
      "from_id": "api:NodeStatus",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:NodeStatus",
      "to_id": "api:NodeCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeCondition"
        }
      ]
    },
    {
      "from_id": "api:NodeStatus",
      "to_id": "api:NodeRuntimeHandler",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeRuntimeHandler"
        }
      ]
    },
    {
      "from_id": "api:NodeStatus",
      "to_id": "api:NodeAddress",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeAddress"
        }
      ]
    },
    {
      "from_id": "api:NodeStatus",
      "to_id": "api:NodeFeatures",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeFeatures"
        }
      ]
    },
    {
      "from_id": "api:NodeSystemInfo",
      "to_id": "api:NodeSwapStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSwapStatus"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolume",
      "to_id": "api:PersistentVolumeStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeStatus"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolume",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolume",
      "to_id": "api:PersistentVolumeSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeSpec"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaim",
      "to_id": "api:PersistentVolumeClaimSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimSpec"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaim",
      "to_id": "api:PersistentVolumeClaimStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimStatus"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaim",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimList",
      "to_id": "api:PersistentVolumeClaim",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaim"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimSpec",
      "to_id": "api:TypedLocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TypedLocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimSpec",
      "to_id": "api:TypedObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TypedObjectReference"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimSpec",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimSpec",
      "to_id": "api:VolumeResourceRequirements",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeResourceRequirements"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimStatus",
      "to_id": "api:PersistentVolumeClaimCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimCondition"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimStatus",
      "to_id": "api:ModifyVolumeStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ModifyVolumeStatus"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimStatus",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimTemplate",
      "to_id": "api:PersistentVolumeClaimSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimSpec"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeClaimTemplate",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeList",
      "to_id": "api:PersistentVolume",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolume"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:GCEPersistentDiskVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GCEPersistentDiskVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:CephFSPersistentVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CephFSPersistentVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:HostPathVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HostPathVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:LocalVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:AWSElasticBlockStoreVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AWSElasticBlockStoreVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:QuobyteVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.QuobyteVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:GlusterfsPersistentVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GlusterfsPersistentVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:FCVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FCVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:ScaleIOPersistentVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ScaleIOPersistentVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:StorageOSPersistentVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.StorageOSPersistentVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:PortworxVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PortworxVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:RBDPersistentVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.RBDPersistentVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:CSIPersistentVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CSIPersistentVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:CinderPersistentVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CinderPersistentVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:NFSVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NFSVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:FlexPersistentVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FlexPersistentVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:ObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectReference"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:AzureDiskVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AzureDiskVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:ISCSIPersistentVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ISCSIPersistentVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:FlockerVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FlockerVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:VolumeNodeAffinity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeNodeAffinity"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:AzureFilePersistentVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AzureFilePersistentVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:VsphereVirtualDiskVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VsphereVirtualDiskVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeSpec",
      "to_id": "api:PhotonPersistentDiskVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PhotonPersistentDiskVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:PersistentVolumeStatus",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:Pod",
      "to_id": "api:PodStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodStatus"
        }
      ]
    },
    {
      "from_id": "api:Pod",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Pod",
      "to_id": "api:PodSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodSpec"
        }
      ]
    },
    {
      "from_id": "api:PodAffinity",
      "to_id": "api:WeightedPodAffinityTerm",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.WeightedPodAffinityTerm"
        }
      ]
    },
    {
      "from_id": "api:PodAffinity",
      "to_id": "api:PodAffinityTerm",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodAffinityTerm"
        }
      ]
    },
    {
      "from_id": "api:PodAffinityTerm",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:PodAntiAffinity",
      "to_id": "api:WeightedPodAffinityTerm",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.WeightedPodAffinityTerm"
        }
      ]
    },
    {
      "from_id": "api:PodAntiAffinity",
      "to_id": "api:PodAffinityTerm",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodAffinityTerm"
        }
      ]
    },
    {
      "from_id": "api:PodCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:PodDNSConfig",
      "to_id": "api:PodDNSConfigOption",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodDNSConfigOption"
        }
      ]
    },
    {
      "from_id": "api:PodExtendedResourceClaimStatus",
      "to_id": "api:ContainerExtendedResourceRequest",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerExtendedResourceRequest"
        }
      ]
    },
    {
      "from_id": "api:PodList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:PodList",
      "to_id": "api:Pod",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Pod"
        }
      ]
    },
    {
      "from_id": "api:PodSecurityContext",
      "to_id": "api:AppArmorProfile",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AppArmorProfile"
        }
      ]
    },
    {
      "from_id": "api:PodSecurityContext",
      "to_id": "api:SELinuxOptions",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SELinuxOptions"
        }
      ]
    },
    {
      "from_id": "api:PodSecurityContext",
      "to_id": "api:WindowsSecurityContextOptions",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.WindowsSecurityContextOptions"
        }
      ]
    },
    {
      "from_id": "api:PodSecurityContext",
      "to_id": "api:Sysctl",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Sysctl"
        }
      ]
    },
    {
      "from_id": "api:PodSecurityContext",
      "to_id": "api:SeccompProfile",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SeccompProfile"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:Affinity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Affinity"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:Toleration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Toleration"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:Container",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Container"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:EphemeralContainer",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EphemeralContainer"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:ResourceRequirements",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceRequirements"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:Volume",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Volume"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:LocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:PodResourceClaim",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodResourceClaim"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:PodSchedulingGate",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodSchedulingGate"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:TopologySpreadConstraint",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TopologySpreadConstraint"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:PodDNSConfig",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodDNSConfig"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:PodSecurityContext",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodSecurityContext"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:PodSchedulingGroup",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodSchedulingGroup"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:PodReadinessGate",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodReadinessGate"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:HostAlias",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HostAlias"
        }
      ]
    },
    {
      "from_id": "api:PodSpec",
      "to_id": "api:PodOS",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodOS"
        }
      ]
    },
    {
      "from_id": "api:PodStatus",
      "to_id": "api:PodIP",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodIP"
        }
      ]
    },
    {
      "from_id": "api:PodStatus",
      "to_id": "api:ResourceRequirements",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceRequirements"
        }
      ]
    },
    {
      "from_id": "api:PodStatus",
      "to_id": "api:PodResourceClaimStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodResourceClaimStatus"
        }
      ]
    },
    {
      "from_id": "api:PodStatus",
      "to_id": "api:PodExtendedResourceClaimStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodExtendedResourceClaimStatus"
        }
      ]
    },
    {
      "from_id": "api:PodStatus",
      "to_id": "api:HostIP",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HostIP"
        }
      ]
    },
    {
      "from_id": "api:PodStatus",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:PodStatus",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:PodStatus",
      "to_id": "api:ContainerStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ContainerStatus"
        }
      ]
    },
    {
      "from_id": "api:PodStatus",
      "to_id": "api:PodCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodCondition"
        }
      ]
    },
    {
      "from_id": "api:PodStatus",
      "to_id": "api:NodeAllocatableResourceClaimStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeAllocatableResourceClaimStatus"
        }
      ]
    },
    {
      "from_id": "api:PodTemplate",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:PodTemplate",
      "to_id": "api:PodTemplateSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplateSpec"
        }
      ]
    },
    {
      "from_id": "api:PodTemplateList",
      "to_id": "api:PodTemplate",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplate"
        }
      ]
    },
    {
      "from_id": "api:PodTemplateList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:PodTemplateSpec",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:PodTemplateSpec",
      "to_id": "api:PodSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodSpec"
        }
      ]
    },
    {
      "from_id": "api:PreferredSchedulingTerm",
      "to_id": "api:NodeSelectorTerm",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelectorTerm"
        }
      ]
    },
    {
      "from_id": "api:Probe",
      "to_id": "api:HTTPGetAction",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HTTPGetAction"
        }
      ]
    },
    {
      "from_id": "api:Probe",
      "to_id": "api:ExecAction",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ExecAction"
        }
      ]
    },
    {
      "from_id": "api:Probe",
      "to_id": "api:TCPSocketAction",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TCPSocketAction"
        }
      ]
    },
    {
      "from_id": "api:Probe",
      "to_id": "api:GRPCAction",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GRPCAction"
        }
      ]
    },
    {
      "from_id": "api:ProjectedVolumeSource",
      "to_id": "api:VolumeProjection",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeProjection"
        }
      ]
    },
    {
      "from_id": "api:RBDPersistentVolumeSource",
      "to_id": "api:SecretReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretReference"
        }
      ]
    },
    {
      "from_id": "api:RBDVolumeSource",
      "to_id": "api:LocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:ReplicationController",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ReplicationController",
      "to_id": "api:ReplicationControllerSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ReplicationControllerSpec"
        }
      ]
    },
    {
      "from_id": "api:ReplicationController",
      "to_id": "api:ReplicationControllerStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ReplicationControllerStatus"
        }
      ]
    },
    {
      "from_id": "api:ReplicationControllerCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:ReplicationControllerList",
      "to_id": "api:ReplicationController",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ReplicationController"
        }
      ]
    },
    {
      "from_id": "api:ReplicationControllerList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ReplicationControllerSpec",
      "to_id": "api:PodTemplateSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodTemplateSpec"
        }
      ]
    },
    {
      "from_id": "api:ReplicationControllerStatus",
      "to_id": "api:ReplicationControllerCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ReplicationControllerCondition"
        }
      ]
    },
    {
      "from_id": "api:ResourceFieldSelector",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:ResourceQuota",
      "to_id": "api:ResourceQuotaStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceQuotaStatus"
        }
      ]
    },
    {
      "from_id": "api:ResourceQuota",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourceQuota",
      "to_id": "api:ResourceQuotaSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceQuotaSpec"
        }
      ]
    },
    {
      "from_id": "api:ResourceQuotaList",
      "to_id": "api:ResourceQuota",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceQuota"
        }
      ]
    },
    {
      "from_id": "api:ResourceQuotaList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourceQuotaSpec",
      "to_id": "api:ScopeSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ScopeSelector"
        }
      ]
    },
    {
      "from_id": "api:ResourceQuotaSpec",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:ResourceQuotaStatus",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:ResourceRequirements",
      "to_id": "api:ResourceClaim",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceClaim"
        }
      ]
    },
    {
      "from_id": "api:ResourceRequirements",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:ResourceStatus",
      "to_id": "api:ResourceHealth",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ResourceHealth"
        }
      ]
    },
    {
      "from_id": "api:ScaleIOPersistentVolumeSource",
      "to_id": "api:SecretReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretReference"
        }
      ]
    },
    {
      "from_id": "api:ScaleIOVolumeSource",
      "to_id": "api:LocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:ScopeSelector",
      "to_id": "api:ScopedResourceSelectorRequirement",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ScopedResourceSelectorRequirement"
        }
      ]
    },
    {
      "from_id": "api:Secret",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:SecretList",
      "to_id": "api:Secret",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Secret"
        }
      ]
    },
    {
      "from_id": "api:SecretList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:SecretProjection",
      "to_id": "api:KeyToPath",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.KeyToPath"
        }
      ]
    },
    {
      "from_id": "api:SecretVolumeSource",
      "to_id": "api:KeyToPath",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.KeyToPath"
        }
      ]
    },
    {
      "from_id": "api:SecurityContext",
      "to_id": "api:AppArmorProfile",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AppArmorProfile"
        }
      ]
    },
    {
      "from_id": "api:SecurityContext",
      "to_id": "api:SELinuxOptions",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SELinuxOptions"
        }
      ]
    },
    {
      "from_id": "api:SecurityContext",
      "to_id": "api:WindowsSecurityContextOptions",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.WindowsSecurityContextOptions"
        }
      ]
    },
    {
      "from_id": "api:SecurityContext",
      "to_id": "api:Capabilities",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Capabilities"
        }
      ]
    },
    {
      "from_id": "api:SecurityContext",
      "to_id": "api:SeccompProfile",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SeccompProfile"
        }
      ]
    },
    {
      "from_id": "api:Service",
      "to_id": "api:ServiceStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServiceStatus"
        }
      ]
    },
    {
      "from_id": "api:Service",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Service",
      "to_id": "api:ServiceSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServiceSpec"
        }
      ]
    },
    {
      "from_id": "api:ServiceAccount",
      "to_id": "api:LocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:ServiceAccount",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ServiceAccount",
      "to_id": "api:ObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectReference"
        }
      ]
    },
    {
      "from_id": "api:ServiceAccountList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ServiceAccountList",
      "to_id": "api:ServiceAccount",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServiceAccount"
        }
      ]
    },
    {
      "from_id": "api:ServiceList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ServiceList",
      "to_id": "api:Service",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Service"
        }
      ]
    },
    {
      "from_id": "api:ServicePort",
      "to_id": "api:IntOrString",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.util.intstr.IntOrString"
        }
      ]
    },
    {
      "from_id": "api:ServiceSpec",
      "to_id": "api:ServicePort",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServicePort"
        }
      ]
    },
    {
      "from_id": "api:ServiceSpec",
      "to_id": "api:SessionAffinityConfig",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SessionAffinityConfig"
        }
      ]
    },
    {
      "from_id": "api:ServiceStatus",
      "to_id": "api:LoadBalancerStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LoadBalancerStatus"
        }
      ]
    },
    {
      "from_id": "api:ServiceStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:SessionAffinityConfig",
      "to_id": "api:ClientIPConfig",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ClientIPConfig"
        }
      ]
    },
    {
      "from_id": "api:StorageOSPersistentVolumeSource",
      "to_id": "api:ObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectReference"
        }
      ]
    },
    {
      "from_id": "api:StorageOSVolumeSource",
      "to_id": "api:LocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.LocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:TCPSocketAction",
      "to_id": "api:IntOrString",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.util.intstr.IntOrString"
        }
      ]
    },
    {
      "from_id": "api:Taint",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:TopologySelectorTerm",
      "to_id": "api:TopologySelectorLabelRequirement",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TopologySelectorLabelRequirement"
        }
      ]
    },
    {
      "from_id": "api:TopologySpreadConstraint",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:GCEPersistentDiskVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GCEPersistentDiskVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:HostPathVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.HostPathVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:QuobyteVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.QuobyteVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:StorageOSVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.StorageOSVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:CinderVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CinderVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:ConfigMapVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:ScaleIOVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ScaleIOVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:CephFSVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CephFSVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:PersistentVolumeClaimVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeClaimVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:DownwardAPIVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.DownwardAPIVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:EmptyDirVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EmptyDirVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:AzureFileVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AzureFileVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:ProjectedVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ProjectedVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:FCVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FCVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:EphemeralVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.EphemeralVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:GitRepoVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GitRepoVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:PortworxVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PortworxVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:RBDVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.RBDVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:CSIVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.CSIVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:NFSVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NFSVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:AzureDiskVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AzureDiskVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:PhotonPersistentDiskVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PhotonPersistentDiskVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:FlockerVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FlockerVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:SecretVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:ISCSIVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ISCSIVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:FlexVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.FlexVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:GlusterfsVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.GlusterfsVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:ImageVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ImageVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:VsphereVirtualDiskVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VsphereVirtualDiskVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:Volume",
      "to_id": "api:AWSElasticBlockStoreVolumeSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.AWSElasticBlockStoreVolumeSource"
        }
      ]
    },
    {
      "from_id": "api:VolumeMountStatus",
      "to_id": "api:VolumeStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.VolumeStatus"
        }
      ]
    },
    {
      "from_id": "api:VolumeNodeAffinity",
      "to_id": "api:NodeSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        }
      ]
    },
    {
      "from_id": "api:VolumeProjection",
      "to_id": "api:PodCertificateProjection",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodCertificateProjection"
        }
      ]
    },
    {
      "from_id": "api:VolumeProjection",
      "to_id": "api:ConfigMapProjection",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ConfigMapProjection"
        }
      ]
    },
    {
      "from_id": "api:VolumeProjection",
      "to_id": "api:SecretProjection",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.SecretProjection"
        }
      ]
    },
    {
      "from_id": "api:VolumeProjection",
      "to_id": "api:DownwardAPIProjection",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.DownwardAPIProjection"
        }
      ]
    },
    {
      "from_id": "api:VolumeProjection",
      "to_id": "api:ServiceAccountTokenProjection",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ServiceAccountTokenProjection"
        }
      ]
    },
    {
      "from_id": "api:VolumeProjection",
      "to_id": "api:ClusterTrustBundleProjection",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ClusterTrustBundleProjection"
        }
      ]
    },
    {
      "from_id": "api:VolumeResourceRequirements",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:VolumeStatus",
      "to_id": "api:ImageVolumeStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ImageVolumeStatus"
        }
      ]
    },
    {
      "from_id": "api:WeightedPodAffinityTerm",
      "to_id": "api:PodAffinityTerm",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PodAffinityTerm"
        }
      ]
    },
    {
      "from_id": "api:Endpoint",
      "to_id": "api:EndpointConditions",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.EndpointConditions"
        }
      ]
    },
    {
      "from_id": "api:Endpoint",
      "to_id": "api:ObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.ObjectReference"
        }
      ]
    },
    {
      "from_id": "api:Endpoint",
      "to_id": "api:EndpointHints",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.EndpointHints"
        }
      ]
    },
    {
      "from_id": "api:EndpointHints",
      "to_id": "api:ForZone",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.ForZone"
        }
      ]
    },
    {
      "from_id": "api:EndpointHints",
      "to_id": "api:ForNode",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.ForNode"
        }
      ]
    },
    {
      "from_id": "api:EndpointSlice",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:EndpointSlice",
      "to_id": "api:Endpoint",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.Endpoint"
        }
      ]
    },
    {
      "from_id": "api:EndpointSlice",
      "to_id": "api:EndpointPort",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.EndpointPort"
        }
      ]
    },
    {
      "from_id": "api:EndpointSliceList",
      "to_id": "api:EndpointSlice",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.discovery.v1.EndpointSlice"
        }
      ]
    },
    {
      "from_id": "api:EndpointSliceList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:FlowSchema",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:FlowSchema",
      "to_id": "api:FlowSchemaSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowSchemaSpec"
        }
      ]
    },
    {
      "from_id": "api:FlowSchema",
      "to_id": "api:FlowSchemaStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowSchemaStatus"
        }
      ]
    },
    {
      "from_id": "api:FlowSchemaCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:FlowSchemaList",
      "to_id": "api:FlowSchema",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowSchema"
        }
      ]
    },
    {
      "from_id": "api:FlowSchemaList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:FlowSchemaSpec",
      "to_id": "api:FlowDistinguisherMethod",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowDistinguisherMethod"
        }
      ]
    },
    {
      "from_id": "api:FlowSchemaSpec",
      "to_id": "api:PriorityLevelConfigurationReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationReference"
        }
      ]
    },
    {
      "from_id": "api:FlowSchemaSpec",
      "to_id": "api:PolicyRulesWithSubjects",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PolicyRulesWithSubjects"
        }
      ]
    },
    {
      "from_id": "api:FlowSchemaStatus",
      "to_id": "api:FlowSchemaCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.FlowSchemaCondition"
        }
      ]
    },
    {
      "from_id": "api:LimitResponse",
      "to_id": "api:QueuingConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.QueuingConfiguration"
        }
      ]
    },
    {
      "from_id": "api:LimitedPriorityLevelConfiguration",
      "to_id": "api:LimitResponse",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.LimitResponse"
        }
      ]
    },
    {
      "from_id": "api:PolicyRulesWithSubjects",
      "to_id": "api:ResourcePolicyRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.ResourcePolicyRule"
        }
      ]
    },
    {
      "from_id": "api:PolicyRulesWithSubjects",
      "to_id": "api:NonResourcePolicyRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.NonResourcePolicyRule"
        }
      ]
    },
    {
      "from_id": "api:PolicyRulesWithSubjects",
      "to_id": "api:Subject",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.Subject"
        }
      ]
    },
    {
      "from_id": "api:PriorityLevelConfiguration",
      "to_id": "api:PriorityLevelConfigurationSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationSpec"
        }
      ]
    },
    {
      "from_id": "api:PriorityLevelConfiguration",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:PriorityLevelConfiguration",
      "to_id": "api:PriorityLevelConfigurationStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationStatus"
        }
      ]
    },
    {
      "from_id": "api:PriorityLevelConfigurationCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:PriorityLevelConfigurationList",
      "to_id": "api:PriorityLevelConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfiguration"
        }
      ]
    },
    {
      "from_id": "api:PriorityLevelConfigurationList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:PriorityLevelConfigurationSpec",
      "to_id": "api:ExemptPriorityLevelConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.ExemptPriorityLevelConfiguration"
        }
      ]
    },
    {
      "from_id": "api:PriorityLevelConfigurationSpec",
      "to_id": "api:LimitedPriorityLevelConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.LimitedPriorityLevelConfiguration"
        }
      ]
    },
    {
      "from_id": "api:PriorityLevelConfigurationStatus",
      "to_id": "api:PriorityLevelConfigurationCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.PriorityLevelConfigurationCondition"
        }
      ]
    },
    {
      "from_id": "api:Subject",
      "to_id": "api:GroupSubject",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.GroupSubject"
        }
      ]
    },
    {
      "from_id": "api:Subject",
      "to_id": "api:UserSubject",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.UserSubject"
        }
      ]
    },
    {
      "from_id": "api:Subject",
      "to_id": "api:ServiceAccountSubject",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.flowcontrol.v1.ServiceAccountSubject"
        }
      ]
    },
    {
      "from_id": "api:HTTPIngressPath",
      "to_id": "api:IngressBackend",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressBackend"
        }
      ]
    },
    {
      "from_id": "api:HTTPIngressRuleValue",
      "to_id": "api:HTTPIngressPath",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.HTTPIngressPath"
        }
      ]
    },
    {
      "from_id": "api:IPAddress",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:IPAddress",
      "to_id": "api:IPAddressSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IPAddressSpec"
        }
      ]
    },
    {
      "from_id": "api:IPAddressList",
      "to_id": "api:IPAddress",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IPAddress"
        }
      ]
    },
    {
      "from_id": "api:IPAddressList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:IPAddressSpec",
      "to_id": "api:ParentReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ParentReference"
        }
      ]
    },
    {
      "from_id": "api:Ingress",
      "to_id": "api:IngressSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressSpec"
        }
      ]
    },
    {
      "from_id": "api:Ingress",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Ingress",
      "to_id": "api:IngressStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressStatus"
        }
      ]
    },
    {
      "from_id": "api:IngressBackend",
      "to_id": "api:TypedLocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TypedLocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:IngressBackend",
      "to_id": "api:IngressServiceBackend",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressServiceBackend"
        }
      ]
    },
    {
      "from_id": "api:IngressClass",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:IngressClass",
      "to_id": "api:IngressClassSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressClassSpec"
        }
      ]
    },
    {
      "from_id": "api:IngressClassList",
      "to_id": "api:IngressClass",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressClass"
        }
      ]
    },
    {
      "from_id": "api:IngressClassList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:IngressClassSpec",
      "to_id": "api:IngressClassParametersReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressClassParametersReference"
        }
      ]
    },
    {
      "from_id": "api:IngressList",
      "to_id": "api:Ingress",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.Ingress"
        }
      ]
    },
    {
      "from_id": "api:IngressList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:IngressLoadBalancerIngress",
      "to_id": "api:IngressPortStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressPortStatus"
        }
      ]
    },
    {
      "from_id": "api:IngressLoadBalancerStatus",
      "to_id": "api:IngressLoadBalancerIngress",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressLoadBalancerIngress"
        }
      ]
    },
    {
      "from_id": "api:IngressRule",
      "to_id": "api:HTTPIngressRuleValue",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.HTTPIngressRuleValue"
        }
      ]
    },
    {
      "from_id": "api:IngressServiceBackend",
      "to_id": "api:ServiceBackendPort",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ServiceBackendPort"
        }
      ]
    },
    {
      "from_id": "api:IngressSpec",
      "to_id": "api:IngressBackend",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressBackend"
        }
      ]
    },
    {
      "from_id": "api:IngressSpec",
      "to_id": "api:IngressTLS",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressTLS"
        }
      ]
    },
    {
      "from_id": "api:IngressSpec",
      "to_id": "api:IngressRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressRule"
        }
      ]
    },
    {
      "from_id": "api:IngressStatus",
      "to_id": "api:IngressLoadBalancerStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IngressLoadBalancerStatus"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicy",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicy",
      "to_id": "api:NetworkPolicySpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicySpec"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicyEgressRule",
      "to_id": "api:NetworkPolicyPeer",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyPeer"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicyEgressRule",
      "to_id": "api:NetworkPolicyPort",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyPort"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicyIngressRule",
      "to_id": "api:NetworkPolicyPeer",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyPeer"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicyIngressRule",
      "to_id": "api:NetworkPolicyPort",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyPort"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicyList",
      "to_id": "api:NetworkPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicy"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicyList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicyPeer",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicyPeer",
      "to_id": "api:IPBlock",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.IPBlock"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicyPort",
      "to_id": "api:IntOrString",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.util.intstr.IntOrString"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicySpec",
      "to_id": "api:NetworkPolicyEgressRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyEgressRule"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicySpec",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:NetworkPolicySpec",
      "to_id": "api:NetworkPolicyIngressRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.NetworkPolicyIngressRule"
        }
      ]
    },
    {
      "from_id": "api:ServiceCIDR",
      "to_id": "api:ServiceCIDRSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ServiceCIDRSpec"
        }
      ]
    },
    {
      "from_id": "api:ServiceCIDR",
      "to_id": "api:ServiceCIDRStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ServiceCIDRStatus"
        }
      ]
    },
    {
      "from_id": "api:ServiceCIDR",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ServiceCIDRList",
      "to_id": "api:ServiceCIDR",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.networking.v1.ServiceCIDR"
        }
      ]
    },
    {
      "from_id": "api:ServiceCIDRList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ServiceCIDRStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:Overhead",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:RuntimeClass",
      "to_id": "api:Overhead",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.node.v1.Overhead"
        }
      ]
    },
    {
      "from_id": "api:RuntimeClass",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:RuntimeClass",
      "to_id": "api:Scheduling",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.node.v1.Scheduling"
        }
      ]
    },
    {
      "from_id": "api:RuntimeClassList",
      "to_id": "api:RuntimeClass",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.node.v1.RuntimeClass"
        }
      ]
    },
    {
      "from_id": "api:RuntimeClassList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:Scheduling",
      "to_id": "api:Toleration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.Toleration"
        }
      ]
    },
    {
      "from_id": "api:Eviction",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Eviction",
      "to_id": "api:DeleteOptions",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.DeleteOptions"
        }
      ]
    },
    {
      "from_id": "api:PodDisruptionBudget",
      "to_id": "api:PodDisruptionBudgetSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.policy.v1.PodDisruptionBudgetSpec"
        }
      ]
    },
    {
      "from_id": "api:PodDisruptionBudget",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:PodDisruptionBudget",
      "to_id": "api:PodDisruptionBudgetStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.policy.v1.PodDisruptionBudgetStatus"
        }
      ]
    },
    {
      "from_id": "api:PodDisruptionBudgetList",
      "to_id": "api:PodDisruptionBudget",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.policy.v1.PodDisruptionBudget"
        }
      ]
    },
    {
      "from_id": "api:PodDisruptionBudgetList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:PodDisruptionBudgetSpec",
      "to_id": "api:IntOrString",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.util.intstr.IntOrString"
        }
      ]
    },
    {
      "from_id": "api:PodDisruptionBudgetSpec",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:PodDisruptionBudgetStatus",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:PodDisruptionBudgetStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:AggregationRule",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:ClusterRole",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ClusterRole",
      "to_id": "api:PolicyRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.PolicyRule"
        }
      ]
    },
    {
      "from_id": "api:ClusterRole",
      "to_id": "api:AggregationRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.AggregationRule"
        }
      ]
    },
    {
      "from_id": "api:ClusterRoleBinding",
      "to_id": "api:Subject",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.Subject"
        }
      ]
    },
    {
      "from_id": "api:ClusterRoleBinding",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ClusterRoleBinding",
      "to_id": "api:RoleRef",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.RoleRef"
        }
      ]
    },
    {
      "from_id": "api:ClusterRoleBindingList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ClusterRoleBindingList",
      "to_id": "api:ClusterRoleBinding",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.ClusterRoleBinding"
        }
      ]
    },
    {
      "from_id": "api:ClusterRoleList",
      "to_id": "api:ClusterRole",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.ClusterRole"
        }
      ]
    },
    {
      "from_id": "api:ClusterRoleList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:Role",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Role",
      "to_id": "api:PolicyRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.PolicyRule"
        }
      ]
    },
    {
      "from_id": "api:RoleBinding",
      "to_id": "api:Subject",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.Subject"
        }
      ]
    },
    {
      "from_id": "api:RoleBinding",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:RoleBinding",
      "to_id": "api:RoleRef",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.RoleRef"
        }
      ]
    },
    {
      "from_id": "api:RoleBindingList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:RoleBindingList",
      "to_id": "api:RoleBinding",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.RoleBinding"
        }
      ]
    },
    {
      "from_id": "api:RoleList",
      "to_id": "api:Role",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.rbac.v1.Role"
        }
      ]
    },
    {
      "from_id": "api:RoleList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:AllocatedDeviceStatus",
      "to_id": "api:RawExtension",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.runtime.RawExtension"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.runtime.RawExtension"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.runtime.RawExtension"
        }
      ]
    },
    {
      "from_id": "api:AllocatedDeviceStatus",
      "to_id": "api:NetworkDeviceData",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.NetworkDeviceData"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.NetworkDeviceData"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.NetworkDeviceData"
        }
      ]
    },
    {
      "from_id": "api:AllocatedDeviceStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:AllocationResult",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:AllocationResult",
      "to_id": "api:NodeSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        }
      ]
    },
    {
      "from_id": "api:AllocationResult",
      "to_id": "api:DeviceAllocationResult",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceAllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceAllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceAllocationResult"
        }
      ]
    },
    {
      "from_id": "api:CapacityRequestPolicy",
      "to_id": "api:CapacityRequestPolicyRange",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CapacityRequestPolicyRange"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CapacityRequestPolicyRange"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CapacityRequestPolicyRange"
        }
      ]
    },
    {
      "from_id": "api:CapacityRequestPolicy",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:CapacityRequestPolicyRange",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:CapacityRequirements",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:Counter",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:CounterSet",
      "to_id": "api:Counter",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.Counter"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.Counter"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.Counter"
        }
      ]
    },
    {
      "from_id": "api:Device",
      "to_id": "api:NodeAllocatableResourceMapping",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.NodeAllocatableResourceMapping"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.NodeAllocatableResourceMapping"
        }
      ]
    },
    {
      "from_id": "api:Device",
      "to_id": "api:NodeSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        }
      ]
    },
    {
      "from_id": "api:Device",
      "to_id": "api:DeviceCounterConsumption",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceCounterConsumption"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceCounterConsumption"
        }
      ]
    },
    {
      "from_id": "api:Device",
      "to_id": "api:DeviceTaint",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaint"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaint"
        }
      ]
    },
    {
      "from_id": "api:Device",
      "to_id": "api:DeviceCapacity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceCapacity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceCapacity"
        }
      ]
    },
    {
      "from_id": "api:Device",
      "to_id": "api:DeviceAttribute",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceAttribute"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceAttribute"
        }
      ]
    },
    {
      "from_id": "api:DeviceAllocationConfiguration",
      "to_id": "api:OpaqueDeviceConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.OpaqueDeviceConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.OpaqueDeviceConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.OpaqueDeviceConfiguration"
        }
      ]
    },
    {
      "from_id": "api:DeviceAllocationResult",
      "to_id": "api:DeviceRequestAllocationResult",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceRequestAllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceRequestAllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceRequestAllocationResult"
        }
      ]
    },
    {
      "from_id": "api:DeviceAllocationResult",
      "to_id": "api:DeviceAllocationConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceAllocationConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceAllocationConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceAllocationConfiguration"
        }
      ]
    },
    {
      "from_id": "api:DeviceCapacity",
      "to_id": "api:CapacityRequestPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CapacityRequestPolicy"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CapacityRequestPolicy"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CapacityRequestPolicy"
        }
      ]
    },
    {
      "from_id": "api:DeviceCapacity",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:DeviceClaim",
      "to_id": "api:DeviceConstraint",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceConstraint"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceConstraint"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceConstraint"
        }
      ]
    },
    {
      "from_id": "api:DeviceClaim",
      "to_id": "api:DeviceClaimConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClaimConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClaimConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClaimConfiguration"
        }
      ]
    },
    {
      "from_id": "api:DeviceClaim",
      "to_id": "api:DeviceRequest",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceRequest"
        }
      ]
    },
    {
      "from_id": "api:DeviceClaimConfiguration",
      "to_id": "api:OpaqueDeviceConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.OpaqueDeviceConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.OpaqueDeviceConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.OpaqueDeviceConfiguration"
        }
      ]
    },
    {
      "from_id": "api:DeviceClass",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:DeviceClass",
      "to_id": "api:DeviceClassSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClassSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClassSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClassSpec"
        }
      ]
    },
    {
      "from_id": "api:DeviceClassConfiguration",
      "to_id": "api:OpaqueDeviceConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.OpaqueDeviceConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.OpaqueDeviceConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.OpaqueDeviceConfiguration"
        }
      ]
    },
    {
      "from_id": "api:DeviceClassList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:DeviceClassList",
      "to_id": "api:DeviceClass",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClass"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClass"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClass"
        }
      ]
    },
    {
      "from_id": "api:DeviceClassSpec",
      "to_id": "api:DeviceClassConfiguration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClassConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClassConfiguration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClassConfiguration"
        }
      ]
    },
    {
      "from_id": "api:DeviceClassSpec",
      "to_id": "api:DeviceSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceSelector"
        }
      ]
    },
    {
      "from_id": "api:DeviceCounterConsumption",
      "to_id": "api:Counter",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.Counter"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.Counter"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.Counter"
        }
      ]
    },
    {
      "from_id": "api:DeviceRequest",
      "to_id": "api:ExactDeviceRequest",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ExactDeviceRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ExactDeviceRequest"
        }
      ]
    },
    {
      "from_id": "api:DeviceRequest",
      "to_id": "api:DeviceSubRequest",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceSubRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceSubRequest"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceSubRequest"
        }
      ]
    },
    {
      "from_id": "api:DeviceRequestAllocationResult",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:DeviceRequestAllocationResult",
      "to_id": "api:DeviceToleration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceToleration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceToleration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceToleration"
        }
      ]
    },
    {
      "from_id": "api:DeviceSelector",
      "to_id": "api:CELDeviceSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CELDeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CELDeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CELDeviceSelector"
        }
      ]
    },
    {
      "from_id": "api:DeviceSubRequest",
      "to_id": "api:DeviceSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceSelector"
        }
      ]
    },
    {
      "from_id": "api:DeviceSubRequest",
      "to_id": "api:DeviceToleration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceToleration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceToleration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceToleration"
        }
      ]
    },
    {
      "from_id": "api:DeviceSubRequest",
      "to_id": "api:CapacityRequirements",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CapacityRequirements"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CapacityRequirements"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CapacityRequirements"
        }
      ]
    },
    {
      "from_id": "api:DeviceTaint",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:DeviceTaintRule",
      "to_id": "api:DeviceTaintRuleSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaintRuleSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaintRuleSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaintRuleSpec"
        }
      ]
    },
    {
      "from_id": "api:DeviceTaintRule",
      "to_id": "api:DeviceTaintRuleStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaintRuleStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaintRuleStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaintRuleStatus"
        }
      ]
    },
    {
      "from_id": "api:DeviceTaintRule",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:DeviceTaintRuleList",
      "to_id": "api:DeviceTaintRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaintRule"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaintRule"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaintRule"
        }
      ]
    },
    {
      "from_id": "api:DeviceTaintRuleList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:DeviceTaintRuleSpec",
      "to_id": "api:DeviceTaintSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaintSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaintSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaintSelector"
        }
      ]
    },
    {
      "from_id": "api:DeviceTaintRuleSpec",
      "to_id": "api:DeviceTaint",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceTaint"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.DeviceTaint"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceTaint"
        }
      ]
    },
    {
      "from_id": "api:DeviceTaintRuleStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:ExactDeviceRequest",
      "to_id": "api:DeviceSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceSelector"
        }
      ]
    },
    {
      "from_id": "api:ExactDeviceRequest",
      "to_id": "api:DeviceToleration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceToleration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceToleration"
        }
      ]
    },
    {
      "from_id": "api:ExactDeviceRequest",
      "to_id": "api:CapacityRequirements",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CapacityRequirements"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CapacityRequirements"
        }
      ]
    },
    {
      "from_id": "api:NodeAllocatableResourceMapping",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:OpaqueDeviceConfiguration",
      "to_id": "api:RawExtension",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.runtime.RawExtension"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.runtime.RawExtension"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.runtime.RawExtension"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaim",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaim",
      "to_id": "api:ResourceClaimSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimSpec"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaim",
      "to_id": "api:ResourceClaimStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimStatus"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimList",
      "to_id": "api:ResourceClaim",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaim"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaim"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaim"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimSpec",
      "to_id": "api:DeviceClaim",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.DeviceClaim"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceClaim"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.DeviceClaim"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimStatus",
      "to_id": "api:AllocatedDeviceStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.AllocatedDeviceStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.AllocatedDeviceStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.AllocatedDeviceStatus"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimStatus",
      "to_id": "api:AllocationResult",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.AllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.AllocationResult"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.AllocationResult"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimStatus",
      "to_id": "api:ResourceClaimConsumerReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimConsumerReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimConsumerReference"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimConsumerReference"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimTemplate",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimTemplate",
      "to_id": "api:ResourceClaimTemplateSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimTemplateSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimTemplateSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimTemplateSpec"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimTemplateList",
      "to_id": "api:ResourceClaimTemplate",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimTemplate"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimTemplate"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimTemplate"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimTemplateList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimTemplateSpec",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourceClaimTemplateSpec",
      "to_id": "api:ResourceClaimSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceClaimSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceClaimSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceClaimSpec"
        }
      ]
    },
    {
      "from_id": "api:ResourceSlice",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourceSlice",
      "to_id": "api:ResourceSliceSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceSliceSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceSliceSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceSliceSpec"
        }
      ]
    },
    {
      "from_id": "api:ResourceSliceList",
      "to_id": "api:ResourceSlice",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourceSlice"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourceSlice"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourceSlice"
        }
      ]
    },
    {
      "from_id": "api:ResourceSliceList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourceSliceSpec",
      "to_id": "api:Device",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.Device"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.Device"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.Device"
        }
      ]
    },
    {
      "from_id": "api:ResourceSliceSpec",
      "to_id": "api:CounterSet",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.CounterSet"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CounterSet"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.CounterSet"
        }
      ]
    },
    {
      "from_id": "api:ResourceSliceSpec",
      "to_id": "api:ResourcePool",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1.ResourcePool"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.ResourcePool"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta2.ResourcePool"
        }
      ]
    },
    {
      "from_id": "api:ResourceSliceSpec",
      "to_id": "api:NodeSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        }
      ]
    },
    {
      "from_id": "api:ResourcePoolStatusRequest",
      "to_id": "api:ResourcePoolStatusRequestSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequestSpec"
        }
      ]
    },
    {
      "from_id": "api:ResourcePoolStatusRequest",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourcePoolStatusRequest",
      "to_id": "api:ResourcePoolStatusRequestStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequestStatus"
        }
      ]
    },
    {
      "from_id": "api:ResourcePoolStatusRequestList",
      "to_id": "api:ResourcePoolStatusRequest",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.ResourcePoolStatusRequest"
        }
      ]
    },
    {
      "from_id": "api:ResourcePoolStatusRequestList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:ResourcePoolStatusRequestStatus",
      "to_id": "api:PoolStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1alpha3.PoolStatus"
        }
      ]
    },
    {
      "from_id": "api:ResourcePoolStatusRequestStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:BasicDevice",
      "to_id": "api:DeviceAttribute",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceAttribute"
        }
      ]
    },
    {
      "from_id": "api:BasicDevice",
      "to_id": "api:NodeAllocatableResourceMapping",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.NodeAllocatableResourceMapping"
        }
      ]
    },
    {
      "from_id": "api:BasicDevice",
      "to_id": "api:DeviceTaint",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceTaint"
        }
      ]
    },
    {
      "from_id": "api:BasicDevice",
      "to_id": "api:NodeSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.NodeSelector"
        }
      ]
    },
    {
      "from_id": "api:BasicDevice",
      "to_id": "api:DeviceCounterConsumption",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceCounterConsumption"
        }
      ]
    },
    {
      "from_id": "api:BasicDevice",
      "to_id": "api:DeviceCapacity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceCapacity"
        }
      ]
    },
    {
      "from_id": "api:Device",
      "to_id": "api:BasicDevice",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.BasicDevice"
        }
      ]
    },
    {
      "from_id": "api:DeviceRequest",
      "to_id": "api:DeviceSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceSelector"
        }
      ]
    },
    {
      "from_id": "api:DeviceRequest",
      "to_id": "api:CapacityRequirements",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.CapacityRequirements"
        }
      ]
    },
    {
      "from_id": "api:DeviceRequest",
      "to_id": "api:DeviceToleration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.resource.v1beta1.DeviceToleration"
        }
      ]
    },
    {
      "from_id": "api:PriorityClass",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:PriorityClassList",
      "to_id": "api:PriorityClass",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1.PriorityClass"
        }
      ]
    },
    {
      "from_id": "api:PriorityClassList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroup",
      "to_id": "api:CompositePodGroupStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupStatus"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroup",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroup",
      "to_id": "api:CompositePodGroupSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupSpec"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroupList",
      "to_id": "api:CompositePodGroup",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroup"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroupList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroupSchedulingPolicy",
      "to_id": "api:CompositeGangSchedulingPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositeGangSchedulingPolicy"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroupSchedulingPolicy",
      "to_id": "api:CompositeBasicSchedulingPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositeBasicSchedulingPolicy"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroupSpec",
      "to_id": "api:CompositePodGroupSchedulingPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupSchedulingPolicy"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroupSpec",
      "to_id": "api:WorkloadReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.WorkloadReference"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroupStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroupTemplate",
      "to_id": "api:PodGroupTemplate",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupTemplate"
        }
      ]
    },
    {
      "from_id": "api:CompositePodGroupTemplate",
      "to_id": "api:CompositePodGroupSchedulingPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupSchedulingPolicy"
        }
      ]
    },
    {
      "from_id": "api:DisruptionMode",
      "to_id": "api:AllDisruptionMode",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.AllDisruptionMode"
        }
      ]
    },
    {
      "from_id": "api:DisruptionMode",
      "to_id": "api:SingleDisruptionMode",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.SingleDisruptionMode"
        }
      ]
    },
    {
      "from_id": "api:PodGroup",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:PodGroup",
      "to_id": "api:PodGroupStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupStatus"
        }
      ]
    },
    {
      "from_id": "api:PodGroup",
      "to_id": "api:PodGroupSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupSpec"
        }
      ]
    },
    {
      "from_id": "api:PodGroupList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:PodGroupList",
      "to_id": "api:PodGroup",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroup"
        }
      ]
    },
    {
      "from_id": "api:PodGroupSchedulingConstraints",
      "to_id": "api:TopologyConstraint",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.TopologyConstraint"
        }
      ]
    },
    {
      "from_id": "api:PodGroupSchedulingPolicy",
      "to_id": "api:BasicSchedulingPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.BasicSchedulingPolicy"
        }
      ]
    },
    {
      "from_id": "api:PodGroupSchedulingPolicy",
      "to_id": "api:GangSchedulingPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.GangSchedulingPolicy"
        }
      ]
    },
    {
      "from_id": "api:PodGroupSpec",
      "to_id": "api:WorkloadReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.WorkloadReference"
        }
      ]
    },
    {
      "from_id": "api:PodGroupSpec",
      "to_id": "api:PodGroupSchedulingConstraints",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupSchedulingConstraints"
        }
      ]
    },
    {
      "from_id": "api:PodGroupSpec",
      "to_id": "api:PodGroupResourceClaim",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupResourceClaim"
        }
      ]
    },
    {
      "from_id": "api:PodGroupSpec",
      "to_id": "api:PodGroupSchedulingPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupSchedulingPolicy"
        }
      ]
    },
    {
      "from_id": "api:PodGroupSpec",
      "to_id": "api:DisruptionMode",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.DisruptionMode"
        }
      ]
    },
    {
      "from_id": "api:PodGroupStatus",
      "to_id": "api:PodGroupResourceClaimStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupResourceClaimStatus"
        }
      ]
    },
    {
      "from_id": "api:PodGroupStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:PodGroupTemplate",
      "to_id": "api:DisruptionMode",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.DisruptionMode"
        }
      ]
    },
    {
      "from_id": "api:PodGroupTemplate",
      "to_id": "api:PodGroupSchedulingConstraints",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupSchedulingConstraints"
        }
      ]
    },
    {
      "from_id": "api:PodGroupTemplate",
      "to_id": "api:PodGroupResourceClaim",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupResourceClaim"
        }
      ]
    },
    {
      "from_id": "api:PodGroupTemplate",
      "to_id": "api:PodGroupSchedulingPolicy",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupSchedulingPolicy"
        }
      ]
    },
    {
      "from_id": "api:Workload",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:Workload",
      "to_id": "api:WorkloadSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.WorkloadSpec"
        }
      ]
    },
    {
      "from_id": "api:WorkloadList",
      "to_id": "api:Workload",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.Workload"
        }
      ]
    },
    {
      "from_id": "api:WorkloadList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:WorkloadSpec",
      "to_id": "api:PodGroupTemplate",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.PodGroupTemplate"
        }
      ]
    },
    {
      "from_id": "api:WorkloadSpec",
      "to_id": "api:TypedLocalObjectReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.TypedLocalObjectReference"
        }
      ]
    },
    {
      "from_id": "api:WorkloadSpec",
      "to_id": "api:CompositePodGroupTemplate",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.scheduling.v1alpha3.CompositePodGroupTemplate"
        }
      ]
    },
    {
      "from_id": "api:CSIDriver",
      "to_id": "api:CSIDriverSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSIDriverSpec"
        }
      ]
    },
    {
      "from_id": "api:CSIDriver",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:CSIDriverList",
      "to_id": "api:CSIDriver",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSIDriver"
        }
      ]
    },
    {
      "from_id": "api:CSIDriverList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:CSIDriverSpec",
      "to_id": "api:TokenRequest",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.TokenRequest"
        }
      ]
    },
    {
      "from_id": "api:CSINode",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:CSINode",
      "to_id": "api:CSINodeSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSINodeSpec"
        }
      ]
    },
    {
      "from_id": "api:CSINodeDriver",
      "to_id": "api:VolumeNodeResources",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeNodeResources"
        }
      ]
    },
    {
      "from_id": "api:CSINodeList",
      "to_id": "api:CSINode",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSINode"
        }
      ]
    },
    {
      "from_id": "api:CSINodeList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:CSINodeSpec",
      "to_id": "api:CSINodeDriver",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSINodeDriver"
        }
      ]
    },
    {
      "from_id": "api:CSIStorageCapacity",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:CSIStorageCapacity",
      "to_id": "api:LabelSelector",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector"
        }
      ]
    },
    {
      "from_id": "api:CSIStorageCapacity",
      "to_id": "api:Quantity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.api.resource.Quantity"
        }
      ]
    },
    {
      "from_id": "api:CSIStorageCapacityList",
      "to_id": "api:CSIStorageCapacity",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.CSIStorageCapacity"
        }
      ]
    },
    {
      "from_id": "api:CSIStorageCapacityList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:StorageClass",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:StorageClass",
      "to_id": "api:TopologySelectorTerm",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.TopologySelectorTerm"
        }
      ]
    },
    {
      "from_id": "api:StorageClassList",
      "to_id": "api:StorageClass",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.StorageClass"
        }
      ]
    },
    {
      "from_id": "api:StorageClassList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttachment",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttachment",
      "to_id": "api:VolumeAttachmentSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttachmentSpec"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttachment",
      "to_id": "api:VolumeAttachmentStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttachmentStatus"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttachmentList",
      "to_id": "api:VolumeAttachment",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttachment"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttachmentList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttachmentSource",
      "to_id": "api:PersistentVolumeSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.core.v1.PersistentVolumeSpec"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttachmentSpec",
      "to_id": "api:VolumeAttachmentSource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttachmentSource"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttachmentStatus",
      "to_id": "api:VolumeError",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeError"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttributesClass",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttributesClassList",
      "to_id": "api:VolumeAttributesClass",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storage.v1.VolumeAttributesClass"
        }
      ]
    },
    {
      "from_id": "api:VolumeAttributesClassList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:VolumeError",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionMigration",
      "to_id": "api:StorageVersionMigrationSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1.StorageVersionMigrationSpec"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1beta1.StorageVersionMigrationSpec"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionMigration",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionMigration",
      "to_id": "api:StorageVersionMigrationStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1.StorageVersionMigrationStatus"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1beta1.StorageVersionMigrationStatus"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionMigrationList",
      "to_id": "api:StorageVersionMigration",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1.StorageVersionMigration"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.api.storagemigration.v1beta1.StorageVersionMigration"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionMigrationList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionMigrationSpec",
      "to_id": "api:GroupResource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.GroupResource"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.GroupResource"
        }
      ]
    },
    {
      "from_id": "api:StorageVersionMigrationStatus",
      "to_id": "api:Condition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        },
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Condition"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceConversion",
      "to_id": "api:WebhookConversion",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.WebhookConversion"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinition",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinition",
      "to_id": "api:CustomResourceDefinitionStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionStatus"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinition",
      "to_id": "api:CustomResourceDefinitionSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionList",
      "to_id": "api:CustomResourceDefinition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionSpec",
      "to_id": "api:CustomResourceDefinitionNames",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionNames"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionSpec",
      "to_id": "api:CustomResourceDefinitionVersion",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionSpec",
      "to_id": "api:CustomResourceConversion",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceConversion"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionStatus",
      "to_id": "api:CustomResourceDefinitionNames",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionNames"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionStatus",
      "to_id": "api:CustomResourceDefinitionCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionCondition"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionVersion",
      "to_id": "api:CustomResourceValidation",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionVersion",
      "to_id": "api:SelectableField",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.SelectableField"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionVersion",
      "to_id": "api:CustomResourceSubresources",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresources"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceDefinitionVersion",
      "to_id": "api:CustomResourceColumnDefinition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceColumnDefinition"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceSubresources",
      "to_id": "api:CustomResourceSubresourceStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceStatus"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceSubresources",
      "to_id": "api:CustomResourceSubresourceScale",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceScale"
        }
      ]
    },
    {
      "from_id": "api:CustomResourceValidation",
      "to_id": "api:JSONSchemaProps",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"
        }
      ]
    },
    {
      "from_id": "api:JSONSchemaProps",
      "to_id": "api:JSONSchemaPropsOrStringArray",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray"
        }
      ]
    },
    {
      "from_id": "api:JSONSchemaProps",
      "to_id": "api:JSONSchemaPropsOrArray",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray"
        }
      ]
    },
    {
      "from_id": "api:JSONSchemaProps",
      "to_id": "api:JSONSchemaPropsOrBool",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"
        }
      ]
    },
    {
      "from_id": "api:JSONSchemaProps",
      "to_id": "api:ExternalDocumentation",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation"
        }
      ]
    },
    {
      "from_id": "api:JSONSchemaProps",
      "to_id": "api:JSON",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"
        }
      ]
    },
    {
      "from_id": "api:JSONSchemaProps",
      "to_id": "api:ValidationRule",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule"
        }
      ]
    },
    {
      "from_id": "api:WebhookConversion",
      "to_id": "api:WebhookClientConfig",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.WebhookClientConfig"
        }
      ]
    },
    {
      "from_id": "api:APIGroup",
      "to_id": "api:GroupVersionForDiscovery",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.GroupVersionForDiscovery"
        }
      ]
    },
    {
      "from_id": "api:APIGroup",
      "to_id": "api:ServerAddressByClientCIDR",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ServerAddressByClientCIDR"
        }
      ]
    },
    {
      "from_id": "api:APIGroupList",
      "to_id": "api:APIGroup",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.APIGroup"
        }
      ]
    },
    {
      "from_id": "api:APIResourceList",
      "to_id": "api:APIResource",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.APIResource"
        }
      ]
    },
    {
      "from_id": "api:APIVersions",
      "to_id": "api:ServerAddressByClientCIDR",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ServerAddressByClientCIDR"
        }
      ]
    },
    {
      "from_id": "api:Condition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:DeleteOptions",
      "to_id": "api:Preconditions",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Preconditions"
        }
      ]
    },
    {
      "from_id": "api:LabelSelector",
      "to_id": "api:LabelSelectorRequirement",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelectorRequirement"
        }
      ]
    },
    {
      "from_id": "api:ListMeta",
      "to_id": "api:ShardInfo",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ShardInfo"
        }
      ]
    },
    {
      "from_id": "api:ManagedFieldsEntry",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:ManagedFieldsEntry",
      "to_id": "api:FieldsV1",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.FieldsV1"
        }
      ]
    },
    {
      "from_id": "api:ObjectMeta",
      "to_id": "api:OwnerReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.OwnerReference"
        }
      ]
    },
    {
      "from_id": "api:ObjectMeta",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:ObjectMeta",
      "to_id": "api:ManagedFieldsEntry",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ManagedFieldsEntry"
        }
      ]
    },
    {
      "from_id": "api:Status",
      "to_id": "api:StatusDetails",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails"
        }
      ]
    },
    {
      "from_id": "api:Status",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:StatusDetails",
      "to_id": "api:StatusCause",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause"
        }
      ]
    },
    {
      "from_id": "api:WatchEvent",
      "to_id": "api:RawExtension",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.runtime.RawExtension"
        }
      ]
    },
    {
      "from_id": "api:APIService",
      "to_id": "api:ObjectMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"
        }
      ]
    },
    {
      "from_id": "api:APIService",
      "to_id": "api:APIServiceSpec",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceSpec"
        }
      ]
    },
    {
      "from_id": "api:APIService",
      "to_id": "api:APIServiceStatus",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceStatus"
        }
      ]
    },
    {
      "from_id": "api:APIServiceCondition",
      "to_id": "api:Time",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.Time"
        }
      ]
    },
    {
      "from_id": "api:APIServiceList",
      "to_id": "api:APIService",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIService"
        }
      ]
    },
    {
      "from_id": "api:APIServiceList",
      "to_id": "api:ListMeta",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"
        }
      ]
    },
    {
      "from_id": "api:APIServiceSpec",
      "to_id": "api:ServiceReference",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.ServiceReference"
        }
      ]
    },
    {
      "from_id": "api:APIServiceStatus",
      "to_id": "api:APIServiceCondition",
      "type": "related_to",
      "label": "references type",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "swagger.json",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIServiceCondition"
        }
      ]
    },
    {
      "from_id": "role:pods",
      "to_id": "api:Pod",
      "type": "requires",
      "label": "required to manage Pod",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Pod requires pods permissions"
        }
      ]
    },
    {
      "from_id": "role:services",
      "to_id": "api:Service",
      "type": "requires",
      "label": "required to manage Service",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Service requires services permissions"
        }
      ]
    },
    {
      "from_id": "role:deployments",
      "to_id": "api:Deployment",
      "type": "requires",
      "label": "required to manage Deployment",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Deployment requires deployments permissions"
        }
      ]
    },
    {
      "from_id": "role:replicasets",
      "to_id": "api:ReplicaSet",
      "type": "requires",
      "label": "required to manage ReplicaSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "ReplicaSet requires replicasets permissions"
        }
      ]
    },
    {
      "from_id": "role:statefulsets",
      "to_id": "api:StatefulSet",
      "type": "requires",
      "label": "required to manage StatefulSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "StatefulSet requires statefulsets permissions"
        }
      ]
    },
    {
      "from_id": "role:daemonsets",
      "to_id": "api:DaemonSet",
      "type": "requires",
      "label": "required to manage DaemonSet",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "DaemonSet requires daemonsets permissions"
        }
      ]
    },
    {
      "from_id": "role:configmaps",
      "to_id": "api:ConfigMap",
      "type": "requires",
      "label": "required to manage ConfigMap",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "ConfigMap requires configmaps permissions"
        }
      ]
    },
    {
      "from_id": "role:secrets",
      "to_id": "api:Secret",
      "type": "requires",
      "label": "required to manage Secret",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Secret requires secrets permissions"
        }
      ]
    },
    {
      "from_id": "role:namespaces",
      "to_id": "api:Namespace",
      "type": "requires",
      "label": "required to manage Namespace",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Namespace requires namespaces permissions"
        }
      ]
    },
    {
      "from_id": "role:nodes",
      "to_id": "api:Node",
      "type": "requires",
      "label": "required to manage Node",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Node requires nodes permissions"
        }
      ]
    },
    {
      "from_id": "role:roles",
      "to_id": "api:Role",
      "type": "requires",
      "label": "required to manage Role",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Role requires roles permissions"
        }
      ]
    },
    {
      "from_id": "role:rolebindings",
      "to_id": "api:RoleBinding",
      "type": "requires",
      "label": "required to manage RoleBinding",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "RoleBinding requires rolebindings permissions"
        }
      ]
    },
    {
      "from_id": "role:clusterroles",
      "to_id": "api:ClusterRole",
      "type": "requires",
      "label": "required to manage ClusterRole",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "ClusterRole requires clusterroles permissions"
        }
      ]
    },
    {
      "from_id": "role:clusterrolebindings",
      "to_id": "api:ClusterRoleBinding",
      "type": "requires",
      "label": "required to manage ClusterRoleBinding",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "ClusterRoleBinding requires clusterrolebindings permissions"
        }
      ]
    },
    {
      "from_id": "role:customresourcedefinitions",
      "to_id": "api:CustomResourceDefinition",
      "type": "requires",
      "label": "required to manage CustomResourceDefinition",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:reference/access-authn-authz/rbac",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "CustomResourceDefinition requires customresourcedefinitions permissions"
        }
      ]
    },
    {
      "from_id": "ctrl:kube-scheduler",
      "to_id": "ctrl:kube-apiserver",
      "type": "controls",
      "label": "watches for unscheduled pods",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "watches for unscheduled pods"
        }
      ]
    },
    {
      "from_id": "ctrl:kube-controller-manager",
      "to_id": "ctrl:kube-apiserver",
      "type": "controls",
      "label": "reconciles desired state",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "reconciles desired state"
        }
      ]
    },
    {
      "from_id": "ctrl:kubelet",
      "to_id": "ctrl:kube-apiserver",
      "type": "controls",
      "label": "reports node/pod status",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "reports node/pod status"
        }
      ]
    },
    {
      "from_id": "ctrl:kube-proxy",
      "to_id": "ctrl:kube-apiserver",
      "type": "controls",
      "label": "watches Service/Endpoint changes",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website:concepts/architecture",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "watches Service/Endpoint changes"
        }
      ]
    },
    {
      "from_id": "flow:kubectl",
      "to_id": "flow:kubectl",
      "type": "prerequisite_of",
      "label": "then",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Computes the object's REST mapping (apiVersion+Kind -> resource)"
        },
        {
          "source": "kubernetes/website",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Sends POST/GET to kube-apiserver (create or retrieve live object)"
        }
      ]
    },
    {
      "from_id": "flow:kubectl",
      "to_id": "flow:kube-apiserver",
      "type": "prerequisite_of",
      "label": "then",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Runs authentication, authorization (RBAC) and admission control"
        }
      ]
    },
    {
      "from_id": "flow:kube-apiserver",
      "to_id": "flow:kube-apiserver",
      "type": "prerequisite_of",
      "label": "then",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Persists object to etcd"
        }
      ]
    },
    {
      "from_id": "flow:kube-apiserver",
      "to_id": "flow:kube-controller-manager_scheduler",
      "type": "prerequisite_of",
      "label": "then",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Reconcile controllers act on the new object"
        }
      ]
    },
    {
      "from_id": "flow:kube-controller-manager_scheduler",
      "to_id": "flow:kubelet",
      "type": "prerequisite_of",
      "label": "then",
      "weight": 1.0,
      "confidence": 1.0,
      "derived_by": "deterministic",
      "provenance": [
        {
          "source": "kubernetes/website",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "Node kubelet schedules and starts containers via container runtime"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:label",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Label"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:probe",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Probe"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:probe",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Probe"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:limitrange",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of LimitRange"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:limitrange",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of LimitRange"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:dra",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Dynamic Resource Allocation"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:dra",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Dynamic Resource Allocation"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:platform-developer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Platform Developer"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:platform-developer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Platform Developer"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:reviewer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Reviewer"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:reviewer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Reviewer"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:reviewer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Reviewer"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:upstream",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Upstream (disambiguation)"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:upstream",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Upstream (disambiguation)"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:service-catalog",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Service Catalog"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:service-catalog",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Service Catalog"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:podgroup",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of PodGroup"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:podgroup",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of PodGroup"
        }
      ]
    },
    {
      "from_id": "gloss:cluster",
      "to_id": "gloss:podgroup",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of PodGroup"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:admission-controller",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Admission Controller"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:admission-controller",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Admission Controller"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:cluster-operations",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Operations"
        }
      ]
    },
    {
      "from_id": "gloss:configmap",
      "to_id": "gloss:cluster-operations",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Operations"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:persistent-volume-claim",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Persistent Volume Claim"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:persistent-volume-claim",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Persistent Volume Claim"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:contributor",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Contributor"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:contributor",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Contributor"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:contributor",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Contributor"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:endpoints",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Endpoints"
        }
      ]
    },
    {
      "from_id": "gloss:service-catalog",
      "to_id": "gloss:endpoints",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Endpoints"
        }
      ]
    },
    {
      "from_id": "gloss:persistent-volume-claim",
      "to_id": "gloss:endpoints",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Endpoints"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:immutable-infrastructure",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Immutable Infrastructure"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:immutable-infrastructure",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Immutable Infrastructure"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:configmap",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ConfigMap"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:configmap",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ConfigMap"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:configmap",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ConfigMap"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:Extensions",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Extensions"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:Extensions",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Extensions"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:Extensions",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Extensions"
        }
      ]
    },
    {
      "from_id": "gloss:cluster",
      "to_id": "gloss:etcd",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of etcd"
        }
      ]
    },
    {
      "from_id": "gloss:kube-apiserver",
      "to_id": "gloss:etcd",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of etcd"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:HostAliases",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of HostAliases"
        }
      ]
    },
    {
      "from_id": "gloss:cni",
      "to_id": "gloss:HostAliases",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of HostAliases"
        }
      ]
    },
    {
      "from_id": "gloss:cri-o",
      "to_id": "gloss:cni",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container network interface (CNI)"
        }
      ]
    },
    {
      "from_id": "gloss:device-plugin",
      "to_id": "gloss:cni",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container network interface (CNI)"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:sidecar-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Sidecar Container"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:sidecar-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Sidecar Container"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:deviceclass",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of DeviceClass"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:deviceclass",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of DeviceClass"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:kube-apiserver",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of API server"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:kube-apiserver",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of API server"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:volume",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Volume"
        }
      ]
    },
    {
      "from_id": "gloss:persistent-volume-claim",
      "to_id": "gloss:volume",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Volume"
        }
      ]
    },
    {
      "from_id": "gloss:cluster",
      "to_id": "gloss:volume",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Volume"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:resourceclaim",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ResourceClaim"
        }
      ]
    },
    {
      "from_id": "gloss:preemption",
      "to_id": "gloss:node-pressure-eviction",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Node-pressure eviction"
        }
      ]
    },
    {
      "from_id": "gloss:toleration",
      "to_id": "gloss:node-pressure-eviction",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Node-pressure eviction"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:preemption",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Preemption"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:preemption",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Preemption"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:cluster",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:cluster",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:aggregation-layer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Aggregation Layer"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:aggregation-layer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Aggregation Layer"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:aggregation-layer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Aggregation Layer"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:master",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Master"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:master",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Master"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:master",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Master"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:code-contributor",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Code Contributor"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:code-contributor",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Code Contributor"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:code-contributor",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Code Contributor"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:kube-controller-manager",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:kube-controller-manager",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:kube-controller-manager",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kube-controller-manager"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:cri-o",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of CRI-O"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:cri-o",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of CRI-O"
        }
      ]
    },
    {
      "from_id": "gloss:configmap",
      "to_id": "gloss:downward-api",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Downward API"
        }
      ]
    },
    {
      "from_id": "gloss:secret",
      "to_id": "gloss:downward-api",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Downward API"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:cncf",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cloud Native Computing Foundation (CNCF)"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:cncf",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cloud Native Computing Foundation (CNCF)"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:cncf",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cloud Native Computing Foundation (CNCF)"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:condition",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Condition"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:condition",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Condition"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:condition",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Condition"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:application-architect",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Application Architect"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:application-architect",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Application Architect"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:application-architect",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Application Architect"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:kops",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kOps (Kubernetes Operations)"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:kops",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kOps (Kubernetes Operations)"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:kops",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kOps (Kubernetes Operations)"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:container-env-variables",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Environment Variables"
        }
      ]
    },
    {
      "from_id": "gloss:configmap",
      "to_id": "gloss:container-env-variables",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Environment Variables"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:downstream",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Downstream (disambiguation)"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:downstream",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Downstream (disambiguation)"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:downstream",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Downstream (disambiguation)"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:network-policy",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Network Policy"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:network-policy",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Network Policy"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:pod-priority",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Priority"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:pod-priority",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Priority"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:pod-priority",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Priority"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:mvp",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Mixed Version Proxy (MVP)"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:mvp",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Mixed Version Proxy (MVP)"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:mvp",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Mixed Version Proxy (MVP)"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:image",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Image"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:image",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Image"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:image",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Image"
        }
      ]
    },
    {
      "from_id": "gloss:toleration",
      "to_id": "gloss:disruption",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Disruption"
        }
      ]
    },
    {
      "from_id": "gloss:pod-disruption",
      "to_id": "gloss:disruption",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Disruption"
        }
      ]
    },
    {
      "from_id": "gloss:deviceclass",
      "to_id": "gloss:device-plugin",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Device Plugin"
        }
      ]
    },
    {
      "from_id": "gloss:cri-o",
      "to_id": "gloss:device-plugin",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Device Plugin"
        }
      ]
    },
    {
      "from_id": "gloss:cni",
      "to_id": "gloss:device-plugin",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Device Plugin"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:shuffle-sharding",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Shuffle-sharding"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:shuffle-sharding",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Shuffle-sharding"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:toleration",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Toleration"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:toleration",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Toleration"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:uid",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of UID"
        }
      ]
    },
    {
      "from_id": "gloss:cluster",
      "to_id": "gloss:uid",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of UID"
        }
      ]
    },
    {
      "from_id": "gloss:pod-lifecycle",
      "to_id": "gloss:pod-disruption",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Disruption"
        }
      ]
    },
    {
      "from_id": "gloss:toleration",
      "to_id": "gloss:pod-disruption",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Disruption"
        }
      ]
    },
    {
      "from_id": "gloss:horizontal-pod-autoscaler",
      "to_id": "gloss:pod-disruption",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Disruption"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:horizontal-pod-autoscaler",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Horizontal Pod Autoscaler"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:kubernetes-api",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubernetes API"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:kubernetes-api",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubernetes API"
        }
      ]
    },
    {
      "from_id": "gloss:persistent-volume-claim",
      "to_id": "gloss:kubernetes-api",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubernetes API"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:cluster-operator",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Operator"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:cluster-operator",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Operator"
        }
      ]
    },
    {
      "from_id": "gloss:cluster",
      "to_id": "gloss:cluster-operator",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Operator"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:kube-proxy",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kube-proxy"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:kube-proxy",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kube-proxy"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:kube-proxy",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kube-proxy"
        }
      ]
    },
    {
      "from_id": "gloss:kubernetes-api",
      "to_id": "gloss:jwt",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of JSON Web Token (JWT)"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operator",
      "to_id": "gloss:jwt",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of JSON Web Token (JWT)"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:kubectl",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubectl"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:kubectl",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubectl"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:pod-lifecycle",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Lifecycle"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:pod-lifecycle",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Lifecycle"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:pod-lifecycle",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Lifecycle"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:cronjob",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of CronJob"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:quantity",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Quantity"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:quantity",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Quantity"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:quantity",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Quantity"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:application-developer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Application Developer"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:application-developer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Application Developer"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:application-developer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Application Developer"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:dockershim",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Dockershim"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:dockershim",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Dockershim"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:dockershim",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Dockershim"
        }
      ]
    },
    {
      "from_id": "gloss:cni",
      "to_id": "gloss:sysctl",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of sysctl"
        }
      ]
    },
    {
      "from_id": "gloss:cri-o",
      "to_id": "gloss:sysctl",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of sysctl"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:node",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Node"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:node",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Node"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:node",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Node"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:watch",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Watch"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:watch",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Watch"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:watch",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Watch"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:replication-controller",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ReplicationController"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:replication-controller",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ReplicationController"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:replication-controller",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ReplicationController"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:priority-class",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of PriorityClass"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:priority-class",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of PriorityClass"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:flexvolume",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of FlexVolume"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:daemonset",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of DaemonSet"
        }
      ]
    },
    {
      "from_id": "gloss:cri-o",
      "to_id": "gloss:daemonset",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of DaemonSet"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:developer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Developer (disambiguation)"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:developer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Developer (disambiguation)"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:developer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Developer (disambiguation)"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:feature-gate",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Feature gate"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:feature-gate",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Feature gate"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:operator-pattern",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Operator pattern"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:operator-pattern",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Operator pattern"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:operator-pattern",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Operator pattern"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:drain",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Drain"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:drain",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Drain"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:drain",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Drain"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:name",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Name"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:name",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Name"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:name",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Name"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:endpoint-slice",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of EndpointSlice"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:resourceslice",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ResourceSlice"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:helm-chart",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Helm Chart"
        }
      ]
    },
    {
      "from_id": "gloss:service-catalog",
      "to_id": "gloss:helm-chart",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Helm Chart"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:helm-chart",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Helm Chart"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:qos-class",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of QoS Class"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:qos-class",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of QoS Class"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:qos-class",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of QoS Class"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:pod-template",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of PodTemplate"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:controller",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Controller"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:controller",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Controller"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:controller",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Controller"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:infrastructure-resource",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Resource (infrastructure)"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:infrastructure-resource",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Resource (infrastructure)"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:infrastructure-resource",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Resource (infrastructure)"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:kubeadm",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubeadm"
        }
      ]
    },
    {
      "from_id": "gloss:kubernetes-api",
      "to_id": "gloss:kubeadm",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubeadm"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operator",
      "to_id": "gloss:kubeadm",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubeadm"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:istio",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Istio"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:istio",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Istio"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:istio",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Istio"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:containerd",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of containerd"
        }
      ]
    },
    {
      "from_id": "gloss:cri-o",
      "to_id": "gloss:containerd",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of containerd"
        }
      ]
    },
    {
      "from_id": "gloss:container",
      "to_id": "gloss:containerd",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of containerd"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:kubelet",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubelet"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:kubelet",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubelet"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:kubelet",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Kubelet"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:garbage-collection",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Garbage Collection"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:garbage-collection",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Garbage Collection"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:garbage-collection",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Garbage Collection"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:dynamicvolumeprovisioning",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Dynamic Volume Provisioning"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:cadvisor",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of cAdvisor"
        }
      ]
    },
    {
      "from_id": "gloss:cri-o",
      "to_id": "gloss:cadvisor",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of cAdvisor"
        }
      ]
    },
    {
      "from_id": "gloss:cni",
      "to_id": "gloss:cadvisor",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of cAdvisor"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:object",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Object"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:object",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Object"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:object",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Object"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:ephemeral-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Ephemeral Container"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:ephemeral-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Ephemeral Container"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:ephemeral-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Ephemeral Container"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:volumeplugin",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Volume Plugin"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:resourceclaimtemplate",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ResourceClaimTemplate"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:san",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Subject Alternative Name"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:san",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Subject Alternative Name"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:san",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Subject Alternative Name"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:manifest",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Manifest"
        }
      ]
    },
    {
      "from_id": "gloss:service-catalog",
      "to_id": "gloss:manifest",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Manifest"
        }
      ]
    },
    {
      "from_id": "gloss:persistent-volume-claim",
      "to_id": "gloss:manifest",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Manifest"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:finalizer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Finalizer"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:finalizer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Finalizer"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:finalizer",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Finalizer"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:deployment",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Deployment"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:certificate",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Certificate"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:index",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Glossary"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:index",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Glossary"
        }
      ]
    },
    {
      "from_id": "gloss:persistent-volume-claim",
      "to_id": "gloss:index",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Glossary"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:wg",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of WG (working group)"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:wg",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of WG (working group)"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:logging",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Logging"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:logging",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Logging"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:logging",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Logging"
        }
      ]
    },
    {
      "from_id": "gloss:cluster",
      "to_id": "gloss:cluster-infrastructure",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Infrastructure"
        }
      ]
    },
    {
      "from_id": "gloss:cni",
      "to_id": "gloss:cluster-infrastructure",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Infrastructure"
        }
      ]
    },
    {
      "from_id": "gloss:cri-o",
      "to_id": "gloss:cluster-infrastructure",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Infrastructure"
        }
      ]
    },
    {
      "from_id": "gloss:toleration",
      "to_id": "gloss:taint",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Taint"
        }
      ]
    },
    {
      "from_id": "gloss:node-pressure-eviction",
      "to_id": "gloss:taint",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Taint"
        }
      ]
    },
    {
      "from_id": "gloss:preemption",
      "to_id": "gloss:taint",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Taint"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:managed-service",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Managed Service"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:managed-service",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Managed Service"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:managed-service",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Managed Service"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:static-pod",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Static Pod"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:static-pod",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Static Pod"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:static-pod",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Static Pod"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:statefulset",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of StatefulSet"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:resource-quota",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ResourceQuota"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:userns",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of user namespace"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:userns",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of user namespace"
        }
      ]
    },
    {
      "from_id": "gloss:persistent-volume-claim",
      "to_id": "gloss:userns",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of user namespace"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:init-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Init Container"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:init-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Init Container"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:init-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Init Container"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:gateway-api",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Gateway API"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:gateway-api",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Gateway API"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:gateway-api",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Gateway API"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:event",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Event"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:event",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Event"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:event",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Event"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:annotation",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Annotation"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:annotation",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Annotation"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:api-eviction",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of API-initiated eviction"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:api-eviction",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of API-initiated eviction"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:api-eviction",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of API-initiated eviction"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:service",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Service"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:security-context",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Security Context"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:security-context",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Security Context"
        }
      ]
    },
    {
      "from_id": "gloss:node-pressure-eviction",
      "to_id": "gloss:eviction",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Eviction"
        }
      ]
    },
    {
      "from_id": "gloss:preemption",
      "to_id": "gloss:eviction",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Eviction"
        }
      ]
    },
    {
      "from_id": "gloss:toleration",
      "to_id": "gloss:eviction",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Eviction"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:minikube",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Minikube"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:minikube",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Minikube"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:minikube",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Minikube"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:spec",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Spec"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:spec",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Spec"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:spec",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Spec"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:cluster-architect",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Architect"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:cluster-architect",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Architect"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:cluster-architect",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cluster Architect"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:container-runtime",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Runtime"
        }
      ]
    },
    {
      "from_id": "gloss:container",
      "to_id": "gloss:container-runtime",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Runtime"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:rbac",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of RBAC (Role-Based Access Control)"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:affinity",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Affinity"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:affinity",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Affinity"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:affinity",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Affinity"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:pod-security-policy",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Security Policy"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:pod-disruption-budget",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod Disruption Budget"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:replica-set",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ReplicaSet"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:replica-set",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ReplicaSet"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:replica-set",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ReplicaSet"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:pod",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:pod",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Pod"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:replica",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Replica"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:replica",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Replica"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:replica",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Replica"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:api-resource",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of API resource"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:member",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Member"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:member",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Member"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:member",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Member"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:cloud-controller-manager",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cloud Controller Manager"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:cloud-controller-manager",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cloud Controller Manager"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:cloud-controller-manager",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Cloud Controller Manager"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:docker",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Docker"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:docker",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Docker"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:docker",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Docker"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:workload",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Workload"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:workload",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Workload"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:workload",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Workload"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:cel",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Common Expression Language"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:cel",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Common Expression Language"
        }
      ]
    },
    {
      "from_id": "gloss:persistent-volume-claim",
      "to_id": "gloss:cel",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Common Expression Language"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:data-plane",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Data Plane"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:data-plane",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Data Plane"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:data-plane",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Data Plane"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:service-account",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ServiceAccount"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:service-account",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of ServiceAccount"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:job",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Job"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:job",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Job"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:job",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Job"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:gvr",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Group Version Resource"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:gvr",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Group Version Resource"
        }
      ]
    },
    {
      "from_id": "gloss:cluster",
      "to_id": "gloss:gvr",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Group Version Resource"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:proxy",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Proxy"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:proxy",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Proxy"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:proxy",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Proxy"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:kube-scheduler",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kube-scheduler"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:kube-scheduler",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kube-scheduler"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:kube-scheduler",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of kube-scheduler"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:ingress",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Ingress"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:approver",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Approver"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:approver",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Approver"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:approver",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Approver"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:addons",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Add-ons"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:addons",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Add-ons"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:addons",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Add-ons"
        }
      ]
    },
    {
      "from_id": "gloss:deviceclass",
      "to_id": "gloss:device",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Device"
        }
      ]
    },
    {
      "from_id": "gloss:cni",
      "to_id": "gloss:device",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Device"
        }
      ]
    },
    {
      "from_id": "gloss:cri-o",
      "to_id": "gloss:device",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Device"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:container-lifecycle-hooks",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Lifecycle Hooks"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:container-lifecycle-hooks",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Lifecycle Hooks"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:container-lifecycle-hooks",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Lifecycle Hooks"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:mirror-pod",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Mirror Pod"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:mirror-pod",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Mirror Pod"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:mirror-pod",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Mirror Pod"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:app-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of App Container"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:app-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of App Container"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:app-container",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of App Container"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:duration",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Duration"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:duration",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Duration"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:duration",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Duration"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:api-group",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of API Group"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:api-group",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of API Group"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:api-group",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of API Group"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:selector",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Selector"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:selector",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Selector"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:selector",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Selector"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:cidr",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of CIDR"
        }
      ]
    },
    {
      "from_id": "gloss:network-policy",
      "to_id": "gloss:cidr",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of CIDR"
        }
      ]
    },
    {
      "from_id": "gloss:cri-o",
      "to_id": "gloss:cri",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Runtime Interface (CRI)"
        }
      ]
    },
    {
      "from_id": "gloss:cni",
      "to_id": "gloss:cri",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Runtime Interface (CRI)"
        }
      ]
    },
    {
      "from_id": "gloss:container",
      "to_id": "gloss:cri",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Runtime Interface (CRI)"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:csi",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Storage Interface (CSI)"
        }
      ]
    },
    {
      "from_id": "gloss:cni",
      "to_id": "gloss:cdi",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Device Interface (CDI)"
        }
      ]
    },
    {
      "from_id": "gloss:cri-o",
      "to_id": "gloss:cdi",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Device Interface (CDI)"
        }
      ]
    },
    {
      "from_id": "gloss:deviceclass",
      "to_id": "gloss:cdi",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Container Device Interface (CDI)"
        }
      ]
    },
    {
      "from_id": "gloss:label",
      "to_id": "gloss:applications",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Applications"
        }
      ]
    },
    {
      "from_id": "gloss:probe",
      "to_id": "gloss:applications",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Applications"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:applications",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Applications"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:storageclass",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Storage Class"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:sig",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of SIG (special interest group)"
        }
      ]
    },
    {
      "from_id": "gloss:admission-controller",
      "to_id": "gloss:sig",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of SIG (special interest group)"
        }
      ]
    },
    {
      "from_id": "gloss:cluster-operations",
      "to_id": "gloss:sig",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of SIG (special interest group)"
        }
      ]
    },
    {
      "from_id": "gloss:persistent-volume-claim",
      "to_id": "gloss:persistent-volume",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Persistent Volume"
        }
      ]
    },
    {
      "from_id": "gloss:limitrange",
      "to_id": "gloss:persistent-volume",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Persistent Volume"
        }
      ]
    },
    {
      "from_id": "gloss:CustomResourceDefinition",
      "to_id": "gloss:persistent-volume",
      "type": "prerequisite_of",
      "label": "ai-suggested prerequisite",
      "weight": 1.0,
      "confidence": 0.7,
      "derived_by": "ai:llama3.1:8b",
      "provenance": [
        {
          "source": "ai:llama3.1:8b",
          "url": null,
          "line_start": null,
          "line_end": null,
          "quote": "prereq of Persistent Volume"
        }
      ]
    }
  ]
}